ARIES-1958 stabilize
Signed-off-by: Raymond Augé <rotty3000@apache.org>
diff --git a/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ConfigurationListener.java b/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ConfigurationListener.java
index 494de1c..bb54353 100644
--- a/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ConfigurationListener.java
+++ b/cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/ConfigurationListener.java
@@ -73,7 +73,10 @@
@Override
public boolean close() {
try (Syncro open = syncro.open()) {
- if (_listenerService != null) {
+ if (_listenerService == null) {
+ return true;
+ }
+ else {
_listenerService.unregister();
_listenerService = null;
}
@@ -131,6 +134,10 @@
@Override
public boolean open() {
try (Syncro open = syncro.open()) {
+ if (_listenerService != null) {
+ return true;
+ }
+
if (containerState.bundleContext() == null) {
// this bundle was already removed
return false;
diff --git a/cdi-itests/owb-itest.bndrun b/cdi-itests/owb-itest.bndrun
index d219c54..20c12d2 100644
--- a/cdi-itests/owb-itest.bndrun
+++ b/cdi-itests/owb-itest.bndrun
@@ -65,5 +65,7 @@
org.apache.xbean.finder-shaded;version='[4.13.0,4.13.1)',\
org.osgi.service.cdi;version='[1.0.0,1.0.1)',\
org.osgi.service.jaxrs;version='[1.0.0,1.0.1)',\
+ org.osgi.test.common;version='[1.0.0,1.0.1)',\
+ org.osgi.test.junit4;version='[1.0.0,1.0.1)',\
org.osgi.util.function;version='[1.1.0,1.1.1)',\
org.osgi.util.promise;version='[1.1.0,1.1.1)'
diff --git a/cdi-itests/pom.xml b/cdi-itests/pom.xml
index c59681a..d186a37 100644
--- a/cdi-itests/pom.xml
+++ b/cdi-itests/pom.xml
@@ -141,6 +141,11 @@
<groupId>org.osgi</groupId>
<artifactId>osgi.core</artifactId>
</dependency>
+ <dependency>
+ <groupId>org.osgi</groupId>
+ <artifactId>org.osgi.test.junit4</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ </dependency>
<!-- RUNTIME dependencies not found in BOMs -->
<dependency>
@@ -291,4 +296,15 @@
</plugin>
</plugins>
</build>
+
+ <repositories>
+ <repository>
+ <id>Sonatype OSSR</id>
+ <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
+ <layout>default</layout>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ </repository>
+ </repositories>
</project>
diff --git a/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/DisableComponentTests.java b/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/DisableComponentTests.java
index e260dd9..0f019c2 100644
--- a/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/DisableComponentTests.java
+++ b/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/DisableComponentTests.java
@@ -14,7 +14,8 @@
package org.apache.aries.cdi.test.cases;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
import java.util.Dictionary;
import java.util.Hashtable;
@@ -22,26 +23,26 @@
import org.apache.aries.cdi.test.interfaces.Pojo;
import org.junit.After;
import org.junit.Before;
+import org.junit.Rule;
import org.junit.Test;
import org.osgi.framework.Bundle;
import org.osgi.service.cm.Configuration;
import org.osgi.service.cm.ConfigurationAdmin;
-import org.osgi.util.tracker.ServiceTracker;
+import org.osgi.test.junit4.service.ServiceUseRule;
-public class DisableComponentTests extends AbstractTestCase {
+public class DisableComponentTests extends AbstractTestCase {
+
+ @Rule
+ public ServiceUseRule<ConfigurationAdmin> car = new ServiceUseRule.Builder<ConfigurationAdmin>(ConfigurationAdmin.class).build();
@Before
@Override
public void setUp() throws Exception {
- adminTracker = new ServiceTracker<>(bundleContext, ConfigurationAdmin.class, null);
- adminTracker.open();
- configurationAdmin = adminTracker.getService();
}
@After
@Override
public void tearDown() throws Exception {
- adminTracker.close();
}
@Test
@@ -61,7 +62,7 @@
Configuration configurationA = null;
try {
- configurationA = configurationAdmin.getConfiguration("osgi.cdi.cdi.itests.tb8", "?");
+ configurationA = car.getService().getConfiguration("osgi.cdi.cdi.itests.tb8", "?");
Dictionary<String, Object> p1 = new Hashtable<>();
p1.put("cdi-itests.tb8.enabled", false);
@@ -120,7 +121,7 @@
Configuration configurationA = null;
try {
- configurationA = configurationAdmin.getConfiguration("osgi.cdi.cdi.itests.tb8", "?");
+ configurationA = car.getService().getConfiguration("osgi.cdi.cdi.itests.tb8", "?");
Dictionary<String, Object> p1 = new Hashtable<>();
p1.put("singleComponentBean.enabled", false);
@@ -162,7 +163,4 @@
}
}
- private ServiceTracker<ConfigurationAdmin, ConfigurationAdmin> adminTracker;
- private ConfigurationAdmin configurationAdmin;
-
}
diff --git a/cdi-itests/weld-itest.bndrun b/cdi-itests/weld-itest.bndrun
index 2f42ebe..136b9c0 100644
--- a/cdi-itests/weld-itest.bndrun
+++ b/cdi-itests/weld-itest.bndrun
@@ -73,5 +73,7 @@
org.jboss.weld.osgi-bundle;version='[3.0.5,3.0.6)',\
org.osgi.service.cdi;version='[1.0.0,1.0.1)',\
org.osgi.service.jaxrs;version='[1.0.0,1.0.1)',\
+ org.osgi.test.common;version='[1.0.0,1.0.1)',\
+ org.osgi.test.junit4;version='[1.0.0,1.0.1)',\
org.osgi.util.function;version='[1.1.0,1.1.1)',\
org.osgi.util.promise;version='[1.1.0,1.1.1)'