You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by md...@apache.org on 2011/06/16 13:04:24 UTC
svn commit: r1136375 - in /jackrabbit/sandbox/spi2microkernel/src:
main/java/org/apache/jackrabbit/spi2microkernel/RepositoryServiceImpl.java
test/java/org/apache/jackrabbit/spi2microkernel/RepositoryTest.java
Author: mduerig
Date: Thu Jun 16 11:04:24 2011
New Revision: 1136375
URL: http://svn.apache.org/viewvc?rev=1136375&view=rev
Log:
spi2microkernel prototype (WIP)
node type registry
Modified:
jackrabbit/sandbox/spi2microkernel/src/main/java/org/apache/jackrabbit/spi2microkernel/RepositoryServiceImpl.java
jackrabbit/sandbox/spi2microkernel/src/test/java/org/apache/jackrabbit/spi2microkernel/RepositoryTest.java
Modified: jackrabbit/sandbox/spi2microkernel/src/main/java/org/apache/jackrabbit/spi2microkernel/RepositoryServiceImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/spi2microkernel/src/main/java/org/apache/jackrabbit/spi2microkernel/RepositoryServiceImpl.java?rev=1136375&r1=1136374&r2=1136375&view=diff
==============================================================================
--- jackrabbit/sandbox/spi2microkernel/src/main/java/org/apache/jackrabbit/spi2microkernel/RepositoryServiceImpl.java (original)
+++ jackrabbit/sandbox/spi2microkernel/src/main/java/org/apache/jackrabbit/spi2microkernel/RepositoryServiceImpl.java Thu Jun 16 11:04:24 2011
@@ -34,6 +34,7 @@ import org.apache.jackrabbit.spi.Path;
import org.apache.jackrabbit.spi.PropertyId;
import org.apache.jackrabbit.spi.PropertyInfo;
import org.apache.jackrabbit.spi.QNodeDefinition;
+import org.apache.jackrabbit.spi.QNodeTypeDefinition;
import org.apache.jackrabbit.spi.QValue;
import org.apache.jackrabbit.spi.SessionInfo;
import org.apache.jackrabbit.spi.commons.AbstractRepositoryService;
@@ -301,6 +302,20 @@ public class RepositoryServiceImpl exten
deleteWorkspace(rev, name);
}
+ //------------------------------------------< Node type management >---
+
+ @Override
+ public void registerNodeTypes(SessionInfo sessionInfo, QNodeTypeDefinition[] nodeTypeDefinitions, boolean allowUpdate)
+ throws RepositoryException {
+
+ nodeTypeDefs.registerNodeTypes(nodeTypeDefinitions, true);
+ }
+
+ @Override
+ public void unregisterNodeTypes(SessionInfo sessionInfo, Name[] nodeTypeNames) throws RepositoryException {
+ nodeTypeDefs.unregisterNodeTypes(nodeTypeNames);
+ }
+
//------------------------------------------< private >---
private static ChangeLog changeLog(Batch batch) throws RepositoryException {
Modified: jackrabbit/sandbox/spi2microkernel/src/test/java/org/apache/jackrabbit/spi2microkernel/RepositoryTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/spi2microkernel/src/test/java/org/apache/jackrabbit/spi2microkernel/RepositoryTest.java?rev=1136375&r1=1136374&r2=1136375&view=diff
==============================================================================
--- jackrabbit/sandbox/spi2microkernel/src/test/java/org/apache/jackrabbit/spi2microkernel/RepositoryTest.java (original)
+++ jackrabbit/sandbox/spi2microkernel/src/test/java/org/apache/jackrabbit/spi2microkernel/RepositoryTest.java Thu Jun 16 11:04:24 2011
@@ -41,6 +41,8 @@ import javax.jcr.RepositoryFactory;
import javax.jcr.Session;
import javax.jcr.Value;
import javax.jcr.nodetype.NodeType;
+import javax.jcr.nodetype.NodeTypeManager;
+import javax.jcr.nodetype.NodeTypeTemplate;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.math.BigDecimal;
@@ -755,6 +757,20 @@ public class RepositoryTest {
}
}
+ @Test
+ public void nodeTypeRegistry() throws RepositoryException {
+ NodeTypeManager ntMgr = getSession().getWorkspace().getNodeTypeManager();
+ assertFalse(ntMgr.hasNodeType("foo"));
+
+ NodeTypeTemplate ntd = ntMgr.createNodeTypeTemplate();
+ ntd.setName("foo");
+ ntMgr.registerNodeType(ntd, false);
+ assertTrue(ntMgr.hasNodeType("foo"));
+
+ ntMgr.unregisterNodeType("foo");
+ assertFalse(ntMgr.hasNodeType("foo"));
+ }
+
//------------------------------------------< private >---
private void addProperty(Node parentNode, String name, Value value) throws RepositoryException {