From cff23f8dd98a91cf74a098e11f6b941e74df2917 Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Mon, 3 Dec 2018 11:22:42 +0100 Subject: [PATCH] Work on CMS FS provider --- .../argeo/cms/internal/kernel/CmsFsProvider.java | 3 +-- .../src/org/argeo/cms/internal/kernel/CmsState.java | 13 +++++++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/org.argeo.cms/src/org/argeo/cms/internal/kernel/CmsFsProvider.java b/org.argeo.cms/src/org/argeo/cms/internal/kernel/CmsFsProvider.java index 614ff6c49..32f742771 100644 --- a/org.argeo.cms/src/org/argeo/cms/internal/kernel/CmsFsProvider.java +++ b/org.argeo.cms/src/org/argeo/cms/internal/kernel/CmsFsProvider.java @@ -16,7 +16,6 @@ import javax.jcr.Session; import org.argeo.cms.CmsException; import org.argeo.cms.auth.CurrentUser; import org.argeo.jackrabbit.fs.AbstractJackrabbitFsProvider; -import org.argeo.jcr.JcrUtils; import org.argeo.jcr.fs.JcrFileSystem; import org.argeo.jcr.fs.JcrFsException; import org.argeo.node.NodeConstants; @@ -26,7 +25,6 @@ import org.osgi.framework.FrameworkUtil; public class CmsFsProvider extends AbstractJackrabbitFsProvider { private Map fileSystems = new HashMap<>(); - private BundleContext bc = FrameworkUtil.getBundle(CmsFsProvider.class).getBundleContext(); @Override public String getScheme() { @@ -35,6 +33,7 @@ public class CmsFsProvider extends AbstractJackrabbitFsProvider { @Override public FileSystem newFileSystem(URI uri, Map env) throws IOException { + BundleContext bc = FrameworkUtil.getBundle(CmsFsProvider.class).getBundleContext(); String username = CurrentUser.getUsername(); if (username == null) { // TODO deal with anonymous diff --git a/org.argeo.cms/src/org/argeo/cms/internal/kernel/CmsState.java b/org.argeo.cms/src/org/argeo/cms/internal/kernel/CmsState.java index e3d48a6f4..789312625 100644 --- a/org.argeo.cms/src/org/argeo/cms/internal/kernel/CmsState.java +++ b/org.argeo.cms/src/org/argeo/cms/internal/kernel/CmsState.java @@ -98,10 +98,9 @@ public class CmsState implements NodeState { throw new CmsException("Usupported transaction manager type " + tmType); } - // POI // POIXMLTypeLoader.setClassLoader(CTConnection.class.getClassLoader()); - + // Tika // OpenDocumentParser odfParser = new OpenDocumentParser(); // bc.registerService(Parser.class, odfParser, new Hashtable()); @@ -130,6 +129,16 @@ public class CmsState implements NodeState { // File System CmsFsProvider cmsFsProvider = new CmsFsProvider(); +// ServiceLoader fspSl = ServiceLoader.load(FileSystemProvider.class); +// for (FileSystemProvider fsp : fspSl) { +// log.debug("FileSystemProvider " + fsp); +// if (fsp instanceof CmsFsProvider) { +// cmsFsProvider = (CmsFsProvider) fsp; +// } +// } +// for (FileSystemProvider fsp : FileSystemProvider.installedProviders()) { +// log.debug("Installed FileSystemProvider " + fsp); +// } bc.registerService(FileSystemProvider.class, cmsFsProvider, LangUtils.dico(Constants.SERVICE_PID, NodeConstants.NODE_FS_PROVIDER_PID)); } -- 2.30.2