Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Stepper2012-06-09 07:59:18 +0000
committerEike Stepper2012-06-09 07:59:18 +0000
commit8d9d8fe58e3fdde6305437581eca7238c99e4934 (patch)
tree23449a4617496bc339688308d6b78685aa23adba /plugins/org.eclipse.emf.cdo.ui.admin
parent0cef74d91520f43c6b7e1ab3bebb8d7e650190c4 (diff)
downloadcdo-8d9d8fe58e3fdde6305437581eca7238c99e4934.tar.gz
cdo-8d9d8fe58e3fdde6305437581eca7238c99e4934.tar.xz
cdo-8d9d8fe58e3fdde6305437581eca7238c99e4934.zip
[381472] Design a repository administration API
https://bugs.eclipse.org/bugs/show_bug.cgi?id=381472
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.ui.admin')
-rw-r--r--plugins/org.eclipse.emf.cdo.ui.admin/src/org/eclipse/emf/cdo/ui/internal/admin/CDOAdminView.java23
1 files changed, 16 insertions, 7 deletions
diff --git a/plugins/org.eclipse.emf.cdo.ui.admin/src/org/eclipse/emf/cdo/ui/internal/admin/CDOAdminView.java b/plugins/org.eclipse.emf.cdo.ui.admin/src/org/eclipse/emf/cdo/ui/internal/admin/CDOAdminView.java
index 7172356690..411e8f054e 100644
--- a/plugins/org.eclipse.emf.cdo.ui.admin/src/org/eclipse/emf/cdo/ui/internal/admin/CDOAdminView.java
+++ b/plugins/org.eclipse.emf.cdo.ui.admin/src/org/eclipse/emf/cdo/ui/internal/admin/CDOAdminView.java
@@ -18,7 +18,10 @@ import org.eclipse.emf.cdo.net4j.CDONet4jSession;
import org.eclipse.emf.cdo.ui.internal.admin.bundle.OM;
import org.eclipse.emf.cdo.ui.shared.SharedIcons;
+import org.eclipse.emf.internal.cdo.session.CDOSessionFactory;
+
import org.eclipse.net4j.util.container.IContainer;
+import org.eclipse.net4j.util.container.IManagedContainer;
import org.eclipse.net4j.util.ui.actions.LongRunningAction;
import org.eclipse.net4j.util.ui.views.ContainerItemProvider;
import org.eclipse.net4j.util.ui.views.ContainerView;
@@ -51,6 +54,8 @@ public class CDOAdminView extends ContainerView
private IAction addConnectionAction;
+ private int lastSessionNumber;
+
public CDOAdminView()
{
}
@@ -61,6 +66,11 @@ public class CDOAdminView extends ContainerView
return adminManager;
}
+ protected int getNextSessionNumber()
+ {
+ return ++lastSessionNumber;
+ }
+
@Override
protected ContainerItemProvider<IContainer<Object>> createContainerItemProvider()
{
@@ -151,7 +161,7 @@ public class CDOAdminView extends ContainerView
else if (obj instanceof CDOAdminClientRepository)
{
CDOAdminClientRepository repository = (CDOAdminClientRepository)obj;
- manager.add(new OpenSessionAction(adminManager, repository));
+ manager.add(new OpenSessionAction(repository));
}
}
}
@@ -221,17 +231,14 @@ public class CDOAdminView extends ContainerView
/**
* @author Eike Stepper
*/
- public static class OpenSessionAction extends LongRunningAction
+ public class OpenSessionAction extends LongRunningAction
{
- private CDOAdminClientManager adminManager;
-
private CDOAdminClientRepository repository;
- public OpenSessionAction(CDOAdminClientManager adminManager, CDOAdminClientRepository repository)
+ public OpenSessionAction(CDOAdminClientRepository repository)
{
super("Open Session", "Open a new session to this repository", SharedIcons
.getDescriptor(SharedIcons.ETOOL_OPEN_SESSION));
- this.adminManager = adminManager;
this.repository = repository;
}
@@ -246,7 +253,9 @@ public class CDOAdminView extends ContainerView
CDONet4jSession session = repository.openSession();
if (session != null)
{
- adminManager.getContainer().putElement(NSFieldE)
+ IManagedContainer container = adminManager.getContainer();
+ String description = "session" + getNextSessionNumber();
+ container.putElement(CDOSessionFactory.PRODUCT_GROUP, "admin", description, session);
}
}
}

Back to the top