Class ScriptValueExtractor<T,E>

Type Parameters:
T - the type of the value to extract from
E - the type of value that will be extracted
All Implemented Interfaces:
CanonicallyNamed, ExternalizableLite, PortableObject, QueryMapComparator, Remote.Function<T,E>, Remote.ToDoubleFunction<T>, Remote.ToIntFunction<T>, Remote.ToLongFunction<T>, ValueExtractor<T,E>, Serializable, Comparator, Function<T,E>, ToDoubleFunction<T>, ToIntFunction<T>, ToLongFunction<T>

public class ScriptValueExtractor<T,E> extends AbstractExtractor<T,E> implements ExternalizableLite, PortableObject
ScriptValueExtractor is an AbstractExtractor that wraps a script written in one of the languages supported by Graal VM.
Since:
14.1.1.0
Author:
mk 2019.07.26
See Also:
  • Constructor Details

    • ScriptValueExtractor

      public ScriptValueExtractor()
      Default constructor for deserialization.
    • ScriptValueExtractor

      public ScriptValueExtractor(String sLanguage, String sName, Object... aoArgs)
      Create a ValueExtractor that wraps the specified script.
      Parameters:
      sLanguage - the language the script is written
      sName - the name of the ValueExtractor that needs to be evaluated
      aoArgs - the arguments to be passed to the script during evaluation
  • Method Details

    • extract

      public E extract(T target)
      Description copied from interface: ValueExtractor
      Extract the value from the passed object. The returned value may be null. For intrinsic types, the returned value is expected to be a standard wrapper type in the same manner that reflection works; for example, int would be returned as a java.lang.Integer.
      Specified by:
      extract in interface ValueExtractor<T,E>
      Overrides:
      extract in class AbstractExtractor<T,E>
      Parameters:
      target - the object to extract the value from
      Returns:
      the extracted value; null is an acceptable value
    • 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