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.JcrDClickListener;
import org.argeo.cms.ui.jcr.NodeContentProvider;
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;
import org.eclipse.jface.viewers.ColumnLabelProvider;
import org.eclipse.jface.viewers.IBaseLabelProvider;
private boolean sortChildNodes = true;
/* DEPENDENCY INJECTION */
- private CryptoKeyring keyring;
+ @Inject
+ @Optional
+ private Keyring keyring;
@Inject
private RepositoryFactory repositoryFactory;
@Inject
private Repository nodeRepository;
- // Current user session on the "Argeo node" default workspace
+ // Current user session on the home repository default workspace
private Session userSession;
private OsgiRepositoryRegister repositoryRegister = new OsgiRepositoryRegister();
private EventListener resultsObserver;
@PostConstruct
- public void createPartControl(Composite parent, ESelectionService selectionService, EMenuService menuService) {
+ public void createPartControl(Composite parent, IEclipseContext context, EPartService partService,
+ ESelectionService selectionService, EMenuService menuService) {
repositoryRegister.init();
parent.setLayout(new FillLayout());
// 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);
}
// 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());
selectionService.setSelection(selection.toList());
}
});
+ nodesViewer.addDoubleClickListener(new JcrE4DClickListener(nodesViewer, partService));
menuService.registerContextMenu(nodesViewer.getControl(), NODE_VIEWER_POPUP_MENU_ID);
// getSite().registerContextMenu(menuManager, nodesViewer);
// getSite().setSelectionProvider(nodesViewer);
@PreDestroy
public void dispose() {
+ JcrUtils.logoutQuietly(userSession);
repositoryRegister.destroy();
}
throw new EclipseUiException("Cannot register listeners", e);
}
- tmpNodeViewer.addDoubleClickListener(new JcrDClickListener(tmpNodeViewer));
+ // tmpNodeViewer.addDoubleClickListener(new JcrDClickListener(tmpNodeViewer));
return tmpNodeViewer;
}
/**
* 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;