Class DefaultPermissionsFacade
- java.lang.Object
-
- de.hybris.platform.permissionsfacades.impl.DefaultPermissionsFacade
-
- All Implemented Interfaces:
PermissionsFacade
public class DefaultPermissionsFacade extends java.lang.Object implements PermissionsFacade
Default implementation ofPermissionsFacade
.
-
-
Field Summary
-
Fields inherited from interface de.hybris.platform.permissionsfacades.PermissionsFacade
READ_ACCESS_TYPE, WRITE_ACCESS_TYPE
-
-
Constructor Summary
Constructors Constructor Description DefaultPermissionsFacade()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected SyncPermissionsData
buildSyncPermissionData(SyncItemJobModel syncJob, PrincipalModel principal)
Creates the sync permission data for a given sync job and a principaljava.util.List<PermissionsData>
calculateAttributesPermissions(java.lang.String principalUid, java.util.List<java.lang.String> typeAttributes, java.util.List<java.lang.String> permissionNames)
Calculate permissions for attributesjava.util.List<CatalogPermissionsData>
calculateCatalogPermissions(java.lang.String principalUid, java.util.List<java.lang.String> catalogIds, java.util.List<java.lang.String> catalogVersions)
Calculate permissions for catalog versionPermissionsData
calculateGlobalPermissions(java.lang.String principalUid, java.util.List<java.lang.String> permissionNames)
Calculate global permissions for a principal.java.util.List<PermissionsData>
calculateTypesPermissions(java.lang.String principalUid, java.util.List<java.lang.String> types, java.util.List<java.lang.String> permissionNames)
Calculate permissions for a principal and multiple types.protected <T> T
executeInLocalView(java.util.function.Supplier<T> action)
protected <T> T
executeWithAllCatalogs(java.util.function.Supplier<T> action)
protected java.util.List<java.lang.String>
findAllAttributesForType(java.lang.String type, java.lang.String attribute)
protected PrincipalModel
findPrincipal(java.lang.String principalUid)
protected CatalogPermissionsData
generateCatalogPermissionsDTO(CatalogVersionModel cv, boolean readPermission, boolean writePermission, PrincipalModel principal, java.util.List<SyncPermissionsData> syncPermissions)
protected java.util.regex.Matcher
getAttributeNameMatcher(java.lang.String typeAttribute)
protected CatalogSynchronizationService
getCatalogSynchronizationService()
protected CatalogVersionService
getCatalogVersionService()
protected java.util.List<CatalogVersionModel>
getFilteredCatalogVersions(java.util.List<java.lang.String> catalogIds, java.util.List<java.lang.String> catalogVersions)
protected FlexibleSearchService
getFlexibleSearchService()
protected PermissionCheckingService
getPermissionCheckingService()
protected SearchRestrictionService
getSearchRestrictionService()
protected SessionService
getSessionService()
protected java.util.List<SyncPermissionsData>
getSyncPermissions(CatalogVersionModel catalogVersion, PrincipalModel principal)
Gets sync permissions for a given catalog version and a given principalprotected TypeService
getTypeService()
protected PermissionsData
retrieveSingleAttributePermissions(java.util.List<java.lang.String> permissionNames, java.lang.String type, PrincipalModel principal, java.lang.String attributeQualifier)
protected void
setAllCatalogs()
void
setCatalogSynchronizationService(CatalogSynchronizationService catalogSynchronizationService)
void
setCatalogVersionService(CatalogVersionService catalogVersionService)
void
setFlexibleSearchService(FlexibleSearchService flexibleSearchService)
void
setPermissionCheckingService(PermissionCheckingService permissionCheckingService)
void
setSearchRestrictionService(SearchRestrictionService searchRestrictionService)
void
setSessionService(SessionService sessionService)
void
setTypeService(TypeService typeService)
-
-
-
Method Detail
-
calculateTypesPermissions
public java.util.List<PermissionsData> calculateTypesPermissions(java.lang.String principalUid, java.util.List<java.lang.String> types, java.util.List<java.lang.String> permissionNames)
Description copied from interface:PermissionsFacade
Calculate permissions for a principal and multiple types.- Specified by:
calculateTypesPermissions
in interfacePermissionsFacade
- Parameters:
principalUid
- principal uid to retrieve the permissions for.types
- type idspermissionNames
- permission names- Returns:
- calculated types permissions (based on principal, its groups, the types and super types)
-
calculateAttributesPermissions
public java.util.List<PermissionsData> calculateAttributesPermissions(java.lang.String principalUid, java.util.List<java.lang.String> typeAttributes, java.util.List<java.lang.String> permissionNames)
Description copied from interface:PermissionsFacade
Calculate permissions for attributes- Specified by:
calculateAttributesPermissions
in interfacePermissionsFacade
- Parameters:
principalUid
- principal uid to retrieve the permissions for.typeAttributes
- fully qualified attribute of the for. permissionNames
- permissions names to look for- Returns:
- calculated permissions for attributes
-
calculateGlobalPermissions
public PermissionsData calculateGlobalPermissions(java.lang.String principalUid, java.util.List<java.lang.String> permissionNames)
Description copied from interface:PermissionsFacade
Calculate global permissions for a principal. This will look in the user group hierarchy as well.- Specified by:
calculateGlobalPermissions
in interfacePermissionsFacade
- Parameters:
principalUid
- principal uid to retrieve the permissions for.permissionNames
- permissions names to look for- Returns:
- calculated global permissions (based on principal and its groups)
-
retrieveSingleAttributePermissions
protected PermissionsData retrieveSingleAttributePermissions(java.util.List<java.lang.String> permissionNames, java.lang.String type, PrincipalModel principal, java.lang.String attributeQualifier)
-
getAttributeNameMatcher
protected java.util.regex.Matcher getAttributeNameMatcher(java.lang.String typeAttribute)
-
findAllAttributesForType
protected java.util.List<java.lang.String> findAllAttributesForType(java.lang.String type, java.lang.String attribute)
-
calculateCatalogPermissions
public java.util.List<CatalogPermissionsData> calculateCatalogPermissions(java.lang.String principalUid, java.util.List<java.lang.String> catalogIds, java.util.List<java.lang.String> catalogVersions)
Description copied from interface:PermissionsFacade
Calculate permissions for catalog version- Specified by:
calculateCatalogPermissions
in interfacePermissionsFacade
- Parameters:
principalUid
- principal uid to retrieve the permissions for.catalogIds
- filter of catalog ids to considercatalogVersions
- filter of catalog version to consider- Returns:
- list of permissions for catalog versions that match any of the ids in catalogIds and any of the versions in catalogVersions
-
generateCatalogPermissionsDTO
protected CatalogPermissionsData generateCatalogPermissionsDTO(CatalogVersionModel cv, boolean readPermission, boolean writePermission, PrincipalModel principal, java.util.List<SyncPermissionsData> syncPermissions)
-
getSyncPermissions
protected java.util.List<SyncPermissionsData> getSyncPermissions(CatalogVersionModel catalogVersion, PrincipalModel principal)
Gets sync permissions for a given catalog version and a given principal- Parameters:
catalogVersion
- the catalog versionprincipal
- the principal- Returns:
- the list of sync permissions data
-
buildSyncPermissionData
protected SyncPermissionsData buildSyncPermissionData(SyncItemJobModel syncJob, PrincipalModel principal)
Creates the sync permission data for a given sync job and a principal- Parameters:
syncJob
- the sync jobprincipal
- the principal- Returns:
- the sync permission data
-
getFilteredCatalogVersions
protected java.util.List<CatalogVersionModel> getFilteredCatalogVersions(java.util.List<java.lang.String> catalogIds, java.util.List<java.lang.String> catalogVersions)
-
findPrincipal
protected PrincipalModel findPrincipal(java.lang.String principalUid)
-
executeWithAllCatalogs
protected <T> T executeWithAllCatalogs(java.util.function.Supplier<T> action)
-
executeInLocalView
protected <T> T executeInLocalView(java.util.function.Supplier<T> action)
-
setAllCatalogs
protected void setAllCatalogs()
-
getPermissionCheckingService
protected PermissionCheckingService getPermissionCheckingService()
-
setPermissionCheckingService
public void setPermissionCheckingService(PermissionCheckingService permissionCheckingService)
-
getFlexibleSearchService
protected FlexibleSearchService getFlexibleSearchService()
-
setFlexibleSearchService
public void setFlexibleSearchService(FlexibleSearchService flexibleSearchService)
-
getCatalogVersionService
protected CatalogVersionService getCatalogVersionService()
-
setCatalogVersionService
public void setCatalogVersionService(CatalogVersionService catalogVersionService)
-
getSearchRestrictionService
protected SearchRestrictionService getSearchRestrictionService()
-
setSearchRestrictionService
public void setSearchRestrictionService(SearchRestrictionService searchRestrictionService)
-
getSessionService
protected SessionService getSessionService()
-
setSessionService
public void setSessionService(SessionService sessionService)
-
getTypeService
protected TypeService getTypeService()
-
setTypeService
public void setTypeService(TypeService typeService)
-
getCatalogSynchronizationService
protected CatalogSynchronizationService getCatalogSynchronizationService()
-
setCatalogSynchronizationService
public void setCatalogSynchronizationService(CatalogSynchronizationService catalogSynchronizationService)
-
-