X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms.e4%2Fsrc%2Forg%2Fargeo%2Fcms%2Fe4%2Fjcr%2FJcrBrowserView.java;h=de603a4480138e9d2e57639945108c6869b7183d;hb=e7dc62c485696931a3e048d9102a7c86f9323b92;hp=28dee610354fa65fd8e15ae415758756d7fa3326;hpb=8cd9656b1dcd64fe854ebda47361261b36ab18c4;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms.e4/src/org/argeo/cms/e4/jcr/JcrBrowserView.java b/org.argeo.cms.e4/src/org/argeo/cms/e4/jcr/JcrBrowserView.java index 28dee6103..de603a448 100644 --- a/org.argeo.cms.e4/src/org/argeo/cms/e4/jcr/JcrBrowserView.java +++ b/org.argeo.cms.e4/src/org/argeo/cms/e4/jcr/JcrBrowserView.java @@ -31,6 +31,9 @@ import javax.jcr.observation.Event; import javax.jcr.observation.EventListener; import javax.jcr.observation.ObservationManager; +import org.argeo.api.NodeConstants; +import org.argeo.api.security.CryptoKeyring; +import org.argeo.api.security.Keyring; import org.argeo.cms.CmsException; import org.argeo.cms.ui.jcr.JcrBrowserUtils; import org.argeo.cms.ui.jcr.NodeContentProvider; @@ -38,13 +41,14 @@ import org.argeo.cms.ui.jcr.NodeLabelProvider; import org.argeo.cms.ui.jcr.OsgiRepositoryRegister; import org.argeo.cms.ui.jcr.PropertiesContentProvider; import org.argeo.cms.ui.jcr.model.SingleJcrNodeElem; -import org.argeo.cms.util.CmsUtils; +import org.argeo.cms.ui.util.CmsUiUtils; import org.argeo.eclipse.ui.EclipseUiException; import org.argeo.eclipse.ui.TreeParent; import org.argeo.eclipse.ui.jcr.AsyncUiEventListener; -import org.argeo.eclipse.ui.jcr.utils.NodeViewerComparer; -import org.argeo.node.security.CryptoKeyring; +import org.argeo.eclipse.ui.jcr.util.NodeViewerComparer; +import org.argeo.jcr.JcrUtils; import org.eclipse.e4.core.contexts.IEclipseContext; +import org.eclipse.e4.core.di.annotations.Optional; import org.eclipse.e4.ui.services.EMenuService; import org.eclipse.e4.ui.workbench.modeling.EPartService; import org.eclipse.e4.ui.workbench.modeling.ESelectionService; @@ -76,7 +80,9 @@ public class JcrBrowserView { private boolean sortChildNodes = true; /* DEPENDENCY INJECTION */ - private CryptoKeyring keyring; + @Inject + @Optional + private Keyring keyring; @Inject private RepositoryFactory repositoryFactory; @Inject @@ -106,10 +112,10 @@ public class JcrBrowserView { // Create the tree on top of the view Composite top = new Composite(sashForm, SWT.NONE); // GridLayout gl = new GridLayout(1, false); - top.setLayout(CmsUtils.noSpaceGridLayout()); + top.setLayout(CmsUiUtils.noSpaceGridLayout()); try { - this.userSession = this.nodeRepository.login(); + this.userSession = this.nodeRepository.login(NodeConstants.HOME_WORKSPACE); } catch (RepositoryException e) { throw new CmsException("Cannot open user session", e); } @@ -130,7 +136,7 @@ public class JcrBrowserView { // Create the property viewer on the bottom Composite bottom = new Composite(sashForm, SWT.NONE); - bottom.setLayout(CmsUtils.noSpaceGridLayout()); + bottom.setLayout(CmsUiUtils.noSpaceGridLayout()); propertiesViewer = createPropertiesViewer(bottom); sashForm.setWeights(getWeights()); @@ -149,6 +155,7 @@ public class JcrBrowserView { @PreDestroy public void dispose() { + JcrUtils.logoutQuietly(userSession); repositoryRegister.destroy(); } @@ -276,9 +283,8 @@ public class JcrBrowserView { /** * Resets the tree content provider * - * @param sortChildNodes - * if true the content provider will use a comparer to sort nodes - * that might slow down the display + * @param sortChildNodes if true the content provider will use a comparer to + * sort nodes that might slow down the display */ public void setSortChildNodes(boolean sortChildNodes) { this.sortChildNodes = sortChildNodes;