Package org.ametys.plugins.survey.right
Class SurveyAccessController
java.lang.Object
org.ametys.runtime.plugin.component.AbstractLogEnabled
org.ametys.plugins.core.impl.right.AbstractProfileStorageBasedAccessController
org.ametys.plugins.core.impl.right.AbstractHierarchicalWithPermissionContextAccessController<T,T>
org.ametys.plugins.core.impl.right.AbstractHierarchicalAccessController<AmetysObject>
org.ametys.plugins.survey.right.SurveyAccessController
- All Implemented Interfaces:
AccessController,LogEnabled,PluginAware,Initializable,Contextualizable,Serviceable
public class SurveyAccessController
extends AbstractHierarchicalAccessController<AmetysObject>
implements Contextualizable
AccessController for a Survey-
Nested Class Summary
Nested classes/interfaces inherited from class org.ametys.plugins.core.impl.right.AbstractHierarchicalWithPermissionContextAccessController
AbstractHierarchicalWithPermissionContextAccessController.HierarchicalAccessResultDetailsNested classes/interfaces inherited from class org.ametys.plugins.core.impl.right.AbstractProfileStorageBasedAccessController
AbstractProfileStorageBasedAccessController.CacheKind, AbstractProfileStorageBasedAccessController.PermissionDetailsNested classes/interfaces inherited from interface org.ametys.core.right.AccessController
AccessController.AccessResult, AccessController.ExplanationObject, AccessController.Permission -
Field Summary
Fields inherited from class org.ametys.plugins.core.impl.right.AbstractProfileStorageBasedAccessController
__ANONYMOUS_USER_IDENTITY, __ANY_CONTECTED_USER_IDENTITY, _cacheManager, _groupManager, _profileAssignmentStorageEP, _rightProfileDAO -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription_convertWorkspaceToRootRightContexts(Set<Object> workspacesContexts) Get the current workspaces contexts and turn it into root contexts in order to allow methods hasXXXAnyPermissionOnWorkspace to workprotected Set<AmetysObject>_getParents(AmetysObject object) Gets the parents of the object.protected boolean_isSupportedStoredContext(Object storedObject) Determine if a stored context is handled by this controller.voidcontextualize(Context context) getObjectCategory(Object object) Get a label classifying the object handled by this access controllergetObjectLabel(Object object) Get a label describing the object handled by this access controllerprotected I18nizableTextgetObjectLabelForExplanation(Object object) Get the label describing the object in the explanation sentence.booleanisSupported(Object object) Returns true if this access controller supports the given objectMethods inherited from class org.ametys.plugins.core.impl.right.AbstractHierarchicalAccessController
_getParentsMethods inherited from class org.ametys.plugins.core.impl.right.AbstractHierarchicalWithPermissionContextAccessController
_getExplanationI18nText, _getPermission, _getPermission, _getPermissionByGroup, _getPermissionByGroup, _getPermissionByUser, _getPermissionByUser, _getPermissionContext, _getPermissionDetails, _getPermissionDetails, _getPermissionDetailsForAnonymous, _getPermissionDetailsForAnonymous, _getPermissionDetailsForAnyConnectedUser, _getPermissionDetailsForAnyConnectedUser, _getPermissionForAnonymous, _getPermissionForAnonymous, _getPermissionForAnyConnectedUser, _getPermissionForAnyConnectedUser, getPermissionByRight, getPermissionByRight, isInheritanceAllowedMethods inherited from class org.ametys.plugins.core.impl.right.AbstractProfileStorageBasedAccessController
_buildExplanation, _convertContext, _explainPermission, _explainPermissionForAnonymous, _explainPermissionForAnyConnectedUser, _getAccessExplanationI18nKey, _getExplanationI18nParams, _hasRightResultInFirstCache, _hasRightResultInSecondCache, _putInFirstCache, _putInSecondCache, _unconvertContext, explainAllPermissions, explainPermission, explainPermissionForAnonymous, explainPermissionForAnyConnectedUser, explainReadAccessPermission, explainReadAccessPermissionForAnonymous, explainReadAccessPermissionForAnyConnectedUser, getId, getPermission, getPermissionByGroup, getPermissionByUser, getPermissionForAnonymous, getPermissionForAnyConnectedUser, getReadAccessPermission, getReadAccessPermissionByGroup, getReadAccessPermissionByUser, getReadAccessPermissionForAnonymous, getReadAccessPermissionForAnyConnectedUser, hasAnonymousAnyPermissionOnWorkspace, hasAnonymousAnyReadAccessPermissionOnWorkspace, hasAnyConnectedUserAnyPermissionOnWorkspace, hasAnyConnectedUserAnyReadAccessPermissionOnWorkspace, hasUserAnyPermissionOnWorkspace, hasUserAnyReadAccessPermissionOnWorkspace, initialize, service, setPluginInfoMethods inherited from class org.ametys.runtime.plugin.component.AbstractLogEnabled
getLogger, setLoggerMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.ametys.core.right.AccessController
getExplanationObject, getObjectPriority, getStandardAccessExplanation
-
Constructor Details
-
SurveyAccessController
public SurveyAccessController()
-
-
Method Details
-
contextualize
- Specified by:
contextualizein interfaceContextualizable- Throws:
ContextException
-
isSupported
Description copied from interface:AccessControllerReturns true if this access controller supports the given object- Specified by:
isSupportedin interfaceAccessController- Parameters:
object- The object to test- Returns:
- true if this access controller supports the given object
-
_isSupportedStoredContext
Description copied from class:AbstractProfileStorageBasedAccessControllerDetermine if a stored context is handled by this controller. Default implementation returns the result ofAccessController.isSupported(Object)as no conversion is done by default on object context before storage (seeAbstractProfileStorageBasedAccessController._convertContext(Object))- Overrides:
_isSupportedStoredContextin classAbstractProfileStorageBasedAccessController- Parameters:
storedObject- a stored object- Returns:
- true if the context is supported
-
_getParents
Description copied from class:AbstractHierarchicalAccessControllerGets the parents of the object. Must return null when the object is the "root" (where "root" means here the root of the hierarchy of the access controller)- Specified by:
_getParentsin classAbstractHierarchicalAccessController<AmetysObject>- Parameters:
object- The object- Returns:
- the parents of the object, or null if the object is the "root" of the hierarchy
-
_convertWorkspaceToRootRightContexts
protected Set<? extends Object> _convertWorkspaceToRootRightContexts(Set<Object> workspacesContexts) Description copied from class:AbstractProfileStorageBasedAccessControllerGet the current workspaces contexts and turn it into root contexts in order to allow methods hasXXXAnyPermissionOnWorkspace to work- Specified by:
_convertWorkspaceToRootRightContextsin classAbstractProfileStorageBasedAccessController- Parameters:
workspacesContexts- The workspace contexts. Such as '/${WorkspaceName}', '/admin'- Returns:
- A null or empty set if the current AccessController does not apply to any workspace context, or the root object where ProfileAssignmentStorageExtension should start looking at to find any permission
-
getObjectLabelForExplanation
Description copied from class:AbstractProfileStorageBasedAccessControllerGet the label describing the object in the explanation sentence.- Overrides:
getObjectLabelForExplanationin classAbstractProfileStorageBasedAccessController- Parameters:
object- the object that granted the right- Returns:
- the label
- Throws:
RightsException- when the object is not supported by the controller
-
getObjectLabel
Description copied from interface:AccessControllerGet a label describing the object handled by this access controller- Specified by:
getObjectLabelin interfaceAccessController- Parameters:
object- the object- Returns:
- the label
- Throws:
RightsException
-
getObjectCategory
Description copied from interface:AccessControllerGet a label classifying the object handled by this access controller- Specified by:
getObjectCategoryin interfaceAccessController- Parameters:
object- the object- Returns:
- the label
-