Author: chetanm
Date: Thu Mar 31 12:36:52 2016
New Revision: 1737233
URL: http://svn.apache.org/viewvc?rev=1737233&view=rev
Log:
OAK-4160 - Expose type property for ReferenceEditorProvider
Updated osgi-mock version. This allows it work with multiple reference of same
type but different target
Modified:
jackrabbit/oak/trunk/oak-jcr/pom.xml
jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManager.java
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManagerTest.java
Modified: jackrabbit/oak/trunk/oak-jcr/pom.xml
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/pom.xml?rev=1737233&r1=1737232&r2=1737233&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/pom.xml (original)
+++ jackrabbit/oak/trunk/oak-jcr/pom.xml Thu Mar 31 12:36:52 2016
@@ -360,6 +360,7 @@
<dependency>
<groupId>org.apache.sling</groupId>
<artifactId>org.apache.sling.testing.osgi-mock</artifactId>
+ <version>2.0.2</version>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
Modified:
jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManager.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManager.java?rev=1737233&r1=1737232&r2=1737233&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManager.java
(original)
+++
jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManager.java
Thu Mar 31 12:36:52 2016
@@ -58,16 +58,6 @@ import org.osgi.framework.ServiceRegistr
*/
@Component(policy = ConfigurationPolicy.REQUIRE)
@References({
- @Reference(referenceInterface = IndexEditorProvider.class,
- target = "(type=property)",
- strategy = ReferenceStrategy.LOOKUP,
- name = "propertyIndexEditor"
- ),
- @Reference(referenceInterface = IndexEditorProvider.class,
- target = "(type=reference)",
- strategy = ReferenceStrategy.LOOKUP,
- name = "referenceIndexEditor"
- ),
@Reference(referenceInterface = StatisticsProvider.class,
strategy = ReferenceStrategy.LOOKUP
)
@@ -104,6 +94,12 @@ public class RepositoryManager {
@Reference
private NodeStore store;
+ @Reference(target = "(type=property)")
+ private IndexEditorProvider propertyIndex;
+
+ @Reference(target = "(type=reference)")
+ private IndexEditorProvider referenceIndex;
+
@Property(
intValue = DEFAULT_OBSERVATION_QUEUE_LENGTH,
name = "Observation queue length",
Modified:
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManagerTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManagerTest.java?rev=1737233&r1=1737232&r2=1737233&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManagerTest.java
(original)
+++
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManagerTest.java
Thu Mar 31 12:36:52 2016
@@ -24,7 +24,11 @@ import java.util.concurrent.Executor;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
+import com.google.common.collect.ImmutableMap;
import org.apache.jackrabbit.oak.api.jmx.RepositoryManagementMBean;
+import org.apache.jackrabbit.oak.plugins.index.IndexEditorProvider;
+import
org.apache.jackrabbit.oak.plugins.index.property.PropertyIndexEditorProvider;
+import
org.apache.jackrabbit.oak.plugins.index.reference.ReferenceEditorProvider;
import org.apache.jackrabbit.oak.plugins.memory.MemoryNodeStore;
import org.apache.jackrabbit.oak.spi.security.OpenSecurityProvider;
import org.apache.jackrabbit.oak.spi.security.SecurityProvider;
@@ -38,15 +42,13 @@ import static org.junit.Assert.assertNot
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
-@Ignore("OAK-4160")
public class RepositoryManagerTest {
@Rule
public final OsgiContext context = new OsgiContext();
@Test
public void executorSetup() throws Exception {
- context.registerService(SecurityProvider.class, new
OpenSecurityProvider());
- context.registerService(NodeStore.class, new MemoryNodeStore());
+ registerRequiredServices();
context.registerInjectActivateService(new RepositoryManager());
@@ -69,8 +71,7 @@ public class RepositoryManagerTest {
@Test
public void repositoryShutdown() throws Exception{
- context.registerService(SecurityProvider.class, new
OpenSecurityProvider());
- context.registerService(NodeStore.class, new MemoryNodeStore());
+ registerRequiredServices();
RepositoryManager mgr = context.registerInjectActivateService(new
RepositoryManager());
assertNotNull("MBean should be registered",
context.getService(RepositoryManagementMBean.class));
@@ -82,6 +83,16 @@ public class RepositoryManagerTest {
}
+
+ private void registerRequiredServices() {
+ context.registerService(SecurityProvider.class, new
OpenSecurityProvider());
+ context.registerService(NodeStore.class, new MemoryNodeStore());
+ context.registerService(IndexEditorProvider.class, new
PropertyIndexEditorProvider(),
+ ImmutableMap.<String, Object>of("type", "property"));
+ context.registerService(IndexEditorProvider.class, new
ReferenceEditorProvider(),
+ ImmutableMap.<String, Object>of("type", "reference"));
+ }
+
}