]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - org.argeo.slc.client.ui/src/org/argeo/slc/client/ui/views/JcrExecutionModulesView.java
Make UI more reactive
[gpl/argeo-slc.git] / org.argeo.slc.client.ui / src / org / argeo / slc / client / ui / views / JcrExecutionModulesView.java
index 697433fe775a6dbf8df4a6de71997dbcd5abf3a4..2e0a5cf424e5453c626cae5e774125f5a7009aeb 100644 (file)
@@ -43,19 +43,20 @@ 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.SlcNames;
+import org.argeo.slc.SlcTypes;
 import org.argeo.slc.client.ui.ClientUiPlugin;
 import org.argeo.slc.client.ui.SlcImages;
 import org.argeo.slc.client.ui.editors.ProcessEditor;
 import org.argeo.slc.client.ui.editors.ProcessEditorInput;
 import org.argeo.slc.execution.ExecutionModulesManager;
 import org.argeo.slc.jcr.SlcJcrConstants;
-import org.argeo.slc.jcr.SlcNames;
-import org.argeo.slc.jcr.SlcTypes;
 import org.eclipse.jface.viewers.DoubleClickEvent;
 import org.eclipse.jface.viewers.IDoubleClickListener;
 import org.eclipse.jface.viewers.IStructuredSelection;
 import org.eclipse.jface.viewers.ITableLabelProvider;
 import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.rap.rwt.service.ServerPushSession;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.dnd.DND;
 import org.eclipse.swt.dnd.DragSourceAdapter;
@@ -77,12 +78,17 @@ public class JcrExecutionModulesView extends ViewPart implements SlcTypes, SlcNa
 
        private TreeViewer viewer;
 
+       private ServerPushSession pushSession;
+
        /* DEPENDENCY INJECTION */
        private Repository repository;
        private Session session;
        private ExecutionModulesManager modulesManager;
 
        public void createPartControl(Composite parent) {
+               pushSession = new ServerPushSession();
+               pushSession.start();
+
                try {
                        session = repository.login();
                } catch (RepositoryException e1) {
@@ -409,6 +415,8 @@ public class JcrExecutionModulesView extends ViewPart implements SlcTypes, SlcNa
 
        public void dispose() {
                JcrUtils.logoutQuietly(session);
+               if (pushSession != null)
+                       pushSession.stop();
                super.dispose();
        }