E
- the type of encapsulated objectpublic class TransactionObject<E>
extends java.lang.Object
implements java.io.Serializable
Modifier and Type | Field and Description |
---|---|
protected E |
encapsulatedObject
Stored object for encapsulation
|
protected boolean |
isArrayClass
Flag storing the switch between array and normal class
|
protected java.util.Map<java.lang.String,TransactionObject<java.lang.Object>> |
objectEncapsulatedFieldsState
Stored state of object fields wrapped in TransactionObject of this encapsulated object
|
protected java.util.Map<java.lang.String,java.lang.Object> |
objectPrimitiveFieldsState
Stored state of primitive fields of this encapsulated object
|
protected boolean |
transactionActive
Active transaction flag
|
Constructor and Description |
---|
TransactionObject(E encapsulatedObject)
Creates a new instance of TransactionObject.
|
Modifier and Type | Method and Description |
---|---|
boolean |
beginTransaction()
Start a new transaction.
|
boolean |
beginTransaction(boolean blocking)
Start a new transaction.
|
void |
commitTransaction()
End transaction of pivot processing, commiting changes
|
protected void |
encapsulateStoreObject(java.lang.String name,
java.lang.Object object,
int modifiers,
boolean blocking) |
E |
get()
Returns the encapsulated object.
|
boolean |
isTransactionRunning()
Returns true if there is a transaction running currently.
|
protected void |
restoreField(java.lang.reflect.Field field) |
void |
rollbackTransaction()
End transaction of pivot processing, undoing changes
|
protected void |
storeField(java.lang.reflect.Field field,
boolean blocking) |
protected final E encapsulatedObject
protected transient boolean transactionActive
protected final boolean isArrayClass
protected final java.util.Map<java.lang.String,java.lang.Object> objectPrimitiveFieldsState
protected final java.util.Map<java.lang.String,TransactionObject<java.lang.Object>> objectEncapsulatedFieldsState
public TransactionObject(E encapsulatedObject)
encapsulatedObject
- the object to encapsulatepublic E get()
public boolean isTransactionRunning()
public boolean beginTransaction(boolean blocking) throws java.lang.IllegalAccessException
blocking
- flag whether the start of a new transaction is blocking. We cannot run more transactions at a time.java.lang.IllegalAccessException
public boolean beginTransaction() throws java.lang.IllegalAccessException
java.lang.IllegalAccessException
public void commitTransaction()
public void rollbackTransaction()
protected void storeField(java.lang.reflect.Field field, boolean blocking) throws java.lang.IllegalAccessException
java.lang.IllegalAccessException
protected void encapsulateStoreObject(java.lang.String name, java.lang.Object object, int modifiers, boolean blocking) throws java.lang.IllegalAccessException
java.lang.IllegalAccessException
protected void restoreField(java.lang.reflect.Field field)