com.filenet.api.property

Class FilterElement

  • java.lang.Object
    • com.filenet.api.property.FilterElement
  • All Implemented Interfaces:
    java.io.Serializable


    public class FilterElement
    extends java.lang.Object
    implements java.io.Serializable
    Represents information, used in conjunction with a PropertyFilter object, for controlling which properties of a Content Engine object (and with what level of detail) to return from the server during an object retrieval or an object refresh. Because the number and size of properties may be large for certain objects, using a property filter to retrieve a subset of the available properties can result in better performance by reducing the amount of data that is retrieved from the server.

    In order to create a property filter, a FilterElement object must be created for each set of properties that you wish to add. First, create a PropertyFilter object, then call its addIncludeProperty or addIncludeType methods to specify one or more FilterElement objects. Depending on which PropertyFilter method you choose to use, you can either create a FilterElement object directly and pass it as a method parameter or let the server create the object for you based on the values that you provide for the method parameters.

    A FilterElement object can specify one or more properties, either by identifier or by type. When specifying properties by identifier, a FilterElement object is created by setting the value parameter of the appropriate constructor to a space-separated list of symbolic names. When specifying properties by type, a FilterElement object is created by setting the value parameter of the appropriate constructor to a space-separated list of type specifiers or a FilteredPropertyType constant.

    In addition, a FilterElement object also has attributes you can set that control how property values are retrieved. These attributes override any global attributes that may be specified by the associated PropertyFilter object. If an attribute is not set in a FilterElement object, the attribute's global value in the PropertyFilter object will be used instead. If a global value is unspecified, a default value applies. The following attributes are set by the parameters of a FilterElement constructor:

    • levelDependents: A Boolean that specifies whether the recursion level to use when retrieving a dependent object is the same as that of the independent object to which it belongs (true) or one level deeper (false).
    • maxRecursion: A zero-based Integer that specifies the maximum allowable recursion depth to use when retrieving property relationships. This attribute determines the level of depth at which property values are included.
    • maxSize: A Long that specifies the maximum size, in bytes, of content data that can be returned when properties that hold content data are retrieved. If the amount of content data held by retrieved properties exceeds this size, no content data is returned.
    • pageSize: An Integer that specifies the iterator page size for independent object sets returned by PropertyIndependentObjectSet properties. The iterator page size determines how many elements of an independent object set are retrieved from the server during each fetch.
    See Also:
    PropertyFilter, FilteredPropertyType, Serialized Form
    • Constructor Summary

      Constructors 
      Constructor and Description
      FilterElement(java.lang.Integer maxRecursion, java.lang.Long maxSize, java.lang.Boolean levelDependents, FilteredPropertyType value)
      Deprecated.  
      FilterElement(java.lang.Integer maxRecursion, java.lang.Long maxSize, java.lang.Boolean levelDependents, FilteredPropertyType value, java.lang.Integer pageSize)
      Creates a FilterElement object that specifies, by type, which properties to retrieve from the server.
      FilterElement(java.lang.Integer maxRecursion, java.lang.Long maxSize, java.lang.Boolean levelDependents, java.lang.String value)
      Deprecated.  
      FilterElement(java.lang.Integer maxRecursion, java.lang.Long maxSize, java.lang.Boolean levelDependents, java.lang.String value, java.lang.Integer pageSize)
      Creates a FilterElement object that specifies, either by identifier or by type, one or more properties to retrieve from the server.
    • Method Summary

      Methods 
      Modifier and Type Method and Description
      java.lang.Boolean getLevelDependents()
      Returns whether the recursion level to use when retrieving a dependent object returned by a property specified by this FilterElement object is the same as that of the independent object to which it belongs (true) or one level deeper (false).
      java.lang.Integer getMaxRecursion()
      Returns the maximum recursion depth to use when retrieving property relationships specified by this FilterElement object.
      java.lang.Long getMaxSize()
      Returns the maximum size of the content data that can be returned when properties that hold content data specified by this FilterElement object are retrieved.
      java.lang.Integer getPageSize()
      Returns the iterator page size for independent object sets returned by PropertyIndependentObjectSet properties specified by this FilterElement object.
      java.lang.String getValue()
      Returns a space-separated list of one or more property identifiers or a space-separated list of one or more property types that are specified by this FilterElement object.
      java.lang.String toString()
      Returns a string describing this FilterElement object, including its class name, maximum recursion number, maximum size, number of level dependents, and its value.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • FilterElement

        public FilterElement(java.lang.Integer maxRecursion,
                     java.lang.Long maxSize,
                     java.lang.Boolean levelDependents,
                     java.lang.String value,
                     java.lang.Integer pageSize)
        Creates a FilterElement object that specifies, either by identifier or by type, one or more properties to retrieve from the server.
        Parameters:
        maxRecursion - A zero-based Integer that specifies the maximum allowable recursion depth to use when retrieving property relationships.
        maxSize - A Long that specifies the maximum size, in bytes, of content data that can be returned when properties that hold content data are retrieved. If the amount of content data held by retrieved properties exceeds this size, no content data is returned.
        levelDependents - Specifies whether the recursion level to use when retrieving a dependent object is the same as that of the independent object to which it belongs (true) or one level deeper (false).
        value - A String specifying one or more properties to retrieve. You can either specify a space-separated list of property names or property types, but not both. To specify property names, construct a space-separated list of each property's symbolic name (preferably using PropertyNames constants). Although you can alternatively specify a property by its assigned GUID, it is not recommended. To specify property types, construct a space-separated list in which each property type is in one of the following formats (note that you can mix formats within the same string):
        • "SingletonBoolean": All PropertyBoolean properties.
        • "SingletonBinary": All PropertyBinary properties.
        • "SingletonDateTime": All PropertyDateTime properties.
        • "SingletonFloat64": All PropertyFloat64 properties.
        • "SingletonId": All PropertyId properties.
        • "SingletonInteger32": All PropertyInteger32 properties.
        • "SingletonObject": All PropertyEngineObject properties.
        • "SingletonString": All PropertyString properties.
        • "ContentData": All PropertyContent properties.
        • "ListOfBoolean": All PropertyBooleanList properties.
        • "ListOfBinary": All PropertyBinaryList properties.
        • "ListOfDateTime": All PropertyDateTimeList properties.
        • "ListOfFloat64": All PropertyFloat64List properties.
        • "ListOfId": All PropertyIdList properties.
        • "ListOfInteger32": All PropertyInteger32List properties.
        • "ListOfObject": All PropertyDependentObjectList properties.
        • "ListOfString": All PropertyStringList properties.
        • "EnumOfObject": All PropertyIndependentObjectSet properties.
        • "Singleton*": All single-valued properties.
        • "List*": All list-value properties (does not include "EnumOfObject" properties).
        • "!Object": All properties that do not return object values.
        • "*": All properties.
        pageSize - An Integer that specifies the iterator page size for independent object sets returned by PropertyIndependentObjectSet properties. The iterator page size determines how many elements of an independent object set are retrieved from the server during each fetch.
      • FilterElement

        public FilterElement(java.lang.Integer maxRecursion,
                     java.lang.Long maxSize,
                     java.lang.Boolean levelDependents,
                     java.lang.String value)
        Deprecated. 
        Creates a FilterElement object that specifies, either by identifier or by type, one or more properties to retrieve from the server.
        Parameters:
        maxRecursion - A zero-based Integer that specifies the maximum allowable recursion depth to use when retrieving property relationships. If unspecified, the default is zero.
        maxSize - A Long that specifies the maximum size, in bytes, of content data that can be returned when properties that hold content data are retrieved. If the amount of content data held by retrieved properties exceeds this size, no content data is returned.
        levelDependents - Specifies whether the recursion level to use when retrieving a dependent object is the same as that of the independent object to which it belongs (true) or one level deeper (false).
        value - A String specifying one or more properties to retrieve. You can either specify a space-separated list of property names or property types, but not both. To specify property names, construct a space-separated list of each property's symbolic name (preferably using PropertyNames constants). Although you can alternatively specify a property by its assigned GUID, it is not recommended. To specify property types, construct a space-separated list in which each property type is in one of the following formats (note that you can mix formats within the same string):
        • "SingletonBoolean": All PropertyBoolean properties.
        • "SingletonBinary": All PropertyBinary properties.
        • "SingletonDateTime": All PropertyDateTime properties.
        • "SingletonFloat64": All PropertyFloat64 properties.
        • "SingletonId": All PropertyId properties.
        • "SingletonInteger32": All PropertyInteger32 properties.
        • "SingletonObject": All PropertyEngineObject properties.
        • "SingletonString": All PropertyString properties.
        • "ContentData": All PropertyContent properties.
        • "ListOfBoolean": All PropertyBooleanList properties.
        • "ListOfBinary": All PropertyBinaryList properties.
        • "ListOfDateTime": All PropertyDateTimeList properties.
        • "ListOfFloat64": All PropertyFloat64List properties.
        • "ListOfId": All PropertyIdList properties.
        • "ListOfInteger32": All PropertyInteger32List properties.
        • "ListOfObject": All PropertyDependentObjectList properties.
        • "ListOfString": All PropertyStringList properties.
        • "EnumOfObject": All PropertyIndependentObjectSet properties.
        • "Singleton*": All single-valued properties.
        • "List*": All list-value properties (does not include "EnumOfObject" properties).
        • "!Object": All properties that do not return object values.
        • "*": All properties.
      • FilterElement

        public FilterElement(java.lang.Integer maxRecursion,
                     java.lang.Long maxSize,
                     java.lang.Boolean levelDependents,
                     FilteredPropertyType value,
                     java.lang.Integer pageSize)
        Creates a FilterElement object that specifies, by type, which properties to retrieve from the server.
        Parameters:
        maxRecursion - A zero-based Integer that specifies the maximum allowable recursion depth to use when retrieving property relationships.
        maxSize - A Long that specifies the maximum size of content data, in bytes, that can be returned when properties that hold content data are retrieved. If the amount of content data held by retrieved properties exceeds this size, no content data is returned.
        levelDependents - Specifies whether the recursion level to use when retrieving a dependent object is the same as that of the independent object to which it belongs (true) or one level deeper (false).
        value - A FilteredPropertyType constant specifying the type of properties to retrieve.
        pageSize - An Integer that specifies the iterator page size for independent object sets returned by PropertyIndependentObjectSet properties. The iterator page size determines how many elements of an independent object set are retrieved from the server during each fetch.
      • FilterElement

        public FilterElement(java.lang.Integer maxRecursion,
                     java.lang.Long maxSize,
                     java.lang.Boolean levelDependents,
                     FilteredPropertyType value)
        Deprecated. 
        Creates a FilterElement object that specifies, by type, which properties to retrieve from the server.
        Parameters:
        maxRecursion - A zero-based Integer that specifies the maximum allowable recursion depth to use when retrieving property relationships.
        maxSize - A Long that specifies the maximum size of content data, in bytes, that can be returned when properties that hold content data are retrieved. If the amount of content data held by retrieved properties exceeds this size, no content data is returned.
        levelDependents - Specifies whether the recursion level to use when retrieving a dependent object is the same as that of the independent object to which it belongs (true) or one level deeper (false).
        value - A FilteredPropertyType constant specifying the type of properties to retrieve.
    • Method Detail

      • getMaxRecursion

        public java.lang.Integer getMaxRecursion()
        Returns the maximum recursion depth to use when retrieving property relationships specified by this FilterElement object.
        Returns:
        A zero-based Integer specifying the maximum recursion depth; returns 0 if the value of the recursion level is null.
      • getMaxSize

        public java.lang.Long getMaxSize()
        Returns the maximum size of the content data that can be returned when properties that hold content data specified by this FilterElement object are retrieved. If the amount of content data held by retrieved properties exceeds this size, no content data is returned.
        Returns:
        A Long specifying the maximum size (in bytes) of content data.
      • getLevelDependents

        public java.lang.Boolean getLevelDependents()
        Returns whether the recursion level to use when retrieving a dependent object returned by a property specified by this FilterElement object is the same as that of the independent object to which it belongs (true) or one level deeper (false).
        Returns:
        true if the recursion level for a dependent object is the same as that of the independent object containing it; false if it is one level deeper.
      • getValue

        public java.lang.String getValue()
        Returns a space-separated list of one or more property identifiers or a space-separated list of one or more property types that are specified by this FilterElement object.
        Returns:
        A String specifying the properties or type of properties.
      • getPageSize

        public java.lang.Integer getPageSize()
        Returns the iterator page size for independent object sets returned by PropertyIndependentObjectSet properties specified by this FilterElement object. The iterator page size determines how many elements of an independent object set are retrieved from the server during each fetch.
        Returns:
        An Integer specifying the iterator page size for independent object sets.
      • toString

        public java.lang.String toString()
        Returns a string describing this FilterElement object, including its class name, maximum recursion number, maximum size, number of level dependents, and its value.
        Overrides:
        toString in class java.lang.Object
        Returns:
        A String that represents this FilterElement object.

© Copyright IBM Corporation 2006, 2013. All rights reserved.