X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.app.jcr%2Fsrc%2Forg%2Fargeo%2Finternal%2Fapp%2Fjcr%2FAppUserStateImpl.java;h=11c42d374dd818f9f6e6f1e7dcd14ccc123c1ee6;hb=HEAD;hp=faf217ac65fa853cf28bb1cf2571cca28787b3a3;hpb=d6c9d33b61e475914d3f8d7534374ed30eca8150;p=gpl%2Fargeo-suite.git diff --git a/org.argeo.app.jcr/src/org/argeo/internal/app/jcr/AppUserStateImpl.java b/org.argeo.app.jcr/src/org/argeo/internal/app/jcr/AppUserStateImpl.java index faf217a..11c42d3 100644 --- a/org.argeo.app.jcr/src/org/argeo/internal/app/jcr/AppUserStateImpl.java +++ b/org.argeo.app.jcr/src/org/argeo/internal/app/jcr/AppUserStateImpl.java @@ -3,27 +3,29 @@ package org.argeo.internal.app.jcr; import javax.jcr.Node; import org.argeo.api.acr.Content; +import org.argeo.api.acr.ContentRepository; import org.argeo.api.acr.ContentSession; +import org.argeo.api.app.AppUserState; import org.argeo.api.cms.CmsConstants; import org.argeo.api.cms.CmsSession; -import org.argeo.app.api.AppUserState; import org.argeo.app.jcr.SuiteJcrUtils; import org.argeo.cms.acr.ContentUtils; import org.argeo.cms.jcr.acr.JcrContentProvider; import org.argeo.jcr.Jcr; public class AppUserStateImpl implements AppUserState { + private ContentRepository contentRepository; private JcrContentProvider jcrContentProvider; @SuppressWarnings("deprecation") @Override - public Content getOrCreateSessionDir(ContentSession contentSession, CmsSession session) { + public Content getOrCreateSessionDir(CmsSession session) { Node userDirNode = jcrContentProvider.doInAdminSession((adminSession) -> { Node node = SuiteJcrUtils.getOrCreateCmsSessionNode(adminSession, session); return node; - }); - Content userDir = contentSession - .get(ContentUtils.SLASH + CmsConstants.SYS_WORKSPACE + Jcr.getPath(userDirNode)); + }); + ContentSession contentSession = ContentUtils.openSession(contentRepository, session); + Content userDir = contentSession.get(Content.ROOT_PATH + CmsConstants.SYS_WORKSPACE + Jcr.getPath(userDirNode)); return userDir; } @@ -31,4 +33,8 @@ public class AppUserStateImpl implements AppUserState { this.jcrContentProvider = jcrContentProvider; } + public void setContentRepository(ContentRepository contentRepository) { + this.contentRepository = contentRepository; + } + }