|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectde.unihalle.informatik.Alida.operator.ALDPortHash
class ALDPortHash
Hashmap keeping links between objects and data ports in processing history.
This class holds for each processed data item its link into the processing history. All data items manipulated by any Alida operator during a session are stored in this hash for later documentation.
The basic concept of Alida assumes that data objects are manipulated by operators. Accordingly, to log data object manipulations it is straightforward to trace all operator calls with their configurations, i.e. input and output objects and parameter settings. If in addition also the order of operator calls is available it is possible to reconstruct the processing history for each single data object.
This hash stores for each data object a link (via a port) to the last manipulating operator. Internally, operators are further linked together allowing to trace back the whole processing history.
Field Summary | |
---|---|
private static ALDConcReadWeakHashMap |
historyAnchors
Hashmap of port links into the processing history. |
Constructor Summary | |
---|---|
private |
ALDPortHash()
Constructor without function. |
Method Summary | |
---|---|
protected static int |
getEntryNum()
Returns the number of objects currently stored in the port hash. |
protected static ALDPort |
getHistoryLink(java.lang.Object obj)
Get port to which object is currently linked in the history. |
protected static boolean |
isRegistered(java.lang.Object obj)
Returns true if the given object is already registered in the hash. |
protected static void |
register(java.lang.Object obj)
Adds the object's port to the hash. |
protected static void |
setHistoryLink(java.lang.Object obj,
ALDPort port)
Set port to which data is currently linked in the history. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static ALDConcReadWeakHashMap historyAnchors
Constructor Detail |
---|
private ALDPortHash()
Note that there will only be one port hash per session and not many different objects of this type.
Method Detail |
---|
protected static int getEntryNum()
Note that the number can be larger than the number of objects actually referenced from the Java process due to the management of weak references by the Java Garbage Collector.
protected static ALDPort getHistoryLink(java.lang.Object obj)
protected static boolean isRegistered(java.lang.Object obj)
protected static void register(java.lang.Object obj)
If there is no key in the database equal to the given object, a new
hashmap entry is generated, i.e. a new ALDDataPort
is initialized
and put into the port database. .
obj
- Object to be registered.protected static void setHistoryLink(java.lang.Object obj, ALDPort port)
Note that if the object was not registered before, this is done now. Subsequently the port is set to the given port object.
port
- New current port the data is linked to.
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |