Skip navigation links

Oracle® Coherence Java API Reference
Release 3.7.0.0

E18683-01


com.tangosol.util.filter
Class PartitionedFilter

java.lang.Object
  extended by com.tangosol.util.Base
      extended by com.tangosol.util.BitHelper
          extended by com.tangosol.util.ExternalizableHelper
              extended by com.tangosol.util.filter.PartitionedFilter

All Implemented Interfaces:
ExternalizableLite, PortableObject, Filter, EntryFilter, java.io.Serializable

public class PartitionedFilter
extends ExternalizableHelper
implements EntryFilter, ExternalizableLite, PortableObject

Filter which limits the scope of another filter to those entries that have keys that belong to the specified partition set.

This filter is intended to be used in advanced scenarios, when a caller wants to retrieve the results of parallel processing restricted to a subset of partitions. This approach may somewhat complicate the client code, but can dramatically reduce the memory footprint used by the requestor.

Below are two examples of PartitionedFilter usage:

Note: This filter must be the outermost filter and cannot be used as a part of any composite filter (AndFilter, OrFilter, etc.)

To iterate through a query on a partition-by-partition or member-by-member basis, use the PartitionedIterator class.

Since:
Coherence 3.4
Author:
gg 2008.02.06

Constructor Summary
PartitionedFilter()
          Default constructor (necessary for the ExternalizableLite interface).
PartitionedFilter(Filter filter, PartitionSet partitions)
          Construct a PartitionedFilter.

 

Method Summary
 boolean equals(java.lang.Object o)
          Compare the PartitionedFilter with another object to determine equality.
 boolean evaluate(java.lang.Object o)
          Apply the test to the object.
 boolean evaluateEntry(java.util.Map.Entry entry)
          Apply the test to a Map Entry.
 Filter getFilter()
          Obtain the wrapped Filter.
 PartitionSet getPartitionSet()
          Obtain the PartitionSet that specifies what partitions the wrapped filter will be applied to.
 int hashCode()
          Determine a hash value for the PartitionedFilter object according to the general Object.hashCode() contract.
 void readExternal(java.io.DataInput in)
          Restore the contents of this object by loading the object's state from the passed DataInput object.
 void readExternal(PofReader in)
          Restore the contents of a user type instance by reading its state using the specified PofReader object.
 java.lang.String toString()
          Return a human-readable description for this Filter.
 void writeExternal(java.io.DataOutput out)
          Save the contents of this object by storing the object's state into the passed DataOutput object.
 void writeExternal(PofWriter out)
          Save the contents of a POF user type instance by writing its state using the specified PofWriter object.

 

Methods inherited from class com.tangosol.util.BitHelper
countBits, countBits, countBits, indexOfLSB, indexOfLSB, indexOfLSB, indexOfMSB, indexOfMSB, indexOfMSB, rotateLeft, rotateLeft, rotateLeft, rotateRight, rotateRight, rotateRight, toBitString, toBitString, toBitString

 

Constructor Detail

PartitionedFilter

public PartitionedFilter()
Default constructor (necessary for the ExternalizableLite interface).

PartitionedFilter

public PartitionedFilter(Filter filter,
                         PartitionSet partitions)
Construct a PartitionedFilter.
Parameters:
filter - the underlying (wrapped) filter
partitions - the subset of partitions the filter should run against

Method Detail

evaluate

public boolean evaluate(java.lang.Object o)
Apply the test to the object.
Specified by:
evaluate in interface Filter
Parameters:
o - the object to test
Returns:
true if the test passes, false otherwise

evaluateEntry

public boolean evaluateEntry(java.util.Map.Entry entry)
Apply the test to a Map Entry.
Specified by:
evaluateEntry in interface EntryFilter
Parameters:
entry - the Map Entry to evaluate; never null
Returns:
true if the test passes, false otherwise

getFilter

public Filter getFilter()
Obtain the wrapped Filter.
Returns:
the wrapped filter object

getPartitionSet

public PartitionSet getPartitionSet()
Obtain the PartitionSet that specifies what partitions the wrapped filter will be applied to.
Returns:
the partition set

equals

public boolean equals(java.lang.Object o)
Compare the PartitionedFilter with another object to determine equality. Two PartitionedFilter objects are considered equal iff the wrapped filters and partition sets are equal.
Returns:
true iff this PartitionedFilter and the passed object are equivalent PartitionedFilter objects

hashCode

public int hashCode()
Determine a hash value for the PartitionedFilter object according to the general Object.hashCode() contract.
Returns:
an integer hash value for this PartitionedFilter object

toString

public java.lang.String toString()
Return a human-readable description for this Filter.
Returns:
a String description of the Filter

readExternal

public void readExternal(java.io.DataInput in)
                  throws java.io.IOException
Restore the contents of this object by loading the object's state from the passed DataInput object.
Specified by:
readExternal in interface ExternalizableLite
Parameters:
in - the DataInput stream to read data from in order to restore the state of this object
Throws:
java.io.IOException - if an I/O exception occurs
java.io.NotActiveException - if the object is not in its initial state, and therefore cannot be deserialized into

writeExternal

public void writeExternal(java.io.DataOutput out)
                   throws java.io.IOException
Save the contents of this object by storing the object's state into the passed DataOutput object.
Specified by:
writeExternal in interface ExternalizableLite
Parameters:
out - the DataOutput stream to write the state of this object to
Throws:
java.io.IOException - if an I/O exception occurs

readExternal

public void readExternal(PofReader in)
                  throws java.io.IOException
Restore the contents of a user type instance by reading its state using the specified PofReader object.
Specified by:
readExternal in interface PortableObject
Parameters:
in - the PofReader from which to read the object's state
Throws:
java.io.IOException - if an I/O error occurs

writeExternal

public void writeExternal(PofWriter out)
                   throws java.io.IOException
Save the contents of a POF user type instance by writing its state using the specified PofWriter object.
Specified by:
writeExternal in interface PortableObject
Parameters:
out - the PofWriter to which to write the object's state
Throws:
java.io.IOException - if an I/O error occurs

Skip navigation links

Oracle® Coherence Java API Reference
Release 3.7.0.0

E18683-01


Copyright © 2000, 2011, Oracle and/or its affiliates. All rights reserved.