Class TransactionalDocumentAuthorizerBase

All Implemented Interfaces:
Serializable, DataObjectAuthorizer, DocumentAuthorizer, TransactionalDocumentAuthorizer

public class TransactionalDocumentAuthorizerBase extends DocumentAuthorizerBase implements TransactionalDocumentAuthorizer
Base class for all Transactional Document authorizers.
Author:
Kuali Rice Team (rice.collab@kuali.org)
See Also:
  • Constructor Details

    • TransactionalDocumentAuthorizerBase

      public TransactionalDocumentAuthorizerBase()
  • Method Details

    • canClose

      public boolean canClose(Document document, org.kuali.rice.kim.api.identity.Person user)

      The user can only close the document if it is a transactional document.

      Specified by:
      canClose in interface DocumentAuthorizer
      Overrides:
      canClose in class DocumentAuthorizerBase
    • canSave

      public boolean canSave(Document document, org.kuali.rice.kim.api.identity.Person user)

      The user can only save the document if they have permission and, if pessimistic locking is turned on for the document, they can establish a pessimistic lock.

      Specified by:
      canSave in interface DocumentAuthorizer
      Overrides:
      canSave in class DocumentAuthorizerBase
    • canRoute

      public boolean canRoute(Document document, org.kuali.rice.kim.api.identity.Person user)
      Determines if the user has permission to route the document

      The user can only route the document if they have permission and, if pessimistic locking is turned on for the document, they can establish a pessimistic lock.

      Specified by:
      canRoute in interface DocumentAuthorizer
      Overrides:
      canRoute in class DocumentAuthorizerBase
      Parameters:
      document - document to check
      user - current user
      Returns:
      boolean, true if the user has permissions to route a document else false
    • canCancel

      public boolean canCancel(Document document, org.kuali.rice.kim.api.identity.Person user)
      Determines if the user has permission to cancel the document

      The user can only cancel the document if they have permission and, if pessimistic locking is turned on for the document, they can establish a pessimistic lock.

      Specified by:
      canCancel in interface DocumentAuthorizer
      Overrides:
      canCancel in class DocumentAuthorizerBase
      Parameters:
      document - document to check
      user - current user
      Returns:
      boolean, true if the user has permissions to cancel a document else false
    • canBlanketApprove

      public boolean canBlanketApprove(Document document, org.kuali.rice.kim.api.identity.Person user)

      The user can only blanket approve the document if they have permission and, if pessimistic locking is turned on for the document, they can establish a pessimistic lock.

      Specified by:
      canBlanketApprove in interface DocumentAuthorizer
      Overrides:
      canBlanketApprove in class DocumentAuthorizerBase
    • isUsingPessimisticLocking

      protected boolean isUsingPessimisticLocking(Document document)
      Returns whether the document is using pessimistic locking.
      Parameters:
      document - the document to check for using pessimistic locking
      Returns:
      true if the document is using pessimistic locking, false otherwise.
    • canEstablishPessimisticLock

      protected boolean canEstablishPessimisticLock(Document document, org.kuali.rice.kim.api.identity.Person user)
      Returns whether user can establish a pessimistic lock on the document.

      The user can only establish a pessimistic lock on the document document if there are no existing locks or if they already have a lock on the document.

      Parameters:
      document - the document to check for pessimistic locks
      user - the user to check for pessimistic locks
      Returns:
      true if the user can establish a pessimistic lock on the document, false otherwise
    • getDataDictionaryService

      protected DataDictionaryService getDataDictionaryService()
    • setDataDictionaryService

      protected void setDataDictionaryService(DataDictionaryService dataDictionaryService)