Package org.nuxeo.ecm.core.security
Class AbstractSecurityPolicy
java.lang.Object
org.nuxeo.ecm.core.security.AbstractSecurityPolicy
- All Implemented Interfaces:
SecurityPolicy
- Direct Known Subclasses:
CheckInSecurityPolicy
,LockSecurityPolicy
,MailMessageSecurityPolicy
,NoFileSecurityPolicy
,RetentionAndHoldSecurityPolicy
Abstract security policy
- Author:
- Anahide Tchertchian, Florent Guillaume
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.nuxeo.ecm.core.security.SecurityPolicy
SecurityPolicy.IdentityQueryTransformer, SecurityPolicy.QueryTransformer
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiongetQueryTransformer
(String repositoryName) Get the transformer to use to apply this policy to a query.getQueryTransformer
(String repositoryName, String queryLanguage) Get the string-based transformer to use to apply this policy to a query.boolean
isExpressibleInQuery
(String repositoryName) Checks if this policy can be expressed in a query for given repository.boolean
isExpressibleInQuery
(String repositoryName, String queryLanguage) Checks if this policy can be expressed in a string-based query for given repository.boolean
isRestrictingPermission
(String permission) Checks if this policy is restricting the given permission.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.nuxeo.ecm.core.security.SecurityPolicy
checkPermission
-
Constructor Details
-
AbstractSecurityPolicy
public AbstractSecurityPolicy()
-
-
Method Details
-
isRestrictingPermission
Description copied from interface:SecurityPolicy
Checks if this policy is restricting the given permission.Queries check the BROWSE permission.
- Specified by:
isRestrictingPermission
in interfaceSecurityPolicy
- Parameters:
permission
- the permission to check for- Returns:
true
if the policy restricts the permission
-
getQueryTransformer
Description copied from interface:SecurityPolicy
Get the transformer to use to apply this policy to a query.Called only when
SecurityPolicy.isExpressibleInQuery(String)
returnedtrue
- Specified by:
getQueryTransformer
in interfaceSecurityPolicy
- Parameters:
repositoryName
- the target repository name.- Returns:
- the transformer
-
getQueryTransformer
public SecurityPolicy.QueryTransformer getQueryTransformer(String repositoryName, String queryLanguage) Description copied from interface:SecurityPolicy
Get the string-based transformer to use to apply this policy to a query.Called only when
SecurityPolicy.isExpressibleInQuery(String, String)
returnedtrue
- Specified by:
getQueryTransformer
in interfaceSecurityPolicy
- Parameters:
repositoryName
- the target repository name.- Returns:
- the transformer
-
isExpressibleInQuery
Description copied from interface:SecurityPolicy
Checks if this policy can be expressed in a query for given repository.If not, then any query made will have to be post-filtered.
- Specified by:
isExpressibleInQuery
in interfaceSecurityPolicy
- Parameters:
repositoryName
- the target repository name.- Returns:
true
if the policy can be expressed in a query
-
isExpressibleInQuery
Description copied from interface:SecurityPolicy
Checks if this policy can be expressed in a string-based query for given repository.If not, then any query made will have to be post-filtered, if possible, otherwise denied.
- Specified by:
isExpressibleInQuery
in interfaceSecurityPolicy
- Parameters:
repositoryName
- the target repository name.- Returns:
true
if the policy can be expressed in a string-based query
-