Package org.apache.jackrabbit.test.api.observation

Examples of org.apache.jackrabbit.test.api.observation.EventResult


        Node node1 = testRootNode.addNode(nodeName1, testNodeType);
        node1.addMixin(mixVersionable);

        testRootNode.save();

        EventResult propertyAddedListener = new EventResult(log);
        // mix:versionable is derived from mix:referenceable
        addEventListener(propertyAddedListener, new String[]{mixReferenceable}, Event.PROPERTY_ADDED);

        node1.setProperty(propertyName1, "test");
        testRootNode.save();

        removeEventListener(propertyAddedListener);
        Event[] added = propertyAddedListener.getEvents(DEFAULT_WAIT_TIMEOUT);
        checkPropertyAdded(added, new String[]{nodeName1 + "/" + propertyName1});
    }
View Full Code Here


        Privilege[] dnPrivs = privilegesFromName(Privilege.JCR_READ);
        withdrawPrivileges(path, dnPrivs, getRestrictions(path));

        // testUser registers a eventlistener for 'path
        ObservationManager obsMgr = testSession.getWorkspace().getObservationManager();
        EventResult listener = new EventResult(((JUnitTest) this).log);
        try {
            obsMgr.addEventListener(listener, Event.NODE_REMOVED, path, true, new String[0], new String[0], true);

            // superuser removes the node with childNPath in order to provoke
            // events being generated
            superuser.getItem(childNPath).remove();
            superuser.save();

            obsMgr.removeEventListener(listener);
            // since the testUser does not have read-permission on the removed
            // node, no corresponding event must be generated.
            Event[] evts = listener.getEvents(DEFAULT_WAIT_TIMEOUT);
            for (int i = 0; i < evts.length; i++) {
                if (evts[i].getType() == Event.NODE_REMOVED &&
                        evts[i].getPath().equals(childNPath)) {
                    fail("TestUser does not have READ permission below " + path + " -> events below must not show up.");
                }
View Full Code Here

        testRootNode.addNode(nodeName1, testNodeType).addMixin(mixReferenceable);
        testRootNode.addNode(nodeName2, testNodeType);
        testRootNode.addNode(nodeName3, testNodeType).addMixin(mixReferenceable);
        testRootNode.save();

        EventResult propertyAddedListener = new EventResult(log);
        addEventListener(propertyAddedListener, new String[]{mixReferenceable}, Event.PROPERTY_ADDED);

        testRootNode.getNode(nodeName1).setProperty(propertyName1, "test");
        testRootNode.getNode(nodeName2).setProperty(propertyName1, "test");
        testRootNode.getNode(nodeName3).setProperty(propertyName1, "test");
        testRootNode.save();

        removeEventListener(propertyAddedListener);
        Event[] added = propertyAddedListener.getEvents(DEFAULT_WAIT_TIMEOUT);
        checkPropertyAdded(added, new String[]{nodeName1 + "/" + propertyName1,
                                               nodeName3 + "/" + propertyName1});
    }
View Full Code Here

        testRootNode.addNode(nodeName1, testNodeType).addMixin(mixReferenceable);
        testRootNode.addNode(nodeName2, testNodeType).addMixin(mixLockable);
        testRootNode.addNode(nodeName3, testNodeType).addMixin(mixReferenceable);
        testRootNode.save();

        EventResult propertyAddedListener = new EventResult(log);
        addEventListener(propertyAddedListener, new String[]{mixReferenceable, mixLockable}, Event.PROPERTY_ADDED);

        testRootNode.getNode(nodeName1).setProperty(propertyName1, "test");
        testRootNode.getNode(nodeName2).setProperty(propertyName1, "test");
        testRootNode.getNode(nodeName3).setProperty(propertyName1, "test");
        testRootNode.save();

        removeEventListener(propertyAddedListener);
        Event[] added = propertyAddedListener.getEvents(DEFAULT_WAIT_TIMEOUT);
        checkPropertyAdded(added, new String[]{nodeName1 + "/" + propertyName1,
                                               nodeName2 + "/" + propertyName1,
                                               nodeName3 + "/" + propertyName1});
    }
