Overview | Package | Class | Tree | Index | Help

Oracle® Coherence Java API Reference
v3.5.3
E15583-01
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.tangosol.util.filter
Class ArrayFilter

    java.lang.Object
      com.tangosol.util.Base
          com.tangosol.util.BitHelper
              com.tangosol.util.ExternalizableHelper
                  com.tangosol.util.filter.ArrayFilter

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

Direct Known Subclasses:
  AllFilter, AnyFilter, XorFilter

    public abstract class ArrayFilter

extends ExternalizableHelper
implements IndexAwareFilter, ExternalizableLite, PortableObject

Filter which is a logical operator of a filter array.

Author:
  cp/gg 2002.11.01

Nested Class Summary
`protected static class` | `ArrayFilter.WeightedFilter` A thin wrapper around a Filter allowing for sorting the filters according to their effectiveness.

Field Summary
`protected Filter[]` | `m_aFilter` The Filter array.

Constructor Summary
`ArrayFilter()` Default constructor (necessary for the ExternalizableLite interface).
`ArrayFilter(Filter[] aFilter)` Construct a logical filter that applies a binary operator to a filter array.

Method Summary
`protected Filter` | `applyFilter(IndexAwareFilter filter, java.util.Map mapIndexes, java.util.Set setKeys)` Apply the specified IndexAwareFilter to the specified keySet.
`protected ArrayFilter.WeightedFilter[]` | `calculateFilters(java.util.Map mapIndexes, java.util.Set setKeys)` Calculate the effectiveness and sort all the participating filters according to their effectiveness.
`boolean` | `equals(java.lang.Object o)` Compare the ArrayFilter with another object to determine equality.
`Filter[]` | `getFilters()` Obtain the Filter array.
`int` | `hashCode()` Determine a hash value for the ArrayFilter 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`

Methods inherited from interface com.tangosol.util.filter.IndexAwareFilter
`applyIndex, calculateEffectiveness`

Methods inherited from interface com.tangosol.util.filter.EntryFilter
`evaluateEntry`

Methods inherited from interface com.tangosol.util.Filter
`evaluate`

Field Detail

### m_aFilter

    protected Filter[] m_aFilter

  The Filter array.

Constructor Detail

### ArrayFilter

    public ArrayFilter()

  Default constructor (necessary for the ExternalizableLite interface).

### ArrayFilter

    public ArrayFilter(Filter[] aFilter)

  Construct a logical filter that applies a binary operator to a filter array. The result is defined as:

  > aFilter[0] <op> aFilter[1] ... <op> aFilter[n]

  Parameters:
    `aFilter` - the filter array

Method Detail

### getFilters

    public Filter[] getFilters()

  Obtain the Filter array.

  Returns:
    the Filter array

### calculateFilters

    protected ArrayFilter.WeightedFilter[] calculateFilters(java.util.Map mapIndexes,
                                                            java.util.Set setKeys)

  Calculate the effectiveness and sort all the participating filters according to their effectiveness.

  Parameters:
    `mapIndexes` - the available MapIndex objects keyed by the related ValueExtractor; read-only
    `setKeys` - the set of keys that will be filtered; read-only
  Returns:
    the array of WeightedFilter objects sorted by the effectiveness (the most effective in the front)

### applyFilter

    protected Filter applyFilter(IndexAwareFilter filter,
                                 java.util.Map mapIndexes,
                                 java.util.Set setKeys)

  Apply the specified IndexAwareFilter to the specified keySet.

  Parameters:
    `filter` - the IndexAwareFilter to apply an index to
    `mapIndexes` - the available MapIndex objects keyed by the related ValueExtractor; read-only
    `setKeys` - the mutable set of keys that remain to be filtered
  Returns:
    a Filter object that can be used to process the remaining keys, or null if no additional filter processing is necessary

### equals

    public boolean equals(java.lang.Object o)

  Compare the ArrayFilter with another object to determine equality. Two ArrayFilter objects are considered equal iff they belong to exactly the same class and their filter arrays are equal.

  Returns:
    true iff this ArrayFilter and the passed object are equivalent ArrayFilters

### hashCode

    public int hashCode()

  Determine a hash value for the ArrayFilter object according to the general `Object.hashCode()` contract.

  Returns:
    an integer hash value for this ArrayFilter 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

Overview | Package | Class | Tree | Index | Help

Oracle® Coherence Java API Reference
v3.5.3
E15583-01
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000, 2010, Oracle. All rights reserved.