|
CoherenceTM v3.3 Copyright© 2000-2007 by Oracle Corporation |
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Objectcom.tangosol.util.Base
com.tangosol.util.processor.AbstractProcessor
com.tangosol.util.processor.ConditionalPutAll
public class ConditionalPutAll
ConditionalPutAll is an EntryProcessor that performs a
Entry.setValue operation for multiple entries that satisfy the specified
condition.
invokeAll(keys, processor) API. For example, the
replaceAll(map) method could be implemented as:
filter = PresentFilter.INSTANCE; cache.invokeAll(map.keySet(), new ConditionalPutAll(filter, map));and the putAllIfAbsent(map) could be done by inverting the filter:
filter = new NotFilter(PresentFilter.INSTANCE);Obviously, using more specific, fine-tuned filters may provide additional flexibility and efficiency allowing the multi-put operations to be performed conditionally on values of specific attributes (or even calculations) instead of a simple existence check.
| Field Summary | |
|---|---|
protected Filter |
m_filter
The underlying filter. |
protected Map |
m_map
Specifies the map of new values. |
| Constructor Summary | |
|---|---|
ConditionalPutAll()
Default constructor (necessary for the ExternalizableLite interface). |
|
ConditionalPutAll(Filter filter,
Map map)
Construct a ConditionalPutAll processor that updates an entry with a new value if and only if the filter applied to the entry evaluates to true. |
|
| Method Summary | |
|---|---|
boolean |
equals(Object o)
Compare the ConditionalPutAll with another object to determine equality. |
int |
hashCode()
Determine a hash value for the ConditionalPutAll object according to the general Object.hashCode() contract. |
Object |
process(InvocableMap.Entry entry)
Process a Map.Entry object. |
void |
readExternal(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. |
String |
toString()
Return a human-readable description for this ConditionalPutAll. |
void |
writeExternal(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.processor.AbstractProcessor |
|---|
processAll |
| Field Detail |
|---|
protected Filter m_filter
protected Map m_map
| Constructor Detail |
|---|
public ConditionalPutAll()
public ConditionalPutAll(Filter filter,
Map map)
filter - the filter to evaluate all supplied entriesmap - a map of values to update entries with| Method Detail |
|---|
public Object process(InvocableMap.Entry entry)
process in interface InvocableMap.EntryProcessorentry - the Entry to process
public boolean equals(Object o)
public int hashCode()
Object.hashCode() contract.
public String toString()
public void readExternal(DataInput in)
throws IOException
readExternal in interface ExternalizableLitein - the DataInput stream to read data from in order to restore
the state of this object
IOException - if an I/O exception occurs
NotActiveException - if the object is not in its initial
state, and therefore cannot be deserialized into
public void writeExternal(DataOutput out)
throws IOException
writeExternal in interface ExternalizableLiteout - the DataOutput stream to write the state of this object to
IOException - if an I/O exception occurs
public void readExternal(PofReader in)
throws IOException
readExternal in interface PortableObjectin - the PofReader from which to read the object's state
IOException - if an I/O error occurs
public void writeExternal(PofWriter out)
throws IOException
writeExternal in interface PortableObjectout - the PofWriter to which to write the object's state
IOException - if an I/O error occurs
|
CoherenceTM v3.3 Copyright© 2000-2007 by Oracle Corporation |
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||