1 package org
.argeo
.cms
.internal
.runtime
;
3 import java
.io
.IOException
;
4 import java
.nio
.file
.Files
;
5 import java
.nio
.file
.Path
;
8 import org
.argeo
.api
.acr
.spi
.ContentProvider
;
9 import org
.argeo
.cms
.acr
.CmsContentRepository
;
10 import org
.argeo
.cms
.acr
.fs
.FsContentProvider
;
11 import org
.argeo
.util
.OS
;
13 public class DeployedContentRepository
extends CmsContentRepository
{
14 private final static String ROOT_XML
= "cr:root.xml";
20 Path rootXml
= KernelUtils
.getOsgiInstancePath(ROOT_XML
);
21 initRootContentProvider(null);
23 // Path srvPath = KernelUtils.getOsgiInstancePath(CmsConstants.SRV_WORKSPACE);
24 // FsContentProvider srvContentProvider = new FsContentProvider("/" + CmsConstants.SRV_WORKSPACE, srvPath, false);
25 // addProvider(srvContentProvider);
27 Path runDirPath
= KernelUtils
.getOsgiInstancePath(CmsContentRepository
.RUN_BASE
);
28 Files
.createDirectories(runDirPath
);
29 FsContentProvider runContentProvider
= new FsContentProvider(CmsContentRepository
.RUN_BASE
, runDirPath
);
30 addProvider(runContentProvider
);
31 } catch (IOException e
) {
32 throw new IllegalStateException("Cannot start content repository", e
);
41 public void addContentProvider(ContentProvider provider
, Map
<String
, Object
> properties
) {
42 // String base = LangUtils.get(properties, CmsContentRepository.ACR_MOUNT_PATH_PROPERTY);
43 addProvider(provider
);
46 public void removeContentProvider(ContentProvider provider
, Map
<String
, Object
> properties
) {