org.electrocodeogram.cpc.core.api.data.special
Interface ICloneObjectExtensionLazyMultiStatefulObject

All Superinterfaces:
java.lang.Cloneable, ICloneDataElement, ICloneObjectExtension, ICloneObjectExtensionMultiStatefulObject, ICloneObjectExtensionStatefulObject, IStatefulObject, java.io.Serializable

public interface ICloneObjectExtensionLazyMultiStatefulObject
extends ICloneObjectExtensionMultiStatefulObject

Extension of the ICloneObjectExtensionMultiStatefulObject interface.
By implementing this interface, an ICloneObjectExtension indicates that the additional sub-elements should not be automatically restored from the database during a normal lookup.

This is especially useful for ICloneObjectExtensions with a large number of sub-elements which would use up considerable amounts of memory, if they were always loaded into memory by default.
One example is the ICloneModificationHistoryExtension.

The IStoreProvider.getFullCloneObjectExtension(org.electrocodeogram.cpc.core.api.data.ICloneObject, Class) method can be used to retrieve all sub-element data for a lazy loaded extension object.

Author:
vw
See Also:
ICloneObjectExtensionMultiStatefulObject, ICloneObjectExtensionStatefulObject, IStatefulObject, ICloneObjectExtension, ICloneModificationHistoryExtension, IStoreProvider.getFullCloneObjectExtension(org.electrocodeogram.cpc.core.api.data.ICloneObject, Class)

Field Summary
 
Fields inherited from interface org.electrocodeogram.cpc.core.api.data.special.ICloneObjectExtensionMultiStatefulObject
DELETION_MARK_IDENTIFIER
 
Fields inherited from interface org.electrocodeogram.cpc.core.api.data.special.ICloneObjectExtensionStatefulObject
PERSISTENCE_OBJECT_IDENTIFIER
 
Method Summary
 void setPartial(boolean partial)
          Sets the partial state of this extension.
 
Methods inherited from interface org.electrocodeogram.cpc.core.api.data.special.ICloneObjectExtensionMultiStatefulObject
getMultiPersistenceClassIdentifier, getMultiPersistenceObjectIdentifier, getMultiState, getMultiStateTypes, purgeDeletedEntries, setMultiState
 
Methods inherited from interface org.electrocodeogram.cpc.core.api.data.special.ICloneObjectExtensionStatefulObject
getPersistenceParentClassIdentifier, isDirty, setDirty
 
Methods inherited from interface org.electrocodeogram.cpc.core.api.data.special.IStatefulObject
getPersistenceClassIdentifier, getPersistenceObjectIdentifier, getState, getStateTypes, setState
 
Methods inherited from interface org.electrocodeogram.cpc.core.api.data.ICloneObjectExtension
clone, getExtensionInterfaceClass, isPartial, setParentUuid, toString
 
Methods inherited from interface org.electrocodeogram.cpc.core.api.data.ICloneDataElement
isSealed, seal
 

Method Detail

setPartial

void setPartial(boolean partial)
Sets the partial state of this extension.

IMPORTANT: This method must only be used by the persistence provider.

Parameters:
partial - true if there might be additional sub-element data in persistent storage, false otherwise.
See Also:
ICloneObjectExtension.isPartial()