Keep removing dependency to JCR.
[gpl/argeo-suite.git] / org.argeo.app.ui / src / org / argeo / app / ui / library / ContentEntryArea.java
index af31ac59c9f0cfff3f4ab610e79ec4b0650f8b08..88316413e664ba158a170f9275948884351a5f68 100644 (file)
@@ -10,11 +10,14 @@ import javax.jcr.Session;
 import javax.jcr.nodetype.NodeType;
 import javax.jcr.query.Query;
 
+import org.argeo.api.acr.Content;
+import org.argeo.api.cms.CmsConstants;
 import org.argeo.api.cms.CmsTheme;
 import org.argeo.app.api.EntityType;
 import org.argeo.app.ui.SuiteEvent;
 import org.argeo.app.ui.SuiteIcon;
 import org.argeo.app.ui.widgets.TreeOrSearchArea;
+import org.argeo.cms.jcr.acr.JcrContentProvider;
 import org.argeo.cms.swt.CmsSwtUtils;
 import org.argeo.cms.ui.CmsUiProvider;
 import org.argeo.jcr.Jcr;
@@ -34,9 +37,10 @@ import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Control;
 
 public class ContentEntryArea implements CmsUiProvider {
+       private JcrContentProvider jcrContentProvider;
 
        @Override
-       public Control createUi(Composite parent, Node context) throws RepositoryException {
+       public Control createUiPart(Composite parent, Content context) {
                CmsTheme theme = CmsSwtUtils.getCmsTheme(parent);
 
                parent.setLayout(new GridLayout());
@@ -98,7 +102,8 @@ public class ContentEntryArea implements CmsUiProvider {
                });
 
                ui.getTreeViewer().setContentProvider(new SpacesContentProvider());
-               ui.getTreeViewer().setInput(context.getSession());
+               Session session = jcrContentProvider.getJcrSession(context, CmsConstants.SYS_WORKSPACE);
+               ui.getTreeViewer().setInput(session);
                return ui;
        }
 
@@ -107,6 +112,10 @@ public class ContentEntryArea implements CmsUiProvider {
                                || Jcr.isNodeType(node, NodeType.NT_FILE);
        }
 
+       public void setJcrContentProvider(JcrContentProvider jcrContentProvider) {
+               this.jcrContentProvider = jcrContentProvider;
+       }
+
        class Ui extends TreeOrSearchArea {
 
                public Ui(Composite parent, int style) {