You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by md...@apache.org on 2013/11/26 14:36:30 UTC

svn commit: r1545652 - in /jackrabbit/oak/trunk: oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/ChangeProcessor.java oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/ObservationManagerImpl.java

Author: mduerig
Date: Tue Nov 26 13:36:30 2013
New Revision: 1545652

URL: http://svn.apache.org/r1545652
Log:
OAK-1133: Observation listener PLUS
Avoid duplicate path conversion

Modified:
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/ChangeProcessor.java
    jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/ObservationManagerImpl.java

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/ChangeProcessor.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/ChangeProcessor.java?rev=1545652&r1=1545651&r2=1545652&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/ChangeProcessor.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/ChangeProcessor.java Tue Nov 26 13:36:30 2013
@@ -133,12 +133,11 @@ public class ChangeProcessor implements 
                 FilterProvider provider = filterProvider.get();
                 // FIXME don't rely on toString for session id
                 if (provider.includeCommit(contentSession.toString(), info)) {
-                    String path = namePathMapper.getOakPath(provider.getPath());
-                    ImmutableTree beforeTree = getTree(previousRoot, path);
-                    ImmutableTree afterTree = getTree(root, path);
+                    ImmutableTree beforeTree = getTree(previousRoot, provider.getPath());
+                    ImmutableTree afterTree = getTree(root, provider.getPath());
                     TreePermission treePermission = getTreePermission(afterTree);
                     EventIterator<Event> events = new EventIterator<Event>(
-                            beforeTree.getNodeState(), afterTree.getNodeState(), path,
+                            beforeTree.getNodeState(), afterTree.getNodeState(), provider.getPath(),
                             provider.getFilter(beforeTree, afterTree, treePermission),
                             new JcrListener(beforeTree, afterTree, namePathMapper, info));
                     if (events.hasNext()) {

Modified: jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/ObservationManagerImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/ObservationManagerImpl.java?rev=1545652&r1=1545651&r2=1545652&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/ObservationManagerImpl.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/ObservationManagerImpl.java Tue Nov 26 13:36:30 2013
@@ -111,7 +111,8 @@ public class ObservationManagerImpl impl
     public synchronized void addEventListener(EventListener listener, int eventTypes, String absPath,
             boolean isDeep, String[] uuid, String[] nodeTypeName, boolean noLocal) throws RepositoryException {
         boolean includeExternal = !(listener instanceof ExcludeExternal);
-        FilterProvider filterProvider = new JcrFilterProvider(ntMgr, eventTypes, oakPath(absPath), isDeep,
+        String oakPath = namePathMapper.getOakPath(absPath);
+        FilterProvider filterProvider = new JcrFilterProvider(ntMgr, eventTypes, oakPath, isDeep,
                 uuid, validateNodeTypeNames(nodeTypeName), !noLocal, includeExternal);
         ChangeProcessor processor = processors.get(listener);
         if (processor == null) {
@@ -172,10 +173,6 @@ public class ObservationManagerImpl impl
 
     //------------------------------------------------------------< private >---
 
-    private String oakPath(String jcrPath) {
-        return namePathMapper.getOakPath(jcrPath);
-    }
-
     /**
      * Validates the given node type names.
      *