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.processor
Class PropertyProcessor

    java.lang.Object
      com.tangosol.util.Base
          com.tangosol.util.processor.AbstractProcessor
              com.tangosol.util.processor.PropertyProcessor

All Implemented Interfaces:
  ExternalizableLite, PortableObject, InvocableMap.EntryProcessor, java.io.Serializable

Direct Known Subclasses:
  NumberIncrementor, NumberMultiplier

    public abstract class PropertyProcessor

extends AbstractProcessor
implements ExternalizableLite, PortableObject

PropertyProcessor is a base class for EntryProcessor implementations that depend on a ValueManipulator.

Any concrete subclass would have to implement the methods of `ExternalizableLite` interface calling the appropriate super class implementations first.

A typical concrete subclass would also implement the `process()` method using the following pattern:

      public Object process(InvocableMap.Entry entry)
        {
        // retrieve an old property value
        Object oOldValue = get(entry);

        ... // calculate a new value and the process result
        ... // based on the old value and the processor's attributes

        if (!oNewValue.equals(oOldValue))
          {
          // set the new property value
          set(entry, oNewValue);
          }

        // return the process result
        return oResult;
        }

Author:
  gg 2005.10.31

Field Summary
`protected ValueManipulator` | `m_manipulator` The property value manipulator.

Constructor Summary
`PropertyProcessor()` Default constructor (necessary for the ExternalizableLite interface).
`PropertyProcessor(java.lang.String sName)` Construct a PropertyProcessor for the specified property name.
`PropertyProcessor(java.lang.String sName, boolean fUseIs)` Construct a PropertyProcessor for the specified property name.
`PropertyProcessor(ValueManipulator manipulator)` Construct a PropertyProcessor based for the specified ValueManipulator.

Method Summary
`boolean` | `equals(java.lang.Object o)` Compare the PropertyProcessor with another object to determine equality.
`protected java.lang.Object` | `get(InvocableMap.Entry entry)` Get the property value from the passed Entry object.
`protected abstract java.lang.String` | `getDescription()` Returns this PropertyProcessor's description.
`int` | `hashCode()` Determine a hash value for the PropertyProcessor 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.
`protected void` | `set(InvocableMap.Entry entry, java.lang.Object oValue)` Set the property value into the passed Entry object.
`java.lang.String` | `toString()` Return a human-readable description for this PropertyProcessor.
`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.processor.AbstractProcessor
`processAll`

Methods inherited from interface com.tangosol.util.InvocableMap.EntryProcessor
`process`

Field Detail

### m_manipulator

    protected ValueManipulator m_manipulator

  The property value manipulator.

Constructor Detail

### PropertyProcessor

    public PropertyProcessor()

  Default constructor (necessary for the ExternalizableLite interface).

### PropertyProcessor

    public PropertyProcessor(java.lang.String sName)

  Construct a PropertyProcessor for the specified property name.

  This constructor assumes that the corresponding property getter will have a name of ("get" + sName) and the corresponding property setter's name will be ("set + sName).

  Parameters:
    `sName` - a property name

### PropertyProcessor

    public PropertyProcessor(java.lang.String sName,
                             boolean fUseIs)

  Construct a PropertyProcessor for the specified property name.

  This constructor assumes that the corresponding property getter will have a name of either ("get" + sName) or ("is + sName) and the corresponding property setter's name will be ("set + sName).

  Parameters:
    `sName` - a property name
    `fUseIs` - if true, the getter method will be prefixed with "is" rather than "get"

### PropertyProcessor

    public PropertyProcessor(ValueManipulator manipulator)

  Construct a PropertyProcessor based for the specified ValueManipulator.

  Parameters:
    `manipulator` - a ValueManipulator; could be null

Method Detail

### get

    protected java.lang.Object get(InvocableMap.Entry entry)

  Get the property value from the passed Entry object.

  Parameters:
    `entry` - the Entry object
  Returns:
    the property value
  See Also:
    `ValueExtractor.extract(java.lang.Object)`

### set

    protected void set(InvocableMap.Entry entry,
                       java.lang.Object oValue)

  Set the property value into the passed Entry object.

  Parameters:
    `entry` - the Entry object
    `oValue` - a new property value
  See Also:
    `ValueUpdater.update(java.lang.Object, java.lang.Object)`

### getDescription

    protected abstract java.lang.String getDescription()

  Returns this PropertyProcessor's description.

  Returns:
    this PropertyProcessor's description

### equals

    public boolean equals(java.lang.Object o)

  Compare the PropertyProcessor with another object to determine equality.

  Returns:
    true iff this PropertyProcessor and the passed object are equivalent PropertyProcessors

### hashCode

    public int hashCode()

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

  Returns:
    an integer hash value for this PropertyProcessor object

### toString

    public java.lang.String toString()

  Return a human-readable description for this PropertyProcessor.

  Returns:
    a String description of the PropertyProcessor

### 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.