| 
OSGi™ Service Platform Compendium Specification Release 4 Version 4.3  | 
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface TransactionalDataSession
Provides atomic read-write access to the part of the tree handled by the plugin that created this session.
| Method Summary | |
|---|---|
 void | 
commit()
Commits a series of DMT operations issued in the current atomic session since the last transaction boundary.  | 
 void | 
rollback()
Rolls back a series of DMT operations issued in the current atomic session since the last transaction boundary.  | 
| Methods inherited from interface org.osgi.service.dmt.spi.ReadWriteDataSession | 
|---|
copy, createInteriorNode, createLeafNode, deleteNode, renameNode, setNodeTitle, setNodeType, setNodeValue | 
| Methods inherited from interface org.osgi.service.dmt.spi.ReadableDataSession | 
|---|
close, getChildNodeNames, getMetaNode, getNodeSize, getNodeTimestamp, getNodeTitle, getNodeType, getNodeValue, getNodeVersion, isLeafNode, isNodeUri, nodeChanged | 
| Method Detail | 
|---|
void commit()
            throws DmtException
commit() and rollback() calls.
 
 This method can fail even if all operations were successful. This can
 happen due to some multi-node semantic constraints defined by a specific
 implementation. For example, node A can be required to always have
 children A/B, A/C and A/D. If this condition is broken when
 commit() is executed, the method will fail, and throw a
 METADATA_MISMATCH exception.
 
 In many cases the tree is not the only way to manage a given part of the
 system. It may happen that while modifying some nodes in an atomic
 session, the underlying settings are modified parallelly outside the
 scope of the DMT. If this is detected during commit, an exception with
 the code CONCURRENT_ACCESS is thrown.
DmtException - with the following possible error codes
         METADATA_MISMATCH if the operation failed because of
         meta-data restrictions CONCURRENT_ACCESS if it is
         detected that some modification has been made outside the scope
         of the DMT to the nodes affected in the session's operations DATA_STORE_FAILURE if an error occurred while accessing
         the data store COMMAND_FAILED if some unspecified
         error is encountered while attempting to complete the command
         java.lang.SecurityException - if the caller does not have the necessary
         permissions to execute the underlying management operation
void rollback()
              throws DmtException
commit() and rollback() calls.
DmtException - with the error code ROLLBACK_FAILED
         in case the rollback did not succeed
java.lang.SecurityException - if the caller does not have the necessary
         permissions to execute the underlying management operation
  | 
OSGi™ Service Platform Compendium Specification Release 4 Version 4.3  | 
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||