|
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 | |||||||
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 java.util.Map |
m_map
Specifies the map of new values. |
| Constructor Summary | |
|---|---|
ConditionalPutAll()
Default constructor (necessary for the ExternalizableLite interface). |
|
ConditionalPutAll(Filter filter,
java.util.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(java.lang.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. |
java.lang.Object |
process(InvocableMap.Entry entry)
Process a Map.Entry object. |
java.util.Map |
processAll(java.util.Set setEntries)
Process a Set of InvocableMap.Entry objects. This method is semantically equivalent to:
Map mapResults = new ListMap();
for (Iterator iter = setEntries.iterator(); iter.hasNext(); )
{
Entry entry = (Entry) iter.next();
mapResults.put(entry.getKey(), process(entry));
}
return mapResults;
|
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 ConditionalPutAll. |
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. |
| Field Detail |
|---|
protected Filter m_filter
protected java.util.Map m_map
| Constructor Detail |
|---|
public ConditionalPutAll()
public ConditionalPutAll(Filter filter,
java.util.Map map)
filter - the filter to evaluate all supplied entriesmap - a map of values to update entries with| Method Detail |
|---|
public java.lang.Object process(InvocableMap.Entry entry)
process in interface InvocableMap.EntryProcessorentry - the Entry to process
public java.util.Map processAll(java.util.Set setEntries)
Map mapResults = new ListMap();
for (Iterator iter = setEntries.iterator(); iter.hasNext(); )
{
Entry entry = (Entry) iter.next();
mapResults.put(entry.getKey(), process(entry));
}
return mapResults;
processAll in interface InvocableMap.EntryProcessorprocessAll in class AbstractProcessorsetEntries - a read-only Set of InvocableMap.Entry objects to
process
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 ExternalizableLitein - the DataInput stream to read data from in order to restore
the state of this object
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
public void writeExternal(java.io.DataOutput out)
throws java.io.IOException
writeExternal in interface ExternalizableLiteout - the DataOutput stream to write the state of this object to
java.io.IOException - if an I/O exception occurs
public void readExternal(PofReader in)
throws java.io.IOException
readExternal in interface PortableObjectin - the PofReader from which to read the object's state
java.io.IOException - if an I/O error occurs
public void writeExternal(PofWriter out)
throws java.io.IOException
writeExternal in interface PortableObjectout - the PofWriter to which to write the object's state
java.io.IOException - if an I/O error occurs
|
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 | |||||||