]> git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.cms/src/org/argeo/cms/internal/runtime/DeployedContentRepository.java
Remove static default UUID factory
[lgpl/argeo-commons.git] / org.argeo.cms / src / org / argeo / cms / internal / runtime / DeployedContentRepository.java
1 package org.argeo.cms.internal.runtime;
2
3 import java.io.IOException;
4 import java.nio.file.Files;
5 import java.nio.file.Path;
6
7 import org.argeo.api.cms.CmsLog;
8 import org.argeo.cms.CmsUserManager;
9 import org.argeo.cms.acr.CmsContentRepository;
10 import org.argeo.cms.acr.directory.DirectoryContentProvider;
11 import org.argeo.cms.acr.fs.FsContentProvider;
12
13 public class DeployedContentRepository extends CmsContentRepository {
14 private final static String ROOT_XML = "cr:root.xml";
15
16 private final static CmsLog log = CmsLog.getLog(DeployedContentRepository.class);
17
18 private CmsUserManager userManager;
19
20 @Override
21 public void start() {
22 long begin = System.currentTimeMillis();
23 try {
24 super.start();
25 Path rootXml = KernelUtils.getOsgiInstancePath(ROOT_XML);
26 initRootContentProvider(null);
27
28 // Path srvPath = KernelUtils.getOsgiInstancePath(CmsConstants.SRV_WORKSPACE);
29 // FsContentProvider srvContentProvider = new FsContentProvider("/" + CmsConstants.SRV_WORKSPACE, srvPath, false);
30 // addProvider(srvContentProvider);
31
32 // run dir
33 Path runDirPath = KernelUtils.getOsgiInstancePath(CmsContentRepository.RUN_BASE);
34 if (runDirPath != null) {
35 Files.createDirectories(runDirPath);
36 FsContentProvider runContentProvider = new FsContentProvider(CmsContentRepository.RUN_BASE, runDirPath);
37 addProvider(runContentProvider);
38 }
39
40 // users
41 DirectoryContentProvider directoryContentProvider = new DirectoryContentProvider(
42 CmsContentRepository.DIRECTORY_BASE, userManager);
43 addProvider(directoryContentProvider);
44
45 // remote
46 // DavContentProvider davContentProvider = new DavContentProvider("/srv",
47 // URI.create("http://localhost/unstable/a2/"));
48 // addProvider(davContentProvider);
49 } catch (IOException e) {
50 throw new IllegalStateException("Cannot start content repository", e);
51 }
52 long duration = System.currentTimeMillis() - begin;
53 log.debug(() -> "CMS content repository available (initialisation took " + duration + " ms)");
54 }
55
56 @Override
57 public void stop() {
58 super.stop();
59 }
60
61 public void setUserManager(CmsUserManager userManager) {
62 this.userManager = userManager;
63 }
64
65 }