Class AlfrescoTxDiskDriver

java.lang.Object
org.alfresco.filesys.alfresco.AlfrescoDiskDriver
org.alfresco.filesys.alfresco.AlfrescoTxDiskDriver
All Implemented Interfaces:
ExtendedDiskInterface, org.alfresco.jlan.server.core.DeviceInterface, org.alfresco.jlan.server.filesys.DiskInterface, org.alfresco.jlan.server.filesys.TransactionalFilesystemInterface
Direct Known Subclasses:
ContentDiskDriver

public abstract class AlfrescoTxDiskDriver extends AlfrescoDiskDriver implements org.alfresco.jlan.server.filesys.TransactionalFilesystemInterface
Alfresco Tx Disk Driver Base Class

Provides common code to the Alfresco filesystem implementations.

Author:
gkspencer
  • Constructor Details

    • AlfrescoTxDiskDriver

      public AlfrescoTxDiskDriver()
  • Method Details

    • beginReadTransaction

      public void beginReadTransaction(org.alfresco.jlan.server.SrvSession sess)
      Begin a read-only transaction
      Specified by:
      beginReadTransaction in interface org.alfresco.jlan.server.filesys.TransactionalFilesystemInterface
      Parameters:
      sess - SrvSession
    • beginWriteTransaction

      public void beginWriteTransaction(org.alfresco.jlan.server.SrvSession sess)
      Begin a writeable transaction
      Specified by:
      beginWriteTransaction in interface org.alfresco.jlan.server.filesys.TransactionalFilesystemInterface
      Parameters:
      sess - SrvSession
    • doInWriteTransaction

      public <T> T doInWriteTransaction(org.alfresco.jlan.server.SrvSession sess, AlfrescoTxDiskDriver.CallableIO<T> callback) throws IOException
      Perform a retryable operation in a write transaction

      WARNING : side effect - that the current transaction, if any, is ended.

      Parameters:
      sess - the server session
      callback - callback for the retryable operation
      Returns:
      the result of the operation
      Throws:
      IOException
    • endTransaction

      public void endTransaction(org.alfresco.jlan.server.SrvSession sess, Object tx)
      End an active transaction
      Specified by:
      endTransaction in interface org.alfresco.jlan.server.filesys.TransactionalFilesystemInterface
      Parameters:
      sess - SrvSession
      tx - Object