1 package org
.argeo
.jcr
.ui
.explorer
.commands
;
5 import org
.argeo
.eclipse
.ui
.ErrorFeedback
;
6 import org
.argeo
.eclipse
.ui
.TreeParent
;
7 import org
.argeo
.jcr
.ui
.explorer
.JcrExplorerPlugin
;
8 import org
.argeo
.jcr
.ui
.explorer
.model
.SingleJcrNode
;
9 import org
.argeo
.jcr
.ui
.explorer
.model
.WorkspaceNode
;
10 import org
.argeo
.jcr
.ui
.explorer
.views
.GenericJcrBrowser
;
11 import org
.argeo
.jcr
.ui
.explorer
.wizards
.ImportFileSystemWizard
;
12 import org
.eclipse
.core
.commands
.AbstractHandler
;
13 import org
.eclipse
.core
.commands
.ExecutionEvent
;
14 import org
.eclipse
.core
.commands
.ExecutionException
;
15 import org
.eclipse
.jface
.viewers
.ISelection
;
16 import org
.eclipse
.jface
.viewers
.IStructuredSelection
;
17 import org
.eclipse
.jface
.wizard
.WizardDialog
;
18 import org
.eclipse
.ui
.handlers
.HandlerUtil
;
20 /** Import a local file system directory tree. */
21 public class ImportFileSystem
extends AbstractHandler
{
22 public Object
execute(ExecutionEvent event
) throws ExecutionException
{
23 ISelection selection
= HandlerUtil
.getActiveWorkbenchWindow(event
)
24 .getActivePage().getSelection();
25 GenericJcrBrowser view
= (GenericJcrBrowser
) HandlerUtil
26 .getActiveWorkbenchWindow(event
).getActivePage()
27 .findView(HandlerUtil
.getActivePartId(event
));
28 if (selection
!= null && !selection
.isEmpty()
29 && selection
instanceof IStructuredSelection
) {
30 Object obj
= ((IStructuredSelection
) selection
).getFirstElement();
33 if (obj
instanceof SingleJcrNode
) {
34 folder
= ((SingleJcrNode
) obj
).getNode();
35 } else if (obj
instanceof WorkspaceNode
) {
36 folder
= ((WorkspaceNode
) obj
).getRootNode();
38 ErrorFeedback
.show(JcrExplorerPlugin
39 .getMessage("warningInvalidNodeToImport"));
42 ImportFileSystemWizard wizard
= new ImportFileSystemWizard(
44 WizardDialog dialog
= new WizardDialog(
45 HandlerUtil
.getActiveShell(event
), wizard
);
47 view
.nodeAdded((TreeParent
) obj
);
49 } catch (Exception e
) {
50 ErrorFeedback
.show("Cannot import files to " + obj
, e
);