|
Oracle® Coherence Java API Reference Release 3.7.1.0 E22843-01 |
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object
com.tangosol.util.Base
com.tangosol.util.BitHelper
com.tangosol.util.ExternalizableHelper
com.tangosol.util.filter.MapEventFilter
public class MapEventFilter
Filter which evaluates the content of a MapEvent object according to the specified criteria. This filter is intended to be used by various ObservableMap
listeners that are interested in particular subsets of MapEvent notifications emitted by the map.
Usage examples:
new MapEventFilter(MapEventFilter.E_INSERT, new EqualsFilter("isMarried", Boolean.TRUE));
new MapEventFilter(MapEventFilter.E_DELETE);
new MapEventFilter(MapEventFilter.E_UPDATED, new EqualsFilter("LastName", "Smith"));
final Set setKeys = new HashSet(); final Filter filterEvt = new MapEventFilter(filterMap); MapListener listener = new AbstractMapListener() { public void entryInserted(MapEvent evt) { setKeys.add(evt.getKey()); } public void entryDeleted(MapEvent evt) { setKeys.remove(evt.getKey()); } }; map.addMapListener(listener, filterEvt, true); setKeys.addAll(map.keySet(filterMap));
ValueChangeEventFilter
Field Summary | |
---|---|
static int |
E_ALL This value indicates that all events should be evaluated. |
static int |
E_DELETED This value indicates that ENTRY_DELETED events should be evaluated. |
static int |
E_INSERTED This value indicates that ENTRY_INSERTED events should be evaluated. |
static int |
E_KEYSET This value indicates that all events that would affect the result of a QueryMap.keySet(com.tangosol.util.Filter) query should be evaluated. |
static int |
E_UPDATED This value indicates that ENTRY_UPDATED events should be evaluated. |
static int |
E_UPDATED_ENTERED This value indicates that ENTRY_UPDATED events should be evaluated, but only if filter evaluation is false for the old value and true for the new value. |
static int |
E_UPDATED_LEFT This value indicates that ENTRY_UPDATED events should be evaluated, but only if filter evaluation is true for the old value and false for the new value. |
static int |
E_UPDATED_WITHIN This value indicates that ENTRY_UPDATED events should be evaluated, but only if filter evaluation is true for both the old and the new value. |
protected Filter |
m_filter The event value(s) filter. |
protected int |
m_nMask The event mask. |
Constructor Summary | |
---|---|
MapEventFilter() Default constructor (necessary for the ExternalizableLite interface). |
|
MapEventFilter(Filter filter) Construct a MapEventFilter that evaluates MapEvent objects that would affect the results of a keySet filter issued by a previous call to QueryMap.keySet(com.tangosol.util.Filter) . |
|
MapEventFilter(int nMask) Construct a MapEventFilter that evaluates MapEvent objects based on the specified combination of event types. |
|
MapEventFilter(int nMask, Filter filter) Construct a MapEventFilter that evaluates MapEvent objects based on the specified combination of event types. |
Method Summary | |
---|---|
boolean |
equals(java.lang.Object o) Compare the MapEventFilter with another object to determine equality. |
boolean |
evaluate(java.lang.Object o) Apply the test to the object. |
int |
getEventMask() Obtain the event mask. |
Filter |
getFilter() Obtain the Filter object used to evaluate the event value(s). |
int |
hashCode() Determine a hash value for the MapEventFilter 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 |
Field Detail |
---|
public static final int E_INSERTED
ENTRY_INSERTED
events should be evaluated. The event will be fired if there is no filter specified or the filter evaluates to true for a new value.
public static final int E_UPDATED
ENTRY_UPDATED
events should be evaluated. The event will be fired if there is no filter specified or the filter evaluates to true when applied to either old or new value.
public static final int E_DELETED
ENTRY_DELETED
events should be evaluated. The event will be fired if there is no filter specified or the filter evaluates to true for an old value.
public static final int E_UPDATED_ENTERED
ENTRY_UPDATED
events should be evaluated, but only if filter evaluation is false for the old value and true for the new value. This corresponds to an item that was not in a keySet filter result changing such that it would now be in that keySet filter result.
public static final int E_UPDATED_LEFT
ENTRY_UPDATED
events should be evaluated, but only if filter evaluation is true for the old value and false for the new value. This corresponds to an item that was in a keySet filter result changing such that it would no longer be in that keySet filter result.
public static final int E_UPDATED_WITHIN
ENTRY_UPDATED
events should be evaluated, but only if filter evaluation is true for both the old and the new value. This corresponds to an item that was in a keySet filter result changing but not leaving the keySet filter result.
public static final int E_ALL
public static final int E_KEYSET
QueryMap.keySet(com.tangosol.util.Filter)
query should be evaluated.
protected int m_nMask
protected Filter m_filter
Constructor Detail |
---|
public MapEventFilter()
public MapEventFilter(int nMask)
Using this constructor is equivalent to: new MapEventFilter(nMask, null);
nMask
- any combination of E_INSERTED, E_UPDATED and E_DELETED, E_UPDATED_ENTERED, E_UPDATED_WITHIN, E_UPDATED_LEFTpublic MapEventFilter(Filter filter)
QueryMap.keySet(com.tangosol.util.Filter)
. It is possible to easily implement continuous query functionality.
Using this constructor is equivalent to: new MapEventFilter(E_KEYSET, filter);
filter
- the filter passed previously to a keySet() query methodpublic MapEventFilter(int nMask, Filter filter)
nMask
- combination of any of the E_* valuesfilter
- (optional) the filter used for evaluating event valuesMethod Detail |
---|
public boolean evaluate(java.lang.Object o)
evaluate
in interface Filter
o
- the object to testjava.lang.ClassCastException
- if the specified object is not an instance of MapEventpublic int getEventMask()
public Filter getFilter()
public boolean equals(java.lang.Object o)
public int hashCode()
Object.hashCode()
contract.public java.lang.String toString()
public void readExternal(java.io.DataInput in) throws java.io.IOException
readExternal
in interface ExternalizableLite
in
- the DataInput stream to read data from in order to restore the state of this objectjava.io.IOException
- if an I/O exception occursjava.io.NotActiveException
- if the object is not in its initial state, and therefore cannot be deserialized intopublic void writeExternal(java.io.DataOutput out) throws java.io.IOException
writeExternal
in interface ExternalizableLite
out
- the DataOutput stream to write the state of this object tojava.io.IOException
- if an I/O exception occurspublic void readExternal(PofReader in) throws java.io.IOException
readExternal
in interface PortableObject
in
- the PofReader from which to read the object's statejava.io.IOException
- if an I/O error occurspublic void writeExternal(PofWriter out) throws java.io.IOException
writeExternal
in interface PortableObject
out
- the PofWriter to which to write the object's statejava.io.IOException
- if an I/O error occurs
|
Oracle® Coherence Java API Reference Release 3.7.1.0 E22843-01 |
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |