X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms.ui.workbench%2Fsrc%2Forg%2Fargeo%2Fcms%2Fui%2Fworkbench%2Fjcr%2FNodeFsBrowserView.java;h=cba228f2d27f748a56aa92f8669e363cbadcb066;hb=5b444174cd13680f99944026877f6cac2e1faba1;hp=cfbf5208e133526d807ca3d2b7db0fb954c61c26;hpb=255654a72d48b875d71cea637532784953d80499;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/NodeFsBrowserView.java b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/NodeFsBrowserView.java index cfbf5208e..cba228f2d 100644 --- a/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/NodeFsBrowserView.java +++ b/org.argeo.cms.ui.workbench/src/org/argeo/cms/ui/workbench/jcr/NodeFsBrowserView.java @@ -15,37 +15,44 @@ */ package org.argeo.cms.ui.workbench.jcr; +import java.net.URI; +import java.nio.file.FileSystem; +import java.nio.file.Path; import java.nio.file.spi.FileSystemProvider; +import org.argeo.cms.CmsException; import org.argeo.cms.ui.workbench.WorkbenchUiPlugin; +import org.argeo.eclipse.ui.fs.SimpleFsBrowser; +import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.Composite; import org.eclipse.ui.part.ViewPart; -/** - * Browse the node file system. - */ +/** Browse the node file system. */ public class NodeFsBrowserView extends ViewPart { public final static String ID = WorkbenchUiPlugin.PLUGIN_ID + ".nodeFsBrowserView"; - + private FileSystemProvider nodeFileSystemProvider; @Override public void createPartControl(Composite parent) { -// SimpleFsBrowser browser = new SimpleFsBrowser(parent, SWT.NO_FOCUS); -// Path path = Paths.get("/"); -// browser.setInput(path); -// browser.setLayoutData(EclipseUiUtils.fillAll()); + try { + URI uri = new URI("node:///"); + FileSystem fileSystem = nodeFileSystemProvider.getFileSystem(uri); + if (fileSystem == null) + fileSystem = nodeFileSystemProvider.newFileSystem(uri, null); + Path nodePath = fileSystem.getPath("~"); + SimpleFsBrowser browser = new SimpleFsBrowser(parent, SWT.NO_FOCUS); + browser.setInput(nodePath); + } catch (Exception e) { + throw new CmsException("Cannot open file system browser", e); + } } @Override public void setFocus() { - // TODO Auto-generated method stub - } public void setNodeFileSystemProvider(FileSystemProvider nodeFileSystemProvider) { this.nodeFileSystemProvider = nodeFileSystemProvider; } - - }