Package javax.jcr.observation

Examples of javax.jcr.observation.ObservationManager


                systemSearchMgr = new SearchManager(repConfig.getSearchConfig(),
                        nsReg, ntReg, getWorkspaceInfo(wspName).itemStateMgr,
                        vMgr.getPersistenceManager(), SYSTEM_ROOT_NODE_ID, null, null);

                SystemSession defSysSession = getSystemSession(wspName);
                ObservationManager obsMgr = defSysSession.getWorkspace().getObservationManager();
                obsMgr.addEventListener(systemSearchMgr, Event.NODE_ADDED
                        | Event.NODE_REMOVED | Event.PROPERTY_ADDED
                        | Event.PROPERTY_CHANGED | Event.PROPERTY_REMOVED,
                        "/" + defSysSession.getJCRName(NameConstants.JCR_SYSTEM),
                        true, null, null, false);
            }
View Full Code Here


            throws RepositoryException {
        if (supportsObservation) {
            // register local event listener
            Collection subscr = sInfo.getSubscriptions();
            if (subscr.size() != 0) {
                ObservationManager obsMgr = sInfo.getSession().getWorkspace().getObservationManager();
                List listeners = new ArrayList(subscr.size());
                try {
                    for (Iterator it = subscr.iterator(); it.hasNext(); ) {
                        EventSubscription s = (EventSubscription) it.next();
                        EventListener listener = s.getLocalEventListener();
                        listeners.add(listener);
                        obsMgr.addEventListener(listener, EventSubscription.ALL_EVENTS,
                                "/", true, null, null, false);
                    }
                    return call.run();
                } finally {
                    for (Iterator it = listeners.iterator(); it.hasNext(); ) {
                        try {
                            obsMgr.removeEventListener((EventListener) it.next());
                        } catch (RepositoryException e) {
                            // ignore and remove next
                        }
                    }
                }
View Full Code Here

    /** {@inheritDoc} */
    public RemoteObservationManager getObservationManager()
            throws RepositoryException, RemoteException {
        try {
            if (remoteObservationManager == null) {
                ObservationManager observationManager =
                    workspace.getObservationManager();
                remoteObservationManager =
                    getFactory().getRemoteObservationManager(observationManager);
            }
            return remoteObservationManager;
View Full Code Here

    /**
     * Utility method that removes all registered event listeners.
     */
    private void removeRegisteredEventListeners() {
        try {
            ObservationManager manager = getWorkspace().getObservationManager();
            // Use a copy to avoid modifying the set of registered listeners
            // while iterating over it
            Collection listeners =
                IteratorUtils.toList(manager.getRegisteredEventListeners());
            Iterator iterator = listeners.iterator();
            while (iterator.hasNext()) {
                EventListener listener = (EventListener) iterator.next();
                try {
                    manager.removeEventListener(listener);
                } catch (RepositoryException e) {
                    log.warn("Error removing event listener: " + listener, e);
                }
            }
        } catch (RepositoryException e) {
View Full Code Here

                        getWorkspaceInfo(wspName).itemStateMgr,
                        context.getInternalVersionManager().getPersistenceManager(),
                        SYSTEM_ROOT_NODE_ID, null, null);

                SystemSession defSysSession = getSystemSession(wspName);
                ObservationManager obsMgr = defSysSession.getWorkspace().getObservationManager();
                obsMgr.addEventListener(systemSearchMgr, Event.NODE_ADDED
                        | Event.NODE_REMOVED | Event.PROPERTY_ADDED
                        | Event.PROPERTY_CHANGED | Event.PROPERTY_REMOVED,
                        "/" + defSysSession.getJCRName(NameConstants.JCR_SYSTEM),
                        true, null, null, false);
            }
View Full Code Here

                TEST_PATH + "/2/jcr:primaryType");

        final List<Event> failedEvents = new ArrayList<Event>();
        final AtomicReference<CountDownLatch> eventCount = new AtomicReference<CountDownLatch>();

        ObservationManager obsMgr = getSession().getWorkspace().getObservationManager();
        obsMgr.addEventListener(new EventListener() {
                @Override
                public void onEvent(EventIterator events) {
                    while (events.hasNext()) {
                        Event event = events.nextEvent();
                        try {
View Full Code Here

                TEST_PATH + "/1/jcr:primaryType");

        final List<Event> failedEvents = new ArrayList<Event>();
        final AtomicReference<CountDownLatch> eventCount = new AtomicReference<CountDownLatch>();

        ObservationManager obsMgr = getSession().getWorkspace().getObservationManager();
        obsMgr.addEventListener(new EventListener() {
                @Override
                public void onEvent(EventIterator events) {
                    while (events.hasNext()) {
                        Event event = events.nextEvent();
                        try {
View Full Code Here

    public void observationDispose() throws RepositoryException, ExecutionException, TimeoutException,
                InterruptedException {

        final List<Event> failedEvents = new ArrayList<Event>();

        final ObservationManager obsMgr = getSession().getWorkspace().getObservationManager();
        final EventListener listener = new EventListener() {
            @Override
            public void onEvent(EventIterator events) {
                while (events.hasNext()) {
                    failedEvents.add(events.nextEvent());
                }
            }
        };
        obsMgr.addEventListener(listener, Event.NODE_ADDED | Event.NODE_REMOVED | Event.NODE_MOVED |
            Event.PROPERTY_ADDED | Event.PROPERTY_REMOVED | Event.PROPERTY_CHANGED | Event.PERSIST,
            "/", true, null, null, false);

        FutureTask<Void> disposer = new FutureTask<Void>(new Callable<Void>() {
            @Override
            public Void call() throws Exception {
                obsMgr.removeEventListener(listener);
                return null;
            }
        });

        Executors.newSingleThreadExecutor().execute(disposer);
View Full Code Here

        this.dispatcher = dispatcher;
        this.session = session;
        this.pathPrefix = pathPrefix;
        if (session != null) {
            try {
                ObservationManager manager =
                    session.getWorkspace().getObservationManager();
                this.userData = ((ObservationManagerImpl) manager).getUserData();
            } catch (RepositoryException e) {
                // should never happen because this
                // implementation supports observation
View Full Code Here

    /**
     * Utility method that removes all registered event listeners.
     */
    private void removeRegisteredEventListeners() {
        try {
            ObservationManager manager = getWorkspace().getObservationManager();
            // Use a copy to avoid modifying the set of registered listeners
            // while iterating over it
            Collection<EventListener> listeners =
                IteratorUtils.toList(manager.getRegisteredEventListeners());
            for (EventListener listener : listeners) {
                try {
                    manager.removeEventListener(listener);
                } catch (RepositoryException e) {
                    log.warn("Error removing event listener: " + listener, e);
                }
            }
        } catch (RepositoryException e) {
View Full Code Here

TOP

Related Classes of javax.jcr.observation.ObservationManager

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.