X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.app.jcr%2Fsrc%2Forg%2Fargeo%2Finternal%2Fapp%2Fjcr%2FAppUserStateImpl.java;h=5b481f73e0bab92cee791f12d6aab6941fb6c4cd;hb=03cc3d1627b3ff2b39aeb83384d1b6f304d270bc;hp=bb2bc15be622c3a0a0f091816564dc3c6ede38e4;hpb=3757251d0be9b74dda727c51df355be9d7cbb3bf;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 bb2bc15..5b481f7 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,24 +3,28 @@ 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.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; - }); + }); + ContentSession contentSession = ContentUtils.openSession(contentRepository, session); Content userDir = contentSession.get(Content.ROOT_PATH + CmsConstants.SYS_WORKSPACE + Jcr.getPath(userDirNode)); return userDir; } @@ -29,4 +33,8 @@ public class AppUserStateImpl implements AppUserState { this.jcrContentProvider = jcrContentProvider; } + public void setContentRepository(ContentRepository contentRepository) { + this.contentRepository = contentRepository; + } + }