Author: angela
Date: Thu Nov 30 16:52:38 2017
New Revision: 1816731
URL: http://svn.apache.org/viewvc?rev=1816731&view=rev
Log:
OAK-7011 : Add setter/getter to ConfigurationBase and CompositeConfiguration
Modified:
jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/CompositeConfiguration.java
jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/ConfigurationBase.java
jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/CompositeConfigurationTest.java
jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/ConfigurationBaseTest.java
Modified:
jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/CompositeConfiguration.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/CompositeConfiguration.java?rev=1816731&r1=1816730&r2=1816731&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/CompositeConfiguration.java
(original)
+++
jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/CompositeConfiguration.java
Thu Nov 30 16:52:38 2017
@@ -28,7 +28,6 @@ import javax.annotation.CheckForNull;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
-import org.osgi.annotation.versioning.ProviderType;
import com.google.common.base.Function;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Iterables;
@@ -37,7 +36,9 @@ import com.google.common.collect.ObjectA
import com.google.common.collect.Sets;
import org.apache.jackrabbit.oak.api.PropertyState;
import org.apache.jackrabbit.oak.api.Tree;
+import org.apache.jackrabbit.oak.plugins.tree.RootProvider;
import org.apache.jackrabbit.oak.plugins.tree.TreeLocation;
+import org.apache.jackrabbit.oak.plugins.tree.TreeProvider;
import org.apache.jackrabbit.oak.spi.commit.CommitHook;
import org.apache.jackrabbit.oak.spi.commit.MoveTracker;
import org.apache.jackrabbit.oak.spi.commit.ThreeWayConflictHandler;
@@ -47,6 +48,7 @@ import org.apache.jackrabbit.oak.spi.lif
import org.apache.jackrabbit.oak.spi.lifecycle.RepositoryInitializer;
import org.apache.jackrabbit.oak.spi.lifecycle.WorkspaceInitializer;
import org.apache.jackrabbit.oak.spi.xml.ProtectedItemImporter;
+import org.osgi.annotation.versioning.ProviderType;
import org.osgi.framework.Constants;
/**
@@ -78,6 +80,10 @@ public abstract class CompositeConfigura
private SecurityProvider securityProvider;
+ private RootProvider rootProvider;
+
+ private TreeProvider treeProvider;
+
private T defaultConfig;
public CompositeConfiguration(@Nonnull String name) {
@@ -153,6 +159,30 @@ public abstract class CompositeConfigura
return securityProvider;
}
+ public void setRootProvider(@Nonnull RootProvider rootProvider) {
+ this.rootProvider = rootProvider;
+ }
+
+ @Nonnull
+ protected RootProvider getRootProvider() {
+ if (rootProvider == null) {
+ throw new IllegalStateException("RootProvider missing.");
+ }
+ return rootProvider;
+ }
+
+ public void setTreeProvider(@Nonnull TreeProvider treeProvider) {
+ this.treeProvider = treeProvider;
+ }
+
+ @Nonnull
+ protected TreeProvider getTreeProvider() {
+ if (treeProvider == null) {
+ throw new IllegalStateException("TreeProvider missing.");
+ }
+ return treeProvider;
+ }
+
//----------------------------------------------< SecurityConfiguration
>---
@Nonnull
@Override
@@ -208,12 +238,7 @@ public abstract class CompositeConfigura
@Nonnull
@Override
public List<? extends ValidatorProvider> getValidators(@Nonnull final
String workspaceName, @Nonnull final Set<Principal> principals, @Nonnull final
MoveTracker moveTracker) {
- Iterable<ValidatorProvider> t =
Iterables.concat(Lists.transform(getConfigurations(), new Function<T, List<?
extends ValidatorProvider>>() {
- @Override
- public List<? extends ValidatorProvider> apply(T
securityConfiguration) {
- return securityConfiguration.getValidators(workspaceName,
principals, moveTracker);
- }
- }));
+ Iterable<ValidatorProvider> t =
Iterables.concat(Lists.transform(getConfigurations(), securityConfiguration ->
securityConfiguration.getValidators(workspaceName, principals, moveTracker)));
return ImmutableList.copyOf(t);
}
Modified:
jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/ConfigurationBase.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/ConfigurationBase.java?rev=1816731&r1=1816730&r2=1816731&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/ConfigurationBase.java
(original)
+++
jackrabbit/oak/trunk/oak-security-spi/src/main/java/org/apache/jackrabbit/oak/spi/security/ConfigurationBase.java
Thu Nov 30 16:52:38 2017
@@ -18,6 +18,9 @@ package org.apache.jackrabbit.oak.spi.se
import javax.annotation.Nonnull;
+import org.apache.jackrabbit.oak.plugins.tree.RootProvider;
+import org.apache.jackrabbit.oak.plugins.tree.TreeProvider;
+
/**
* Abstract base implementation for the various security configurations.
*/
@@ -27,6 +30,10 @@ public abstract class ConfigurationBase
private ConfigurationParameters config = ConfigurationParameters.EMPTY;
+ private RootProvider rootProvider;
+
+ private TreeProvider treeProvider;
+
/**
* osgi constructor
*/
@@ -57,6 +64,30 @@ public abstract class ConfigurationBase
this.config = config;
}
+ public void setRootProvider(@Nonnull RootProvider rootProvider) {
+ this.rootProvider = rootProvider;
+ }
+
+ @Nonnull
+ public RootProvider getRootProvider() {
+ if (rootProvider == null) {
+ throw new IllegalStateException("RootProvider missing.");
+ }
+ return rootProvider;
+ }
+
+ public void setTreeProvider(@Nonnull TreeProvider treeProvider) {
+ this.treeProvider = treeProvider;
+ }
+
+ @Nonnull
+ public TreeProvider getTreeProvider() {
+ if (treeProvider == null) {
+ throw new IllegalStateException("TreeProvider missing.");
+ }
+ return treeProvider;
+ }
+
//----------------------------------------------< SecurityConfiguration
>---
@Nonnull
@Override
Modified:
jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/CompositeConfigurationTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/CompositeConfigurationTest.java?rev=1816731&r1=1816730&r2=1816731&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/CompositeConfigurationTest.java
(original)
+++
jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/CompositeConfigurationTest.java
Thu Nov 30 16:52:38 2017
@@ -24,6 +24,8 @@ import javax.annotation.Nullable;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
+import org.apache.jackrabbit.oak.plugins.tree.RootProvider;
+import org.apache.jackrabbit.oak.plugins.tree.TreeProvider;
import org.apache.jackrabbit.oak.spi.commit.CommitHook;
import org.apache.jackrabbit.oak.spi.commit.MoveTracker;
import org.apache.jackrabbit.oak.spi.commit.ThreeWayConflictHandler;
@@ -203,6 +205,38 @@ public class CompositeConfigurationTest
assertSame(securityProvider, cc.getSecurityProvider());
}
+ @Test(expected = IllegalStateException.class)
+ public void testGetRootProviderNotInitialized() {
+ CompositeConfiguration cc = new CompositeConfiguration("name") {};
+ cc.getRootProvider();
+ }
+
+ @Test()
+ public void testSetRootProvider() {
+ CompositeConfiguration cc = new CompositeConfiguration("name") {};
+
+ RootProvider rootProvider = Mockito.mock(RootProvider.class);
+ cc.setRootProvider(rootProvider);
+
+ assertSame(rootProvider, cc.getRootProvider());
+ }
+
+ @Test(expected = IllegalStateException.class)
+ public void testGetTreeProviderNotInitialized() {
+ CompositeConfiguration cc = new CompositeConfiguration("name") {};
+ cc.getTreeProvider();
+ }
+
+ @Test()
+ public void testSetTreeProvider() {
+ CompositeConfiguration cc = new CompositeConfiguration("name") {};
+
+ TreeProvider treeProvider = Mockito.mock(TreeProvider.class);
+ cc.setTreeProvider(treeProvider);
+
+ assertSame(treeProvider, cc.getTreeProvider());
+ }
+
@Test
public void testGetProtectedItemImporters() {
assertTrue(compositeConfiguration.getProtectedItemImporters().isEmpty());
@@ -324,7 +358,7 @@ public class CompositeConfigurationTest
addConfiguration(new SecurityConfiguration.Default());
assertSame(ConfigurationParameters.EMPTY,
compositeConfiguration.getParameters());
- ConfigurationParameters params =
ConfigurationParameters.of("a","valueA", "b", "valueB");
+ ConfigurationParameters params = ConfigurationParameters.of("a",
"valueA", "b", "valueB");
SecurityConfiguration withParams = new SecurityConfiguration.Default()
{
@Nonnull
@Override
@@ -336,7 +370,7 @@ public class CompositeConfigurationTest
assertEquals(ImmutableSet.copyOf(params.keySet()),
ImmutableSet.copyOf(compositeConfiguration.getParameters().keySet()));
- ConfigurationParameters params2 =
ConfigurationParameters.of("a","valueA2", "c", "valueC");
+ ConfigurationParameters params2 = ConfigurationParameters.of("a",
"valueA2", "c", "valueC");
SecurityConfiguration withParams2 = new
SecurityConfiguration.Default() {
@Nonnull
@Override
Modified:
jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/ConfigurationBaseTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/ConfigurationBaseTest.java?rev=1816731&r1=1816730&r2=1816731&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/ConfigurationBaseTest.java
(original)
+++
jackrabbit/oak/trunk/oak-security-spi/src/test/java/org/apache/jackrabbit/oak/spi/security/ConfigurationBaseTest.java
Thu Nov 30 16:52:38 2017
@@ -16,6 +16,8 @@
*/
package org.apache.jackrabbit.oak.spi.security;
+import org.apache.jackrabbit.oak.plugins.tree.RootProvider;
+import org.apache.jackrabbit.oak.plugins.tree.TreeProvider;
import org.junit.Test;
import org.mockito.Mockito;
@@ -39,6 +41,33 @@ public class ConfigurationBaseTest {
assertSame(securityProvider, base.getSecurityProvider());
}
+
+ @Test(expected = IllegalStateException.class)
+ public void testGetRootProvider() {
+ base.getRootProvider();
+ }
+
+ @Test
+ public void testSetRootProvider() {
+ RootProvider rootProvider = Mockito.mock(RootProvider.class);
+ base.setRootProvider(rootProvider);
+
+ assertSame(rootProvider, base.getRootProvider());
+ }
+
+ @Test(expected = IllegalStateException.class)
+ public void testTreeProvider() {
+ base.getTreeProvider();
+ }
+
+ @Test
+ public void testSetTreeProvider() {
+ TreeProvider treeProvider = Mockito.mock(TreeProvider.class);
+ base.setTreeProvider(treeProvider);
+
+ assertSame(treeProvider, base.getTreeProvider());
+ }
+
@Test
public void testGetParameters() {
assertSame(ConfigurationParameters.EMPTY, base.getParameters());