import javax.jcr.Node;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
import org.argeo.ArgeoException;
import org.argeo.jcr.JcrUtils;
import org.argeo.jcr.ui.explorer.JcrExplorerPlugin;
import org.eclipse.ui.forms.editor.FormEditor;
/**
- * Parent Abstract GR multitab editor. Insure the presence of a GrBackend
+ *
+ * Container for the node editor page. At creation time, it takes a JCR Node
+ * that cannot be changed afterwards.
+ *
*/
public class GenericNodeEditor extends FormEditor {
- private final static Log log = LogFactory.getLog(GenericNodeEditor.class);
- public final static String ID = "org.argeo.jcr.ui.explorer.genericNodeEditor";
+ // private final static Log log =
+ // LogFactory.getLog(GenericNodeEditor.class);
+ public final static String ID = JcrExplorerPlugin.ID + ".genericNodeEditor";
private Node currentNode;
- private GenericNodePage networkDetailsPage;
+ private GenericNodePage genericNodePage;
+ private GenericPropertyPage genericPropertyPage;
+ private ChildNodesPage childNodesPage;
+ private NodeRightsManagementPage nodeRightsManagementPage;
+ private NodeVersionHistoryPage nodeVersionHistoryPage;
public void init(IEditorSite site, IEditorInput input)
throws PartInitException {
super.init(site, input);
GenericNodeEditorInput nei = (GenericNodeEditorInput) getEditorInput();
+ currentNode = nei.getCurrentNode();
this.setPartName(JcrUtils.lastPathElement(nei.getPath()));
}
@Override
protected void addPages() {
- EmptyNodePage enp = new EmptyNodePage(this, "Empty node page");
try {
- addPage(enp);
- } catch (PartInitException e) {
- throw new ArgeoException("Not able to add an empty page ", e);
- }
- }
+ // genericNodePage = new GenericNodePage(this,
+ // JcrExplorerPlugin.getMessage("genericNodePageTitle"),
+ // currentNode);
+ // addPage(genericNodePage);
- private void addPagesAfterNodeSet() {
- try {
- networkDetailsPage = new GenericNodePage(this,
+ genericPropertyPage = new GenericPropertyPage(this,
JcrExplorerPlugin.getMessage("genericNodePageTitle"),
currentNode);
- addPage(networkDetailsPage);
- this.setActivePage(networkDetailsPage.getIndex());
+ addPage(genericPropertyPage);
+
+ childNodesPage = new ChildNodesPage(this,
+ JcrExplorerPlugin.getMessage("childNodesPageTitle"),
+ currentNode);
+ addPage(childNodesPage);
+
+ nodeRightsManagementPage = new NodeRightsManagementPage(this,
+ JcrExplorerPlugin
+ .getMessage("nodeRightsManagementPageTitle"),
+ currentNode);
+ addPage(nodeRightsManagementPage);
+
+ nodeVersionHistoryPage = new NodeVersionHistoryPage(
+ this,
+ JcrExplorerPlugin.getMessage("nodeVersionHistoryPageTitle"),
+ currentNode);
+ addPage(nodeVersionHistoryPage);
} catch (PartInitException e) {
- throw new ArgeoException("Not able to add page ", e);
+ throw new ArgeoException("Not able to add an empty page ", e);
}
}
Node getCurrentNode() {
return currentNode;
}
-
- public void setCurrentNode(Node currentNode) {
- boolean nodeWasNull = this.currentNode == null;
- this.currentNode = currentNode;
- if (nodeWasNull) {
- this.removePage(0);
- addPagesAfterNodeSet();
- }
- }
}