1.2.4. The life-cycle of a Transactional Object for Java
- The object is initially passive, and is stored in the object store as an instance of the class
- When required by an application the object is automatically activated by reading it from the store using a
read_committedoperation and is then converted from an
InputObjectStateinstance into a fully-fledged object by the
restore_stateoperation of the object.
- When the application has finished with the object it is deactivated by converting it back into an
OutputObjectStateinstance using the
save_stateoperation, and is then stored back into the object store as a shadow copy using write_uncommitted. This shadow copy can be committed, overwriting the previous version, using the
commit_stateoperation. The existence of shadow copies is normally hidden from the programmer by the transaction system. Object de-activation normally only occurs when the top-level transaction within which the object was activated commits.