]> git.argeo.org Git - gpl/argeo-jcr.git/blobdiff - org.argeo.cms.jcr/src/org/argeo/cms/jcr/internal/CmsJcrDeployment.java
Clarify and refactor content namespaces
[gpl/argeo-jcr.git] / org.argeo.cms.jcr / src / org / argeo / cms / jcr / internal / CmsJcrDeployment.java
index 35800f8953a50f23812771cf6b912c7441013c02..a87135511e5e5ba21caa269f9c645df81a51c273 100644 (file)
@@ -26,10 +26,12 @@ import javax.servlet.Servlet;
 import org.apache.jackrabbit.commons.cnd.CndImporter;
 import org.apache.jackrabbit.core.RepositoryContext;
 import org.apache.jackrabbit.core.RepositoryImpl;
+import org.argeo.api.acr.spi.ProvidedRepository;
 import org.argeo.api.cms.CmsConstants;
 import org.argeo.api.cms.CmsLog;
 import org.argeo.cms.ArgeoNames;
 import org.argeo.cms.jcr.CmsJcrUtils;
+import org.argeo.cms.jcr.acr.JcrContentNamespace;
 import org.argeo.cms.jcr.internal.servlet.CmsRemotingServlet;
 import org.argeo.cms.jcr.internal.servlet.CmsWebDavServlet;
 import org.argeo.cms.jcr.internal.servlet.JcrHttpUtils;
@@ -62,17 +64,21 @@ public class CmsJcrDeployment {
        // Readiness
        private boolean nodeAvailable = false;
 
+       private ProvidedRepository contentRepository;
+
 //     CmsDeployment cmsDeployment;
        public void start() {
                dataModels = new DataModels(bc);
 
+               contentRepository.registerTypes(JcrContentNamespace.values());
+
                ServiceTracker<?, ?> repoContextSt = new RepositoryContextStc();
                repoContextSt.open();
                // KernelUtils.asyncOpen(repoContextSt);
 
 //             nodeDeployment = CmsJcrActivator.getService(NodeDeployment.class);
 
-               //JcrInitUtils.addToDeployment(cmsDeployment);
+               // JcrInitUtils.addToDeployment(cmsDeployment);
 
 //             contentRepository.registerTypes(NamespaceRegistry.PREFIX_JCR, NamespaceRegistry.NAMESPACE_JCR, null);
 //             contentRepository.registerTypes(NamespaceRegistry.PREFIX_MIX, NamespaceRegistry.NAMESPACE_MIX, null);
@@ -88,7 +94,6 @@ public class CmsJcrDeployment {
 //             if (nodeHttp != null)
 //                     nodeHttp.destroy();
 
-
                try {
                        for (ServiceReference<JackrabbitLocalRepository> sr : bc
                                        .getServiceReferences(JackrabbitLocalRepository.class, null)) {
@@ -351,7 +356,8 @@ public class CmsJcrDeployment {
 
        boolean isStandalone(String dataModelName) {
                return true;
-               //return cmsDeployment.getProps(CmsConstants.NODE_REPOS_FACTORY_PID, dataModelName) != null;
+               // return cmsDeployment.getProps(CmsConstants.NODE_REPOS_FACTORY_PID,
+               // dataModelName) != null;
        }
 
        private void publishLocalRepo(String dataModelName, Repository repository) {
@@ -432,6 +438,10 @@ public class CmsJcrDeployment {
                bc.registerService(Servlet.class, remotingServlet, ip);
        }
 
+       public void setContentRepository(ProvidedRepository contentRepository) {
+               this.contentRepository = contentRepository;
+       }
+
        private class RepositoryContextStc extends ServiceTracker<RepositoryContext, RepositoryContext> {
 
                public RepositoryContextStc() {