From: Mathieu Baudier Date: Fri, 9 Mar 2012 15:58:38 +0000 (+0000) Subject: Use RepositoryFactory in JCR browser X-Git-Tag: argeo-commons-2.1.30~978 X-Git-Url: http://git.argeo.org/?a=commitdiff_plain;h=34fe66994cdf3a9de3eea805bbb913a64c54b984;p=lgpl%2Fargeo-commons.git Use RepositoryFactory in JCR browser git-svn-id: https://svn.argeo.org/commons/trunk@5188 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- diff --git a/server/plugins/org.argeo.jcr.ui.explorer/META-INF/spring/views.xml b/server/plugins/org.argeo.jcr.ui.explorer/META-INF/spring/views.xml index 6cda684b4..84520ef55 100644 --- a/server/plugins/org.argeo.jcr.ui.explorer/META-INF/spring/views.xml +++ b/server/plugins/org.argeo.jcr.ui.explorer/META-INF/spring/views.xml @@ -9,5 +9,6 @@ scope="prototype"> + diff --git a/server/plugins/org.argeo.jcr.ui.explorer/src/main/java/org/argeo/jcr/ui/explorer/browser/NodeContentProvider.java b/server/plugins/org.argeo.jcr.ui.explorer/src/main/java/org/argeo/jcr/ui/explorer/browser/NodeContentProvider.java index 4790649d2..b184c1eb1 100644 --- a/server/plugins/org.argeo.jcr.ui.explorer/src/main/java/org/argeo/jcr/ui/explorer/browser/NodeContentProvider.java +++ b/server/plugins/org.argeo.jcr.ui.explorer/src/main/java/org/argeo/jcr/ui/explorer/browser/NodeContentProvider.java @@ -5,6 +5,7 @@ import java.util.Arrays; import java.util.List; import javax.jcr.Node; +import javax.jcr.RepositoryFactory; import javax.jcr.Session; import org.argeo.eclipse.ui.TreeParent; @@ -29,6 +30,7 @@ public class NodeContentProvider implements ITreeContentProvider { // Business Objects final private RepositoryRegister repositoryRegister; + final private RepositoryFactory repositoryFactory; final private Session userSession; final private JcrKeyring jcrKeyring; final private boolean sortChildren; @@ -41,10 +43,12 @@ public class NodeContentProvider implements ITreeContentProvider { private TreeObjectsComparator itemComparator = new TreeObjectsComparator(); public NodeContentProvider(JcrKeyring jcrKeyring, - RepositoryRegister repositoryRegister, Boolean sortChildren) { + RepositoryRegister repositoryRegister, + RepositoryFactory repositoryFactory, Boolean sortChildren) { this.userSession = jcrKeyring != null ? jcrKeyring.getSession() : null; this.jcrKeyring = jcrKeyring; this.repositoryRegister = repositoryRegister; + this.repositoryFactory = repositoryFactory; this.sortChildren = sortChildren; } @@ -66,7 +70,7 @@ public class NodeContentProvider implements ITreeContentProvider { if (repositoriesNode != null) repositoriesNode.dispose(); repositoriesNode = new RepositoriesNode("Repositories", - repositoryRegister, null, jcrKeyring); + repositoryRegister, repositoryFactory, null, jcrKeyring); } } diff --git a/server/plugins/org.argeo.jcr.ui.explorer/src/main/java/org/argeo/jcr/ui/explorer/model/RepositoriesNode.java b/server/plugins/org.argeo.jcr.ui.explorer/src/main/java/org/argeo/jcr/ui/explorer/model/RepositoriesNode.java index 6c5273aca..3e05c989c 100644 --- a/server/plugins/org.argeo.jcr.ui.explorer/src/main/java/org/argeo/jcr/ui/explorer/model/RepositoriesNode.java +++ b/server/plugins/org.argeo.jcr.ui.explorer/src/main/java/org/argeo/jcr/ui/explorer/model/RepositoriesNode.java @@ -32,13 +32,16 @@ import org.argeo.jcr.security.JcrKeyring; public class RepositoriesNode extends TreeParent implements ArgeoNames { private final RepositoryRegister repositoryRegister; + private final RepositoryFactory repositoryFactory; private final JcrKeyring jcrKeyring; public RepositoriesNode(String name, RepositoryRegister repositoryRegister, - TreeParent parent, JcrKeyring jcrKeyring) { + RepositoryFactory repositoryFactory, TreeParent parent, + JcrKeyring jcrKeyring) { super(name); this.repositoryRegister = repositoryRegister; + this.repositoryFactory = repositoryFactory; this.jcrKeyring = jcrKeyring; } @@ -86,7 +89,7 @@ public class RepositoriesNode extends TreeParent implements ArgeoNames { params.put(ArgeoJcrConstants.JCR_REPOSITORY_URI, uri); params.put(ArgeoJcrConstants.JCR_REPOSITORY_ALIAS, remoteNode.getName()); - Repository repository = repositoryRegister + Repository repository = repositoryFactory .getRepository(params); RemoteRepositoryNode remoteRepositoryNode = new RemoteRepositoryNode( remoteNode.getName(), repository, this, jcrKeyring, diff --git a/server/plugins/org.argeo.jcr.ui.explorer/src/main/java/org/argeo/jcr/ui/explorer/views/GenericJcrBrowser.java b/server/plugins/org.argeo.jcr.ui.explorer/src/main/java/org/argeo/jcr/ui/explorer/views/GenericJcrBrowser.java index ae07a5b5e..8d6162e93 100644 --- a/server/plugins/org.argeo.jcr.ui.explorer/src/main/java/org/argeo/jcr/ui/explorer/views/GenericJcrBrowser.java +++ b/server/plugins/org.argeo.jcr.ui.explorer/src/main/java/org/argeo/jcr/ui/explorer/views/GenericJcrBrowser.java @@ -5,6 +5,7 @@ import java.util.List; import javax.jcr.Property; import javax.jcr.PropertyType; import javax.jcr.RepositoryException; +import javax.jcr.RepositoryFactory; import javax.jcr.Value; import javax.jcr.observation.Event; import javax.jcr.observation.EventListener; @@ -57,6 +58,7 @@ public class GenericJcrBrowser extends AbstractJcrBrowser { /* DEPENDENCY INJECTION */ private JcrKeyring jcrKeyring; private RepositoryRegister repositoryRegister; + private RepositoryFactory repositoryFactory; // This page widgets private TreeViewer nodesViewer; @@ -104,7 +106,7 @@ public class GenericJcrBrowser extends AbstractJcrBrowser { top.setLayout(gl); nodeContentProvider = new NodeContentProvider(jcrKeyring, - repositoryRegister, sortChildNodes); + repositoryRegister, repositoryFactory, sortChildNodes); // nodes viewer nodesViewer = createNodeViewer(top, nodeContentProvider); @@ -320,4 +322,8 @@ public class GenericJcrBrowser extends AbstractJcrBrowser { this.jcrKeyring = jcrKeyring; } + public void setRepositoryFactory(RepositoryFactory repositoryFactory) { + this.repositoryFactory = repositoryFactory; + } + }