import javax.jcr.Node;
import javax.jcr.NodeIterator;
import javax.jcr.Property;
+import javax.jcr.Repository;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
import javax.jcr.nodetype.NodeType;
import org.argeo.eclipse.ui.jcr.NodeElementComparer;
import org.argeo.eclipse.ui.jcr.SimpleNodeContentProvider;
import org.argeo.eclipse.ui.specific.EclipseUiSpecificUtils;
+import org.argeo.jcr.JcrUtils;
import org.argeo.slc.SlcException;
import org.argeo.slc.client.ui.ClientUiPlugin;
import org.argeo.slc.client.ui.SlcImages;
private TreeViewer viewer;
+ /* DEPENDENCY INJECTION */
private Session session;
-
private ExecutionModulesManager modulesManager;
public void createPartControl(Composite parent) {
viewer = new TreeViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
EclipseUiSpecificUtils.enableToolTipSupport(viewer);
-
ViewContentProvider contentProvider = new ViewContentProvider(session);
viewer.setContentProvider(contentProvider);
viewer.setComparer(new NodeElementComparer());
viewer.setLabelProvider(viewLabelProvider);
viewer.setInput(getViewSite());
viewer.addDoubleClickListener(new ViewDoubleClickListener());
+ // context menu
+ // addContextMenu(viewer);
+
getViewSite().setSelectionProvider(viewer);
Transfer[] tt = new Transfer[] { TextTransfer.getInstance() };
viewer.setInput(getViewSite());
}
+ // Controllers
class ViewContentProvider extends SimpleNodeContentProvider {
public ViewContentProvider(Session session) {
}
+ // private void addContextMenu(TreeViewer flowsViewer) {
+ //
+ // final MenuManager menuMgr = new MenuManager();
+ // menuMgr.setRemoveAllWhenShown(true);
+ // menuMgr.addMenuListener(new IMenuListener() {
+ //
+ // public void menuAboutToShow(IMenuManager manager) {
+ // menuMgr.add(new Action("Test") {
+ // public void run() {
+ // log.debug("do something");
+ // }
+ // });
+ // }
+ // });
+ // Menu menu = menuMgr.createContextMenu(flowsViewer.getControl());
+ // flowsViewer.getTree().setMenu(menu);
+ // getSite().registerContextMenu(menuMgr, flowsViewer);
+ // }
+
class VmAgentObserver extends AsyncUiEventListener {
public VmAgentObserver(Display display) {
event.data = buf.toString();
log.debug("data set to : " + buf.toString());
}
- // if (selection.getFirstElement() instanceof Node) {
- // Node node = (Node) selection.getFirstElement();
- // if (TextTransfer.getInstance().isSupportedType(event.dataType)) {
- // try {
- // event.data = node.getPath();
- // } catch (RepositoryException e) {
- // throw new SlcException("Cannot read node", e);
- // }
- // }
- // }
}
}
- public void setSession(Session session) {
- this.session = session;
+ public void dispose() {
+ JcrUtils.logoutQuietly(session);
+ super.dispose();
}
+ // DEPENDENCY INJECTION
+
public void setModulesManager(ExecutionModulesManager modulesManager) {
this.modulesManager = modulesManager;
}
+ @Deprecated
+ public void setSession(Session session) {
+ this.session = session;
+ }
+
+ public void setRepository(Repository repository) {
+ try {
+ session = repository.login();
+ } catch (RepositoryException re) {
+ throw new SlcException("Unable to log in Repository " + repository,
+ re);
+ }
+ }
}
\ No newline at end of file