|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.processmining.framework.log.classic.AuditTrailEntryListProxy
public class AuditTrailEntryListProxy
This class implements a lightweight proxy, which transparently maps the actual
AuditTrailEntryList
interface to the legacy AuditTrailEntries
interface.
AuditTrailEntries
Constructor Summary | |
---|---|
AuditTrailEntryListProxy(AuditTrailEntries ateList)
Creates a new proxy instance, backed by the provided audit trail entry list and with its iterator set to the specified position in the list. |
Method Summary | |
---|---|
int |
append(AuditTrailEntry ate)
Appends a given audit trail entry to the end of the list. |
void |
cleanup()
Frees all resources associated with this instance. |
AuditTrailEntryList |
cloneInstance()
Returns a deep copy of this list of audit trail entries. |
boolean |
consolidate()
Consolidates this object, and transforms it into an optimized state. |
AuditTrailEntry |
get(int index)
Retrieves the audit trail entry located at the given position, i.e. |
void |
insert(AuditTrailEntry ate,
int index)
Inserts the given audit trail entry at the given logical position, or index, within the list. |
int |
insertOrdered(AuditTrailEntry ate)
Inserts the given audit trail entry at the correct order position, depending on its timestamp. |
boolean |
isTainted()
Probes whether the implementing structure is in a tainted state. |
java.util.Iterator |
iterator()
Retrieves an iterator on this list. |
AuditTrailEntry |
remove(int index)
Removes the audit trail entry at the given position, or index, from the list |
AuditTrailEntry |
replace(AuditTrailEntry newAte,
int index)
Replaces the audit trail entry at the given position by another provided audit trail entry |
int |
size()
Returns the current size of this audit trail entry list. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public AuditTrailEntryListProxy(AuditTrailEntries ateList)
ateList
- startPosition
- Method Detail |
---|
public int size()
AuditTrailEntryList
size
in interface AuditTrailEntryList
public AuditTrailEntry get(int index) throws java.lang.IndexOutOfBoundsException, java.io.IOException
AuditTrailEntryList
The usage contract for indices in this context is, that the given value must reside
within [0, size() - 1]
.
get
in interface AuditTrailEntryList
index
- Position of the requested audit trail entry (within [0, size() - 1]
)
java.lang.IndexOutOfBoundsException
- Thrown when given index is invalid
java.io.IOException
- Thrown on general I/O failurespublic java.util.Iterator iterator()
AuditTrailEntryList
Warning: Iterators on audit trail entry lists are not required to be consistent. When the list is modified during the lifetime of an iterator, this iterator becomes inconsistent and may return wrong results or perform in unexpected manner. You are advised to use modifying iterators exclusively, and not perform modifying operations on the list while using the iterator. Multiple read-only iterators on the same list will perform independently, each as expected.
iterator
in interface AuditTrailEntryList
public int append(AuditTrailEntry ate) throws java.io.IOException
AuditTrailEntryList
append
in interface AuditTrailEntryList
ate
- The audit trail entry to append to the list.
java.io.IOException
- Thrown on I/O failurepublic void insert(AuditTrailEntry ate, int index) throws java.lang.IndexOutOfBoundsException, java.io.IOException
AuditTrailEntryList
insert
in interface AuditTrailEntryList
ate
- The audit trail entry to be inserted.index
- Index, or position within the list, at which to insert the audit trail entry.
Must be within [0, size()]
.
java.lang.IndexOutOfBoundsException
- Thrown if the given index is not within [0, size()]
.
java.io.IOException
- Thrown on I/O failure.public int insertOrdered(AuditTrailEntry ate) throws java.io.IOException
AuditTrailEntryList
insertOrdered
in interface AuditTrailEntryList
ate
- The audit trail entry to be inserted
java.io.IOException
public AuditTrailEntry remove(int index) throws java.lang.IndexOutOfBoundsException, java.io.IOException
AuditTrailEntryList
remove
in interface AuditTrailEntryList
index
- Position of the audit trail entry to be removed (within [0, size() - 1]
).
java.lang.IndexOutOfBoundsException
- Thrown if the given index is not within [0, size() - 1]
.
java.io.IOException
public AuditTrailEntry replace(AuditTrailEntry newAte, int index) throws java.lang.IndexOutOfBoundsException, java.io.IOException
AuditTrailEntryList
replace
in interface AuditTrailEntryList
newAte
- Audit trail entry to be inserted at the specified index.index
- Index at which the current audit trail entry is removed, and the provided one
is inserted. Must be within [0, size() - 1]
.
java.lang.IndexOutOfBoundsException
- Thrown if the index is not within [0, size() - 1]
.
java.io.IOException
- Thrown on I/O failure.public boolean isTainted()
AuditTrailEntryList
Tainted, in this context, is defined as not being structured in an optimal
fashion. Tainted instances can be identified using their method
isTainted()
. They may be transformed into an optimized state by
calling their consolidate()
method.
In general, consolidation is supposed to be expensive. Implementations of this interface are expected to consolidate themselves at specified events or intervals. You should not manually consolidate an instance other than if you know what you are doing, and what for.
One situation where manual consolidation is suggested is, when you stop modifying a list of audit trail entries and want to start excessive read operations on it (which are not interleaved with modifying operations). For details to tainting and consolidation, refer to the documentation of the implementing classes.
isTainted
in interface AuditTrailEntryList
public boolean consolidate() throws java.io.IOException
AuditTrailEntryList
Tainted, in this context, is defined as not being structured in an optimal
fashion. Tainted instances can be identified using their method
isTainted()
. They may be transformed into an optimized state by
calling their consolidate()
method.
In general, consolidation is supposed to be expensive. Implementations of this interface are expected to consolidate themselves at specified events or intervals. You should not manually consolidate an instance other than if you know what you are doing, and what for.
One situation where manual consolidation is suggested is, when you stop modifying a list of audit trail entries and want to start excessive read operations on it (which are not interleaved with modifying operations). For details to tainting and consolidation, refer to the documentation of the implementing classes.
consolidate
in interface AuditTrailEntryList
java.io.IOException
public AuditTrailEntryList cloneInstance() throws java.io.IOException
AuditTrailEntryList
Modifications are not synchronized between original and clone.
cloneInstance
in interface AuditTrailEntryList
java.io.IOException
public void cleanup() throws java.io.IOException
AuditTrailEntryList
This method should be invoked, when it is foreseeable that this instance will no longer be accessed in any way. Do not attempt to access this instance after this method has been invoked, as things are about to get ugly otherwise!
cleanup
in interface AuditTrailEntryList
java.io.IOException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |