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 st...@apache.org on 2014/10/28 16:50:50 UTC

svn commit: r1634898 - in /jackrabbit/oak/trunk: oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/ oak-it/mk/src/main/java/org/apache/jackrabbit/mk/test/ oak-it/mk/src/test/resources/META-INF/services/

Author: stefan
Date: Tue Oct 28 15:50:49 2014
New Revision: 1634898

URL: http://svn.apache.org/r1634898
Log:
OAK-2237: NodeStoreKernel.getNodes throws when passing filter=""

Modified:
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/NodeStoreKernel.java
    jackrabbit/oak/trunk/oak-it/mk/src/main/java/org/apache/jackrabbit/mk/test/MicroKernelIT.java
    jackrabbit/oak/trunk/oak-it/mk/src/test/resources/META-INF/services/org.apache.jackrabbit.mk.test.MicroKernelFixture

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/NodeStoreKernel.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/NodeStoreKernel.java?rev=1634898&r1=1634897&r2=1634898&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/NodeStoreKernel.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/NodeStoreKernel.java Tue Oct 28 15:50:49 2014
@@ -493,7 +493,7 @@ public class NodeStoreKernel implements 
             if (maxChildNodes < 0) {
                 maxChildNodes = Integer.MAX_VALUE;
             }
-            if (filter == null) {
+            if (filter == null || filter.isEmpty()) {
                 filter = "{}";
             }
             JsonSerializer json = new JsonSerializer(

Modified: jackrabbit/oak/trunk/oak-it/mk/src/main/java/org/apache/jackrabbit/mk/test/MicroKernelIT.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-it/mk/src/main/java/org/apache/jackrabbit/mk/test/MicroKernelIT.java?rev=1634898&r1=1634897&r2=1634898&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-it/mk/src/main/java/org/apache/jackrabbit/mk/test/MicroKernelIT.java (original)
+++ jackrabbit/oak/trunk/oak-it/mk/src/main/java/org/apache/jackrabbit/mk/test/MicroKernelIT.java Tue Oct 28 15:50:49 2014
@@ -573,6 +573,26 @@ public class MicroKernelIT extends Abstr
     }
 
     @Test
+    public void getNodesWithDefaultFilter() {
+        String head = mk.getHeadRevision();
+
+        String[] filters = { null, "" };
+
+        for (String filter : filters) {
+            // verify initial content with implicit default filter
+            JSONObject obj = parseJSONObject(mk.getNodes("/", head, 1, 0, -1, filter));
+            assertPropertyExists(obj, "test/:childNodeCount");
+            assertPropertyNotExists(obj, "test/:hash");
+            assertPropertyNotExists(obj, "test/:id");
+            assertPropertyValue(obj, "test/stringProp", "stringVal");
+            assertPropertyValue(obj, "test/intProp", 42L);
+            assertPropertyValue(obj, "test/floatProp", 42.2);
+            assertPropertyValue(obj, "test/booleanProp", true);
+            assertPropertyValue(obj, "test/multiIntProp", new Object[]{1, 2, 3});
+        }
+    }
+
+    @Test
     public void getNodesNonExistingPath() {
         String head = mk.getHeadRevision();
 

Modified: jackrabbit/oak/trunk/oak-it/mk/src/test/resources/META-INF/services/org.apache.jackrabbit.mk.test.MicroKernelFixture
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-it/mk/src/test/resources/META-INF/services/org.apache.jackrabbit.mk.test.MicroKernelFixture?rev=1634898&r1=1634897&r2=1634898&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-it/mk/src/test/resources/META-INF/services/org.apache.jackrabbit.mk.test.MicroKernelFixture (original)
+++ jackrabbit/oak/trunk/oak-it/mk/src/test/resources/META-INF/services/org.apache.jackrabbit.mk.test.MicroKernelFixture Tue Oct 28 15:50:49 2014
@@ -13,7 +13,7 @@
 #  See the License for the specific language governing permissions and
 #  limitations under the License.
 
-#org.apache.jackrabbit.mk.test.MicroKernelImplFixture
+org.apache.jackrabbit.mk.test.MicroKernelImplFixture
 #org.apache.jackrabbit.mk.test.ClientServerFixture
 #org.apache.jackrabbit.mk.test.MongoMicroKernelFixture
 #org.apache.jackrabbit.mk.test.MongoGridFSMicroKernelFixture