Represents information, used in conjunction with one or more
Namespace: FileNet.Api.Property
Assembly: FileNet.Api (in filenet.api.dll)
FilterElement
objects, 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. A
object has the following components:
- Zero or more IncludeProperty specifications; each of which specifies, by identifier, one or more properties to retrieve from the server. You create an IncludeProperty specification by calling one of the
methods. Each IncludeProperty specification is encapsulated in aAddIncludeProperty
object, which specifies the properties to retrieve and optionally specifies the maxSize, maxRecursion, levelDependents, and pageSize attributes. You can also set the global defaults for these attributes using the appropriateFilterElement
method. You specify each property to be retrieved by its symbolic name, or alternatively by its assigned GUID, in a space-separated list. In general, you should specify properties with their symbolic names usingPropertyFilter
string constants and avoid the use of GUIDs.PropertyNames - Zero or more IncludeType specifications; each of which specifies, by type, properties to retrieve from the server. The property type specification is set to one of the
constants (for example,FilteredPropertyType
, which specifies all properties of single cardinality). You create an IncludeType specification by calling one of theFilteredPropertyType.ANY_SINGLETON
methods. Each IncludeType specification is encapsulated in aAddIncludeType
object, which specifies the type of property to retrieve and optionally specifies the maxSize, maxRecursion, levelDependents, and pageSize attributes. You can also set the global defaults for these attributes using the appropriateFilterElement
method.PropertyFilter - Zero or more ExcludeProperty specifications; each of which specifies a single property, by identifier, to be excluded that would otherwise be included based on an IncludeProperty or IncludeType specification. You create an ExcludeProperty specification by calling the
method. You specify each property to be excluded by its symbolic name, or alternatively by its assigned GUID, in a space-separated list. In general, you should specify properties with their symbolic names usingAddExcludeProperty
string constants and avoid the use of GUIDs.PropertyNames
In addition, a
object has attributes you can set that control how property values are retrieved. These attributes act as global defaults for the
object. You can override each of these attributes for an individual
object when you call an
or
method. For any attribute not specified for a
object, the global attribute value for the
object applies. If a global value is unspecified, a default value applies. Each of the following attributes can be set by the appropriate
method:
- levelDependents: A
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 (Boolean
) or one level deeper (True
). Set this value via theFalse SetLevelDependents method. - maxRecursion: A zero-based
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. If unspecified, the default is zero. Set this value via theInteger SetMaxRecursion method. - maxSize: A
that specifies the maximum size, inLong
, 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. If unspecified, the default is to return all content data, no matter how large. Set this value via thebytes SetMaxSize method. - pageSize: An
that specifies the iterator page size for independent object sets returned byInteger
properties. The iterator page size determines how many elements of an independent object set are retrieved during each fetch. If the page size is unspecified, by default the server uses the value of thePropertyIndependentObjectSet
property of theQueryPageDefaultSize
object (the default for this property is 500). If the page size exceeds the value of theServerCacheConfiguration
property of theQueryPageMaxSize
object (the default for this property is 1000), the server uses the value of theServerCacheConfiguration
property instead. Set this value via theQueryPageMaxSize SetPageSize method.
Property filter precedence rules:
- Properties specified in an ExcludeProperty specification override those specified in an IncludeType or IncludeProperty specification. That is, if the property is specified to be excluded in an ExcludeProperty specification, but specified to be included in an IncludeProperty or IncludeType specification, the property will be excluded.
- If a property is specified in both an IncludeProperty and an IncludeType specification, only attributes from the IncludeProperty specification apply.
- If a property is specified more than once in an IncludeProperty specification, only the attributes from the first appearance apply.
- If a property type is specified by more than one means (for example, a
object has an IncludeType specification that specifiesPropertyFilter
and another that specifiesFilteredPropertyType.SINGLETON_STRING
), the attributes from the most specific occurrence (in the previous example, the former specification) apply.FilteredPropertyType.ANY_SINGLETON - If a property type is specified more than once by the same means, only the attributes from the first appearance apply.
Namespace: FileNet.Api.Property
Assembly: FileNet.Api (in filenet.api.dll)
Syntax
Visual Basic (Declaration) |
---|
<SerializableAttribute> Public Class PropertyFilter Implements ISerializable |
C# |
---|
[SerializableAttribute] public class PropertyFilter : ISerializable |
C++ |
---|
[SerializableAttribute] ref class PropertyFilter : ISerializable |
J# |
---|
/** @attribute SerializableAttribute() */ public class PropertyFilter implements ISerializable |
JScript |
---|
public SerializableAttribute class PropertyFilter extends ISerializable |
Inheritance Hierarchy
System.Object
FileNet.Api.Property.PropertyFilter
FileNet.Api.Property.PropertyFilter
Thread Safety
Public static (Shared in Visual Basic)staticShared members of this type are safe for multithreaded operations. Instance members are not guaranteed to be thread-safe.