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 2013/03/12 19:17:17 UTC
svn commit: r1455656 - in
/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak:
core/ security/authorization/ security/privilege/ spi/commit/ spi/security/
Author: angela
Date: Tue Mar 12 18:17:16 2013
New Revision: 1455656
URL: http://svn.apache.org/r1455656
Log:
OAK-527: permissions (wip)
- align SecurityConfiguration#getSecurityHook with #getValidators: pass in workspace name and consequently drop CommitHookProvider.
Removed:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/commit/CommitHookProvider.java
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/RootImpl.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/AccessControlConfigurationImpl.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/privilege/PrivilegeConfigurationImpl.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/SecurityConfiguration.java
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/RootImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/RootImpl.java?rev=1455656&r1=1455655&r2=1455656&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/RootImpl.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/RootImpl.java Tue Mar 12 18:17:16 2013
@@ -296,16 +296,16 @@ public class RootImpl implements Root {
commitHooks.add(hook);
List<CommitHook> postValidationHooks = new ArrayList<CommitHook>();
for (SecurityConfiguration sc : securityProvider.getSecurityConfigurations()) {
- CommitHook ch = sc.getSecurityHooks().getCommitHook(workspaceName);
- if (ch instanceof PostValidationHook) {
- postValidationHooks.add(ch);
- } else if (ch != EmptyHook.INSTANCE) {
- commitHooks.add(ch);
+ for (CommitHook ch : sc.getCommitHooks(workspaceName)) {
+ if (ch instanceof PostValidationHook) {
+ postValidationHooks.add(ch);
+ } else if (ch != EmptyHook.INSTANCE) {
+ commitHooks.add(ch);
+ }
}
List<? extends ValidatorProvider> validators = sc.getValidators(workspaceName);
if (!validators.isEmpty()) {
- commitHooks.add(new EditorHook(
- CompositeEditorProvider.compose(validators)));
+ commitHooks.add(new EditorHook(CompositeEditorProvider.compose(validators)));
}
}
commitHooks.addAll(postValidationHooks);
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/AccessControlConfigurationImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/AccessControlConfigurationImpl.java?rev=1455656&r1=1455655&r2=1455656&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/AccessControlConfigurationImpl.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/AccessControlConfigurationImpl.java Tue Mar 12 18:17:16 2013
@@ -23,15 +23,15 @@ import java.util.Set;
import javax.annotation.Nonnull;
import javax.jcr.security.AccessControlManager;
+import com.google.common.collect.ImmutableList;
import org.apache.jackrabbit.oak.api.Root;
import org.apache.jackrabbit.oak.namepath.NamePathMapper;
import org.apache.jackrabbit.oak.plugins.version.VersionablePathHook;
+import org.apache.jackrabbit.oak.security.authorization.permission.PermissionHook;
import org.apache.jackrabbit.oak.security.authorization.permission.PermissionStoreValidatorProvider;
import org.apache.jackrabbit.oak.security.authorization.permission.PermissionValidatorProvider;
import org.apache.jackrabbit.oak.security.authorization.restriction.RestrictionProviderImpl;
import org.apache.jackrabbit.oak.spi.commit.CommitHook;
-import org.apache.jackrabbit.oak.spi.commit.CommitHookProvider;
-import org.apache.jackrabbit.oak.spi.commit.CompositeHook;
import org.apache.jackrabbit.oak.spi.commit.ValidatorProvider;
import org.apache.jackrabbit.oak.spi.lifecycle.WorkspaceInitializer;
import org.apache.jackrabbit.oak.spi.security.Context;
@@ -42,8 +42,6 @@ import org.apache.jackrabbit.oak.spi.sec
import org.apache.jackrabbit.oak.spi.security.authorization.restriction.RestrictionProvider;
import org.apache.jackrabbit.oak.spi.xml.ProtectedItemImporter;
-import com.google.common.collect.ImmutableList;
-
/**
* {@code AccessControlConfigurationImpl} ... TODO
*/
@@ -70,16 +68,10 @@ public class AccessControlConfigurationI
@Nonnull
@Override
- public CommitHookProvider getSecurityHooks() {
- return new CommitHookProvider() {
- @Override
- public CommitHook getCommitHook(String workspaceName) {
-// return new CompositeHook(
-// new PermissionHook(workspaceName, getRestrictionProvider(NamePathMapper.DEFAULT)),
-// new VersionablePathHook(workspaceName));
- return new CompositeHook(new VersionablePathHook(workspaceName));
- }
- };
+ public List<? extends CommitHook> getCommitHooks(String workspaceName) {
+ return ImmutableList.of(
+ new VersionablePathHook(workspaceName),
+ new PermissionHook(workspaceName, getRestrictionProvider(NamePathMapper.DEFAULT)));
}
@Override
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/privilege/PrivilegeConfigurationImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/privilege/PrivilegeConfigurationImpl.java?rev=1455656&r1=1455655&r2=1455656&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/privilege/PrivilegeConfigurationImpl.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/privilege/PrivilegeConfigurationImpl.java Tue Mar 12 18:17:16 2013
@@ -25,7 +25,6 @@ import org.apache.jackrabbit.api.securit
import org.apache.jackrabbit.oak.api.Root;
import org.apache.jackrabbit.oak.namepath.NamePathMapper;
import org.apache.jackrabbit.oak.spi.commit.CommitHook;
-import org.apache.jackrabbit.oak.spi.commit.CommitHookProvider;
import org.apache.jackrabbit.oak.spi.commit.ValidatorProvider;
import org.apache.jackrabbit.oak.spi.lifecycle.RepositoryInitializer;
import org.apache.jackrabbit.oak.spi.security.Context;
@@ -53,13 +52,8 @@ public class PrivilegeConfigurationImpl
//----------------------------------------------< SecurityConfiguration >---
@Nonnull
@Override
- public CommitHookProvider getSecurityHooks() {
- return new CommitHookProvider() {
- @Override
- public CommitHook getCommitHook(String workspaceName) {
- return new JcrAllCommitHook();
- }
- };
+ public List<? extends CommitHook> getCommitHooks(String workspaceName) {
+ return Collections.singletonList(new JcrAllCommitHook());
}
@Nonnull
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/SecurityConfiguration.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/SecurityConfiguration.java?rev=1455656&r1=1455655&r2=1455656&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/SecurityConfiguration.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/SecurityConfiguration.java Tue Mar 12 18:17:16 2013
@@ -23,7 +23,6 @@ import javax.annotation.Nonnull;
import org.apache.jackrabbit.oak.api.PropertyState;
import org.apache.jackrabbit.oak.api.Tree;
import org.apache.jackrabbit.oak.spi.commit.CommitHook;
-import org.apache.jackrabbit.oak.spi.commit.CommitHookProvider;
import org.apache.jackrabbit.oak.spi.commit.ValidatorProvider;
import org.apache.jackrabbit.oak.spi.lifecycle.WorkspaceInitializer;
import org.apache.jackrabbit.oak.spi.query.QueryIndexProvider;
@@ -42,7 +41,7 @@ public interface SecurityConfiguration {
WorkspaceInitializer getWorkspaceInitializer();
@Nonnull
- CommitHookProvider getSecurityHooks();
+ List<? extends CommitHook> getCommitHooks(String workspaceName);
@Nonnull
List<? extends ValidatorProvider> getValidators(String workspaceName);
@@ -78,8 +77,8 @@ public interface SecurityConfiguration {
@Nonnull
@Override
- public CommitHookProvider getSecurityHooks() {
- return new CommitHookProvider.Empty();
+ public List<? extends CommitHook> getCommitHooks(String workspaceName) {
+ return Collections.emptyList();
}
@Nonnull