Class PropertyManipulator<V,​R>

    • Field Detail

      • m_sName

        protected String m_sName
        The property name, never null.
      • m_fUseIs

        protected boolean m_fUseIs
        The getter prefix flag.
      • m_extractor

        protected transient ValueExtractor<V,​R> m_extractor
        The underlying ValueExtractor.
      • m_updater

        protected transient ValueUpdater<V,​R> m_updater
        The underlying ValueUpdater.
    • Constructor Detail

      • PropertyManipulator

        public PropertyManipulator()
        Default constructor (necessary for the ExternalizableLite interface).
      • PropertyManipulator

        public PropertyManipulator​(String sName)
        Construct a PropertyManipulator 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
      • PropertyManipulator

        public PropertyManipulator​(String sName,
                                   boolean fUseIs)
        Construct a PropertyManipulator 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"
    • Method Detail

      • init

        protected void init()
        Parse the property name and initialize necessary extractor and updator.
      • equals

        public boolean equals​(Object o)
        Compare the PropertyManipulator with another object to determine equality.
        Overrides:
        equals in class Object
        Returns:
        true iff this PropertyManipulator and the passed object are equivalent PropertyManipulators
      • hashCode

        public int hashCode()
        Determine a hash value for the PropertyManipulator object according to the general Object.hashCode() contract.
        Overrides:
        hashCode in class Object
        Returns:
        an integer hash value for this PropertyManipulator object
      • toString

        public String toString()
        Return a human-readable description for this PropertyManipulator.
        Overrides:
        toString in class Object
        Returns:
        a String description of the PropertyManipulator
      • readExternal

        public void readExternal​(DataInput in)
                          throws 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:
        IOException - if an I/O exception occurs
        NotActiveException - if the object is not in its initial state, and therefore cannot be deserialized into
      • writeExternal

        public void writeExternal​(DataOutput out)
                           throws 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:
        IOException - if an I/O exception occurs
      • readExternal

        public void readExternal​(PofReader in)
                          throws 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:
        IOException - if an I/O error occurs
      • writeExternal

        public void writeExternal​(PofWriter out)
                           throws 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:
        IOException - if an I/O error occurs