Package org.nuxeo.ecm.core.api
Class UnrestrictedSessionRunner
java.lang.Object
org.nuxeo.ecm.core.api.UnrestrictedSessionRunner
- Direct Known Subclasses:
AbstractRootSectionsFinder,AbstractUserWorkspaceImpl.UnrestrictedUserWorkspaceFinder,ChangePermissionUnrestricted,CoreGraph.ResourceFinder,CoreGraph.SizeFinder,CoreGraph.StatementAdder,CoreGraph.StatementFinder,CoreGraph.StatementRemover,CoreProxyWithWorkflowFactory.DocumentPublisherUnrestricted,CoreQueryAndFetchUnrestrictedSessionRunner,CoreQueryUnrestrictedSessionRunner,CreateDocumentsAction.UnrestrictedCreateDocument,CreateTaskUnrestricted,DefaultValidatorsRule.UnrestrictedACPGetter,DeleteDocumentUnrestricted,DocumentMetadataGroupComputer.GetDocumentsFromUsername,DocumentRouteElementImpl.GetIsParentRunningUnrestricted,DocumentRouteElementImpl.SetDocumentOnReadOnlyUnrestrictedSessionRunner,DocumentRoutingServiceImpl.AttachedDocumentsChecker,DocumentStoreSessionRunner,DomainsFinder,DublinCoreListener.UnrestrictedPropertySetter,FollowTransitionUnrestricted,JsonGraphRoute,MultiTenantHelper.TenantIdFinder,NodeAccessRunner,PublishUnrestricted,QueryRepositoryProbe.Runner,RemoveACLUnrestricted,RenditionCreator,RenditionFinder,RenditionLiveDocFetcher,RenditionPublicationFactory.RemoveACP,RenditionsRemover,SourceDocumentResolver,TaskServiceImpl.GetTaskRootParentPathUnrestricted,TemplateMappingFetcher,TemplateMappingRemover,UserInvitationComponent.RegistrationAcceptator,UserInvitationComponent.RegistrationApprover,UserInvitationComponent.RegistrationCreator,UserInvitationComponent.RegistrationRejector,UserInvitationComponent.RequestIdValidator,UserInvitationComponent.RootDocumentGetter,UserInvitationComponent.UserRegistrationModelCreator
Helper class to run code with an unrestricted session.
The caller must implement the run() method, and call runUnrestricted().
- Author:
- Florent Guillaume
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected booleanTrue if a call torunUnrestricted()is in progress.protected Stringprotected final Stringprotected CoreSessionprotected final boolean -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedUnrestrictedSessionRunner(String repositoryName) Constructs aUnrestrictedSessionRunnergiven a repository name.protectedUnrestrictedSessionRunner(String repositoryName, String originatingUser) Constructs aUnrestrictedSessionRunnergiven a repository name and an originating user name.protectedUnrestrictedSessionRunner(CoreSession session) Constructs aUnrestrictedSessionRunnergiven an existing session (which may or may not be already unrestricted). -
Method Summary
Modifier and TypeMethodDescriptionprotected booleancheckUnrestricted(CoreSession session) abstract voidrun()This method will be called byrunUnrestricted()withsessionavailable as an unrestricted session.voidvoidsetOriginatingUsername(String originatingUsername)
-
Field Details
-
originatingUsername
-
session
-
sessionIsAlreadyUnrestricted
protected final boolean sessionIsAlreadyUnrestricted -
repositoryName
-
isUnrestricted
protected boolean isUnrestrictedTrue if a call torunUnrestricted()is in progress.
-
-
Constructor Details
-
UnrestrictedSessionRunner
Constructs aUnrestrictedSessionRunnergiven an existing session (which may or may not be already unrestricted).Originating user is taken on given session.
- Parameters:
session- the available session
-
UnrestrictedSessionRunner
Constructs aUnrestrictedSessionRunnergiven a repository name.- Parameters:
repositoryName- the repository name
-
UnrestrictedSessionRunner
Constructs aUnrestrictedSessionRunnergiven a repository name and an originating user name.- Parameters:
repositoryName- the repository nameoriginatingUser- the user name behind the system user
-
-
Method Details
-
getOriginatingUsername
-
setOriginatingUsername
-
checkUnrestricted
-
runUnrestricted
public void runUnrestricted()Calls therun()method with an unrestrictedsession. During this call,isUnrestrictedis set totrue. -
run
public abstract void run()This method will be called byrunUnrestricted()withsessionavailable as an unrestricted session.It can also be called directly in which case the
sessionavailable will be the one passed to#UnrestrictedSessionRunner(CoreSession).
-