org.kuali.rice.krad.kim
Class DocumentTypeAndNodeAndFieldsPermissionTypeServiceImpl

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

public class DocumentTypeAndNodeAndFieldsPermissionTypeServiceImpl
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
DataDictionaryTypeServiceBase.KimTypeAttributeException, 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
DocumentTypeAndNodeAndFieldsPermissionTypeServiceImpl()
           
 
Method Summary
protected  boolean isCheckRequiredAttributes()
           
protected  List<Permission> performPermissionMatches(Map<String,String> requestedDetails, List<Permission> permissionsList)
          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 field.
protected  boolean routeNodeMatches(Map<String,String> requestedDetails, Map<String,String> permissionDetails)
           
 
Methods inherited from class org.kuali.rice.krad.kim.DocumentTypePermissionTypeServiceImpl
getDocumentTypeService, getRequiredAttributes
 
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 Detail

DocumentTypeAndNodeAndFieldsPermissionTypeServiceImpl

public DocumentTypeAndNodeAndFieldsPermissionTypeServiceImpl()
Method Detail

isCheckRequiredAttributes

protected boolean isCheckRequiredAttributes()
Overrides:
isCheckRequiredAttributes in class DocumentTypePermissionTypeServiceImpl

performPermissionMatches

protected List<Permission> performPermissionMatches(Map<String,String> requestedDetails,
                                                    List<Permission> permissionsList)
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 field. - if the field value passed in starts with the value on the permission detail it is a match. so... permision detail sourceAccountingLines will match passed in value of sourceAccountingLines.amount and sourceAccountingLines permission detail sourceAccountingLines.objectCode will match sourceAccountingLines.objectCode but not sourceAccountingLines

Overrides:
performPermissionMatches in class DocumentTypePermissionTypeServiceImpl

routeNodeMatches

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


Copyright © 2005-2012 The Kuali Foundation. All Rights Reserved.