Class DeserializationAccelerator

    • Field Detail

      • m_extractor

        protected ValueExtractor m_extractor
        The underlying extractor.
      • m_fLazy

        protected boolean m_fLazy
        The "lazy" flag.
    • Constructor Detail

      • DeserializationAccelerator

        public DeserializationAccelerator()
        Construct the DeserializationAccelerator.
      • DeserializationAccelerator

        public DeserializationAccelerator​(ValueExtractor extractor)
        Construct the DeserializationAccelerator.
        Parameters:
        extractor - the extractor used by this extractor to create a ForwardOnlyMapIndex; note that the created index will be associated with this extractor in the given index map; passing null is equivalent to using the IdentityExtractor
      • DeserializationAccelerator

        public DeserializationAccelerator​(ValueExtractor extractor,
                                          boolean fOnDemand)
        Construct the DeserializationAccelerator.
        Parameters:
        extractor - the extractor used by this extractor to create a ForwardOnlyMapIndex; note that the created index will be associated with this extractor in the given index map; passing null is equivalent to using the IdentityExtractor
        fOnDemand - if true, the forward index will be created "on-demand" as the values are attempted to be accessed; otherwise the forward index is populated proactively (default)
    • Method Detail

      • createIndex

        public MapIndex createIndex​(boolean fOrdered,
                                    Comparator comparator,
                                    Map mapIndex,
                                    BackingMapContext ctx)
        Create an index and associate it with the corresponding extractor. Important note: it is a responsibility of this method's implementations to place the necessary <ValueExtractor, MapIndex> entry into the given map of indexes.
        Specified by:
        createIndex in interface IndexAwareExtractor
        Parameters:
        fOrdered - true iff the contents of the indexed information should be ordered; false otherwise
        comparator - the Comparator object which imposes an ordering of entries in the index contents; or null if the entries' values natural ordering should be used
        mapIndex - Map<ValueExtractor, MapIndex> to be updated with the created index
        ctx - The context the index is associate with.
        Returns:
        the created index; null if the index has not been created
      • destroyIndex

        public MapIndex destroyIndex​(Map mapIndex)
        Destroy an existing index and remove it from the given map of indexes.
        Specified by:
        destroyIndex in interface IndexAwareExtractor
        Parameters:
        mapIndex - map<ValueExtractor, MapIndex> to be updated by removing the index being destroyed
        Returns:
        the destroyed index; null if the index does not exist
      • 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
      • hashCode

        public int hashCode()
        HashCode value is hashCode of non-null canonical name; otherwise, it is the identity hashCode value.

        Subclass computes hashCode when canonical name is null.

        Specified by:
        hashCode in interface ValueExtractor
        Overrides:
        hashCode in class AbstractExtractor
        Returns:
        hashCode when canonical name set.
      • toString

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