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 an...@apache.org on 2014/10/07 19:21:45 UTC

svn commit: r1629932 - in /jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr: OakDocumentRDBRepositoryStub.java OakMongoMKRepositoryStub.java OakRepositoryStub.java OakTarMKRepositoryStub.java

Author: angela
Date: Tue Oct  7 17:21:44 2014
New Revision: 1629932

URL: http://svn.apache.org/r1629932
Log:
OAK-2158 : Fail for ACEs created for the admin principal

Added:
    jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakRepositoryStub.java
Modified:
    jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakDocumentRDBRepositoryStub.java
    jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakMongoMKRepositoryStub.java
    jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakTarMKRepositoryStub.java

Modified: jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakDocumentRDBRepositoryStub.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakDocumentRDBRepositoryStub.java?rev=1629932&r1=1629931&r2=1629932&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakDocumentRDBRepositoryStub.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakDocumentRDBRepositoryStub.java Tue Oct  7 17:21:44 2014
@@ -21,26 +21,19 @@ import java.sql.Connection;
 import java.sql.DriverManager;
 import java.sql.SQLException;
 import java.util.Properties;
-
-import javax.jcr.Credentials;
-import javax.jcr.GuestCredentials;
 import javax.jcr.Repository;
 import javax.jcr.RepositoryException;
 import javax.jcr.Session;
-import javax.jcr.UnsupportedRepositoryOperationException;
 
-import org.apache.jackrabbit.api.JackrabbitSession;
 import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
 import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
 import org.apache.jackrabbit.oak.plugins.document.rdb.RDBDataSourceFactory;
 import org.apache.jackrabbit.oak.query.QueryEngineSettings;
-import org.apache.jackrabbit.test.NotExecutableException;
-import org.apache.jackrabbit.test.RepositoryStub;
 
 /**
  * A repository stub implementation for the RDB document store.
  */
