Interface IFormRecordLockDao

    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      boolean acquireLock​(IEntityContext ec, long formRecordId)
      Attempts to acquire a lock on the Vorgang with the given ID.
      Date getLockDate​(IEntityContext ec, long formRecordId)
      Checks whether the form record with the given ID is locked, and if so, returns the date when it was locked.
      boolean releaseLock​(IEntityContext ec, long formRecordId)
      Releases the lock that was acquired by acquireLock(IEntityContext, long).
      • Methods inherited from interface de.xima.cmn.dao.interfaces.IAbstractDao

        all, bulkDelete, bulkUpdate, checkLockingVersion, create, create, delete, delete, deleteAll, executePagedDaoAction, getAttributes, getAttributes, getSingleAttributes, getSingleAttributes, getTransactionHandler, read, registerListener, registerListener, registerListener, resultTotalCount, setTransactionHandler, singleElement, unregisterListener, unregisterListener, unregisterListener, update, update
    • Method Detail

      • acquireLock

        boolean acquireLock​(IEntityContext ec,
                            long formRecordId)
        Attempts to acquire a lock on the Vorgang with the given ID. A call to this method must be accompanied by a matching call to releaseLock once you are done with the form record.Used for example by workflow processing, to make sure that only one thread is execution a workflow task.
        Parameters:
        ec - Entity context to use to access the database.
        formRecordId - ID of the form record to lock.
        Returns:
        true if the form record was locked, or false otherwise. Only when this should true should a thread proceed to process the form record.
      • getLockDate

        Date getLockDate​(IEntityContext ec,
                         long formRecordId)
        Checks whether the form record with the given ID is locked, and if so, returns the date when it was locked. This is meant only for preliminary or UI checks -- always use acquireLock(IEntityContext, long) and releaseLock(IEntityContext, long) when you need to actually lock a form record.
        Parameters:
        ec - Entity context to use to access the database.
        formRecordId - ID of the form record to unlock.
        Returns:
        null when the form record is not locked. Otherwise, the date when the form record was locked.
      • releaseLock

        boolean releaseLock​(IEntityContext ec,
                            long formRecordId)
        Releases the lock that was acquired by acquireLock(IEntityContext, long).
        Parameters:
        ec - Entity context to use to access the database.
        formRecordId - ID of the form record to unlock.
        Returns:
        true if the form record was locked and was released, false if the form record was not locked.