Class DocumentTypeAndNodeOrStatePermissionTypeServiceImpl

java.lang.Object
org.kuali.rice.kns.kim.type.DataDictionaryTypeServiceBase
org.kuali.rice.kns.kim.permission.PermissionTypeServiceBase
org.kuali.rice.krad.kim.DocumentTypePermissionTypeServiceImpl
org.kuali.rice.krad.kim.DocumentTypeAndNodeOrStatePermissionTypeServiceImpl
All Implemented Interfaces:
org.kuali.rice.kim.framework.permission.PermissionTypeService, org.kuali.rice.kim.framework.type.KimTypeService

public class DocumentTypeAndNodeOrStatePermissionTypeServiceImpl extends DocumentTypePermissionTypeServiceImpl
Author:
Kuali Rice Team (rice.collab@kuali.org)
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.kuali.rice.kns.kim.type.DataDictionaryTypeServiceBase

    org.kuali.rice.kns.kim.type.DataDictionaryTypeServiceBase.KimTypeAttributeException, org.kuali.rice.kns.kim.type.DataDictionaryTypeServiceBase.KimTypeAttributeValidationException
  • Field Summary

    Fields inherited from class org.kuali.rice.krad.kim.DocumentTypePermissionTypeServiceImpl

    documentTypeService

    Fields inherited from class org.kuali.rice.kns.kim.type.DataDictionaryTypeServiceBase

    COMMA_SEPARATOR
  • Constructor Summary

    Constructors
  • Method Summary

    Modifier and Type
    Method
    Description
    protected boolean
    appDocStatusMatches(Map<String,String> requestedDetails, Map<String,String> permissionDetails)
     
    protected List<org.kuali.rice.kim.api.permission.Permission>
    performPermissionMatches(Map<String,String> requestedDetails, List<org.kuali.rice.kim.api.permission.Permission> permissionsList)
    Permission type service which can check the route node and status as well as the document hierarchy.
    protected boolean
    routeNodeMatches(Map<String,String> requestedDetails, Map<String,String> permissionDetails)
     
    protected boolean
    routeStatusMatches(Map<String,String> requestedDetails, Map<String,String> permissionDetails)
     

    Methods inherited from class org.kuali.rice.kns.kim.permission.PermissionTypeServiceBase

    doesPropertyNameMatch, getMatchingPermissions

    Methods inherited from class org.kuali.rice.kns.kim.type.DataDictionaryTypeServiceBase

    areAttributesEqual, extractErrorsFromGlobalVariablesErrorMap, getAttributeDefinitions, getAttributeFormatter, getAttributeMaxValue, getAttributeMinValue, getAttributeValidatingExpression, getAttributeValue, getBusinessObjectService, getClosestParentDocumentTypeName, getDataDictionaryAttributeDefinition, getDataDictionaryService, getDictionaryValidationService, getNonDataDictionaryAttributeDefinition, getTypeInfoService, getUniqueAttributes, getWorkflowDocumentTypeName, getWorkflowRoutingAttributes, performMatch, translateInputAttributes, validateAttributeFormat, validateAttributeRequired, validateAttributes, validateAttributesAgainstExisting, validateDataDictionaryAttribute, validateDataDictionaryAttribute, validateNonDataDictionaryAttribute, validatePrimitiveFromDescriptor, validateReferencesExistAndActive, validateRequiredAttributesAgainstReceived, validateUniqueAttributes, validateUnmodifiableAttributes

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.kuali.rice.kim.framework.type.KimTypeService

    getAttributeDefinitions, getWorkflowDocumentTypeName, getWorkflowRoutingAttributes, validateAttributes, validateAttributesAgainstExisting, validateUniqueAttributes, validateUnmodifiableAttributes
  • Constructor Details

    • DocumentTypeAndNodeOrStatePermissionTypeServiceImpl

      public DocumentTypeAndNodeOrStatePermissionTypeServiceImpl()
  • Method Details

    • performPermissionMatches

      protected List<org.kuali.rice.kim.api.permission.Permission> performPermissionMatches(Map<String,String> requestedDetails, List<org.kuali.rice.kim.api.permission.Permission> permissionsList)
      Permission type service which can check the route node and status as well as the document hierarchy. Permission should be able to (in addition to taking the routingStatus, routingNote, and documentTypeName attributes) should take a documentNumber and retrieve those values from workflow before performing the comparison. consider the document type hierarchy - check for a permission that just specifies the document type first at each level - then if you don't find that, check for the doc type and the node, then the doc type and the state.
      Overrides:
      performPermissionMatches in class DocumentTypePermissionTypeServiceImpl
    • routeNodeMatches

      protected boolean routeNodeMatches(Map<String,String> requestedDetails, Map<String,String> permissionDetails)
    • routeStatusMatches

      protected boolean routeStatusMatches(Map<String,String> requestedDetails, Map<String,String> permissionDetails)
    • appDocStatusMatches

      protected boolean appDocStatusMatches(Map<String,String> requestedDetails, Map<String,String> permissionDetails)