Package javax.jcr

Examples of javax.jcr.NamespaceRegistry


        assertFalse(ntMgr.hasNodeType("foo"));
    }

    @Test
    public void testNamespaceRegistry() throws RepositoryException {
        NamespaceRegistry nsReg =
                getAdminSession().getWorkspace().getNamespaceRegistry();
        assertFalse(asList(nsReg.getPrefixes()).contains("foo"));
        assertFalse(asList(nsReg.getURIs()).contains("file:///foo"));

        nsReg.registerNamespace("foo", "file:///foo");
        assertTrue(asList(nsReg.getPrefixes()).contains("foo"));
        assertTrue(asList(nsReg.getURIs()).contains("file:///foo"));

        nsReg.unregisterNamespace("foo");
        assertFalse(asList(nsReg.getPrefixes()).contains("foo"));
        assertFalse(asList(nsReg.getURIs()).contains("file:///foo"));
    }
View Full Code Here


        assertFalse(asList(nsReg.getURIs()).contains("file:///foo"));
    }

    @Test
    public void sessionRemappedNamespace() throws RepositoryException {
        NamespaceRegistry nsReg =
                getAdminSession().getWorkspace().getNamespaceRegistry();
        nsReg.registerNamespace("foo", "file:///foo");

        getAdminSession().getRootNode().addNode("foo:test");
        getAdminSession().save();

        Session s = createAdminSession();
        s.setNamespacePrefix("bar", "file:///foo");
        assertTrue(s.getRootNode().hasNode("bar:test"));
        Node n = s.getRootNode().getNode("bar:test");
        assertEquals("bar:test", n.getName());
        s.logout();

        getAdminSession().getRootNode().getNode("foo:test").remove();
        getAdminSession().save();
        nsReg.unregisterNamespace("foo");
    }
View Full Code Here

        nsReg.unregisterNamespace("foo");
    }

    @Test
    public void registryRemappedNamespace() throws RepositoryException {
        NamespaceRegistry nsReg =
                getAdminSession().getWorkspace().getNamespaceRegistry();
        nsReg.registerNamespace("foo", "file:///foo");

        getAdminSession().getRootNode().addNode("foo:test");
        getAdminSession().save();

        try {
            nsReg.registerNamespace("bar", "file:///foo");
            fail("Remapping namespace through NamespaceRegistry must not be allowed");
        } catch (NamespaceException e) {
            // expected
        } finally {
            getAdminSession().getRootNode().getNode("foo:test").remove();
            getAdminSession().save();

            nsReg.unregisterNamespace("foo");
        }
    }
View Full Code Here

        assertFalse(ntMgr.hasNodeType("foo"));
    }

    @Test
    public void testNamespaceRegistry() throws RepositoryException {
        NamespaceRegistry nsReg =
                getSession().getWorkspace().getNamespaceRegistry();
        assertFalse(contains(nsReg.getPrefixes(), "foo"));
        assertFalse(contains(nsReg.getURIs(), "file:///foo"));

        nsReg.registerNamespace("foo", "file:///foo");
        assertTrue(contains(nsReg.getPrefixes(), "foo"));
        assertTrue(contains(nsReg.getURIs(), "file:///foo"));

        nsReg.unregisterNamespace("foo");
        assertFalse(contains(nsReg.getPrefixes(), "foo"));
        assertFalse(contains(nsReg.getURIs(), "file:///foo"));
    }
View Full Code Here

public class ReadWriteNamespaceRegistryTest extends OakBaseTest {

