import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
+import org.argeo.api.acr.ArgeoNamespace;
import org.argeo.api.acr.Content;
import org.argeo.api.acr.CrName;
import org.argeo.api.acr.NamespaceUtils;
import org.argeo.api.acr.RuntimeNamespaceContext;
+import org.argeo.api.acr.spi.ContentNamespace;
import org.argeo.api.acr.spi.ContentProvider;
import org.argeo.api.acr.spi.ProvidedContent;
import org.argeo.api.acr.spi.ProvidedRepository;
// public final static String ACR_MOUNT_PATH_PROPERTY = "acr.mount.path";
public AbstractContentRepository() {
+ long begin = System.currentTimeMillis();
// types
typesManager = new TypesManager();
typesManager.init();
for (QName type : types) {
log.trace(type + " - " + typesManager.getAttributeTypes(type));
}
-
+ long duration = System.currentTimeMillis() - begin;
+ log.debug(() -> "CMS content types available (initialisation took " + duration + " ms)");
}
protected abstract CmsContentSession newSystemSession();
*/
@Override
public void addProvider(ContentProvider provider) {
- if (mountManager == null)
+ if (mountManager == null) {
providersToAdd.add(provider);
- else
+ log.debug(
+ () -> "Will add provider " + provider.getMountPath() + " (" + provider.getClass().getName() + ")");
+ } else {
mountManager.addStructuralContentProvider(provider);
+ log.debug(() -> "Added provider " + provider.getMountPath() + " (" + provider.getClass().getName() + ")");
+ }
}
- public void registerTypes(String prefix, String namespaceURI, String schemaSystemId) {
- typesManager.registerTypes(prefix, namespaceURI, schemaSystemId);
+ @Override
+ public void registerTypes(ContentNamespace... namespaces) {
+ typesManager.registerTypes(namespaces);
}
/*
// document = dBuilder.parse(inputSource);
// } else {
document = dBuilder.newDocument();
- Element root = document.createElementNS(CrName.CR_NAMESPACE_URI,
+ Element root = document.createElementNS(ArgeoNamespace.CR_NAMESPACE_URI,
NamespaceUtils.toPrefixedName(CrName.root.qName()));
for (String prefix : RuntimeNamespaceContext.getPrefixes().keySet()) {
TypesManager getTypesManager() {
return typesManager;
}
+
+ CmsContentSession getSystemSession() {
+ return systemSession;
+ }
+
+
}