From 2d5dd10f58c42aab9351c76801c57034cbe87f8e Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Fri, 16 Mar 2018 12:38:45 +0100 Subject: [PATCH] Refactor JCR low-level components and icons --- .gitignore | 2 +- .../icons/active.gif | Bin .../icons/add.gif | Bin .../icons/add.png | Bin .../icons/addFolder.gif | Bin .../icons/addPrivileges.gif | Bin .../icons/addRepo.gif | Bin .../icons/addWorkspace.png | Bin .../icons/adminLog.gif | Bin .../icons/batch.gif | Bin .../icons/begin.gif | Bin .../icons/binary.png | Bin .../icons/browser.gif | Bin .../icons/bundles.gif | Bin .../icons/changePassword.gif | Bin .../icons/clear.gif | Bin .../icons/close-all.png | Bin .../icons/commit.gif | Bin .../icons/delete.png | Bin .../icons/dumpNode.gif | Bin .../icons/file.gif | Bin .../icons/folder.gif | Bin .../icons/getSize.gif | Bin .../icons/group.png | Bin .../icons/home.gif | Bin .../icons/home.png | Bin .../icons/import_fs.png | Bin .../icons/installed.gif | Bin .../icons/log.gif | Bin .../icons/maintenance.gif | Bin .../icons/node.gif | Bin .../icons/nodes.gif | Bin .../icons/osgi_explorer.gif | Bin .../icons/password.gif | Bin .../icons/person-logged-in.png | Bin .../icons/person.png | Bin .../icons/query.png | Bin .../icons/refresh.png | Bin .../icons/remote_connected.gif | Bin .../icons/remote_disconnected.gif | Bin .../icons/remove.gif | Bin .../icons/removePrivileges.gif | Bin .../icons/rename.gif | Bin .../icons/repositories.gif | Bin .../icons/repository_connected.gif | Bin .../icons/repository_disconnected.gif | Bin .../icons/resolved.gif | Bin .../icons/role.gif | Bin .../icons/rollback.gif | Bin .../icons/save-all.png | Bin .../icons/save.gif | Bin .../icons/save.png | Bin .../icons/save_security.png | Bin .../icons/save_security_disabled.png | Bin .../icons/security.gif | Bin .../icons/service_published.gif | Bin .../icons/service_referenced.gif | Bin .../icons/sort.gif | Bin .../icons/starting.gif | Bin .../icons/sync.gif | Bin .../icons/user.gif | Bin .../icons/users.gif | Bin .../icons/workgroup.png | Bin .../icons/workgroup.xcf | Bin .../icons/workspace_connected.png | Bin .../icons/workspace_disconnected.png | Bin .../META-INF/spring/common.xml | 9 +- org.argeo.cms.ui.workbench/plugin.xml | 96 +++++------ .../internal/WorkbenchConstants.java | 3 +- .../internal/jcr/JcrDClickListener.java | 156 ------------------ .../internal/jcr/commands/AddFolderNode.java | 4 +- .../internal/jcr/commands/AddPrivileges.java | 4 +- .../jcr/commands/ConfigurableNodeDump.java | 2 +- .../jcr/commands/CreateWorkspace.java | 2 +- .../internal/jcr/commands/DeleteNodes.java | 4 +- .../internal/jcr/commands/DumpNode.java | 2 +- .../internal/jcr/commands/GetNodeSize.java | 4 +- .../internal/jcr/commands/Refresh.java | 2 +- .../jcr/commands/RemovePrivileges.java | 6 +- .../jcr/commands/RemoveRemoteRepository.java | 2 +- .../internal/jcr/commands/RenameNode.java | 2 +- .../internal/jcr/commands/UploadFiles.java | 4 +- .../internal/jcr/parts/ChildNodesPage.java | 4 +- .../internal/jcr/parts/GenericNodePage.java | 3 +- .../jcr/parts/GenericPropertyPage.java | 2 +- .../jcr/parts/NodeVersionHistoryPage.java | 9 +- .../cms/ui/workbench/jcr/JcrBrowserView.java | 16 +- .../argeo/cms/ui/workbench/jcr/JcrImages.java | 55 ------ .../jcr/WorkbenchJcrDClickListener.java | 101 ++++++++++++ .../src/org/argeo/cms/ui/CmsConstants.java | 2 + .../ui}/jcr/DefaultRepositoryRegister.java | 2 +- .../FullVersioningTreeContentProvider.java | 2 +- .../argeo/cms/ui}/jcr/JcrBrowserUtils.java | 10 +- .../argeo/cms/ui/jcr/JcrDClickListener.java | 75 +++++++++ .../src/org/argeo/cms/ui/jcr/JcrImages.java | 39 +++++ .../cms/ui}/jcr/JcrTreeContentProvider.java | 2 +- .../cms/ui}/jcr/NodeContentProvider.java | 6 +- .../argeo/cms/ui}/jcr/NodeLabelProvider.java | 13 +- .../ui}/jcr/PropertiesContentProvider.java | 2 +- .../cms/ui}/jcr/PropertyLabelProvider.java | 10 +- .../argeo/cms/ui}/jcr/RepositoryRegister.java | 2 +- .../cms/ui}/jcr/VersionLabelProvider.java | 2 +- .../jcr/model/MaintainedRepositoryElem.java | 2 +- .../ui}/jcr/model/RemoteRepositoryElem.java | 2 +- .../cms/ui}/jcr/model/RepositoriesElem.java | 4 +- .../cms/ui}/jcr/model/RepositoryElem.java | 2 +- .../cms/ui}/jcr/model/SingleJcrNodeElem.java | 2 +- .../cms/ui}/jcr/model/WorkspaceElem.java | 2 +- 108 files changed, 341 insertions(+), 334 deletions(-) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/active.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/add.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/add.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/addFolder.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/addPrivileges.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/addRepo.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/addWorkspace.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/adminLog.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/batch.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/begin.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/binary.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/browser.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/bundles.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/changePassword.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/clear.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/close-all.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/commit.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/delete.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/dumpNode.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/file.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/folder.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/getSize.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/group.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/home.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/home.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/import_fs.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/installed.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/log.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/maintenance.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/node.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/nodes.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/osgi_explorer.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/password.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/person-logged-in.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/person.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/query.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/refresh.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/remote_connected.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/remote_disconnected.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/remove.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/removePrivileges.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/rename.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/repositories.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/repository_connected.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/repository_disconnected.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/resolved.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/role.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/rollback.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/save-all.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/save.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/save.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/save_security.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/save_security_disabled.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/security.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/service_published.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/service_referenced.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/sort.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/starting.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/sync.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/user.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/users.gif (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/workgroup.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/workgroup.xcf (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/workspace_connected.png (100%) rename {org.argeo.cms.ui.workbench => org.argeo.cms.ui.theme}/icons/workspace_disconnected.png (100%) delete mode 100644 org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/JcrDClickListener.java delete mode 100644 org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/JcrImages.java create mode 100644 org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/WorkbenchJcrDClickListener.java rename {org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal => org.argeo.cms.ui/src/org/argeo/cms/ui}/jcr/DefaultRepositoryRegister.java (98%) rename {org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal => org.argeo.cms.ui/src/org/argeo/cms/ui}/jcr/FullVersioningTreeContentProvider.java (98%) rename {org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal => org.argeo.cms.ui/src/org/argeo/cms/ui}/jcr/JcrBrowserUtils.java (88%) create mode 100644 org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/JcrDClickListener.java create mode 100644 org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/JcrImages.java rename {org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal => org.argeo.cms.ui/src/org/argeo/cms/ui}/jcr/JcrTreeContentProvider.java (98%) rename {org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal => org.argeo.cms.ui/src/org/argeo/cms/ui}/jcr/NodeContentProvider.java (96%) rename {org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal => org.argeo.cms.ui/src/org/argeo/cms/ui}/jcr/NodeLabelProvider.java (90%) rename {org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal => org.argeo.cms.ui/src/org/argeo/cms/ui}/jcr/PropertiesContentProvider.java (97%) rename {org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal => org.argeo.cms.ui/src/org/argeo/cms/ui}/jcr/PropertyLabelProvider.java (91%) rename {org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal => org.argeo.cms.ui/src/org/argeo/cms/ui}/jcr/RepositoryRegister.java (95%) rename {org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal => org.argeo.cms.ui/src/org/argeo/cms/ui}/jcr/VersionLabelProvider.java (97%) rename {org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal => org.argeo.cms.ui/src/org/argeo/cms/ui}/jcr/model/MaintainedRepositoryElem.java (91%) rename {org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal => org.argeo.cms.ui/src/org/argeo/cms/ui}/jcr/model/RemoteRepositoryElem.java (98%) rename {org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal => org.argeo.cms.ui/src/org/argeo/cms/ui}/jcr/model/RepositoriesElem.java (97%) rename {org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal => org.argeo.cms.ui/src/org/argeo/cms/ui}/jcr/model/RepositoryElem.java (98%) rename {org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal => org.argeo.cms.ui/src/org/argeo/cms/ui}/jcr/model/SingleJcrNodeElem.java (98%) rename {org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal => org.argeo.cms.ui/src/org/argeo/cms/ui}/jcr/model/WorkspaceElem.java (98%) diff --git a/.gitignore b/.gitignore index 584ca59c6..69b786d29 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ /target/ -/org.argeo.cms.app.server/ +/org.argeo.cms.e4.* \ No newline at end of file diff --git a/org.argeo.cms.ui.workbench/icons/active.gif b/org.argeo.cms.ui.theme/icons/active.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/active.gif rename to org.argeo.cms.ui.theme/icons/active.gif diff --git a/org.argeo.cms.ui.workbench/icons/add.gif b/org.argeo.cms.ui.theme/icons/add.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/add.gif rename to org.argeo.cms.ui.theme/icons/add.gif diff --git a/org.argeo.cms.ui.workbench/icons/add.png b/org.argeo.cms.ui.theme/icons/add.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/add.png rename to org.argeo.cms.ui.theme/icons/add.png diff --git a/org.argeo.cms.ui.workbench/icons/addFolder.gif b/org.argeo.cms.ui.theme/icons/addFolder.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/addFolder.gif rename to org.argeo.cms.ui.theme/icons/addFolder.gif diff --git a/org.argeo.cms.ui.workbench/icons/addPrivileges.gif b/org.argeo.cms.ui.theme/icons/addPrivileges.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/addPrivileges.gif rename to org.argeo.cms.ui.theme/icons/addPrivileges.gif diff --git a/org.argeo.cms.ui.workbench/icons/addRepo.gif b/org.argeo.cms.ui.theme/icons/addRepo.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/addRepo.gif rename to org.argeo.cms.ui.theme/icons/addRepo.gif diff --git a/org.argeo.cms.ui.workbench/icons/addWorkspace.png b/org.argeo.cms.ui.theme/icons/addWorkspace.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/addWorkspace.png rename to org.argeo.cms.ui.theme/icons/addWorkspace.png diff --git a/org.argeo.cms.ui.workbench/icons/adminLog.gif b/org.argeo.cms.ui.theme/icons/adminLog.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/adminLog.gif rename to org.argeo.cms.ui.theme/icons/adminLog.gif diff --git a/org.argeo.cms.ui.workbench/icons/batch.gif b/org.argeo.cms.ui.theme/icons/batch.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/batch.gif rename to org.argeo.cms.ui.theme/icons/batch.gif diff --git a/org.argeo.cms.ui.workbench/icons/begin.gif b/org.argeo.cms.ui.theme/icons/begin.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/begin.gif rename to org.argeo.cms.ui.theme/icons/begin.gif diff --git a/org.argeo.cms.ui.workbench/icons/binary.png b/org.argeo.cms.ui.theme/icons/binary.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/binary.png rename to org.argeo.cms.ui.theme/icons/binary.png diff --git a/org.argeo.cms.ui.workbench/icons/browser.gif b/org.argeo.cms.ui.theme/icons/browser.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/browser.gif rename to org.argeo.cms.ui.theme/icons/browser.gif diff --git a/org.argeo.cms.ui.workbench/icons/bundles.gif b/org.argeo.cms.ui.theme/icons/bundles.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/bundles.gif rename to org.argeo.cms.ui.theme/icons/bundles.gif diff --git a/org.argeo.cms.ui.workbench/icons/changePassword.gif b/org.argeo.cms.ui.theme/icons/changePassword.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/changePassword.gif rename to org.argeo.cms.ui.theme/icons/changePassword.gif diff --git a/org.argeo.cms.ui.workbench/icons/clear.gif b/org.argeo.cms.ui.theme/icons/clear.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/clear.gif rename to org.argeo.cms.ui.theme/icons/clear.gif diff --git a/org.argeo.cms.ui.workbench/icons/close-all.png b/org.argeo.cms.ui.theme/icons/close-all.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/close-all.png rename to org.argeo.cms.ui.theme/icons/close-all.png diff --git a/org.argeo.cms.ui.workbench/icons/commit.gif b/org.argeo.cms.ui.theme/icons/commit.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/commit.gif rename to org.argeo.cms.ui.theme/icons/commit.gif diff --git a/org.argeo.cms.ui.workbench/icons/delete.png b/org.argeo.cms.ui.theme/icons/delete.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/delete.png rename to org.argeo.cms.ui.theme/icons/delete.png diff --git a/org.argeo.cms.ui.workbench/icons/dumpNode.gif b/org.argeo.cms.ui.theme/icons/dumpNode.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/dumpNode.gif rename to org.argeo.cms.ui.theme/icons/dumpNode.gif diff --git a/org.argeo.cms.ui.workbench/icons/file.gif b/org.argeo.cms.ui.theme/icons/file.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/file.gif rename to org.argeo.cms.ui.theme/icons/file.gif diff --git a/org.argeo.cms.ui.workbench/icons/folder.gif b/org.argeo.cms.ui.theme/icons/folder.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/folder.gif rename to org.argeo.cms.ui.theme/icons/folder.gif diff --git a/org.argeo.cms.ui.workbench/icons/getSize.gif b/org.argeo.cms.ui.theme/icons/getSize.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/getSize.gif rename to org.argeo.cms.ui.theme/icons/getSize.gif diff --git a/org.argeo.cms.ui.workbench/icons/group.png b/org.argeo.cms.ui.theme/icons/group.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/group.png rename to org.argeo.cms.ui.theme/icons/group.png diff --git a/org.argeo.cms.ui.workbench/icons/home.gif b/org.argeo.cms.ui.theme/icons/home.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/home.gif rename to org.argeo.cms.ui.theme/icons/home.gif diff --git a/org.argeo.cms.ui.workbench/icons/home.png b/org.argeo.cms.ui.theme/icons/home.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/home.png rename to org.argeo.cms.ui.theme/icons/home.png diff --git a/org.argeo.cms.ui.workbench/icons/import_fs.png b/org.argeo.cms.ui.theme/icons/import_fs.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/import_fs.png rename to org.argeo.cms.ui.theme/icons/import_fs.png diff --git a/org.argeo.cms.ui.workbench/icons/installed.gif b/org.argeo.cms.ui.theme/icons/installed.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/installed.gif rename to org.argeo.cms.ui.theme/icons/installed.gif diff --git a/org.argeo.cms.ui.workbench/icons/log.gif b/org.argeo.cms.ui.theme/icons/log.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/log.gif rename to org.argeo.cms.ui.theme/icons/log.gif diff --git a/org.argeo.cms.ui.workbench/icons/maintenance.gif b/org.argeo.cms.ui.theme/icons/maintenance.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/maintenance.gif rename to org.argeo.cms.ui.theme/icons/maintenance.gif diff --git a/org.argeo.cms.ui.workbench/icons/node.gif b/org.argeo.cms.ui.theme/icons/node.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/node.gif rename to org.argeo.cms.ui.theme/icons/node.gif diff --git a/org.argeo.cms.ui.workbench/icons/nodes.gif b/org.argeo.cms.ui.theme/icons/nodes.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/nodes.gif rename to org.argeo.cms.ui.theme/icons/nodes.gif diff --git a/org.argeo.cms.ui.workbench/icons/osgi_explorer.gif b/org.argeo.cms.ui.theme/icons/osgi_explorer.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/osgi_explorer.gif rename to org.argeo.cms.ui.theme/icons/osgi_explorer.gif diff --git a/org.argeo.cms.ui.workbench/icons/password.gif b/org.argeo.cms.ui.theme/icons/password.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/password.gif rename to org.argeo.cms.ui.theme/icons/password.gif diff --git a/org.argeo.cms.ui.workbench/icons/person-logged-in.png b/org.argeo.cms.ui.theme/icons/person-logged-in.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/person-logged-in.png rename to org.argeo.cms.ui.theme/icons/person-logged-in.png diff --git a/org.argeo.cms.ui.workbench/icons/person.png b/org.argeo.cms.ui.theme/icons/person.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/person.png rename to org.argeo.cms.ui.theme/icons/person.png diff --git a/org.argeo.cms.ui.workbench/icons/query.png b/org.argeo.cms.ui.theme/icons/query.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/query.png rename to org.argeo.cms.ui.theme/icons/query.png diff --git a/org.argeo.cms.ui.workbench/icons/refresh.png b/org.argeo.cms.ui.theme/icons/refresh.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/refresh.png rename to org.argeo.cms.ui.theme/icons/refresh.png diff --git a/org.argeo.cms.ui.workbench/icons/remote_connected.gif b/org.argeo.cms.ui.theme/icons/remote_connected.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/remote_connected.gif rename to org.argeo.cms.ui.theme/icons/remote_connected.gif diff --git a/org.argeo.cms.ui.workbench/icons/remote_disconnected.gif b/org.argeo.cms.ui.theme/icons/remote_disconnected.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/remote_disconnected.gif rename to org.argeo.cms.ui.theme/icons/remote_disconnected.gif diff --git a/org.argeo.cms.ui.workbench/icons/remove.gif b/org.argeo.cms.ui.theme/icons/remove.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/remove.gif rename to org.argeo.cms.ui.theme/icons/remove.gif diff --git a/org.argeo.cms.ui.workbench/icons/removePrivileges.gif b/org.argeo.cms.ui.theme/icons/removePrivileges.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/removePrivileges.gif rename to org.argeo.cms.ui.theme/icons/removePrivileges.gif diff --git a/org.argeo.cms.ui.workbench/icons/rename.gif b/org.argeo.cms.ui.theme/icons/rename.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/rename.gif rename to org.argeo.cms.ui.theme/icons/rename.gif diff --git a/org.argeo.cms.ui.workbench/icons/repositories.gif b/org.argeo.cms.ui.theme/icons/repositories.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/repositories.gif rename to org.argeo.cms.ui.theme/icons/repositories.gif diff --git a/org.argeo.cms.ui.workbench/icons/repository_connected.gif b/org.argeo.cms.ui.theme/icons/repository_connected.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/repository_connected.gif rename to org.argeo.cms.ui.theme/icons/repository_connected.gif diff --git a/org.argeo.cms.ui.workbench/icons/repository_disconnected.gif b/org.argeo.cms.ui.theme/icons/repository_disconnected.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/repository_disconnected.gif rename to org.argeo.cms.ui.theme/icons/repository_disconnected.gif diff --git a/org.argeo.cms.ui.workbench/icons/resolved.gif b/org.argeo.cms.ui.theme/icons/resolved.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/resolved.gif rename to org.argeo.cms.ui.theme/icons/resolved.gif diff --git a/org.argeo.cms.ui.workbench/icons/role.gif b/org.argeo.cms.ui.theme/icons/role.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/role.gif rename to org.argeo.cms.ui.theme/icons/role.gif diff --git a/org.argeo.cms.ui.workbench/icons/rollback.gif b/org.argeo.cms.ui.theme/icons/rollback.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/rollback.gif rename to org.argeo.cms.ui.theme/icons/rollback.gif diff --git a/org.argeo.cms.ui.workbench/icons/save-all.png b/org.argeo.cms.ui.theme/icons/save-all.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/save-all.png rename to org.argeo.cms.ui.theme/icons/save-all.png diff --git a/org.argeo.cms.ui.workbench/icons/save.gif b/org.argeo.cms.ui.theme/icons/save.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/save.gif rename to org.argeo.cms.ui.theme/icons/save.gif diff --git a/org.argeo.cms.ui.workbench/icons/save.png b/org.argeo.cms.ui.theme/icons/save.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/save.png rename to org.argeo.cms.ui.theme/icons/save.png diff --git a/org.argeo.cms.ui.workbench/icons/save_security.png b/org.argeo.cms.ui.theme/icons/save_security.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/save_security.png rename to org.argeo.cms.ui.theme/icons/save_security.png diff --git a/org.argeo.cms.ui.workbench/icons/save_security_disabled.png b/org.argeo.cms.ui.theme/icons/save_security_disabled.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/save_security_disabled.png rename to org.argeo.cms.ui.theme/icons/save_security_disabled.png diff --git a/org.argeo.cms.ui.workbench/icons/security.gif b/org.argeo.cms.ui.theme/icons/security.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/security.gif rename to org.argeo.cms.ui.theme/icons/security.gif diff --git a/org.argeo.cms.ui.workbench/icons/service_published.gif b/org.argeo.cms.ui.theme/icons/service_published.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/service_published.gif rename to org.argeo.cms.ui.theme/icons/service_published.gif diff --git a/org.argeo.cms.ui.workbench/icons/service_referenced.gif b/org.argeo.cms.ui.theme/icons/service_referenced.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/service_referenced.gif rename to org.argeo.cms.ui.theme/icons/service_referenced.gif diff --git a/org.argeo.cms.ui.workbench/icons/sort.gif b/org.argeo.cms.ui.theme/icons/sort.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/sort.gif rename to org.argeo.cms.ui.theme/icons/sort.gif diff --git a/org.argeo.cms.ui.workbench/icons/starting.gif b/org.argeo.cms.ui.theme/icons/starting.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/starting.gif rename to org.argeo.cms.ui.theme/icons/starting.gif diff --git a/org.argeo.cms.ui.workbench/icons/sync.gif b/org.argeo.cms.ui.theme/icons/sync.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/sync.gif rename to org.argeo.cms.ui.theme/icons/sync.gif diff --git a/org.argeo.cms.ui.workbench/icons/user.gif b/org.argeo.cms.ui.theme/icons/user.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/user.gif rename to org.argeo.cms.ui.theme/icons/user.gif diff --git a/org.argeo.cms.ui.workbench/icons/users.gif b/org.argeo.cms.ui.theme/icons/users.gif similarity index 100% rename from org.argeo.cms.ui.workbench/icons/users.gif rename to org.argeo.cms.ui.theme/icons/users.gif diff --git a/org.argeo.cms.ui.workbench/icons/workgroup.png b/org.argeo.cms.ui.theme/icons/workgroup.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/workgroup.png rename to org.argeo.cms.ui.theme/icons/workgroup.png diff --git a/org.argeo.cms.ui.workbench/icons/workgroup.xcf b/org.argeo.cms.ui.theme/icons/workgroup.xcf similarity index 100% rename from org.argeo.cms.ui.workbench/icons/workgroup.xcf rename to org.argeo.cms.ui.theme/icons/workgroup.xcf diff --git a/org.argeo.cms.ui.workbench/icons/workspace_connected.png b/org.argeo.cms.ui.theme/icons/workspace_connected.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/workspace_connected.png rename to org.argeo.cms.ui.theme/icons/workspace_connected.png diff --git a/org.argeo.cms.ui.workbench/icons/workspace_disconnected.png b/org.argeo.cms.ui.theme/icons/workspace_disconnected.png similarity index 100% rename from org.argeo.cms.ui.workbench/icons/workspace_disconnected.png rename to org.argeo.cms.ui.theme/icons/workspace_disconnected.png diff --git a/org.argeo.cms.ui.workbench/META-INF/spring/common.xml b/org.argeo.cms.ui.workbench/META-INF/spring/common.xml index 4b1b75435..32a3a8f9d 100644 --- a/org.argeo.cms.ui.workbench/META-INF/spring/common.xml +++ b/org.argeo.cms.ui.workbench/META-INF/spring/common.xml @@ -9,13 +9,14 @@ - - - - + + + diff --git a/org.argeo.cms.ui.workbench/plugin.xml b/org.argeo.cms.ui.workbench/plugin.xml index 758a9e339..078c21d46 100644 --- a/org.argeo.cms.ui.workbench/plugin.xml +++ b/org.argeo.cms.ui.workbench/plugin.xml @@ -6,32 +6,32 @@ + icon="platform:/plugin/org.argeo.cms.ui.theme/platform:/plugin/org.argeo.cms.ui.theme/icons/osgi_explorer.gif"> + icon="platform:/plugin/org.argeo.cms.ui.theme/icons/nodes.gif"> @@ -70,13 +70,13 @@ @@ -85,7 +85,7 @@ @@ -94,52 +94,52 @@ id="org.argeo.cms.ui.workbench.logView" class="org.argeo.eclipse.spring.SpringExtensionFactory" name="Log" - icon="icons/log.gif" + icon="platform:/plugin/org.argeo.cms.ui.theme/icons/log.gif" restorable="true"> @@ -152,28 +152,28 @@ class="org.argeo.eclipse.spring.SpringExtensionFactory" id="org.argeo.cms.ui.workbench.userEditor" name="User" - icon="icons/person.png" + icon="platform:/plugin/org.argeo.cms.ui.theme/icons/person.png" default="false"> @@ -344,12 +344,12 @@ - - + + --> @@ -358,7 +358,7 @@ @@ -371,7 +371,7 @@ @@ -389,25 +389,25 @@ locationURI="toolbar:org.argeo.cms.ui.workbench.usersView"> @@ -418,19 +418,19 @@ locationURI="toolbar:org.argeo.cms.ui.workbench.groupsView"> @@ -442,17 +442,17 @@ @@ -463,12 +463,12 @@ locationURI="popup:org.argeo.cms.ui.workbench.jcrBrowserView"> @@ -489,7 +489,7 @@ @@ -510,7 +510,7 @@ @@ -531,7 +531,7 @@ @@ -549,7 +549,7 @@ @@ -565,7 +565,7 @@ @@ -584,7 +584,7 @@ @@ -599,7 +599,7 @@ @@ -612,7 +612,7 @@ @@ -627,7 +627,7 @@ @@ -639,7 +639,7 @@ @@ -651,7 +651,7 @@ diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/WorkbenchConstants.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/WorkbenchConstants.java index 441d5d10a..8cfb0e8f7 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/WorkbenchConstants.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/WorkbenchConstants.java @@ -16,7 +16,6 @@ package org.argeo.cms.ui.workbench.internal; /** Constants used across the application. */ +@Deprecated public interface WorkbenchConstants { - // MISCEALLENEOUS - public final static String DATE_TIME_FORMAT = "dd/MM/yyyy, HH:mm"; } diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/JcrDClickListener.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/JcrDClickListener.java deleted file mode 100644 index cbd9928fd..000000000 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/JcrDClickListener.java +++ /dev/null @@ -1,156 +0,0 @@ -/* - * Copyright (C) 2007-2012 Argeo GmbH - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.argeo.cms.ui.workbench.internal.jcr; - -import static javax.jcr.Node.JCR_CONTENT; -import static javax.jcr.Property.JCR_DATA; - -import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.HashMap; -import java.util.Map; - -import javax.jcr.Binary; -import javax.jcr.Node; -import javax.jcr.RepositoryException; -import javax.jcr.nodetype.NodeType; - -import org.apache.commons.io.IOUtils; -import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; -import org.argeo.cms.ui.workbench.internal.jcr.model.RepositoryElem; -import org.argeo.cms.ui.workbench.internal.jcr.model.SingleJcrNodeElem; -import org.argeo.cms.ui.workbench.internal.jcr.model.WorkspaceElem; -import org.argeo.cms.ui.workbench.internal.jcr.parts.GenericNodeEditorInput; -import org.argeo.cms.ui.workbench.jcr.DefaultNodeEditor; -import org.argeo.cms.ui.workbench.util.CommandUtils; -import org.argeo.eclipse.ui.EclipseUiException; -import org.argeo.eclipse.ui.specific.OpenFile; -import org.argeo.eclipse.ui.specific.SingleSourcingException; -import org.argeo.jcr.JcrUtils; -import org.eclipse.jface.viewers.DoubleClickEvent; -import org.eclipse.jface.viewers.IDoubleClickListener; -import org.eclipse.jface.viewers.IStructuredSelection; -import org.eclipse.jface.viewers.TreeViewer; -import org.eclipse.ui.PartInitException; - -/** Centralizes the management of double click on a NodeTreeViewer */ -public class JcrDClickListener implements IDoubleClickListener { - // private final static Log log = LogFactory - // .getLog(GenericNodeDoubleClickListener.class); - - private TreeViewer nodeViewer; - - // private JcrFileProvider jfp; - // private FileHandler fileHandler; - - public JcrDClickListener(TreeViewer nodeViewer) { - this.nodeViewer = nodeViewer; - // jfp = new JcrFileProvider(); - // Commented out. see https://www.argeo.org/bugzilla/show_bug.cgi?id=188 - // fileHandler = null; - // fileHandler = new FileHandler(jfp); - } - - public void doubleClick(DoubleClickEvent event) { - if (event.getSelection() == null || event.getSelection().isEmpty()) - return; - Object obj = ((IStructuredSelection) event.getSelection()).getFirstElement(); - if (obj instanceof RepositoryElem) { - RepositoryElem rpNode = (RepositoryElem) obj; - if (rpNode.isConnected()) { - rpNode.logout(); - } else { - rpNode.login(); - } - nodeViewer.refresh(obj); - } else if (obj instanceof WorkspaceElem) { - WorkspaceElem wn = (WorkspaceElem) obj; - if (wn.isConnected()) - wn.logout(); - else - wn.login(); - nodeViewer.refresh(obj); - } else if (obj instanceof SingleJcrNodeElem) { - SingleJcrNodeElem sjn = (SingleJcrNodeElem) obj; - Node node = sjn.getNode(); - try { - if (node.isNodeType(NodeType.NT_FILE)) { - // Also open it - - String name = node.getName(); - Map params = new HashMap(); - params.put(OpenFile.PARAM_FILE_NAME, name); - - // TODO rather directly transmit the path to the node, once - // we have defined convention to provide an Absolute URI to - // a node in a multi repo / workspace / user context - // params.put(OpenFile.PARAM_FILE_URI, - // OpenFileService.JCR_SCHEME + node.getPath()); - - // we copy the node to a tmp file to be opened as a dirty - // workaround - File tmpFile = null; - // OutputStream os = null; - // InputStream is = null; - int i = name.lastIndexOf('.'); - String prefix, suffix; - if (i == -1) { - prefix = name; - suffix = null; - } else { - prefix = name.substring(0, i); - suffix = name.substring(i); - } - Binary binary = null; - try { - tmpFile = File.createTempFile(prefix, suffix); - tmpFile.deleteOnExit(); - } catch (IOException e1) { - throw new EclipseUiException("Cannot create temp file", e1); - } - try (OutputStream os = new FileOutputStream(tmpFile)) { - binary = node.getNode(JCR_CONTENT).getProperty(JCR_DATA).getBinary(); - try (InputStream is = binary.getStream();) { - IOUtils.copy(is, os); - } - } catch (IOException e) { - throw new SingleSourcingException("Cannot open file " + prefix + "." + suffix, e); - } finally { - // IOUtils.closeQuietly(is); - // IOUtils.closeQuietly(os); - JcrUtils.closeQuietly(binary); - } - Path path = Paths.get(tmpFile.getAbsolutePath()); - String uri = path.toUri().toString(); - params.put(OpenFile.PARAM_FILE_URI, uri); - CommandUtils.callCommand(OpenFile.ID, params); - } - GenericNodeEditorInput gnei = new GenericNodeEditorInput(node); - WorkbenchUiPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getActivePage() - .openEditor(gnei, DefaultNodeEditor.ID); - } catch (RepositoryException re) { - throw new EclipseUiException("Repository error while getting node info", re); - } catch (PartInitException pie) { - throw new EclipseUiException("Unexepected exception while opening node editor", pie); - } - } - } -} diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/AddFolderNode.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/AddFolderNode.java index 87bf557ad..f17fde91d 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/AddFolderNode.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/AddFolderNode.java @@ -19,9 +19,9 @@ import javax.jcr.Node; import javax.jcr.RepositoryException; import javax.jcr.nodetype.NodeType; +import org.argeo.cms.ui.jcr.model.SingleJcrNodeElem; +import org.argeo.cms.ui.jcr.model.WorkspaceElem; import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; -import org.argeo.cms.ui.workbench.internal.jcr.model.SingleJcrNodeElem; -import org.argeo.cms.ui.workbench.internal.jcr.model.WorkspaceElem; import org.argeo.cms.ui.workbench.jcr.JcrBrowserView; import org.argeo.eclipse.ui.TreeParent; import org.argeo.eclipse.ui.dialogs.ErrorFeedback; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/AddPrivileges.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/AddPrivileges.java index e32211a1c..fafd76b72 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/AddPrivileges.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/AddPrivileges.java @@ -18,9 +18,9 @@ package org.argeo.cms.ui.workbench.internal.jcr.commands; import javax.jcr.Node; import javax.jcr.RepositoryException; +import org.argeo.cms.ui.jcr.model.SingleJcrNodeElem; +import org.argeo.cms.ui.jcr.model.WorkspaceElem; import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; -import org.argeo.cms.ui.workbench.internal.jcr.model.SingleJcrNodeElem; -import org.argeo.cms.ui.workbench.internal.jcr.model.WorkspaceElem; import org.argeo.cms.ui.workbench.internal.jcr.parts.AddPrivilegeWizard; import org.argeo.eclipse.ui.EclipseUiException; import org.argeo.eclipse.ui.TreeParent; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/ConfigurableNodeDump.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/ConfigurableNodeDump.java index 282ed4c13..60f424433 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/ConfigurableNodeDump.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/ConfigurableNodeDump.java @@ -31,8 +31,8 @@ import javax.jcr.Node; import javax.jcr.NodeIterator; import javax.jcr.RepositoryException; +import org.argeo.cms.ui.jcr.model.SingleJcrNodeElem; import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; -import org.argeo.cms.ui.workbench.internal.jcr.model.SingleJcrNodeElem; import org.argeo.eclipse.ui.EclipseUiException; import org.argeo.eclipse.ui.EclipseUiUtils; import org.argeo.jcr.JcrUtils; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/CreateWorkspace.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/CreateWorkspace.java index ccccb8ecd..2d6949cd5 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/CreateWorkspace.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/CreateWorkspace.java @@ -17,8 +17,8 @@ package org.argeo.cms.ui.workbench.internal.jcr.commands; import java.util.Arrays; +import org.argeo.cms.ui.jcr.model.RepositoryElem; import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; -import org.argeo.cms.ui.workbench.internal.jcr.model.RepositoryElem; import org.argeo.cms.ui.workbench.jcr.JcrBrowserView; import org.argeo.eclipse.ui.dialogs.ErrorFeedback; import org.argeo.eclipse.ui.dialogs.SingleValue; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/DeleteNodes.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/DeleteNodes.java index 41fa58bdc..a0c677091 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/DeleteNodes.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/DeleteNodes.java @@ -20,8 +20,8 @@ import java.util.Iterator; import javax.jcr.Node; import javax.jcr.RepositoryException; -import org.argeo.cms.ui.workbench.internal.jcr.model.SingleJcrNodeElem; -import org.argeo.cms.ui.workbench.internal.jcr.model.WorkspaceElem; +import org.argeo.cms.ui.jcr.model.SingleJcrNodeElem; +import org.argeo.cms.ui.jcr.model.WorkspaceElem; import org.argeo.cms.ui.workbench.jcr.JcrBrowserView; import org.argeo.eclipse.ui.EclipseUiException; import org.argeo.eclipse.ui.TreeParent; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/DumpNode.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/DumpNode.java index ebf7d34f8..ae23f1d54 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/DumpNode.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/DumpNode.java @@ -31,8 +31,8 @@ import java.util.Map; import javax.jcr.Node; import javax.jcr.RepositoryException; +import org.argeo.cms.ui.jcr.model.SingleJcrNodeElem; import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; -import org.argeo.cms.ui.workbench.internal.jcr.model.SingleJcrNodeElem; import org.argeo.cms.ui.workbench.util.CommandUtils; import org.argeo.eclipse.ui.EclipseUiException; import org.argeo.eclipse.ui.specific.OpenFile; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/GetNodeSize.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/GetNodeSize.java index 3964fde5b..38d68136f 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/GetNodeSize.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/GetNodeSize.java @@ -21,9 +21,9 @@ import java.util.List; import javax.jcr.Node; +import org.argeo.cms.ui.jcr.model.SingleJcrNodeElem; +import org.argeo.cms.ui.jcr.model.WorkspaceElem; import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; -import org.argeo.cms.ui.workbench.internal.jcr.model.SingleJcrNodeElem; -import org.argeo.cms.ui.workbench.internal.jcr.model.WorkspaceElem; import org.argeo.eclipse.ui.dialogs.ErrorFeedback; import org.argeo.jcr.JcrUtils; import org.eclipse.core.commands.AbstractHandler; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/Refresh.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/Refresh.java index 51b2a1d92..1924b63a7 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/Refresh.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/Refresh.java @@ -17,8 +17,8 @@ package org.argeo.cms.ui.workbench.internal.jcr.commands; import java.util.Iterator; +import org.argeo.cms.ui.jcr.JcrBrowserUtils; import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; -import org.argeo.cms.ui.workbench.internal.jcr.JcrBrowserUtils; import org.argeo.cms.ui.workbench.jcr.JcrBrowserView; import org.argeo.eclipse.ui.TreeParent; import org.eclipse.core.commands.AbstractHandler; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/RemovePrivileges.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/RemovePrivileges.java index 0f14b6dd9..cd2618d5f 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/RemovePrivileges.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/RemovePrivileges.java @@ -25,10 +25,10 @@ import javax.jcr.security.AccessControlList; import javax.jcr.security.AccessControlManager; import javax.jcr.security.Privilege; +import org.argeo.cms.ui.jcr.JcrImages; +import org.argeo.cms.ui.jcr.model.SingleJcrNodeElem; +import org.argeo.cms.ui.jcr.model.WorkspaceElem; import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; -import org.argeo.cms.ui.workbench.internal.jcr.model.SingleJcrNodeElem; -import org.argeo.cms.ui.workbench.internal.jcr.model.WorkspaceElem; -import org.argeo.cms.ui.workbench.jcr.JcrImages; import org.argeo.eclipse.ui.EclipseUiException; import org.argeo.eclipse.ui.EclipseUiUtils; import org.argeo.eclipse.ui.TreeParent; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/RemoveRemoteRepository.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/RemoveRemoteRepository.java index cd49bf0c1..c1be6ceea 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/RemoveRemoteRepository.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/RemoveRemoteRepository.java @@ -15,7 +15,7 @@ */ package org.argeo.cms.ui.workbench.internal.jcr.commands; -import org.argeo.cms.ui.workbench.internal.jcr.model.RemoteRepositoryElem; +import org.argeo.cms.ui.jcr.model.RemoteRepositoryElem; import org.argeo.cms.ui.workbench.jcr.JcrBrowserView; import org.eclipse.core.commands.AbstractHandler; import org.eclipse.core.commands.ExecutionEvent; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/RenameNode.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/RenameNode.java index 07c722b23..7f4b55418 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/RenameNode.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/RenameNode.java @@ -21,8 +21,8 @@ import javax.jcr.Node; import javax.jcr.RepositoryException; import javax.jcr.Session; +import org.argeo.cms.ui.jcr.model.SingleJcrNodeElem; import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; -import org.argeo.cms.ui.workbench.internal.jcr.model.SingleJcrNodeElem; import org.argeo.cms.ui.workbench.jcr.JcrBrowserView; import org.argeo.eclipse.ui.EclipseUiException; import org.argeo.eclipse.ui.dialogs.SingleValue; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/UploadFiles.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/UploadFiles.java index 3470c8a00..42d4b301b 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/UploadFiles.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/commands/UploadFiles.java @@ -27,9 +27,9 @@ import javax.jcr.Node; import javax.jcr.Property; import javax.jcr.nodetype.NodeType; +import org.argeo.cms.ui.jcr.model.SingleJcrNodeElem; +import org.argeo.cms.ui.jcr.model.WorkspaceElem; import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; -import org.argeo.cms.ui.workbench.internal.jcr.model.SingleJcrNodeElem; -import org.argeo.cms.ui.workbench.internal.jcr.model.WorkspaceElem; import org.argeo.cms.ui.workbench.jcr.JcrBrowserView; import org.argeo.eclipse.ui.EclipseUiUtils; import org.argeo.eclipse.ui.TreeParent; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/parts/ChildNodesPage.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/parts/ChildNodesPage.java index 742a90a15..eb8629278 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/parts/ChildNodesPage.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/parts/ChildNodesPage.java @@ -17,9 +17,9 @@ package org.argeo.cms.ui.workbench.internal.jcr.parts; import javax.jcr.Node; +import org.argeo.cms.ui.jcr.JcrTreeContentProvider; +import org.argeo.cms.ui.jcr.NodeLabelProvider; import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; -import org.argeo.cms.ui.workbench.internal.jcr.JcrTreeContentProvider; -import org.argeo.cms.ui.workbench.internal.jcr.NodeLabelProvider; import org.argeo.cms.ui.workbench.jcr.DefaultNodeEditor; import org.argeo.eclipse.ui.EclipseUiException; import org.argeo.eclipse.ui.EclipseUiUtils; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/parts/GenericNodePage.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/parts/GenericNodePage.java index f4993ac1e..2f2ec899a 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/parts/GenericNodePage.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/parts/GenericNodePage.java @@ -28,6 +28,7 @@ import javax.jcr.PropertyIterator; import javax.jcr.PropertyType; import javax.jcr.RepositoryException; +import org.argeo.cms.ui.CmsConstants; import org.argeo.cms.ui.workbench.internal.WorkbenchConstants; import org.argeo.eclipse.ui.EclipseUiException; import org.argeo.jcr.JcrUtils; @@ -59,7 +60,7 @@ public class GenericNodePage extends FormPage implements WorkbenchConstants { private final static String JCR_PROPERTY_NAME = "jcr:name"; // Utils - protected DateFormat timeFormatter = new SimpleDateFormat(DATE_TIME_FORMAT); + protected DateFormat timeFormatter = new SimpleDateFormat(CmsConstants.DATE_TIME_FORMAT); // Main business Objects private Node currentNode; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/parts/GenericPropertyPage.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/parts/GenericPropertyPage.java index 83f9c595a..50f89625a 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/parts/GenericPropertyPage.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/parts/GenericPropertyPage.java @@ -23,9 +23,9 @@ import javax.jcr.Property; import javax.jcr.PropertyIterator; import javax.jcr.RepositoryException; +import org.argeo.cms.ui.jcr.PropertyLabelProvider; import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; import org.argeo.cms.ui.workbench.internal.WorkbenchConstants; -import org.argeo.cms.ui.workbench.internal.jcr.PropertyLabelProvider; import org.argeo.eclipse.ui.EclipseUiException; import org.eclipse.jface.layout.TreeColumnLayout; import org.eclipse.jface.viewers.ColumnWeightData; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/parts/NodeVersionHistoryPage.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/parts/NodeVersionHistoryPage.java index d291d16e7..166ece9d8 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/parts/NodeVersionHistoryPage.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/parts/NodeVersionHistoryPage.java @@ -33,11 +33,12 @@ import javax.jcr.version.VersionHistory; import javax.jcr.version.VersionIterator; import javax.jcr.version.VersionManager; +import org.argeo.cms.ui.CmsConstants; +import org.argeo.cms.ui.jcr.FullVersioningTreeContentProvider; +import org.argeo.cms.ui.jcr.JcrDClickListener; +import org.argeo.cms.ui.jcr.VersionLabelProvider; import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; import org.argeo.cms.ui.workbench.internal.WorkbenchConstants; -import org.argeo.cms.ui.workbench.internal.jcr.FullVersioningTreeContentProvider; -import org.argeo.cms.ui.workbench.internal.jcr.JcrDClickListener; -import org.argeo.cms.ui.workbench.internal.jcr.VersionLabelProvider; import org.argeo.eclipse.ui.EclipseUiException; import org.argeo.jcr.JcrUtils; import org.argeo.jcr.PropertyDiff; @@ -69,7 +70,7 @@ public class NodeVersionHistoryPage extends FormPage implements WorkbenchConstan // .getLog(NodeVersionHistoryPage.class); // Utils - protected DateFormat timeFormatter = new SimpleDateFormat(DATE_TIME_FORMAT); + protected DateFormat timeFormatter = new SimpleDateFormat(CmsConstants.DATE_TIME_FORMAT); // business objects private Node currentNode; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/JcrBrowserView.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/JcrBrowserView.java index 44eb446df..f84950b91 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/JcrBrowserView.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/JcrBrowserView.java @@ -28,15 +28,15 @@ import javax.jcr.observation.Event; import javax.jcr.observation.EventListener; import javax.jcr.observation.ObservationManager; +import org.argeo.cms.ui.jcr.DefaultRepositoryRegister; +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.PropertiesContentProvider; +import org.argeo.cms.ui.jcr.RepositoryRegister; +import org.argeo.cms.ui.jcr.model.SingleJcrNodeElem; import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; -import org.argeo.cms.ui.workbench.internal.jcr.DefaultRepositoryRegister; -import org.argeo.cms.ui.workbench.internal.jcr.JcrBrowserUtils; -import org.argeo.cms.ui.workbench.internal.jcr.JcrDClickListener; -import org.argeo.cms.ui.workbench.internal.jcr.NodeContentProvider; -import org.argeo.cms.ui.workbench.internal.jcr.NodeLabelProvider; -import org.argeo.cms.ui.workbench.internal.jcr.PropertiesContentProvider; -import org.argeo.cms.ui.workbench.internal.jcr.RepositoryRegister; -import org.argeo.cms.ui.workbench.internal.jcr.model.SingleJcrNodeElem; import org.argeo.eclipse.ui.EclipseUiException; import org.argeo.eclipse.ui.TreeParent; import org.argeo.eclipse.ui.jcr.AsyncUiEventListener; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/JcrImages.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/JcrImages.java deleted file mode 100644 index d7f7b60c7..000000000 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/JcrImages.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (C) 2007-2012 Argeo GmbH - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.argeo.cms.ui.workbench.jcr; - -import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; -import org.eclipse.swt.graphics.Image; - -/** Shared icons. */ -public class JcrImages { - public final static Image NODE = WorkbenchUiPlugin.getImageDescriptor( - "icons/node.gif").createImage(); - public final static Image FOLDER = WorkbenchUiPlugin.getImageDescriptor( - "icons/folder.gif").createImage(); - public final static Image FILE = WorkbenchUiPlugin.getImageDescriptor( - "icons/file.gif").createImage(); - public final static Image BINARY = WorkbenchUiPlugin.getImageDescriptor( - "icons/binary.png").createImage(); - public final static Image HOME = WorkbenchUiPlugin.getImageDescriptor( - "icons/home.gif").createImage(); - public final static Image SORT = WorkbenchUiPlugin.getImageDescriptor( - "icons/sort.gif").createImage(); - public final static Image REMOVE = WorkbenchUiPlugin.getImageDescriptor( - "icons/remove.gif").createImage(); - - public final static Image REPOSITORIES = WorkbenchUiPlugin - .getImageDescriptor("icons/repositories.gif").createImage(); - public final static Image REPOSITORY_DISCONNECTED = WorkbenchUiPlugin - .getImageDescriptor("icons/repository_disconnected.gif") - .createImage(); - public final static Image REPOSITORY_CONNECTED = WorkbenchUiPlugin - .getImageDescriptor("icons/repository_connected.gif").createImage(); - public final static Image REMOTE_DISCONNECTED = WorkbenchUiPlugin - .getImageDescriptor("icons/remote_disconnected.gif").createImage(); - public final static Image REMOTE_CONNECTED = WorkbenchUiPlugin - .getImageDescriptor("icons/remote_connected.gif").createImage(); - public final static Image WORKSPACE_DISCONNECTED = WorkbenchUiPlugin - .getImageDescriptor("icons/workspace_disconnected.png") - .createImage(); - public final static Image WORKSPACE_CONNECTED = WorkbenchUiPlugin - .getImageDescriptor("icons/workspace_connected.png").createImage(); - -} diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/WorkbenchJcrDClickListener.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/WorkbenchJcrDClickListener.java new file mode 100644 index 000000000..37feeb7c3 --- /dev/null +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/WorkbenchJcrDClickListener.java @@ -0,0 +1,101 @@ +package org.argeo.cms.ui.workbench.jcr; + +import static javax.jcr.Node.JCR_CONTENT; +import static javax.jcr.Property.JCR_DATA; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.HashMap; +import java.util.Map; + +import javax.jcr.Binary; +import javax.jcr.Node; +import javax.jcr.RepositoryException; +import javax.jcr.nodetype.NodeType; + +import org.apache.commons.io.IOUtils; +import org.argeo.cms.ui.jcr.JcrDClickListener; +import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; +import org.argeo.cms.ui.workbench.internal.jcr.parts.GenericNodeEditorInput; +import org.argeo.cms.ui.workbench.util.CommandUtils; +import org.argeo.eclipse.ui.EclipseUiException; +import org.argeo.eclipse.ui.specific.OpenFile; +import org.argeo.eclipse.ui.specific.SingleSourcingException; +import org.argeo.jcr.JcrUtils; +import org.eclipse.jface.viewers.TreeViewer; + +public class WorkbenchJcrDClickListener extends JcrDClickListener { + + public WorkbenchJcrDClickListener(TreeViewer nodeViewer) { + super(nodeViewer); + } + + @Override + protected void openNode(Node node) { + try { + if (node.isNodeType(NodeType.NT_FILE)) { + // Also open it + + String name = node.getName(); + Map params = new HashMap(); + params.put(OpenFile.PARAM_FILE_NAME, name); + + // TODO rather directly transmit the path to the node, once + // we have defined convention to provide an Absolute URI to + // a node in a multi repo / workspace / user context + // params.put(OpenFile.PARAM_FILE_URI, + // OpenFileService.JCR_SCHEME + node.getPath()); + + // we copy the node to a tmp file to be opened as a dirty + // workaround + File tmpFile = null; + // OutputStream os = null; + // InputStream is = null; + int i = name.lastIndexOf('.'); + String prefix, suffix; + if (i == -1) { + prefix = name; + suffix = null; + } else { + prefix = name.substring(0, i); + suffix = name.substring(i); + } + Binary binary = null; + try { + tmpFile = File.createTempFile(prefix, suffix); + tmpFile.deleteOnExit(); + } catch (IOException e1) { + throw new EclipseUiException("Cannot create temp file", e1); + } + try (OutputStream os = new FileOutputStream(tmpFile)) { + binary = node.getNode(JCR_CONTENT).getProperty(JCR_DATA).getBinary(); + try (InputStream is = binary.getStream();) { + IOUtils.copy(is, os); + } + } catch (IOException e) { + throw new SingleSourcingException("Cannot open file " + prefix + "." + suffix, e); + } finally { + // IOUtils.closeQuietly(is); + // IOUtils.closeQuietly(os); + JcrUtils.closeQuietly(binary); + } + Path path = Paths.get(tmpFile.getAbsolutePath()); + String uri = path.toUri().toString(); + params.put(OpenFile.PARAM_FILE_URI, uri); + CommandUtils.callCommand(OpenFile.ID, params); + } + GenericNodeEditorInput gnei = new GenericNodeEditorInput(node); + WorkbenchUiPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getActivePage().openEditor(gnei, + DefaultNodeEditor.ID); + } catch (RepositoryException re) { + throw new EclipseUiException("Repository error while getting node info", re); + } catch (Exception pie) { + throw new EclipseUiException("Unexpected exception while opening node editor", pie); + } + } +} diff --git a/org.argeo.cms.ui/src/org/argeo/cms/ui/CmsConstants.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/CmsConstants.java index dcbc02487..53e2aee6c 100644 --- a/org.argeo.cms.ui/src/org/argeo/cms/ui/CmsConstants.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/CmsConstants.java @@ -19,4 +19,6 @@ public interface CmsConstants { public final static String NO_IMAGE = "icons/noPic-square-640px.png"; public final static Point NO_IMAGE_SIZE = new Point(640, 640); public final static Float NO_IMAGE_RATIO = 1f; + // MISCEALLENEOUS + String DATE_TIME_FORMAT = "dd/MM/yyyy, HH:mm"; } diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/DefaultRepositoryRegister.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/DefaultRepositoryRegister.java similarity index 98% rename from org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/DefaultRepositoryRegister.java rename to org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/DefaultRepositoryRegister.java index c9ab94648..d5e639f62 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/DefaultRepositoryRegister.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/DefaultRepositoryRegister.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.argeo.cms.ui.workbench.internal.jcr; +package org.argeo.cms.ui.jcr; import java.util.Collections; import java.util.Map; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/FullVersioningTreeContentProvider.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/FullVersioningTreeContentProvider.java similarity index 98% rename from org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/FullVersioningTreeContentProvider.java rename to org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/FullVersioningTreeContentProvider.java index 148605ba4..c9fdf567e 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/FullVersioningTreeContentProvider.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/FullVersioningTreeContentProvider.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.argeo.cms.ui.workbench.internal.jcr; +package org.argeo.cms.ui.jcr; import java.util.ArrayList; import java.util.List; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/JcrBrowserUtils.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/JcrBrowserUtils.java similarity index 88% rename from org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/JcrBrowserUtils.java rename to org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/JcrBrowserUtils.java index 9755d9574..b19646de0 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/JcrBrowserUtils.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/JcrBrowserUtils.java @@ -13,17 +13,17 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.argeo.cms.ui.workbench.internal.jcr; +package org.argeo.cms.ui.jcr; import javax.jcr.Node; import javax.jcr.Property; import javax.jcr.PropertyType; import javax.jcr.RepositoryException; -import org.argeo.cms.ui.workbench.internal.jcr.model.RepositoriesElem; -import org.argeo.cms.ui.workbench.internal.jcr.model.RepositoryElem; -import org.argeo.cms.ui.workbench.internal.jcr.model.SingleJcrNodeElem; -import org.argeo.cms.ui.workbench.internal.jcr.model.WorkspaceElem; +import org.argeo.cms.ui.jcr.model.RepositoriesElem; +import org.argeo.cms.ui.jcr.model.RepositoryElem; +import org.argeo.cms.ui.jcr.model.SingleJcrNodeElem; +import org.argeo.cms.ui.jcr.model.WorkspaceElem; import org.argeo.eclipse.ui.EclipseUiException; import org.argeo.eclipse.ui.TreeParent; diff --git a/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/JcrDClickListener.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/JcrDClickListener.java new file mode 100644 index 000000000..07a14d085 --- /dev/null +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/JcrDClickListener.java @@ -0,0 +1,75 @@ +/* + * Copyright (C) 2007-2012 Argeo GmbH + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.argeo.cms.ui.jcr; + +import javax.jcr.Node; + +import org.argeo.cms.ui.jcr.model.RepositoryElem; +import org.argeo.cms.ui.jcr.model.SingleJcrNodeElem; +import org.argeo.cms.ui.jcr.model.WorkspaceElem; +import org.eclipse.jface.viewers.DoubleClickEvent; +import org.eclipse.jface.viewers.IDoubleClickListener; +import org.eclipse.jface.viewers.IStructuredSelection; +import org.eclipse.jface.viewers.TreeViewer; + +/** Centralizes the management of double click on a NodeTreeViewer */ +public class JcrDClickListener implements IDoubleClickListener { + // private final static Log log = LogFactory + // .getLog(GenericNodeDoubleClickListener.class); + + private TreeViewer nodeViewer; + + // private JcrFileProvider jfp; + // private FileHandler fileHandler; + + public JcrDClickListener(TreeViewer nodeViewer) { + this.nodeViewer = nodeViewer; + // jfp = new JcrFileProvider(); + // Commented out. see https://www.argeo.org/bugzilla/show_bug.cgi?id=188 + // fileHandler = null; + // fileHandler = new FileHandler(jfp); + } + + public void doubleClick(DoubleClickEvent event) { + if (event.getSelection() == null || event.getSelection().isEmpty()) + return; + Object obj = ((IStructuredSelection) event.getSelection()).getFirstElement(); + if (obj instanceof RepositoryElem) { + RepositoryElem rpNode = (RepositoryElem) obj; + if (rpNode.isConnected()) { + rpNode.logout(); + } else { + rpNode.login(); + } + nodeViewer.refresh(obj); + } else if (obj instanceof WorkspaceElem) { + WorkspaceElem wn = (WorkspaceElem) obj; + if (wn.isConnected()) + wn.logout(); + else + wn.login(); + nodeViewer.refresh(obj); + } else if (obj instanceof SingleJcrNodeElem) { + SingleJcrNodeElem sjn = (SingleJcrNodeElem) obj; + Node node = sjn.getNode(); + openNode(node); + } + } + + protected void openNode(Node node) { + // TODO implement generic behaviour + } +} diff --git a/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/JcrImages.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/JcrImages.java new file mode 100644 index 000000000..d86edb537 --- /dev/null +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/JcrImages.java @@ -0,0 +1,39 @@ +/* + * Copyright (C) 2007-2012 Argeo GmbH + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.argeo.cms.ui.jcr; + +import org.argeo.cms.ui.theme.CmsImages; +import org.eclipse.swt.graphics.Image; + +/** Shared icons. */ +public class JcrImages { + public final static Image NODE = CmsImages.createIcon("node.gif"); + public final static Image FOLDER = CmsImages.createIcon("folder.gif"); + public final static Image FILE = CmsImages.createIcon("file.gif"); + public final static Image BINARY = CmsImages.createIcon("binary.png"); + public final static Image HOME = CmsImages.createIcon("home.gif"); + public final static Image SORT = CmsImages.createIcon("sort.gif"); + public final static Image REMOVE = CmsImages.createIcon("remove.gif"); + + public final static Image REPOSITORIES = CmsImages.createIcon("repositories.gif"); + public final static Image REPOSITORY_DISCONNECTED = CmsImages.createIcon("repository_disconnected.gif"); + public final static Image REPOSITORY_CONNECTED = CmsImages.createIcon("repository_connected.gif"); + public final static Image REMOTE_DISCONNECTED = CmsImages.createIcon("remote_disconnected.gif"); + public final static Image REMOTE_CONNECTED = CmsImages.createIcon("remote_connected.gif"); + public final static Image WORKSPACE_DISCONNECTED = CmsImages.createIcon("workspace_disconnected.png"); + public final static Image WORKSPACE_CONNECTED = CmsImages.createIcon("workspace_connected.png"); + +} diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/JcrTreeContentProvider.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/JcrTreeContentProvider.java similarity index 98% rename from org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/JcrTreeContentProvider.java rename to org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/JcrTreeContentProvider.java index 599da9b03..f45e876f0 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/JcrTreeContentProvider.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/JcrTreeContentProvider.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.argeo.cms.ui.workbench.internal.jcr; +package org.argeo.cms.ui.jcr; import java.util.ArrayList; import java.util.Arrays; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/NodeContentProvider.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/NodeContentProvider.java similarity index 96% rename from org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/NodeContentProvider.java rename to org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/NodeContentProvider.java index fc7f16a1b..9cccb52b1 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/NodeContentProvider.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/NodeContentProvider.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.argeo.cms.ui.workbench.internal.jcr; +package org.argeo.cms.ui.jcr; import java.util.ArrayList; import java.util.Arrays; @@ -26,8 +26,8 @@ import javax.jcr.RepositoryFactory; import javax.jcr.Session; import javax.jcr.nodetype.NodeType; -import org.argeo.cms.ui.workbench.internal.jcr.model.RepositoriesElem; -import org.argeo.cms.ui.workbench.internal.jcr.model.SingleJcrNodeElem; +import org.argeo.cms.ui.jcr.model.RepositoriesElem; +import org.argeo.cms.ui.jcr.model.SingleJcrNodeElem; import org.argeo.eclipse.ui.TreeParent; import org.argeo.node.NodeConstants; import org.argeo.node.NodeUtils; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/NodeLabelProvider.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/NodeLabelProvider.java similarity index 90% rename from org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/NodeLabelProvider.java rename to org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/NodeLabelProvider.java index d409812e0..765f3201a 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/NodeLabelProvider.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/NodeLabelProvider.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.argeo.cms.ui.workbench.internal.jcr; +package org.argeo.cms.ui.jcr; import javax.jcr.NamespaceException; import javax.jcr.Node; @@ -22,12 +22,11 @@ import javax.jcr.nodetype.NodeType; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.argeo.cms.ui.workbench.internal.jcr.model.RemoteRepositoryElem; -import org.argeo.cms.ui.workbench.internal.jcr.model.RepositoriesElem; -import org.argeo.cms.ui.workbench.internal.jcr.model.RepositoryElem; -import org.argeo.cms.ui.workbench.internal.jcr.model.SingleJcrNodeElem; -import org.argeo.cms.ui.workbench.internal.jcr.model.WorkspaceElem; -import org.argeo.cms.ui.workbench.jcr.JcrImages; +import org.argeo.cms.ui.jcr.model.RemoteRepositoryElem; +import org.argeo.cms.ui.jcr.model.RepositoriesElem; +import org.argeo.cms.ui.jcr.model.RepositoryElem; +import org.argeo.cms.ui.jcr.model.SingleJcrNodeElem; +import org.argeo.cms.ui.jcr.model.WorkspaceElem; import org.argeo.eclipse.ui.EclipseUiException; import org.argeo.naming.LdapAttrs; import org.argeo.node.NodeTypes; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/PropertiesContentProvider.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/PropertiesContentProvider.java similarity index 97% rename from org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/PropertiesContentProvider.java rename to org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/PropertiesContentProvider.java index de93b69c6..d67b1330c 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/PropertiesContentProvider.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/PropertiesContentProvider.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.argeo.cms.ui.workbench.internal.jcr; +package org.argeo.cms.ui.jcr; import java.util.Set; import java.util.TreeSet; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/PropertyLabelProvider.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/PropertyLabelProvider.java similarity index 91% rename from org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/PropertyLabelProvider.java rename to org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/PropertyLabelProvider.java index 629368c38..3274fd134 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/PropertyLabelProvider.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/PropertyLabelProvider.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.argeo.cms.ui.workbench.internal.jcr; +package org.argeo.cms.ui.jcr; import java.text.DateFormat; import java.text.SimpleDateFormat; @@ -23,14 +23,14 @@ import javax.jcr.PropertyType; import javax.jcr.RepositoryException; import javax.jcr.Value; -import org.argeo.cms.ui.workbench.internal.WorkbenchConstants; +import org.argeo.cms.ui.CmsConstants; import org.argeo.eclipse.ui.EclipseUiException; import org.argeo.jcr.JcrUtils; import org.eclipse.jface.viewers.ColumnLabelProvider; import org.eclipse.jface.viewers.ViewerCell; /** Default basic label provider for a given JCR Node's properties */ -public class PropertyLabelProvider extends ColumnLabelProvider implements WorkbenchConstants { +public class PropertyLabelProvider extends ColumnLabelProvider { private static final long serialVersionUID = -5405794508731390147L; // To be able to change column order easily @@ -40,7 +40,7 @@ public class PropertyLabelProvider extends ColumnLabelProvider implements Workbe public static final int COLUMN_ATTRIBUTES = 3; // Utils - protected DateFormat timeFormatter = new SimpleDateFormat(DATE_TIME_FORMAT); + protected DateFormat timeFormatter = new SimpleDateFormat(CmsConstants.DATE_TIME_FORMAT); public void update(ViewerCell cell) { Object element = cell.getElement(); @@ -92,7 +92,7 @@ public class PropertyLabelProvider extends ColumnLabelProvider implements Workbe } } } catch (RepositoryException re) { - throw new EclipseUiException("Cannot retrieve prop value on "+element, re); + throw new EclipseUiException("Cannot retrieve prop value on " + element, re); } return null; } diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/RepositoryRegister.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/RepositoryRegister.java similarity index 95% rename from org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/RepositoryRegister.java rename to org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/RepositoryRegister.java index cd9540925..b6b14d525 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/RepositoryRegister.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/RepositoryRegister.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.argeo.cms.ui.workbench.internal.jcr; +package org.argeo.cms.ui.jcr; import java.util.Map; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/VersionLabelProvider.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/VersionLabelProvider.java similarity index 97% rename from org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/VersionLabelProvider.java rename to org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/VersionLabelProvider.java index b33af515a..4d7746c3d 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/VersionLabelProvider.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/VersionLabelProvider.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.argeo.cms.ui.workbench.internal.jcr; +package org.argeo.cms.ui.jcr; import javax.jcr.Node; import javax.jcr.RepositoryException; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/MaintainedRepositoryElem.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/MaintainedRepositoryElem.java similarity index 91% rename from org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/MaintainedRepositoryElem.java rename to org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/MaintainedRepositoryElem.java index 284d4eb01..61654b61a 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/MaintainedRepositoryElem.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/MaintainedRepositoryElem.java @@ -1,4 +1,4 @@ -package org.argeo.cms.ui.workbench.internal.jcr.model; +package org.argeo.cms.ui.jcr.model; import javax.jcr.Repository; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/RemoteRepositoryElem.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/RemoteRepositoryElem.java similarity index 98% rename from org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/RemoteRepositoryElem.java rename to org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/RemoteRepositoryElem.java index 4712f9273..ad173cf38 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/RemoteRepositoryElem.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/RemoteRepositoryElem.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.argeo.cms.ui.workbench.internal.jcr.model; +package org.argeo.cms.ui.jcr.model; import java.util.Arrays; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/RepositoriesElem.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/RepositoriesElem.java similarity index 97% rename from org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/RepositoriesElem.java rename to org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/RepositoriesElem.java index 45c13fb28..c772424b7 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/RepositoriesElem.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/RepositoriesElem.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.argeo.cms.ui.workbench.internal.jcr.model; +package org.argeo.cms.ui.jcr.model; import java.util.Map; @@ -25,7 +25,7 @@ import javax.jcr.RepositoryFactory; import javax.jcr.Session; import org.argeo.cms.ArgeoNames; -import org.argeo.cms.ui.workbench.internal.jcr.RepositoryRegister; +import org.argeo.cms.ui.jcr.RepositoryRegister; import org.argeo.eclipse.ui.EclipseUiException; import org.argeo.eclipse.ui.TreeParent; import org.argeo.eclipse.ui.dialogs.ErrorFeedback; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/RepositoryElem.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/RepositoryElem.java similarity index 98% rename from org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/RepositoryElem.java rename to org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/RepositoryElem.java index 116aeeeb5..6f2288c4c 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/RepositoryElem.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/RepositoryElem.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.argeo.cms.ui.workbench.internal.jcr.model; +package org.argeo.cms.ui.jcr.model; import javax.jcr.Repository; import javax.jcr.RepositoryException; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/SingleJcrNodeElem.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/SingleJcrNodeElem.java similarity index 98% rename from org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/SingleJcrNodeElem.java rename to org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/SingleJcrNodeElem.java index f323c1bd7..14c78c0c8 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/SingleJcrNodeElem.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/SingleJcrNodeElem.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.argeo.cms.ui.workbench.internal.jcr.model; +package org.argeo.cms.ui.jcr.model; import javax.jcr.Node; import javax.jcr.NodeIterator; diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/WorkspaceElem.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/WorkspaceElem.java similarity index 98% rename from org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/WorkspaceElem.java rename to org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/WorkspaceElem.java index 0bbd774d5..45cda80ee 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/internal/jcr/model/WorkspaceElem.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/jcr/model/WorkspaceElem.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.argeo.cms.ui.workbench.internal.jcr.model; +package org.argeo.cms.ui.jcr.model; import javax.jcr.Node; import javax.jcr.NodeIterator; -- 2.30.2