Class DefaultPermissionCheckingService
- java.lang.Object
-
- de.hybris.platform.servicelayer.security.permissions.impl.DefaultPermissionCheckingService
-
- All Implemented Interfaces:
PermissionCheckingService
public class DefaultPermissionCheckingService extends java.lang.Object implements PermissionCheckingService
-
-
Constructor Summary
Constructors Constructor Description DefaultPermissionCheckingService()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PermissionCheckResultcheckAttributeDescriptorPermission(AttributeDescriptorModel attributeDescriptor, PrincipalModel principal, java.lang.String permissionName)Checks if a principal has a permission to an attribute descriptor.PermissionCheckResultcheckAttributeDescriptorPermission(AttributeDescriptorModel attributeDescriptor, java.lang.String permissionName)Same asPermissionCheckingService.checkAttributeDescriptorPermission(AttributeDescriptorModel, PrincipalModel, String)but uses default principal.PermissionCheckResultcheckAttributeDescriptorPermission(java.lang.String typeCode, java.lang.String attributeQualifier, PrincipalModel principal, java.lang.String permissionName)Same asPermissionCheckingService.checkAttributeDescriptorPermission(AttributeDescriptorModel, PrincipalModel, String)but allows to use String values to specify attribute descriptor.PermissionCheckResultcheckAttributeDescriptorPermission(java.lang.String typeCode, java.lang.String attributeQualifier, java.lang.String permissionName)Same asPermissionCheckingService.checkAttributeDescriptorPermission(String, String, PrincipalModel, String)but uses default principal.protected PermissionCheckValuecheckAttributePermission(AttributeDescriptorModel attributeDescriptor, PrincipalModel principal, java.lang.String permissionName)Checks the type permission upon this attribute of the given principal.PermissionCheckResultcheckGlobalPermission(PrincipalModel principal, java.lang.String permissionName)Checks if a principal has a given permission assigned globally.PermissionCheckResultcheckGlobalPermission(java.lang.String permissionName)Same asPermissionCheckingService.checkGlobalPermission(PrincipalModel, String)but uses default principal.PermissionCheckResultcheckItemPermission(ItemModel item, PrincipalModel principal, java.lang.String permissionName)This method tries to check for item permission assignments first.PermissionCheckResultcheckItemPermission(ItemModel item, java.lang.String permissionName)Same asPermissionCheckingService.checkItemPermission(ItemModel, PrincipalModel, String)but uses default principal.protected PermissionCheckValuecheckItemPermissionForPrincipalHierarchy(ItemModel item, PrincipalModel principal, java.lang.String permissionName)Checks permission assignments for given item, permission and principal (with it's groups hierarchy).protected PermissionCheckValuecheckPermissionForGlobal(PrincipalModel principal, java.lang.String permissionName)Checks global assignment of given permission to given principal.protected PermissionCheckValuecheckPermissionForItem(ItemModel item, PrincipalModel principal, java.lang.String permissionName)Checks assignment of given permission to given item for given principal.PermissionCheckResultcheckTypePermission(ComposedTypeModel type, PrincipalModel principal, java.lang.String permissionName)This method tries to check for type permission assignments first.PermissionCheckResultcheckTypePermission(ComposedTypeModel type, java.lang.String permissionName)Same asPermissionCheckingService.checkTypePermission(ComposedTypeModel, PrincipalModel, String)but uses default principal.PermissionCheckResultcheckTypePermission(java.lang.String typeCode, PrincipalModel principal, java.lang.String permissionName)PermissionCheckResultcheckTypePermission(java.lang.String typeCode, java.lang.String permissionName)Same asPermissionCheckingService.checkTypePermission(String, PrincipalModel, String)but uses default principal.protected PermissionCheckValuecheckTypePermissionForTypeHierarchy(ComposedTypeModel type, PrincipalModel principal, java.lang.String permissionName)Checks permission assignments for given type (involving type's ancestors), permission and principal (with it's groups hierarchy).protected PermissionCheckValuegenericPermissionCheckingForPrincipalHierarchy(PermissionChecker permissionChecker, PrincipalModel principal, java.lang.String permissionName)Generic method for checking permissions within principal groups hierarchy.protected PrincipalModelgetDefaultPrincipal()FlexibleSearchServicegetFlexibleSearchService()ModelServicegetModelService()PermissionCheckValueMappingStrategygetPermissionCheckValMappingStrategy()protected UserRightModelgetPermissionForName(java.lang.String permissionName)protected PKgetPermissionPKForName(java.lang.String permissionName)Returns null if not found!PrincipalHierarchyCheckingStrategygetPrincipalHierarchyCheckingStrategy()TypeServicegetTypeService()UserServicegetUserService()voidsetFlexibleSearchService(FlexibleSearchService flexibleSearchService)voidsetModelService(ModelService modelService)voidsetPermissionCheckValMappingStrategy(PermissionCheckValueMappingStrategy permissionCheckValMappingStrategy)voidsetPermissionManagementStrategyFactory(PermissionManagementStrategyFactory permissionManagementStrategyFactory)voidsetPrincipalHierarchyCheckingStrategy(PrincipalHierarchyCheckingStrategy principalHierarchyCheckingStrategy)voidsetTypeService(TypeService typeService)voidsetUserService(UserService userService)protected PermissionCheckValuetranslateItemCheckingOutcome(int rawMatch)
-
-
-
Field Detail
-
NOT_FOUND
public static final int NOT_FOUND
- See Also:
- Constant Field Values
-
POSITIVE
public static final int POSITIVE
- See Also:
- Constant Field Values
-
NEGATIVE
public static final int NEGATIVE
- See Also:
- Constant Field Values
-
EVEN
public static final int EVEN
- See Also:
- Constant Field Values
-
-
Method Detail
-
checkItemPermission
public PermissionCheckResult checkItemPermission(ItemModel item, PrincipalModel principal, java.lang.String permissionName)
This method tries to check for item permission assignments first. If nothing is found then it looks for type permission assignments. If still nothing is found, it tries global permission assignments.- Specified by:
checkItemPermissionin interfacePermissionCheckingService
-
checkItemPermission
public PermissionCheckResult checkItemPermission(ItemModel item, java.lang.String permissionName)
Description copied from interface:PermissionCheckingServiceSame asPermissionCheckingService.checkItemPermission(ItemModel, PrincipalModel, String)but uses default principal.- Specified by:
checkItemPermissionin interfacePermissionCheckingService
-
checkTypePermission
public PermissionCheckResult checkTypePermission(ComposedTypeModel type, PrincipalModel principal, java.lang.String permissionName)
This method tries to check for type permission assignments first. If nothing is found then it searches for global permission assignments- Specified by:
checkTypePermissionin interfacePermissionCheckingService
-
checkTypePermission
public PermissionCheckResult checkTypePermission(ComposedTypeModel type, java.lang.String permissionName)
Description copied from interface:PermissionCheckingServiceSame asPermissionCheckingService.checkTypePermission(ComposedTypeModel, PrincipalModel, String)but uses default principal.- Specified by:
checkTypePermissionin interfacePermissionCheckingService
-
checkTypePermission
public PermissionCheckResult checkTypePermission(java.lang.String typeCode, PrincipalModel principal, java.lang.String permissionName)
Description copied from interface:PermissionCheckingService- Specified by:
checkTypePermissionin interfacePermissionCheckingService
-
checkTypePermission
public PermissionCheckResult checkTypePermission(java.lang.String typeCode, java.lang.String permissionName)
Description copied from interface:PermissionCheckingServiceSame asPermissionCheckingService.checkTypePermission(String, PrincipalModel, String)but uses default principal.- Specified by:
checkTypePermissionin interfacePermissionCheckingService
-
checkAttributeDescriptorPermission
public PermissionCheckResult checkAttributeDescriptorPermission(AttributeDescriptorModel attributeDescriptor, PrincipalModel principal, java.lang.String permissionName)
Description copied from interface:PermissionCheckingServiceChecks if a principal has a permission to an attribute descriptor. For explanation when a principal has permission to an attribute descriptor see: Attribute Descriptor permission assignments checking- Specified by:
checkAttributeDescriptorPermissionin interfacePermissionCheckingService
-
checkAttributeDescriptorPermission
public PermissionCheckResult checkAttributeDescriptorPermission(java.lang.String typeCode, java.lang.String attributeQualifier, PrincipalModel principal, java.lang.String permissionName)
Description copied from interface:PermissionCheckingServiceSame asPermissionCheckingService.checkAttributeDescriptorPermission(AttributeDescriptorModel, PrincipalModel, String)but allows to use String values to specify attribute descriptor.- Specified by:
checkAttributeDescriptorPermissionin interfacePermissionCheckingService
-
checkAttributeDescriptorPermission
public PermissionCheckResult checkAttributeDescriptorPermission(AttributeDescriptorModel attributeDescriptor, java.lang.String permissionName)
Description copied from interface:PermissionCheckingServiceSame asPermissionCheckingService.checkAttributeDescriptorPermission(AttributeDescriptorModel, PrincipalModel, String)but uses default principal.- Specified by:
checkAttributeDescriptorPermissionin interfacePermissionCheckingService
-
checkAttributeDescriptorPermission
public PermissionCheckResult checkAttributeDescriptorPermission(java.lang.String typeCode, java.lang.String attributeQualifier, java.lang.String permissionName)
Description copied from interface:PermissionCheckingServiceSame asPermissionCheckingService.checkAttributeDescriptorPermission(String, String, PrincipalModel, String)but uses default principal.- Specified by:
checkAttributeDescriptorPermissionin interfacePermissionCheckingService
-
checkGlobalPermission
public PermissionCheckResult checkGlobalPermission(PrincipalModel principal, java.lang.String permissionName)
Description copied from interface:PermissionCheckingServiceChecks if a principal has a given permission assigned globally. For explanation when a principal has permission assigned globally see: Global permission assignments checking- Specified by:
checkGlobalPermissionin interfacePermissionCheckingService
-
checkGlobalPermission
public PermissionCheckResult checkGlobalPermission(java.lang.String permissionName)
Description copied from interface:PermissionCheckingServiceSame asPermissionCheckingService.checkGlobalPermission(PrincipalModel, String)but uses default principal.- Specified by:
checkGlobalPermissionin interfacePermissionCheckingService
-
checkPermissionForGlobal
protected PermissionCheckValue checkPermissionForGlobal(PrincipalModel principal, java.lang.String permissionName)
Checks global assignment of given permission to given principal. Does not perform principal groups hierarchy checks!
-
checkPermissionForItem
protected PermissionCheckValue checkPermissionForItem(ItemModel item, PrincipalModel principal, java.lang.String permissionName)
Checks assignment of given permission to given item for given principal. Does not perform principal groups hierarchy checks, nor type hierarchy checks, nor global permissions checks.
-
translateItemCheckingOutcome
protected PermissionCheckValue translateItemCheckingOutcome(int rawMatch)
-
checkItemPermissionForPrincipalHierarchy
protected PermissionCheckValue checkItemPermissionForPrincipalHierarchy(ItemModel item, PrincipalModel principal, java.lang.String permissionName)
Checks permission assignments for given item, permission and principal (with it's groups hierarchy). Does not check type permission assignments nor global permission assignments.
-
checkTypePermissionForTypeHierarchy
protected PermissionCheckValue checkTypePermissionForTypeHierarchy(ComposedTypeModel type, PrincipalModel principal, java.lang.String permissionName)
Checks permission assignments for given type (involving type's ancestors), permission and principal (with it's groups hierarchy). Does not check global permission assignments!
-
checkAttributePermission
protected PermissionCheckValue checkAttributePermission(AttributeDescriptorModel attributeDescriptor, PrincipalModel principal, java.lang.String permissionName)
Checks the type permission upon this attribute of the given principal.Works similar to
Item.checkPermission(de.hybris.platform.jalo.security.UserRight)except that the permissions of the enclosing type and super attribute are evaluated in case no permission is set for this attribute.The evaluation first checks the enclosing type and in case no permission is defined there too just checks the super attribute recursively.
- Parameters:
principal- the principal to checkpermissionName- the permission to check
-
genericPermissionCheckingForPrincipalHierarchy
protected PermissionCheckValue genericPermissionCheckingForPrincipalHierarchy(PermissionChecker permissionChecker, PrincipalModel principal, java.lang.String permissionName)
Generic method for checking permissions within principal groups hierarchy. To perform checking it uses providedPrincipalHierarchyCheckingStrategy.
-
getDefaultPrincipal
protected PrincipalModel getDefaultPrincipal()
-
getPermissionPKForName
protected PK getPermissionPKForName(java.lang.String permissionName)
Returns null if not found!
-
getPermissionForName
protected UserRightModel getPermissionForName(java.lang.String permissionName)
-
getUserService
public UserService getUserService()
-
setUserService
public void setUserService(UserService userService)
-
getModelService
public ModelService getModelService()
-
setModelService
public void setModelService(ModelService modelService)
-
getFlexibleSearchService
public FlexibleSearchService getFlexibleSearchService()
-
setFlexibleSearchService
public void setFlexibleSearchService(FlexibleSearchService flexibleSearchService)
-
getTypeService
public TypeService getTypeService()
-
setTypeService
public void setTypeService(TypeService typeService)
-
getPermissionCheckValMappingStrategy
public PermissionCheckValueMappingStrategy getPermissionCheckValMappingStrategy()
-
setPermissionCheckValMappingStrategy
public void setPermissionCheckValMappingStrategy(PermissionCheckValueMappingStrategy permissionCheckValMappingStrategy)
-
getPrincipalHierarchyCheckingStrategy
public PrincipalHierarchyCheckingStrategy getPrincipalHierarchyCheckingStrategy()
-
setPrincipalHierarchyCheckingStrategy
public void setPrincipalHierarchyCheckingStrategy(PrincipalHierarchyCheckingStrategy principalHierarchyCheckingStrategy)
-
setPermissionManagementStrategyFactory
public void setPermissionManagementStrategyFactory(PermissionManagementStrategyFactory permissionManagementStrategyFactory)
-
-