Package javax.jcr.nodetype

Examples of javax.jcr.nodetype.NodeTypeManager


    protected void setUp() throws Exception {
        super.setUp();

        // we assume sameNameSibs is supported by repository
        NodeTypeManager ntMgr = superuser.getWorkspace().getNodeTypeManager();

        // sameNameSibs ALLOWED
        // make sure 'sameNameSibsTrue' nodetype is properly defined
        try {
            sameNameSibsTrueNodeType = ntMgr.getNodeType(getProperty(PROP_SAME_NAME_SIBS_TRUE_NODE_TYPE));
            NodeDefinition[] childNodeDefs = sameNameSibsTrueNodeType.getDeclaredChildNodeDefinitions();
            boolean isSameNameSibs = false;
            for (int i = 0; i < childNodeDefs.length; i++) {
                if (childNodeDefs[i].allowsSameNameSiblings()) {
                    isSameNameSibs = true;
                    break;
                }
            }
            if (!isSameNameSibs) {
                throw new NotExecutableException("Property 'sameNameSibsTrueNodeType' does not define a nodetype where sameNameSibs are allowed: '" + sameNameSibsTrueNodeType.getName() + "'");
            }
        } catch (NoSuchNodeTypeException e) {
            fail("Property 'sameNameSibsTrueNodeType' does not define an existing nodetype: '" + sameNameSibsTrueNodeType + "'");
        }

        // sameNameSibs NOT ALLOWED
        // make sure 'sameNameSibsFalse' nodetype is properly defined
        try {
            sameNameSibsFalseNodeType = ntMgr.getNodeType(getProperty(PROP_SAME_NAME_SIBS_FALSE_NODE_TYPE));
            NodeDefinition[] childNodeDefs = sameNameSibsFalseNodeType.getDeclaredChildNodeDefinitions();
            boolean isSameNameSibs = true;
            for (int i = 0; i < childNodeDefs.length; i++) {
                if (!childNodeDefs[i].allowsSameNameSiblings()) {
                    isSameNameSibs = false;
View Full Code Here


        //      structure information
        Workspace workspace = session.getWorkspace();
        NamespaceRegistry registry = workspace.getNamespaceRegistry();
        registry.registerNamespace( "archiva", "http://archiva.apache.org/jcr/" );

        NodeTypeManager nodeTypeManager = workspace.getNodeTypeManager();
        registerMixinNodeType( nodeTypeManager, "archiva:namespace" );
        registerMixinNodeType( nodeTypeManager, "archiva:project" );
        registerMixinNodeType( nodeTypeManager, "archiva:projectVersion" );
        registerMixinNodeType( nodeTypeManager, "archiva:artifact" );
        registerMixinNodeType( nodeTypeManager, "archiva:facet" );
View Full Code Here

            @Override
            public NodeType[] perform() throws RepositoryException {
                // TODO: avoid nested calls
                // TODO: check if transient changes to mixin-types are reflected here
                if (hasProperty(Property.JCR_MIXIN_TYPES)) {
                    NodeTypeManager ntMgr = getNodeTypeManager();
                    Value[] mixinNames = getProperty(Property.JCR_MIXIN_TYPES).getValues();
                    NodeType[] mixinTypes = new NodeType[mixinNames.length];
                    for (int i = 0; i < mixinNames.length; i++) {
                        mixinTypes[i] = ntMgr.getNodeType(mixinNames[i].getString());
                    }
                    return mixinTypes;
                } else {
                    return new NodeType[0];
                }
View Full Code Here

    public void addNodeTest() throws RepositoryException {
        Session session = getAdminSession();

        // node type with default child-node type of to nt:base
        String ntName = "test";
        NodeTypeManager ntm = session.getWorkspace().getNodeTypeManager();
        NodeTypeTemplate ntt = ntm.createNodeTypeTemplate();
        ntt.setName(ntName);
        NodeDefinitionTemplate child = ntm.createNodeDefinitionTemplate();
        child.setName("*");
        child.setDefaultPrimaryTypeName("nt:base");
        child.setRequiredPrimaryTypeNames(new String[] {"nt:base"});
        List<NodeDefinition> children = ntt.getNodeDefinitionTemplates();
        children.add(child);
        ntm.registerNodeType(ntt, true);

        // try to create a node with the default nt:base
        Node node = session.getRootNode().addNode("defaultNtBase", ntName);
        node.addNode("throw")// Throws ConstraintViolationException on Oak, works on Jackrabbit 2
        session.save();
View Full Code Here

    public void testBinaryCoercion() throws RepositoryException, IOException {
        Session session = getAdminSession();

        // node type with default child-node type of to nt:base
        String ntName = "binaryCoercionTest";
        NodeTypeManager ntm = session.getWorkspace().getNodeTypeManager();

        NodeTypeTemplate ntt = ntm.createNodeTypeTemplate();
        ntt.setName(ntName);

        PropertyDefinitionTemplate propertyWithType = ntm.createPropertyDefinitionTemplate();
        propertyWithType.setName("javaObject");
        propertyWithType.setRequiredType(PropertyType.STRING);

        PropertyDefinitionTemplate unnamed = ntm.createPropertyDefinitionTemplate();
        unnamed.setName("*");
        unnamed.setRequiredType(PropertyType.UNDEFINED);

        List<PropertyDefinition> properties = ntt.getPropertyDefinitionTemplates();
        properties.add(propertyWithType);
        properties.add(unnamed);

        ntm.registerNodeType(ntt, false);

        Node node = session.getRootNode().addNode("testNodeForBinary", ntName);
        ByteArrayOutputStream bos = serializeObject("testValue");
        node.setProperty("javaObject",session.getValueFactory().createBinary(new ByteArrayInputStream(bos.toByteArray())));

View Full Code Here

        if ( !Arrays.asList( registry.getPrefixes() ).contains( "archiva" ) )
        {
            registry.registerNamespace( "archiva", "http://archiva.apache.org/jcr/" );
        }

        NodeTypeManager nodeTypeManager = workspace.getNodeTypeManager();
        registerMixinNodeType( nodeTypeManager, JcrMetadataRepository.NAMESPACE_NODE_TYPE );
        registerMixinNodeType( nodeTypeManager, JcrMetadataRepository.PROJECT_NODE_TYPE );
        registerMixinNodeType( nodeTypeManager, JcrMetadataRepository.PROJECT_VERSION_NODE_TYPE );
        registerMixinNodeType( nodeTypeManager, JcrMetadataRepository.ARTIFACT_NODE_TYPE );
        registerMixinNodeType( nodeTypeManager, JcrMetadataRepository.FACET_NODE_TYPE );
View Full Code Here

         {
            fileNodeType = defaultFileNodeType;
         }

         String contentNodeType = NodeTypeUtil.getContentNodeType(contentNodeTypeHeader);
         NodeTypeManager ntm = session.getWorkspace().getNodeTypeManager();
         NodeType nodeType = ntm.getNodeType(contentNodeType);
         NodeTypeUtil.checkContentResourceType(nodeType);

         if (mimeType == null)
         {
            MimeTypeResolver mimeTypeResolver = new MimeTypeResolver();
View Full Code Here

    /** {@inheritDoc} */
    public RemoteNodeTypeManager getNodeTypeManager()
            throws RepositoryException, RemoteException {
        try {
            NodeTypeManager manager = workspace.getNodeTypeManager();
            return getFactory().getRemoteNodeTypeManager(manager);
        } catch (RepositoryException ex) {
            throw getRepositoryException(ex);
        }
    }
View Full Code Here

        prepareTests(NodeTypeManager.class);
        ignoreMethod("getAllNodeTypes");     // null iterator
        ignoreMethod("getPrimaryNodeTypes"); // null iterator
        ignoreMethod("getMixinNodeTypes");   // null iterator

        NodeTypeManager manager = (NodeTypeManager) mock;
        RemoteNodeTypeManager remote =
            remoteFactory.getRemoteNodeTypeManager(manager);
        NodeTypeManager local = localFactory.getNodeTypeManager(remote);

        runTests(local);
    }
View Full Code Here

            propInfos.add(0, propInfos.remove(principalNameIndex));
        }
        for (PropInfo pi : propInfos) {
            // find applicable definition
            //TODO find a proper way to get the EffectiveNodeTypeProvider
            NodeTypeManager nodeTypeManager = session.getWorkspace().getNodeTypeManager();
            if (nodeTypeManager instanceof EffectiveNodeTypeProvider) {
                EffectiveNodeTypeProvider entp = (EffectiveNodeTypeProvider) nodeTypeManager;

                //TODO find better heuristics?
                PropertyDefinition def = pi.getPropertyDef(entp.getEffectiveNodeType(node));
View Full Code Here

TOP

Related Classes of javax.jcr.nodetype.NodeTypeManager

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.