    @Test
    public void testMappings() throws Exception {
        final ContentSession session = createContentSession();
        NamespaceRegistry r = new ReadWriteNamespaceRegistry() {
            @Override
            protected Tree getReadTree() {
                return session.getLatestRoot().getTree("/");
            }
            @Override
            protected Root getWriteRoot() {
                return session.getLatestRoot();
            }
        };

        assertEquals("", r.getURI(""));
        assertEquals("http://www.jcp.org/jcr/1.0", r.getURI("jcr"));
        assertEquals("http://www.jcp.org/jcr/nt/1.0", r.getURI("nt"));
        assertEquals("http://www.jcp.org/jcr/mix/1.0", r.getURI("mix"));
        assertEquals("http://www.w3.org/XML/1998/namespace", r.getURI("xml"));

        assertEquals("", r.getPrefix(""));
        assertEquals("jcr", r.getPrefix("http://www.jcp.org/jcr/1.0"));
        assertEquals("nt", r.getPrefix("http://www.jcp.org/jcr/nt/1.0"));
        assertEquals("mix", r.getPrefix("http://www.jcp.org/jcr/mix/1.0"));
        assertEquals("xml", r.getPrefix("http://www.w3.org/XML/1998/namespace"));

        r.registerNamespace("p", "n");
        assertEquals(r.getURI("p"), "n");
        assertEquals(r.getPrefix("n"), "p");

        r.registerNamespace("p2", "n2");
        assertEquals(r.getURI("p2"), "n2");
        assertEquals(r.getPrefix("n2"), "p2");

    }
View Full Code Here

public abstract class AbstractAccessControlTest extends AbstractSecurityTest {

    private RestrictionProvider restrictionProvider;

    protected void registerNamespace(String prefix, String uri) throws Exception {
        NamespaceRegistry nsRegistry = new ReadWriteNamespaceRegistry() {
            @Override
            protected Root getWriteRoot() {
                return root;
            }

            @Override
            protected Tree getReadTree() {
                return root.getTree("/");
            }
        };
        nsRegistry.registerNamespace(prefix, uri);
    }
View Full Code Here

     * @return namespace prefixes
     * @throws RepositoryException if a repository error occurs
     */
    public synchronized String[] getNamespacePrefixes()
            throws RepositoryException {
        NamespaceRegistry registry = getWorkspace().getNamespaceRegistry();
        String[] uris = registry.getURIs();
        for (int i = 0; i < uris.length; i++) {
            getNamespacePrefix(uris[i]);
        }

        return (String[])
View Full Code Here

            throw new RepositoryException("Failed to copy content", e);
        }
    }

    private void copyNamespaces() throws RepositoryException {
        NamespaceRegistry sourceRegistry = source.getNamespaceRegistry();
        NamespaceRegistry targetRegistry = target.getNamespaceRegistry();

        logger.info("Copying registered namespaces");

        Collection existing = Arrays.asList(targetRegistry.getURIs());
        String[] uris = sourceRegistry.getURIs();
        for (int i = 0; i < uris.length; i++) {
            if (!existing.contains(uris[i])) {
                // TODO: what if the prefix is already taken?
                targetRegistry.registerNamespace(
                        sourceRegistry.getPrefix(uris[i]), uris[i]);
            }
        }
    }
View Full Code Here

            throws RepositoryException, IOException {
        logger.info("Copying version histories");

        PersistenceManager pm =
                source.getInternalVersionManager().getPersistenceManager();
        NamespaceRegistry nr =source.getNamespaceRegistry();

        NodeBuilder system = root.child(JCR_SYSTEM);
        system.setChildNode(JCR_VERSIONSTORAGE, new JackrabbitNodeState(
                pm, nr, VERSION_STORAGE_NODE_ID));
        system.setChildNode("jcr:activities", new JackrabbitNodeState(
View Full Code Here

        assertFalse(ntMgr.hasNodeType("foo"));
    }

    @Test
    public void testNamespaceRegistry() throws RepositoryException {
        NamespaceRegistry nsReg =
                getAdminSession().getWorkspace().getNamespaceRegistry();
        assertFalse(asList(nsReg.getPrefixes()).contains("foo"));
        assertFalse(asList(nsReg.getURIs()).contains("file:///foo"));

        nsReg.registerNamespace("foo", "file:///foo");
        assertTrue(asList(nsReg.getPrefixes()).contains("foo"));
        assertTrue(asList(nsReg.getURIs()).contains("file:///foo"));

        nsReg.unregisterNamespace("foo");
        assertFalse(asList(nsReg.getPrefixes()).contains("foo"));
        assertFalse(asList(nsReg.getURIs()).contains("file:///foo"));
    }
View Full Code Here

TOP

Related Classes of javax.jcr.NamespaceRegistry

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.