View Full Code Here

        Node node3 = testRootNode.addNode(nodeName3, testNodeType);
        node3.addMixin(mixLockable);
        node3.addMixin(mixReferenceable);
        testRootNode.save();

        EventResult propertyAddedListener = new EventResult(log);
        addEventListener(propertyAddedListener, new String[]{mixReferenceable}, Event.PROPERTY_ADDED);

        node1.setProperty(propertyName1, "test");
        node2.setProperty(propertyName1, "test");
        node3.setProperty(propertyName1, "test");
        testRootNode.save();

        removeEventListener(propertyAddedListener);
        Event[] added = propertyAddedListener.getEvents(DEFAULT_WAIT_TIMEOUT);
        checkPropertyAdded(added, new String[]{nodeName1 + "/" + propertyName1,
                                               nodeName3 + "/" + propertyName1});
    }
View Full Code Here

        testRootNode.addNode(nodeName2, testNodeType);
        testRootNode.addNode(nodeName1, testNodeType);
        testRootNode.addNode(nodeName1, testNodeType);
        testRootNode.addNode(nodeName3, testNodeType);
        testRootNode.save();
        EventResult addNodeListener = new EventResult(log);
        EventResult removeNodeListener = new EventResult(log);
        addEventListener(addNodeListener, Event.NODE_ADDED);
        addEventListener(removeNodeListener, Event.NODE_REMOVED);
        testRootNode.orderBefore(nodeName1 + "[2]", null);
        testRootNode.getNode(nodeName3).remove();
        testRootNode.save();
        removeEventListener(addNodeListener);
        removeEventListener(removeNodeListener);
        Event[] added = addNodeListener.getEvents(DEFAULT_WAIT_TIMEOUT);
        Event[] removed = removeNodeListener.getEvents(DEFAULT_WAIT_TIMEOUT);
        // not deterministic, there exist various re-order seqences. the minimal
        // is:
        // nodename1[2] has been reordered to the end + nodeName3 has been removed
        checkNodeAdded(added, new String[]{nodeName1 + "[4]"});
        checkNodeRemoved(removed, new String[]{nodeName1 + "[2]", nodeName3});
View Full Code Here

        // create versionable node
        Node n1 = testRootNode.addNode(nodeName1);
        n1.addMixin(mixVersionable);
        testRootNode.save();

        EventResult listener = new EventResult(log);
        addEventListener(listener, Event.NODE_ADDED);
        Version v = n1.checkin();
        removeEventListener(listener);

        Event[] events = listener.getEvents(1000);
        Set paths = new HashSet();
        for (int i = 0; i < events.length; i++) {
            paths.add(events[i].getPath());
        }
View Full Code Here

        // create versionable node
        Node n1 = testRootNode.addNode(nodeName1);
        n1.addMixin(mixVersionable);
        testRootNode.save();

        EventResult listener = new EventResult(log);
        addEventListener(listener, Event.NODE_ADDED);

        // use a transaction
        UserTransaction utx = new UserTransactionImpl(superuser);
        // start transaction
        utx.begin();
        Version v = n1.checkin();
        // commit transaction
        utx.commit();

        removeEventListener(listener);

        Event[] events = listener.getEvents(1000);
        Set paths = new HashSet();
        for (int i = 0; i < events.length; i++) {
            paths.add(events[i].getPath());
        }
View Full Code Here

        String versionPath = v.getPath();

        n1.remove();
        testRootNode.save();

        EventResult listener = new EventResult(log);
        addEventListener(listener, Event.NODE_REMOVED);
        v.getContainingHistory().removeVersion(v.getName());
        removeEventListener(listener);

        Event[] events = listener.getEvents(1000);
        Set paths = new HashSet();
        for (int i = 0; i < events.length; i++) {
            paths.add(events[i].getPath());
        }
View Full Code Here

        String versionPath = v.getPath();

        n1.remove();
        testRootNode.save();

        EventResult listener = new EventResult(log);
        addEventListener(listener, Event.NODE_REMOVED);

        // use a transaction
        UserTransaction utx = new UserTransactionImpl(superuser);
        // start transaction
        utx.begin();
        v.getContainingHistory().removeVersion(v.getName());
        // commit transaction
        utx.commit();

        removeEventListener(listener);

        Event[] events = listener.getEvents(1000);
        Set paths = new HashSet();
        for (int i = 0; i < events.length; i++) {
            paths.add(events[i].getPath());
        }
View Full Code Here

TOP

Related Classes of org.apache.jackrabbit.test.api.observation.EventResult

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.