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 2017/06/28 10:06:01 UTC

svn commit: r1800141 - in /jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr: delegate/ session/operation/

Author: stillalex
Date: Wed Jun 28 10:06:01 2017
New Revision: 1800141

URL: http://svn.apache.org/viewvc?rev=1800141&view=rev
Log:
OAK-6147 Review SessionOperation usage in security code


Modified:
    jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/AccessControlManagerDelegator.java
    jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/AuthorizableDelegator.java
    jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/GroupDelegator.java
    jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/ImpersonationDelegator.java
    jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/PrivilegeManagerDelegator.java
    jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/UserDelegator.java
    jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/UserManagerDelegator.java
    jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/operation/UserManagerOperation.java

Modified: jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/AccessControlManagerDelegator.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/AccessControlManagerDelegator.java?rev=1800141&r1=1800140&r2=1800141&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/AccessControlManagerDelegator.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/AccessControlManagerDelegator.java Wed Jun 28 10:06:01 2017
@@ -126,7 +126,7 @@ public class AccessControlManagerDelegat
     @Override
     public void setPolicy(final String absPath, final AccessControlPolicy policy)
             throws RepositoryException {
-        delegate.performVoid(new SessionOperation<Void>("setPolicy") {
+        delegate.performVoid(new SessionOperation<Void>("setPolicy", true) {
             @Override
             public void performVoid() throws RepositoryException {
                 acManager.setPolicy(absPath, policy);
@@ -137,7 +137,7 @@ public class AccessControlManagerDelegat
     @Override
     public void removePolicy(final String absPath, final AccessControlPolicy policy)
             throws RepositoryException {
-        delegate.performVoid(new SessionOperation<Void>("removePolicy") {
+        delegate.performVoid(new SessionOperation<Void>("removePolicy", true) {
             @Override
             public void performVoid() throws RepositoryException {
                 acManager.removePolicy(absPath, policy);

Modified: jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/AuthorizableDelegator.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/AuthorizableDelegator.java?rev=1800141&r1=1800140&r2=1800141&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/AuthorizableDelegator.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/AuthorizableDelegator.java Wed Jun 28 10:06:01 2017
@@ -143,7 +143,7 @@ abstract class AuthorizableDelegator imp
 
     @Override
     public void remove() throws RepositoryException {
-        sessionDelegate.performVoid(new SessionOperation<Void>("remove") {
+        sessionDelegate.performVoid(new SessionOperation<Void>("remove", true) {
             @Override
             public void performVoid() throws RepositoryException {
                 delegate.remove();
@@ -186,7 +186,7 @@ abstract class AuthorizableDelegator imp
 
     @Override
     public void setProperty(final String relPath, final Value value) throws RepositoryException {
-        sessionDelegate.performVoid(new SessionOperation<Void>("setProperty") {
+        sessionDelegate.performVoid(new SessionOperation<Void>("setProperty", true) {
             @Override
             public void performVoid() throws RepositoryException {
                 delegate.setProperty(relPath, value);
@@ -196,7 +196,7 @@ abstract class AuthorizableDelegator imp
 
     @Override
     public void setProperty(final String relPath, final Value[] value) throws RepositoryException {
-        sessionDelegate.performVoid(new SessionOperation<Void>("setProperty") {
+        sessionDelegate.performVoid(new SessionOperation<Void>("setProperty", true) {
             @Override
             public void performVoid() throws RepositoryException {
                 delegate.setProperty(relPath, value);
@@ -217,7 +217,7 @@ abstract class AuthorizableDelegator imp
 
     @Override
     public boolean removeProperty(final String relPath) throws RepositoryException {
-        return sessionDelegate.perform(new SessionOperation<Boolean>("removeProperty") {
+        return sessionDelegate.perform(new SessionOperation<Boolean>("removeProperty", true) {
             @Nonnull
             @Override
             public Boolean perform() throws RepositoryException {

Modified: jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/GroupDelegator.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/GroupDelegator.java?rev=1800141&r1=1800140&r2=1800141&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/GroupDelegator.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/GroupDelegator.java Wed Jun 28 10:06:01 2017
@@ -125,7 +125,7 @@ final class GroupDelegator extends Autho
 
     @Override
     public boolean addMember(final Authorizable authorizable) throws RepositoryException {
-        return sessionDelegate.perform(new SessionOperation<Boolean>("addMember") {
+        return sessionDelegate.perform(new SessionOperation<Boolean>("addMember", true) {
             @Nonnull
             @Override
             public Boolean perform() throws RepositoryException {
@@ -136,7 +136,7 @@ final class GroupDelegator extends Autho
 
     @Override
     public Set<String> addMembers(@Nonnull final String... memberIds) throws RepositoryException {
-        return sessionDelegate.perform(new SessionOperation<Set<String>>("addMembers") {
+        return sessionDelegate.perform(new SessionOperation<Set<String>>("addMembers", true) {
             @Nonnull
             @Override
             public Set<String> perform() throws RepositoryException {
@@ -147,7 +147,7 @@ final class GroupDelegator extends Autho
 
     @Override
     public boolean removeMember(final Authorizable authorizable) throws RepositoryException {
-        return sessionDelegate.perform(new SessionOperation<Boolean>("removeMember") {
+        return sessionDelegate.perform(new SessionOperation<Boolean>("removeMember", true) {
             @Nonnull
             @Override
             public Boolean perform() throws RepositoryException {
@@ -158,7 +158,7 @@ final class GroupDelegator extends Autho
 
     @Override
     public Set<String> removeMembers(@Nonnull final String... memberIds) throws RepositoryException {
-        return sessionDelegate.perform(new SessionOperation<Set<String>>("removeMembers") {
+        return sessionDelegate.perform(new SessionOperation<Set<String>>("removeMembers", true) {
             @Nonnull
             @Override
             public Set<String> perform() throws RepositoryException {

Modified: jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/ImpersonationDelegator.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/ImpersonationDelegator.java?rev=1800141&r1=1800140&r2=1800141&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/ImpersonationDelegator.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/ImpersonationDelegator.java Wed Jun 28 10:06:01 2017
@@ -68,7 +68,7 @@ final class ImpersonationDelegator imple
 
     @Override
     public boolean grantImpersonation(final Principal principal) throws RepositoryException {
-        return sessionDelegate.perform(new SessionOperation<Boolean>("grantImpersonation") {
+        return sessionDelegate.perform(new SessionOperation<Boolean>("grantImpersonation", true) {
             @Nonnull
             @Override
             public Boolean perform() throws RepositoryException {
@@ -79,7 +79,7 @@ final class ImpersonationDelegator imple
 
     @Override
     public boolean revokeImpersonation(final Principal principal) throws RepositoryException {
-        return sessionDelegate.perform(new SessionOperation<Boolean>("revokeImpersonation") {
+        return sessionDelegate.perform(new SessionOperation<Boolean>("revokeImpersonation", true) {
             @Nonnull
             @Override
             public Boolean perform() throws RepositoryException {

Modified: jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/PrivilegeManagerDelegator.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/PrivilegeManagerDelegator.java?rev=1800141&r1=1800140&r2=1800141&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/PrivilegeManagerDelegator.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/PrivilegeManagerDelegator.java Wed Jun 28 10:06:01 2017
@@ -68,7 +68,7 @@ public class PrivilegeManagerDelegator i
 
     @Override
     public Privilege registerPrivilege(final String privilegeName, final boolean isAbstract, final String[] declaredAggregateNames) throws AccessDeniedException, NamespaceException, RepositoryException {
-        return delegate.perform(new SessionOperation<Privilege>("registerPrivilege") {
+        return delegate.perform(new SessionOperation<Privilege>("registerPrivilege", true) {
             @Nonnull
             @Override
             public Privilege perform() throws RepositoryException {

Modified: jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/UserDelegator.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/UserDelegator.java?rev=1800141&r1=1800140&r2=1800141&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/UserDelegator.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/UserDelegator.java Wed Jun 28 10:06:01 2017
@@ -108,7 +108,7 @@ final class UserDelegator extends Author
 
     @Override
     public void changePassword(final String password) throws RepositoryException {
-        sessionDelegate.performVoid(new SessionOperation<Void>("changePassword") {
+        sessionDelegate.performVoid(new SessionOperation<Void>("changePassword", true) {
             @Override
             public void performVoid() throws RepositoryException {
                 getDelegate().changePassword(password);
@@ -118,7 +118,7 @@ final class UserDelegator extends Author
 
     @Override
     public void changePassword(final String password, final String oldPassword) throws RepositoryException {
-        sessionDelegate.performVoid(new SessionOperation<Void>("changePassword") {
+        sessionDelegate.performVoid(new SessionOperation<Void>("changePassword", true) {
             @Override
             public void performVoid() throws RepositoryException {
                 getDelegate().changePassword(password, oldPassword);
@@ -128,7 +128,7 @@ final class UserDelegator extends Author
 
     @Override
     public void disable(final String reason) throws RepositoryException {
-        sessionDelegate.performVoid(new SessionOperation<Void>("disable") {
+        sessionDelegate.performVoid(new SessionOperation<Void>("disable", true) {
             @Override
             public void performVoid() throws RepositoryException {
                 getDelegate().disable(reason);

Modified: jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/UserManagerDelegator.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/UserManagerDelegator.java?rev=1800141&r1=1800140&r2=1800141&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/UserManagerDelegator.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/delegate/UserManagerDelegator.java Wed Jun 28 10:06:01 2017
@@ -158,7 +158,7 @@ public class UserManagerDelegator implem
 
     @Override
     public User createUser(final String userID, final String password) throws AuthorizableExistsException, RepositoryException {
-        return sessionDelegate.perform(new UserManagerOperation<User>(sessionDelegate, "createUser") {
+        return sessionDelegate.perform(new UserManagerOperation<User>(sessionDelegate, "createUser", true) {
             @Nonnull
             @Override
             public User perform() throws RepositoryException {
@@ -170,7 +170,7 @@ public class UserManagerDelegator implem
 
     @Override
     public User createUser(final String userID, final String password, final Principal principal, final String intermediatePath) throws RepositoryException {
-        return sessionDelegate.perform(new UserManagerOperation<User>(sessionDelegate, "createUser") {
+        return sessionDelegate.perform(new UserManagerOperation<User>(sessionDelegate, "createUser", true) {
             @Nonnull
             @Override
             public User perform() throws RepositoryException {
@@ -182,7 +182,7 @@ public class UserManagerDelegator implem
 
     @Override
     public User createSystemUser(final String userID, final String intermediatePath) throws RepositoryException {
-        return sessionDelegate.perform(new UserManagerOperation<User>(sessionDelegate, "createUser") {
+        return sessionDelegate.perform(new UserManagerOperation<User>(sessionDelegate, "createUser", true) {
             @Nonnull
             @Override
             public User perform() throws RepositoryException {
@@ -194,7 +194,7 @@ public class UserManagerDelegator implem
 
     @Override
     public Group createGroup(final String groupID) throws RepositoryException {
-        return sessionDelegate.perform(new UserManagerOperation<Group>(sessionDelegate, "createGroup") {
+        return sessionDelegate.perform(new UserManagerOperation<Group>(sessionDelegate, "createGroup", true) {
             @Nonnull
             @Override
             public Group perform() throws RepositoryException {
@@ -206,7 +206,7 @@ public class UserManagerDelegator implem
 
     @Override
     public Group createGroup(final Principal principal) throws RepositoryException {
-        return sessionDelegate.perform(new UserManagerOperation<Group>(sessionDelegate, "createGroup") {
+        return sessionDelegate.perform(new UserManagerOperation<Group>(sessionDelegate, "createGroup", true) {
             @Nonnull
             @Override
             public Group perform() throws RepositoryException {
@@ -218,7 +218,7 @@ public class UserManagerDelegator implem
 
     @Override
     public Group createGroup(final Principal principal, final String intermediatePath) throws RepositoryException {
-        return sessionDelegate.perform(new UserManagerOperation<Group>(sessionDelegate, "createGroup") {
+        return sessionDelegate.perform(new UserManagerOperation<Group>(sessionDelegate, "createGroup", true) {
             @Nonnull
             @Override
             public Group perform() throws RepositoryException {
@@ -230,7 +230,7 @@ public class UserManagerDelegator implem
 
     @Override
     public Group createGroup(final String groupID, final Principal principal, final String intermediatePath) throws RepositoryException {
-        return sessionDelegate.perform(new UserManagerOperation<Group>(sessionDelegate, "createGroup") {
+        return sessionDelegate.perform(new UserManagerOperation<Group>(sessionDelegate, "createGroup", true) {
             @Nonnull
             @Override
             public Group perform() throws RepositoryException {

Modified: jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/operation/UserManagerOperation.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/operation/UserManagerOperation.java?rev=1800141&r1=1800140&r2=1800141&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/operation/UserManagerOperation.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/session/operation/UserManagerOperation.java Wed Jun 28 10:06:01 2017
@@ -19,6 +19,7 @@
 
 package org.apache.jackrabbit.oak.jcr.session.operation;
 
+import javax.annotation.Nonnull;
 import javax.jcr.RepositoryException;
 
 import org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate;
@@ -26,8 +27,12 @@ import org.apache.jackrabbit.oak.jcr.del
 public abstract class UserManagerOperation<T> extends SessionOperation<T> {
     private final SessionDelegate delegate;
 
-    protected UserManagerOperation(SessionDelegate delegate, String name) {
-        super(name);
+    protected UserManagerOperation(@Nonnull SessionDelegate delegate, @Nonnull String name) {
+        this(delegate, name, false);
+    }
+
+    protected UserManagerOperation(@Nonnull SessionDelegate delegate, @Nonnull String name, boolean update) {
+        super(name, update);
         this.delegate = delegate;
     }