Interface IObjectFilter

All Superinterfaces
com.bea.content.paging.internal.IFilter, com.bea.content.paging.internal.ITypeSupport

public interface IObjectFilter
extends com.bea.content.paging.internal.IFilter, com.bea.content.paging.internal.ITypeSupport

Interface which allows custom filtering to use the entire object state, for specified Java types. This is in contrast to property filters, which only have access to individual properties.

An overview of custom sorting and filtering is provided in the package documentation at com.bea.content.paging.

NOTE: custom object filters are designed for small datasets (narrow queries returning a hundred or less objects). They may not scale well for large datasets.

Use this interface when you want to add support for filtering objects of a given type, such as com.bea.content.Node, in their entirety. If you need access to multiple fields when doing filtering, this might be a good choice. For example, you could use an object filter to filter on multiple properties on a com.bea.content.Node object at once.

Basically, this specifies a custom IFilter implementation defining IFilter.accept( ContentContext, Object objVal ) where objVal is the property container object value, NOT a property value. This implementation will apply for one or more Java types (such as Node, VirtualNode, etc).

A ObjectFilter could also be written to filter on multiple custom Node ObjectClass (type) properties.

Field Summary
static ContextKey OBJECT_FILTER_KEY
          CONTEXT KEYS (optional) specifies an ordered List used for filtering.
Method Summary
 void setState(ContentContext context, String filterString, Locale filterLocale)
          called BEFORE the filter.accept() method is invoked, to configure the filter state
Methods inherited from interface com.bea.content.paging.internal.IFilter
Methods inherited from interface com.bea.content.paging.internal.ITypeSupport

Field Detail


static final ContextKey OBJECT_FILTER_KEY
CONTEXT KEYS (optional) specifies an ordered List used for filtering. The IObjectFilter interface is used to add support for entire-object filtering.

A single IObjectFilter can apply for a given type, such as Node. The first IObjectFilter in the list which applies for the specified type is the one used.

Method Detail


void setState(ContentContext context,
              String filterString,
              Locale filterLocale)
              throws RepositoryException
called BEFORE the filter.accept() method is invoked, to configure the filter state


Copyright © 2011, Oracle. All rights reserved.