public abstract class AbstractSecurityPolicy extends Object implements SecurityPolicy
SecurityPolicy.IdentityQueryTransformer, SecurityPolicy.QueryTransformer
Constructor and Description |
---|
AbstractSecurityPolicy() |
Modifier and Type | Method and Description |
---|---|
SQLQuery.Transformer |
getQueryTransformer(String repositoryName)
Get the transformer to use to apply this policy to a query.
|
SecurityPolicy.QueryTransformer |
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.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
checkPermission
public AbstractSecurityPolicy()
public boolean isRestrictingPermission(String permission)
SecurityPolicy
Queries check the BROWSE permission.
isRestrictingPermission
in interface SecurityPolicy
permission
- the permission to check fortrue
if the policy restricts the permissionpublic SQLQuery.Transformer getQueryTransformer(String repositoryName)
SecurityPolicy
Called only when #isExpressibleInQuery()
returned true
getQueryTransformer
in interface SecurityPolicy
repositoryName
- the target repository name.public SecurityPolicy.QueryTransformer getQueryTransformer(String repositoryName, String queryLanguage)
SecurityPolicy
Called only when SecurityPolicy.isExpressibleInQuery(String, String)
returned true
getQueryTransformer
in interface SecurityPolicy
repositoryName
- the target repository name.public boolean isExpressibleInQuery(String repositoryName)
SecurityPolicy
If not, then any query made will have to be post-filtered.
isExpressibleInQuery
in interface SecurityPolicy
repositoryName
- the target repository name.true
if the policy can be expressed in a querypublic boolean isExpressibleInQuery(String repositoryName, String queryLanguage)
SecurityPolicy
If not, then any query made will have to be post-filtered, if possible, otherwise denied.
isExpressibleInQuery
in interface SecurityPolicy
repositoryName
- the target repository name.true
if the policy can be expressed in a string-based queryCopyright © 2018 Nuxeo. All rights reserved.