-public class OakDocumentRDBRepositoryStub extends RepositoryStub {
+public class OakDocumentRDBRepositoryStub extends OakRepositoryStub {
 
     protected static final String URL = System.getProperty("rdb.jdbc-url", ""); // such as: jdbc:h2:mem:oaknodes
 
@@ -117,22 +110,4 @@ public class OakDocumentRDBRepositoryStu
     public synchronized Repository getRepository() {
         return repository;
     }
-
-    @Override
-    public Credentials getReadOnlyCredentials() {
-        return new GuestCredentials();
-    }
-
-    @Override
-    public Principal getKnownPrincipal(Session session) throws RepositoryException {
-        if (session instanceof JackrabbitSession) {
-            return ((JackrabbitSession) session).getPrincipalManager().getPrincipal(session.getUserID());
-        }
-        throw new UnsupportedRepositoryOperationException();
-    }
-
-    @Override
-    public Principal getUnknownPrincipal(Session session) throws RepositoryException, NotExecutableException {
-        return UNKNOWN_PRINCIPAL;
-    }
 }

Modified: jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakMongoMKRepositoryStub.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakMongoMKRepositoryStub.java?rev=1629932&r1=1629931&r2=1629932&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakMongoMKRepositoryStub.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakMongoMKRepositoryStub.java Tue Oct  7 17:21:44 2014
@@ -17,30 +17,21 @@
 package org.apache.jackrabbit.oak.jcr;
 
 import java.lang.ref.WeakReference;
-import java.security.Principal;
 import java.util.Properties;
-
-import javax.jcr.Credentials;
-import javax.jcr.GuestCredentials;
 import javax.jcr.Repository;
 import javax.jcr.RepositoryException;
 import javax.jcr.Session;
-import javax.jcr.UnsupportedRepositoryOperationException;
 
 import com.mongodb.BasicDBObject;
-
-import org.apache.jackrabbit.api.JackrabbitSession;
 import org.apache.jackrabbit.oak.kernel.KernelNodeStore;
 import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
 import org.apache.jackrabbit.oak.plugins.document.util.MongoConnection;
 import org.apache.jackrabbit.oak.query.QueryEngineSettings;
-import org.apache.jackrabbit.test.NotExecutableException;
-import org.apache.jackrabbit.test.RepositoryStub;
 
 /**
  * A repository stub implementation for Oak on DocumentMK
  */
-public class OakMongoMKRepositoryStub extends RepositoryStub {
+public class OakMongoMKRepositoryStub extends OakRepositoryStub {
 
     protected static final String HOST =
             System.getProperty("mongo.host", "127.0.0.1");
@@ -50,13 +41,6 @@ public class OakMongoMKRepositoryStub ex
 
     protected static final String DB =
             System.getProperty("mongo.db", "MongoMKDB");
-    
-    private static final Principal UNKNOWN_PRINCIPAL = new Principal() {
-        @Override
-        public String getName() {
-            return "an_unknown_user";
-        }
-    };
 
     private final MongoConnection connection;
     private final Repository repository;
@@ -157,23 +141,4 @@ public class OakMongoMKRepositoryStub ex
     public synchronized Repository getRepository() {
         return repository;
     }
-
-    @Override
-    public Credentials getReadOnlyCredentials() {
-        return new GuestCredentials();
-    }
-
-    @Override
-    public Principal getKnownPrincipal(Session session) throws RepositoryException {
-        if (session instanceof JackrabbitSession) {
-            return ((JackrabbitSession) session).getPrincipalManager().getPrincipal(session.getUserID());
-        }
-        throw new UnsupportedRepositoryOperationException();
-    }
-
-    @Override
-    public Principal getUnknownPrincipal(Session session) throws RepositoryException,
-            NotExecutableException {
-        return UNKNOWN_PRINCIPAL;
-    }
 }

Added: jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakRepositoryStub.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakRepositoryStub.java?rev=1629932&view=auto
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakRepositoryStub.java (added)
+++ jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakRepositoryStub.java Tue Oct  7 17:21:44 2014
@@ -0,0 +1,61 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.jackrabbit.oak.jcr;
+
+import java.security.Principal;
+import java.util.Properties;
+import javax.jcr.Credentials;
+import javax.jcr.GuestCredentials;
+import javax.jcr.RepositoryException;
+import javax.jcr.Session;
+
+import org.apache.jackrabbit.oak.spi.security.principal.EveryonePrincipal;
+import org.apache.jackrabbit.test.NotExecutableException;
+import org.apache.jackrabbit.test.RepositoryStub;
+
+/**
+ * Base RepositoryStub for the Oak Repository
+ */
+abstract class OakRepositoryStub extends RepositoryStub {
+
+    private static final Principal UNKNOWN_PRINCIPAL = new Principal() {
+        @Override
+        public String getName() {
+            return "an_unknown_user";
+        }
+    };
+
+    protected OakRepositoryStub(Properties env) {
+        super(env);
+    }
+
+    @Override
+    public Credentials getReadOnlyCredentials() {
+        return new GuestCredentials();
+    }
+
+    @Override
+    public Principal getKnownPrincipal(Session session) throws RepositoryException {
+        return EveryonePrincipal.getInstance();
+    }
+
+    @Override
+    public Principal getUnknownPrincipal(Session session) throws RepositoryException, NotExecutableException {
+        return UNKNOWN_PRINCIPAL;
+    }
+
+}
\ No newline at end of file

Modified: jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakTarMKRepositoryStub.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakTarMKRepositoryStub.java?rev=1629932&r1=1629931&r2=1629932&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakTarMKRepositoryStub.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakTarMKRepositoryStub.java Tue Oct  7 17:21:44 2014
@@ -17,30 +17,20 @@
 package org.apache.jackrabbit.oak.jcr;
 
 import java.io.File;
-import java.security.Principal;
 import java.util.Properties;
-
-import javax.jcr.Credentials;
-import javax.jcr.GuestCredentials;
 import javax.jcr.Repository;
 import javax.jcr.RepositoryException;
 import javax.jcr.Session;
-import javax.jcr.UnsupportedRepositoryOperationException;
 
-import org.apache.jackrabbit.api.JackrabbitSession;
-import org.apache.jackrabbit.api.security.principal.PrincipalIterator;
-import org.apache.jackrabbit.api.security.principal.PrincipalManager;
 import org.apache.jackrabbit.oak.Oak;
 import org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStore;
 import org.apache.jackrabbit.oak.plugins.segment.file.FileStore;
 import org.apache.jackrabbit.oak.query.QueryEngineSettings;
-import org.apache.jackrabbit.test.NotExecutableException;
-import org.apache.jackrabbit.test.RepositoryStub;
 
 /**
  * A repository stub implementation for Oak on TarMK
  */
-public class OakTarMKRepositoryStub extends RepositoryStub {
+public class OakTarMKRepositoryStub extends OakRepositoryStub {
 
     private final FileStore store;
 
@@ -103,34 +93,4 @@ public class OakTarMKRepositoryStub exte
     public synchronized Repository getRepository() {
         return repository;
     }
-
-    @Override
-    public Credentials getReadOnlyCredentials() {
-        return new GuestCredentials();
-    }
-
-    @Override
-    public Principal getKnownPrincipal(Session session) throws RepositoryException {
-        if (session instanceof JackrabbitSession) {
-            PrincipalIterator principals = ((JackrabbitSession) session).getPrincipalManager().getPrincipals(PrincipalManager.SEARCH_TYPE_NOT_GROUP);
-            if (principals.hasNext()) {
-                return principals.nextPrincipal();
-            }
-        }
-
-        throw new UnsupportedRepositoryOperationException();
-    }
-
-    private static final Principal UNKNOWN_PRINCIPAL = new Principal() {
-        @Override
-        public String getName() {
-            return "an_unknown_user";
-        }
-    };
-
-    @Override
-    public Principal getUnknownPrincipal(Session session) throws RepositoryException, NotExecutableException {
-        return UNKNOWN_PRINCIPAL;
-    }
-
 }