Package org.apache.openjpa.datacache
Class DataCachePCDataImpl
- java.lang.Object
-
- org.apache.openjpa.kernel.AbstractPCData
-
- org.apache.openjpa.kernel.PCDataImpl
-
- org.apache.openjpa.datacache.DataCachePCDataImpl
-
- All Implemented Interfaces:
java.io.Serializable,DataCachePCData,PCData
public class DataCachePCDataImpl extends PCDataImpl implements DataCachePCData
SpecializedPCDataimplementation for data caching. This implementation is properly synchronized.- Author:
- Patrick Linskey
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.apache.openjpa.kernel.AbstractPCData
NULL
-
-
Constructor Summary
Constructors Constructor Description DataCachePCDataImpl(java.lang.Object oid, ClassMetaData meta)DataCachePCDataImpl(java.lang.Object oid, ClassMetaData meta, java.lang.String name)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclearData(int index)protected voidclearInverseRelationCache(OpenJPAStateManager sm, FieldMetaData fmd)Check if this field is in use of "order by" by other field collections in inverse relation.java.lang.ObjectgetData(int index)Return the data stored in the given field index.java.lang.ObjectgetImplData()Returns the instance-level impl data, or null if none.java.lang.ObjectgetImplData(int index)java.lang.ObjectgetIntermediate(int index)longgetTimeOut()Gets the original timeout of this instance.java.lang.ObjectgetVersion()Returns the current version object that this data was loaded from.booleanisLoaded(int index)Whether the given field index has stored data.booleanisTimedOut()Whether this data is timed out.AbstractPCDatanewEmbeddedPCData(OpenJPAStateManager sm)Return a newPCDataimplementation of the right type for embedded instances.voidsetData(int index, java.lang.Object val)voidsetImplData(int index, java.lang.Object val)voidsetImplData(java.lang.Object val)Sets the stored instance-level impl data.voidsetIntermediate(int index, java.lang.Object val)voidsetLoaded(int index, boolean loaded)voidsetVersion(java.lang.Object version)Sets the current version object that this data was loaded from.voidstore(OpenJPAStateManager sm)Store all loaded fields of the state manager.voidstore(OpenJPAStateManager sm, java.util.BitSet fields)Store the given fields from the state manager.protected voidstoreField(OpenJPAStateManager sm, FieldMetaData fmd)Store field-level information from the given state manager.protected java.lang.ObjecttoData(FieldMetaData fmd, java.lang.Object val, StoreContext ctx)Transform the given field value to a data value for caching.protected java.lang.ObjecttoNestedData(ValueMetaData vmd, java.lang.Object val, StoreContext ctx)Transform the given nested value to a cachable value.-
Methods inherited from class org.apache.openjpa.kernel.PCDataImpl
getCache, getId, getLoaded, getType, load, load, loadField, loadImplData, loadImplData, loadIntermediate, loadVersion, storeImplData, storeImplData, storeIntermediate, storeVersion
-
Methods inherited from class org.apache.openjpa.kernel.AbstractPCData
toEmbeddedData, toEmbeddedField, toField, toNestedField, toNestedFields, toRelationData, toRelationField, toRelationFields
-
-
-
-
Constructor Detail
-
DataCachePCDataImpl
public DataCachePCDataImpl(java.lang.Object oid, ClassMetaData meta)
-
DataCachePCDataImpl
public DataCachePCDataImpl(java.lang.Object oid, ClassMetaData meta, java.lang.String name)Constructor.
-
-
Method Detail
-
isTimedOut
public boolean isTimedOut()
Description copied from interface:DataCachePCDataWhether this data is timed out.- Specified by:
isTimedOutin interfaceDataCachePCData
-
getTimeOut
public long getTimeOut()
Description copied from interface:DataCachePCDataGets the original timeout of this instance.- Specified by:
getTimeOutin interfaceDataCachePCData- Returns:
- -1 for no timeout ever.
-
getData
public java.lang.Object getData(int index)
Description copied from interface:PCDataReturn the data stored in the given field index.- Specified by:
getDatain interfacePCData- Overrides:
getDatain classPCDataImpl
-
setData
public void setData(int index, java.lang.Object val)- Overrides:
setDatain classPCDataImpl
-
clearData
public void clearData(int index)
- Overrides:
clearDatain classPCDataImpl
-
getImplData
public java.lang.Object getImplData()
Description copied from interface:PCDataReturns the instance-level impl data, or null if none.- Specified by:
getImplDatain interfacePCData- Overrides:
getImplDatain classPCDataImpl
-
setImplData
public void setImplData(java.lang.Object val)
Description copied from interface:PCDataSets the stored instance-level impl data.- Specified by:
setImplDatain interfacePCData- Overrides:
setImplDatain classPCDataImpl
-
getImplData
public java.lang.Object getImplData(int index)
- Overrides:
getImplDatain classPCDataImpl
-
setImplData
public void setImplData(int index, java.lang.Object val)- Overrides:
setImplDatain classPCDataImpl
-
getIntermediate
public java.lang.Object getIntermediate(int index)
- Overrides:
getIntermediatein classPCDataImpl
-
setIntermediate
public void setIntermediate(int index, java.lang.Object val)- Overrides:
setIntermediatein classPCDataImpl
-
isLoaded
public boolean isLoaded(int index)
Description copied from interface:PCDataWhether the given field index has stored data.- Specified by:
isLoadedin interfacePCData- Overrides:
isLoadedin classPCDataImpl
-
setLoaded
public void setLoaded(int index, boolean loaded)- Overrides:
setLoadedin classPCDataImpl
-
getVersion
public java.lang.Object getVersion()
Description copied from interface:PCDataReturns the current version object that this data was loaded from.- Specified by:
getVersionin interfacePCData- Overrides:
getVersionin classPCDataImpl
-
setVersion
public void setVersion(java.lang.Object version)
Description copied from interface:PCDataSets the current version object that this data was loaded from.- Specified by:
setVersionin interfacePCData- Overrides:
setVersionin classPCDataImpl
-
store
public void store(OpenJPAStateManager sm)
Description copied from interface:PCDataStore all loaded fields of the state manager.- Specified by:
storein interfacePCData- Overrides:
storein classPCDataImpl
-
store
public void store(OpenJPAStateManager sm, java.util.BitSet fields)
Description copied from interface:PCDataStore the given fields from the state manager.- Specified by:
storein interfacePCData- Overrides:
storein classPCDataImpl
-
storeField
protected void storeField(OpenJPAStateManager sm, FieldMetaData fmd)
Store field-level information from the given state manager. Special process of checking if the cached collection data is out of order.- Overrides:
storeFieldin classPCDataImpl
-
clearInverseRelationCache
protected void clearInverseRelationCache(OpenJPAStateManager sm, FieldMetaData fmd)
Check if this field is in use of "order by" by other field collections in inverse relation. If it is, clear the other field cache because it could be out of order.
-
toData
protected java.lang.Object toData(FieldMetaData fmd, java.lang.Object val, StoreContext ctx)
Description copied from class:AbstractPCDataTransform the given field value to a data value for caching. ReturnAbstractPCData.NULLif unable to cache.- Overrides:
toDatain classAbstractPCData
-
toNestedData
protected java.lang.Object toNestedData(ValueMetaData vmd, java.lang.Object val, StoreContext ctx)
Description copied from class:AbstractPCDataTransform the given nested value to a cachable value. ReturnAbstractPCData.NULLif the value cannot be cached.- Overrides:
toNestedDatain classAbstractPCData
-
newEmbeddedPCData
public AbstractPCData newEmbeddedPCData(OpenJPAStateManager sm)
Description copied from class:PCDataImplReturn a newPCDataimplementation of the right type for embedded instances. Returns aPCDataImplby default.- Overrides:
newEmbeddedPCDatain classPCDataImpl
-
-