T
- Type of system catalog object@UESComponent @Prototype public abstract class SyscDataBuffer<T> extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private UESLogger |
progressLog
Instance of progress log.
|
private java.util.List<T> |
sortedObjects
List of sorted objects.
|
Constructor and Description |
---|
SyscDataBuffer() |
Modifier and Type | Method and Description |
---|---|
protected abstract boolean |
dependsOn(T dependant,
Checks if one system catalog object is dependent on other system catalog
object of same type.
|
protected abstract boolean |
equals(T objectA,
Checks if system catalog objects are equal (typically compared by ID
or code).
|
void |
flush()
Processes all added objects in order depending on their relations.
|
protected UESLogger |
getProgressLog()
Returns logger for optional progress monitoring.
|
protected void |
handleCyclicalRelation(T addedObject,
Handles cyclic relation between added objects.
|
protected T |
handleDuplicateObject(T addedObject,
Handles duplicate object.
|
protected abstract void |
process(T object)
Method used for processing of system catalog object.
|
T |
put(T object)
Adds object to buffer.
|
int |
size()
Returns actual size of buffered data.
|
object
- Object to be addedaddedObject
- Object being addeddependant
- Object which is dependent on added objectsuperior
- Object which is superior to added objectaddedObject
- Object being addedobjectDuplicate
- Already added duplicate objectdependant
- Object which dependency is checkedsuperior
- Object evaluated as superior of checked objectobjectA
- First object to be comparedobjectB
- Second object to be comparedSyscDataBuffer.flush()
method. All buffered object are processed in order so that superior
objects are processed before their depentants.object
- System catalog object to be processed