|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
public interface ICloneModificationHistoryExtension
Extension object which is used by the IStoreProvider to attach CloneDiff
data of all modifications since the last event on generation of CloneModificationEvents and which
can also be used to retrieve a list of all modifications made to a clone since its creation.
The IStoreProvider will also process this extension for all calls to
IStoreProvider.addClone(IClone) or
IStoreProvider.updateClone(IClone, UpdateMode).
Any CloneDiff objects present will be added to the internal modification history of the store provider and can
be retrieved by a call to IStoreProvider.getFullCloneObjectExtension(ICloneObject, Class) at any time.
This extension is persisted and lazily restored, see ICloneObjectExtensionLazyMultiStatefulObject.
Used by the IStoreProvider and the CPC Notification module.
Important: All implementations of this interface also need to implement IStoreCloneModificationHistoryExtension!
IStoreCloneModificationHistoryExtension,
IStoreProvider.getFullCloneObjectExtension(ICloneObject, Class),
IStoreProvider.releaseWriteLock(),
IStoreProvider.LockMode,
IStoreProvider.addClone(IClone),
IStoreProvider.updateClone(IClone, UpdateMode),
CloneDiff,
CloneModificationEvent,
ICloneObjectExtensionLazyMultiStatefulObject| Method Summary | |
|---|---|
void |
addCloneDiff(CloneDiff cloneDiff)
Adds a new CloneDiff object to this clone modification history extension. |
void |
addCloneDiffs(java.util.List<CloneDiff> cloneDiffs)
Adds a list of new CloneDiff objects to this clone modification history extension. |
void |
addCloneDiffs(java.util.SortedSet<CloneDiff> cloneDiffs)
Adds a list of new CloneDiff objects to this clone modification history extension. |
void |
clearCloneDiffs()
Removes all CloneDiff objects from this clone modification history extension. |
java.util.List<CloneDiff> |
getCloneDiffs()
Yields a list of all modifications ( CloneDiffs) made to this clone object. |
java.util.List<CloneDiff> |
getCloneDiffsForTransaction()
Yields a list of all modifications ( CloneDiffs) made to this clone object
since the last call of IStoreCloneModificationHistoryExtension.endOfTransaction(). |
java.util.Date |
getValidCreationDate()
Returns the the next valid creation date for use in a CloneDiff element
for this extension. |
| 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 |
|---|
java.util.List<CloneDiff> getCloneDiffs()
CloneDiffs) made to this clone object.
java.util.List<CloneDiff> getCloneDiffsForTransaction()
CloneDiffs) made to this clone object
since the last call of IStoreCloneModificationHistoryExtension.endOfTransaction().
CloneDiffs which were added to this
extension since the last CloneModificationEvent in which this clone was marked as
modified.
java.util.Date getValidCreationDate()
CloneDiff element
for this extension.
This is either the current time or, if another CloneDiff element with that
creation date already exists, the current time incremented by a couple of milliseconds.
This is important in order for a user of this extension to ensure that no two
CloneDiff elements with the same creation date are added.
CloneDiff element, never null.void addCloneDiff(CloneDiff cloneDiff)
CloneDiff object to this clone modification history extension.
CloneDiffs may only be added in correct time order (youngest first).
cloneDiff - the clone diff to add, never null.
java.lang.IllegalArgumentException - if cloneDiff is younger than the oldest existing CloneDiff element.void addCloneDiffs(java.util.List<CloneDiff> cloneDiffs)
CloneDiff objects to this clone modification history extension.
CloneDiffs may only be added in correct time order (youngest first).
cloneDiffs - a list of CloneDiff objects to add, never null.
java.lang.IllegalArgumentException - if an added cloneDiff is younger than the oldest existing CloneDiff element.void addCloneDiffs(java.util.SortedSet<CloneDiff> cloneDiffs)
CloneDiff objects to this clone modification history extension.
CloneDiffs may only be added in correct time order (youngest first).
cloneDiffs - a sorted set of CloneDiff objects to add, never null.
java.lang.IllegalArgumentException - if an added cloneDiff is younger than the oldest existing CloneDiff element.
void clearCloneDiffs()
throws java.lang.IllegalStateException
CloneDiff objects from this clone modification history extension.
ICloneObjectExtension.isPartial() is false).
This method is typically used when the clone history is either to be completely purged or to be replaced by some composite diffs.
java.lang.IllegalStateException - is ICloneObjectExtension.isPartial() is true.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||