Class Fragment<T>

java.lang.Object
com.tangosol.util.Fragment<T>
Type Parameters:
T - the type of the object this fragment represents
All Implemented Interfaces:
ExternalizableLite, PortableObject, Serializable

public class Fragment<T> extends Object implements ExternalizableLite, PortableObject
An object that represents a fragment of another object.
Since:
21.06
Author:
Aleks Seovic 2021.02.22
See Also:
  • Constructor Details

    • Fragment

      public Fragment()
      Deserialization constructor.
    • Fragment

      public Fragment(Map<String,Object> mapAttr)
      Construct Fragment instance.
      Parameters:
      mapAttr - a map of extracted attribute values, keyed by canonical name or extracted attribute position (if the name is null)
  • Method Details

    • get

      public <E> E get(ValueExtractor<? super T,? extends E> extractor)
      Get the value of the attribute extracted by the specified extractor.
      Type Parameters:
      E - the type of extracted attribute
      Parameters:
      extractor - an extractor that was used to extract an attribute
      Returns:
      the value of the attribute extracted by the specified extractor
    • get

      public <E> E get(String sName)
      Get the value of the attribute with the specified name or positional index.
      Type Parameters:
      E - the type of extracted attribute
      Parameters:
      sName - the name of the attribute, or a positional index in the $N format
      Returns:
      the value of the specified attribute
    • getFragment

      public <E> Fragment<E> getFragment(ValueExtractor<? super T,? extends E> extractor)
      Get the nested fragment extracted from the specified attribute.
      Type Parameters:
      E - the type of attribute to extract a nested fragment from
      Parameters:
      extractor - an attribute to extract a nested fragment from
      Returns:
      the fragment extracted from the specified attribute
    • getFragment

      public <E> Fragment<E> getFragment(String sName)
      Get the nested fragment extracted from the specified attribute.
      Type Parameters:
      E - the type of attribute to extract a nested fragment from
      Parameters:
      sName - an attribute to extract a nested fragment from
      Returns:
      the fragment extracted from the specified attribute
    • toMap

      public Map<String,Object> toMap()
      Convert this Fragment into a Map.

      Any nested fragments within this fragment will be recursively converted into the map as well.

      Returns:
      a Map with property names as keys, and the property values as values
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • readExternal

      public void readExternal(DataInput in) throws IOException
      Description copied from interface: ExternalizableLite
      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
    • writeExternal

      public void writeExternal(DataOutput out) throws IOException
      Description copied from interface: ExternalizableLite
      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
      Description copied from interface: PortableObject
      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
      Description copied from interface: PortableObject
      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