|
Oracle® Fusion Middleware Java API Reference for Oracle Coherence 12c (12.1.3.0.0) E47890-01 |
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object
com.tangosol.util.Base
com.tangosol.util.BitHelper
com.tangosol.util.ExternalizableHelper
com.tangosol.util.extractor.AbstractExtractor
com.tangosol.util.extractor.DeserializationAccelerator
public class DeserializationAccelerator
DeserializationAccelerator is an IndexAwareExtractor
implementation that is used to create a ForwardOnlyMapIndex
, which in turn is used for deserialization optimization.
Below is an example how to use this feature to optimize deserialization for BinaryEntry.getValue()
calls:
NamedCache cache = ...; cache.addIndex(new DeserializationAccelerator( IdentityExtractor.INSTANCE), false, null);
There are two ways the DeserializationAccelerator could be used: pro-active (default) and on-demand. In the pro-active mode, the underlying ForwardOnlyMapIndex
is populated every time the index is rebuilt or updated. In the on-demand mode, the ForwardOnlyMapIndex
stores the values only when they are requested
.
Field Summary | |
---|---|
protected ValueExtractor |
m_extractor The underlying extractor. |
protected boolean |
m_fLazy The "lazy" flag. |
Fields inherited from class com.tangosol.util.extractor.AbstractExtractor |
---|
KEY, m_nTarget, VALUE |
Constructor Summary | |
---|---|
DeserializationAccelerator() Construct the DeserializationAccelerator. |
|
DeserializationAccelerator(ValueExtractor extractor) Construct the DeserializationAccelerator. |
|
DeserializationAccelerator(ValueExtractor extractor, boolean fOnDemand) Construct the DeserializationAccelerator. |
Method Summary | |
---|---|
MapIndex |
createIndex(boolean fOrdered, java.util.Comparator comparator, java.util.Map mapIndex, BackingMapContext ctx) Create an index and associate it with the corresponding extractor. |
MapIndex |
destroyIndex(java.util.Map mapIndex) Destroy an existing index and remove it from the given map of indexes. |
boolean |
equals(java.lang.Object o) Compare the ValueExtractor with another object to determine equality. |
java.lang.Object |
extract(java.lang.Object oTarget) Using a DeserializationAccelerator to extract values in not supported. |
int |
hashCode() Determine a hash value for the ValueExtractor 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. |
java.lang.String |
toString() Return a human-readable description for this DeserializationAccelerator. |
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.extractor.AbstractExtractor |
---|
compare, compareEntries, extractFromEntry, extractOriginalFromEntry |
Methods inherited from class com.tangosol.util.BitHelper |
---|
countBits, countBits, countBits, indexOfLSB, indexOfLSB, indexOfLSB, indexOfMSB, indexOfMSB, indexOfMSB, rotateLeft, rotateLeft, rotateLeft, rotateRight, rotateRight, rotateRight, toBitString, toBitString, toBitString, toBytes, toBytes, toBytes, toBytes, toInt, toInt, toLong, toLong |
Field Detail |
---|
protected ValueExtractor m_extractor
protected boolean m_fLazy
Constructor Detail |
---|
public DeserializationAccelerator()
public DeserializationAccelerator(ValueExtractor extractor)
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
public DeserializationAccelerator(ValueExtractor extractor, boolean fOnDemand)
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 |
---|
public MapIndex createIndex(boolean fOrdered, java.util.Comparator comparator, java.util.Map mapIndex, BackingMapContext ctx)
createIndex
in interface IndexAwareExtractor
fOrdered
- true iff the contents of the indexed information should be ordered; false otherwisecomparator
- the Comparator object which imposes an ordering of entries in the index contents; or null if the entries' values natural ordering should be usedmapIndex
- Map<ValueExtractor, MapIndex> to be updated with the created indexctx
- The context
the index is associate with.public MapIndex destroyIndex(java.util.Map mapIndex)
destroyIndex
in interface IndexAwareExtractor
mapIndex
- map<ValueExtractor, MapIndex> to be updated by removing the index being destroyedpublic java.lang.Object extract(java.lang.Object oTarget)
extract
in interface ValueExtractor
extract
in class AbstractExtractor
oTarget
- an Object to retrieve the value fromjava.lang.UnsupportedOperationException
- alwayspublic void readExternal(java.io.DataInput in) throws java.io.IOException
readExternal
in interface ExternalizableLite
in
- the DataInput stream to read data from in order to restore the state of this objectjava.io.IOException
- if an I/O exception occursjava.io.NotActiveException
- if the object is not in its initial state, and therefore cannot be deserialized intopublic void writeExternal(java.io.DataOutput out) throws java.io.IOException
writeExternal
in interface ExternalizableLite
out
- the DataOutput stream to write the state of this object tojava.io.IOException
- if an I/O exception occurspublic void readExternal(PofReader in) throws java.io.IOException
readExternal
in interface PortableObject
in
- the PofReader from which to read the object's statejava.io.IOException
- if an I/O error occurspublic void writeExternal(PofWriter out) throws java.io.IOException
writeExternal
in interface PortableObject
out
- the PofWriter to which to write the object's statejava.io.IOException
- if an I/O error occurspublic boolean equals(java.lang.Object o)
equals
in interface ValueExtractor
equals
in interface java.util.Comparator
o
- the reference object with which to comparepublic int hashCode()
Object.hashCode()
contract.hashCode
in interface ValueExtractor
public java.lang.String toString()
toString
in interface ValueExtractor
|
Oracle® Fusion Middleware Java API Reference for Oracle Coherence 12c (12.1.3.0.0) E47890-01 |
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |