You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by ro...@apache.org on 2018/09/20 19:34:36 UTC
svn commit: r1841503 [2/2] - in /aries/trunk/cdi:
cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/container/
cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/model/
cdi-extender/src/test/java/org/apache/aries/cdi/co...
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/ConfigurationTests.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/ConfigurationTests.java?rev=1841503&r1=1841502&r2=1841503&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/ConfigurationTests.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/ConfigurationTests.java Thu Sep 20 19:34:35 2018
@@ -41,8 +41,6 @@ public class ConfigurationTests extends
@Before
@Override
public void setUp() throws Exception {
- testHeader();
-
runtimeTracker = new ServiceTracker<>(
bundleContext, CDIComponentRuntime.class, null);
runtimeTracker.open();
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/DisableComponentTests.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/DisableComponentTests.java?rev=1841503&r1=1841502&r2=1841503&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/DisableComponentTests.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/DisableComponentTests.java Thu Sep 20 19:34:35 2018
@@ -33,8 +33,6 @@ public class DisableComponentTests exten
@Before
@Override
public void setUp() throws Exception {
- testHeader();
-
adminTracker = new ServiceTracker<>(bundleContext, ConfigurationAdmin.class, null);
adminTracker.open();
configurationAdmin = adminTracker.getService();
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/EventsTests.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/EventsTests.java?rev=1841503&r1=1841502&r2=1841503&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/EventsTests.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/EventsTests.java Thu Sep 20 19:34:35 2018
@@ -32,8 +32,6 @@ public class EventsTests extends Abstrac
@Override
@Before
public void setUp() throws Exception {
- testHeader();
-
cdiRuntime = runtimeTracker.waitForService(timeout);
}
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/FactoryComponentTests.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/FactoryComponentTests.java?rev=1841503&r1=1841502&r2=1841503&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/FactoryComponentTests.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/FactoryComponentTests.java Thu Sep 20 19:34:35 2018
@@ -33,8 +33,6 @@ public class FactoryComponentTests exten
@Before
@Override
public void setUp() throws Exception {
- testHeader();
-
adminTracker = new ServiceTracker<>(bundleContext, ConfigurationAdmin.class, null);
adminTracker.open();
configurationAdmin = adminTracker.getService();
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/JndiExtensionTests.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/JndiExtensionTests.java?rev=1841503&r1=1841502&r2=1841503&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/JndiExtensionTests.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/JndiExtensionTests.java Thu Sep 20 19:34:35 2018
@@ -72,7 +72,7 @@ public class JndiExtensionTests extends
Thread.sleep(20);
}
- assertNull(bmTracker.getService());
+ assertTrue(bmTracker.isEmpty());
trackingCount = bmTracker.getTrackingCount();
@@ -82,7 +82,7 @@ public class JndiExtensionTests extends
Thread.sleep(100);
}
- assertNotNull(bmTracker.getService());
+ assertFalse(bmTracker.isEmpty());
}
}
\ No newline at end of file
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/OptionalReluctantReferenceTests.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/OptionalReluctantReferenceTests.java?rev=1841503&r1=1841502&r2=1841503&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/OptionalReluctantReferenceTests.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/OptionalReluctantReferenceTests.java Thu Sep 20 19:34:35 2018
@@ -35,8 +35,6 @@ public class OptionalReluctantReferenceT
@Override
@Before
public void setUp() throws Exception {
- testHeader();
-
cdiRuntime = runtimeTracker.waitForService(timeout);
}
Added: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/Test152_2.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/Test152_2.java?rev=1841503&view=auto
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/Test152_2.java (added)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/Test152_2.java Thu Sep 20 19:34:35 2018
@@ -0,0 +1,43 @@
+package org.apache.aries.cdi.test.cases;
+
+import static org.assertj.core.api.Assertions.*;
+
+import org.junit.Test;
+import org.osgi.framework.Bundle;
+import org.osgi.service.cdi.runtime.dto.ContainerDTO;
+
+public class Test152_2 extends AbstractTestCase {
+
+ @Test
+ public void checkUniqueComponentNames() throws Exception {
+ Bundle tb152_2Bundle = installBundle("tb152_2.jar");
+
+ try {
+ getBeanManager(tb152_2Bundle);
+
+ ContainerDTO containerDTO = getContainerDTO(cdiRuntime, tb152_2Bundle);
+ assertThat(containerDTO).isNotNull();
+ assertThat(containerDTO.errors).isNotNull().asList().isNotEmpty();
+ }
+ finally {
+ tb152_2Bundle.uninstall();
+ }
+ }
+
+ @Test
+ public void checkUniqueComponentNames_b() throws Exception {
+ Bundle tb152_2bBundle = installBundle("tb152_2b.jar");
+
+ try {
+ getBeanManager(tb152_2bBundle);
+
+ ContainerDTO containerDTO = getContainerDTO(cdiRuntime, tb152_2bBundle);
+ assertThat(containerDTO).isNotNull();
+ assertThat(containerDTO.errors).isNotNull().asList().isNotEmpty();
+ }
+ finally {
+ tb152_2bBundle.uninstall();
+ }
+ }
+
+}
Added: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/Test152_3.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/Test152_3.java?rev=1841503&view=auto
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/Test152_3.java (added)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/Test152_3.java Thu Sep 20 19:34:35 2018
@@ -0,0 +1,60 @@
+package org.apache.aries.cdi.test.cases;
+
+import static org.assertj.core.api.Assertions.*;
+
+import javax.enterprise.context.spi.Context;
+
+import org.apache.aries.cdi.test.interfaces.BeanService;
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.Constants;
+import org.osgi.util.tracker.ServiceTracker;
+
+public class Test152_3 extends AbstractTestCase {
+
+ @BeforeClass
+ public static void beforeClass() throws Exception {
+ }
+
+ @AfterClass
+ public static void afterClass() throws Exception {
+ }
+
+ @Override
+ public void setUp() throws Exception {
+ }
+
+ @After
+ @Override
+ public void tearDown() throws Exception {
+ }
+
+ @Test
+ public void componentScopeContext() throws Exception {
+ Bundle tbBundle = installBundle("tb152_3.jar");
+
+ try {
+ getBeanManager(tbBundle);
+
+ ServiceTracker<Object, Object> oneTracker = track("(&(objectClass=%s)(%s=%s))", BeanService.class.getName(), Constants.SERVICE_DESCRIPTION, "one");
+ oneTracker.open();
+ Object service = oneTracker.waitForService(timeout);
+
+ ServiceTracker<Object, Object> twoTracker = track("(&(objectClass=%s)(%s=%s))", BeanService.class.getName(), Constants.SERVICE_DESCRIPTION, "two");
+ twoTracker.open();
+ twoTracker.waitForService(timeout);
+
+ assertThat(service).isNotNull();
+ BeanService<Context> bs = (BeanService<Context>)service;
+ Context context = bs.get();
+ assertThat(context).isNotNull();
+ }
+ finally {
+ tbBundle.uninstall();
+ }
+ }
+
+}
Added: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/Test152_3_1.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/Test152_3_1.java?rev=1841503&view=auto
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/Test152_3_1.java (added)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/Test152_3_1.java Thu Sep 20 19:34:35 2018
@@ -0,0 +1,273 @@
+package org.apache.aries.cdi.test.cases;
+
+import static org.assertj.core.api.Assertions.*;
+
+import java.util.Hashtable;
+import java.util.concurrent.atomic.AtomicReference;
+import java.util.function.Function;
+
+import javax.enterprise.inject.spi.BeanManager;
+import javax.enterprise.inject.spi.EventMetadata;
+
+import org.apache.aries.cdi.test.interfaces.BeanService;
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.Constants;
+import org.osgi.framework.ServiceRegistration;
+import org.osgi.service.cdi.annotations.ComponentScoped;
+import org.osgi.service.cdi.annotations.Service;
+import org.osgi.service.cm.Configuration;
+import org.osgi.service.cm.ConfigurationAdmin;
+import org.osgi.util.tracker.ServiceTracker;
+
+public class Test152_3_1 extends AbstractTestCase {
+
+ @BeforeClass
+ public static void beforeClass() throws Exception {
+ }
+
+ @AfterClass
+ public static void afterClass() throws Exception {
+ }
+
+ @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();
+ }
+
+ @SuppressWarnings({ "rawtypes", "serial", "unchecked" })
+ @Test
+ public void checkSingleComponentContextEvents() throws Exception {
+ Bundle tb152_3_1Bundle = installBundle("tb152_3_1.jar");
+
+ AtomicReference<Object[]> a = new AtomicReference<>();
+ AtomicReference<Object[]> b = new AtomicReference<>();
+ AtomicReference<Object[]> c = new AtomicReference<>();
+
+ Function onInitialized = (o) -> {
+ Object[] values = (Object[])o;
+ BeanManager bm = (BeanManager)values[1];
+ a.set(new Object[] {values[0], bm.getContext(ComponentScoped.class).isActive(), values[2]});
+ return null;
+ };
+ Function onBeforeDestroyed = (o) -> {
+ Object[] values = (Object[])o;
+ BeanManager bm = (BeanManager)values[1];
+ b.set(new Object[] {values[0], bm.getContext(ComponentScoped.class).isActive(), values[2]});
+ return null;
+ };
+ Function onDestroyed = (o) -> {
+ Object[] values = (Object[])o;
+ BeanManager bm = (BeanManager)values[1];
+ c.set(new Object[] {values[0], bm.getContext(ComponentScoped.class).isActive(), values[2]});
+ return null;
+ };
+
+ ServiceRegistration<Function> onInitializedReg = bundleContext.registerService(
+ Function.class, onInitialized,
+ new Hashtable() {{put(Constants.SERVICE_DESCRIPTION, "onInitialized");}});
+
+ ServiceRegistration<Function> onBeforeDestroyedReg = bundleContext.registerService(
+ Function.class, onBeforeDestroyed,
+ new Hashtable() {{put(Constants.SERVICE_DESCRIPTION, "onBeforeDestroyed");}});
+
+ ServiceRegistration<Function> onDestroyedReg = bundleContext.registerService(
+ Function.class, onDestroyed,
+ new Hashtable() {{put(Constants.SERVICE_DESCRIPTION, "onDestroyed");}});
+
+ try {
+ getBeanManager(tb152_3_1Bundle);
+
+ assertThat(a.get()).isNull();
+ assertThat(b.get()).isNull();
+ assertThat(c.get()).isNull();
+
+ ServiceTracker<Object, Object> twoTracker = track("(&(objectClass=%s)(%s=%s))", BeanService.class.getName(), Constants.SERVICE_DESCRIPTION, "two");
+ twoTracker.open();
+ int trackingCount = twoTracker.getTrackingCount();
+
+ ServiceRegistration<Integer> integerReg = bundleContext.registerService(
+ Integer.class, new Integer(45),
+ new Hashtable() {{put(Constants.SERVICE_DESCRIPTION, "two");}});
+
+ while (trackingCount == twoTracker.getTrackingCount()) {Thread.sleep(50);}
+ trackingCount = twoTracker.getTrackingCount();
+
+ assertThat(a.get()).isNotNull();
+ assertThat(a.get()[0]).satisfies(o -> o.getClass().getName().equals("org.apache.aries.cdi.test.tb152_3_1.Two"));
+ assertThat(a.get()[1]).isEqualTo(true);
+ assertThat(b.get()).isNull();
+ assertThat(c.get()).isNull();
+
+ integerReg.unregister();
+
+ while (trackingCount == twoTracker.getTrackingCount()) {Thread.sleep(50);}
+
+ Object[] objects = a.get();
+ assertThat(objects).isNotNull();
+ assertThat(objects.length).isEqualTo(3);
+ assertThat((BeanService<Integer>)objects[0]).satisfies(bs -> bs.doSomething().equals("POST_CONSTRUCTED"));
+ assertThat(objects[0]).satisfies(o -> o.getClass().getName().equals("org.apache.aries.cdi.test.tb152_3_1.Two"));
+ assertThat(objects[1]).isEqualTo(true);
+ EventMetadata eventMetadata = (EventMetadata)objects[2];
+ assertThat(eventMetadata.getQualifiers()).contains(Service.Literal.of(new Class<?>[0]));
+
+ objects = b.get();
+ assertThat(objects).isNotNull();
+ assertThat(objects.length).isEqualTo(3);
+ assertThat((BeanService<Integer>)objects[0]).satisfies(bs -> bs.doSomething().equals("POST_CONSTRUCTED"));
+ assertThat(objects[0]).satisfies(o -> o.getClass().getName().equals("org.apache.aries.cdi.test.tb152_3_1.Two"));
+ assertThat(objects[1]).isEqualTo(true);
+ eventMetadata = (EventMetadata)objects[2];
+ assertThat(eventMetadata.getQualifiers()).contains(Service.Literal.of(new Class<?>[0]));
+
+ objects = c.get();
+ assertThat(objects).isNotNull();
+ assertThat(objects.length).isEqualTo(3);
+ assertThat((BeanService<Integer>)objects[0]).satisfies(bs -> bs.doSomething().equals("DESTROYED"));
+ assertThat(objects[0]).satisfies(o -> o.getClass().getName().equals("org.apache.aries.cdi.test.tb152_3_1.Two"));
+ assertThat(objects[1]).isEqualTo(true);
+ eventMetadata = (EventMetadata)objects[2];
+ assertThat(eventMetadata.getQualifiers()).contains(Service.Literal.of(new Class<?>[0]));
+ }
+ finally {
+ onInitializedReg.unregister();
+ onBeforeDestroyedReg.unregister();
+ onDestroyedReg.unregister();
+ tb152_3_1Bundle.uninstall();
+ }
+ }
+
+ @SuppressWarnings({ "rawtypes", "serial", "unchecked" })
+ @Test
+ public void checkFactoryComponentContextEvents() throws Exception {
+ Bundle tb152_3_1Bundle = installBundle("tb152_3_1.jar");
+
+ AtomicReference<Object[]> a = new AtomicReference<>();
+ AtomicReference<Object[]> b = new AtomicReference<>();
+ AtomicReference<Object[]> c = new AtomicReference<>();
+
+ Function onInitialized = (o) -> {
+ Object[] values = (Object[])o;
+ BeanManager bm = (BeanManager)values[1];
+ a.set(new Object[] {values[0], bm.getContext(ComponentScoped.class).isActive(), values[2]});
+ return null;
+ };
+ Function onBeforeDestroyed = (o) -> {
+ Object[] values = (Object[])o;
+ BeanManager bm = (BeanManager)values[1];
+ b.set(new Object[] {values[0], bm.getContext(ComponentScoped.class).isActive(), values[2]});
+ return null;
+ };
+ Function onDestroyed = (o) -> {
+ Object[] values = (Object[])o;
+ BeanManager bm = (BeanManager)values[1];
+ c.set(new Object[] {values[0], bm.getContext(ComponentScoped.class).isActive(), values[2]});
+ return null;
+ };
+
+ ServiceRegistration<Function> onInitializedReg = bundleContext.registerService(
+ Function.class, onInitialized,
+ new Hashtable() {{put(Constants.SERVICE_DESCRIPTION, "onInitialized");}});
+
+ ServiceRegistration<Function> onBeforeDestroyedReg = bundleContext.registerService(
+ Function.class, onBeforeDestroyed,
+ new Hashtable() {{put(Constants.SERVICE_DESCRIPTION, "onBeforeDestroyed");}});
+
+ ServiceRegistration<Function> onDestroyedReg = bundleContext.registerService(
+ Function.class, onDestroyed,
+ new Hashtable() {{put(Constants.SERVICE_DESCRIPTION, "onDestroyed");}});
+
+ Configuration configuration = null;
+
+ try {
+ getBeanManager(tb152_3_1Bundle);
+
+ assertThat(a.get()).isNull();
+ assertThat(b.get()).isNull();
+ assertThat(c.get()).isNull();
+
+ ServiceTracker<Object, Object> threeTracker = track("(&(objectClass=%s)(%s=%s))", BeanService.class.getName(), Constants.SERVICE_DESCRIPTION, "three");
+ threeTracker.open();
+ int trackingCount = threeTracker.getTrackingCount();
+
+ ServiceRegistration<Integer> integerReg = bundleContext.registerService(
+ Integer.class, new Integer(45),
+ new Hashtable() {{put(Constants.SERVICE_DESCRIPTION, "three");}});
+
+ int count = 10;
+ while ((count-- > 0) && trackingCount == threeTracker.getTrackingCount()) {Thread.sleep(50);}
+ trackingCount = threeTracker.getTrackingCount();
+
+ assertThat(a.get()).isNull();
+ assertThat(b.get()).isNull();
+ assertThat(c.get()).isNull();
+
+ configuration = configurationAdmin.createFactoryConfiguration("three");
+ configuration.update(new Hashtable() {{put("foo", "bar");}});
+
+ count = 10;
+ while ((count-- > 0) && trackingCount == threeTracker.getTrackingCount()) {Thread.sleep(50);}
+ trackingCount = threeTracker.getTrackingCount();
+
+ assertThat(a.get()).isNotNull();
+ assertThat(a.get()[0]).satisfies(o -> o.getClass().getName().equals("org.apache.aries.cdi.test.tb152_3_1.Three"));
+ assertThat(a.get()[1]).isEqualTo(true);
+ assertThat(b.get()).isNull();
+ assertThat(c.get()).isNull();
+
+ integerReg.unregister();
+
+ while (trackingCount == threeTracker.getTrackingCount()) {Thread.sleep(50);}
+
+ Object[] objects = a.get();
+ assertThat(objects).isNotNull();
+ assertThat(objects.length).isEqualTo(3);
+ assertThat((BeanService<Integer>)objects[0]).satisfies(bs -> bs.doSomething().equals("POST_CONSTRUCTED"));
+ assertThat(objects[0]).satisfies(o -> o.getClass().getName().equals("org.apache.aries.cdi.test.tb152_3_1.Three"));
+ assertThat(objects[1]).isEqualTo(true);
+ EventMetadata eventMetadata = (EventMetadata)objects[2];
+ assertThat(eventMetadata.getQualifiers()).contains(Service.Literal.of(new Class<?>[0]));
+
+ objects = b.get();
+ assertThat(objects).isNotNull();
+ assertThat(objects.length).isEqualTo(3);
+ assertThat((BeanService<Integer>)objects[0]).satisfies(bs -> bs.doSomething().equals("POST_CONSTRUCTED"));
+ assertThat(objects[0]).satisfies(o -> o.getClass().getName().equals("org.apache.aries.cdi.test.tb152_3_1.Three"));
+ assertThat(objects[1]).isEqualTo(true);
+ eventMetadata = (EventMetadata)objects[2];
+ assertThat(eventMetadata.getQualifiers()).contains(Service.Literal.of(new Class<?>[0]));
+
+ objects = c.get();
+ assertThat(objects).isNotNull();
+ assertThat(objects.length).isEqualTo(3);
+ assertThat((BeanService<Integer>)objects[0]).satisfies(bs -> bs.doSomething().equals("DESTROYED"));
+ assertThat(objects[0]).satisfies(o -> o.getClass().getName().equals("org.apache.aries.cdi.test.tb152_3_1.Three"));
+ assertThat(objects[1]).isEqualTo(true);
+ eventMetadata = (EventMetadata)objects[2];
+ assertThat(eventMetadata.getQualifiers()).contains(Service.Literal.of(new Class<?>[0]));
+ }
+ finally {
+ configuration.delete();
+ onInitializedReg.unregister();
+ onBeforeDestroyedReg.unregister();
+ onDestroyedReg.unregister();
+ tb152_3_1Bundle.uninstall();
+ }
+ }
+
+ private ServiceTracker<ConfigurationAdmin, ConfigurationAdmin> adminTracker;
+ private ConfigurationAdmin configurationAdmin;
+
+}
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb10/SingleReferenceEventHandler.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb10/SingleReferenceEventHandler.java?rev=1841503&r1=1841502&r2=1841503&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb10/SingleReferenceEventHandler.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb10/SingleReferenceEventHandler.java Thu Sep 20 19:34:35 2018
@@ -25,6 +25,7 @@ import org.osgi.service.cdi.annotations.
import org.osgi.service.cdi.annotations.Service;
import org.osgi.service.cdi.annotations.SingleComponent;
import org.osgi.service.cdi.reference.BindServiceReference;
+import org.osgi.service.log.Logger;
@Bean
@Service
@@ -32,22 +33,22 @@ import org.osgi.service.cdi.reference.Bi
public class SingleReferenceEventHandler implements Pojo {
@Inject
- void integers(BindServiceReference<Integer> binder) {
+ void integers(BindServiceReference<Integer> binder, Logger logger) {
binder.adding(
sr -> {
- System.out.println("=====ADDING==>>> " + sr + " " + SingleReferenceEventHandler.this);
+ logger.info("=====ADDING==>>> {} {}", sr, SingleReferenceEventHandler.this);
_services.put(sr, "ADDED");
}
).modified(
sr -> {
- System.out.println("=====UPDATING==>>> " + sr + " " + SingleReferenceEventHandler.this);
+ logger.info("=====UPDATING==>>> {} {}", sr, SingleReferenceEventHandler.this);
_services.put(sr, "UPDATED");
}
).removed(
sr -> {
- System.out.println("=====REMOVING==>>> " + sr + " " + SingleReferenceEventHandler.this);
+ logger.info("=====REMOVING==>>> {} {}", sr, SingleReferenceEventHandler.this);
_services.remove(sr);
}
Added: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_2/One.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_2/One.java?rev=1841503&view=auto
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_2/One.java (added)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_2/One.java Thu Sep 20 19:34:35 2018
@@ -0,0 +1,12 @@
+package org.apache.aries.cdi.test.tb152_2;
+
+import javax.inject.Named;
+
+import org.osgi.service.cdi.annotations.Bean;
+import org.osgi.service.cdi.annotations.SingleComponent;
+
+@Bean
+@Named("same")
+@SingleComponent
+public class One {
+}
Added: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_2/Two.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_2/Two.java?rev=1841503&view=auto
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_2/Two.java (added)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_2/Two.java Thu Sep 20 19:34:35 2018
@@ -0,0 +1,12 @@
+package org.apache.aries.cdi.test.tb152_2;
+
+import javax.inject.Named;
+
+import org.osgi.service.cdi.annotations.Bean;
+import org.osgi.service.cdi.annotations.SingleComponent;
+
+@Bean
+@Named("same")
+@SingleComponent
+public class Two {
+}
Added: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_2b/One.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_2b/One.java?rev=1841503&view=auto
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_2b/One.java (added)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_2b/One.java Thu Sep 20 19:34:35 2018
@@ -0,0 +1,9 @@
+package org.apache.aries.cdi.test.tb152_2b;
+
+import org.osgi.service.cdi.annotations.Bean;
+import org.osgi.service.cdi.annotations.SingleComponent;
+
+@Bean
+@SingleComponent
+public class One {
+}
Added: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_2b/Two.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_2b/Two.java?rev=1841503&view=auto
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_2b/Two.java (added)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_2b/Two.java Thu Sep 20 19:34:35 2018
@@ -0,0 +1,12 @@
+package org.apache.aries.cdi.test.tb152_2b;
+
+import javax.inject.Named;
+
+import org.osgi.service.cdi.annotations.Bean;
+import org.osgi.service.cdi.annotations.SingleComponent;
+
+@Bean
+@Named("one")
+@SingleComponent
+public class Two {
+}
Added: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3/One.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3/One.java?rev=1841503&view=auto
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3/One.java (added)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3/One.java Thu Sep 20 19:34:35 2018
@@ -0,0 +1,37 @@
+package org.apache.aries.cdi.test.tb152_3;
+
+import javax.enterprise.context.ApplicationScoped;
+import javax.enterprise.context.Initialized;
+import javax.enterprise.context.spi.Context;
+import javax.enterprise.event.Observes;
+import javax.enterprise.inject.spi.BeanManager;
+
+import org.apache.aries.cdi.test.interfaces.BeanService;
+import org.osgi.service.cdi.annotations.Bean;
+import org.osgi.service.cdi.annotations.ComponentScoped;
+import org.osgi.service.cdi.annotations.Service;
+import org.osgi.service.cdi.propertytypes.ServiceDescription;
+
+@ApplicationScoped
+@Bean
+@Service
+@ServiceDescription("one")
+public class One implements BeanService<Context> {
+
+ private Context _context;
+
+ void onComponent(@Observes @Initialized(ComponentScoped.class) Object obj, BeanManager bm) {
+ _context = bm.getContext(ComponentScoped.class);
+ }
+
+ @Override
+ public String doSomething() {
+ return _context.toString();
+ }
+
+ @Override
+ public Context get() {
+ return _context;
+ }
+
+}
Added: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3/Two.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3/Two.java?rev=1841503&view=auto
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3/Two.java (added)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3/Two.java Thu Sep 20 19:34:35 2018
@@ -0,0 +1,25 @@
+package org.apache.aries.cdi.test.tb152_3;
+
+import org.apache.aries.cdi.test.interfaces.BeanService;
+import org.osgi.service.cdi.annotations.Bean;
+import org.osgi.service.cdi.annotations.Service;
+import org.osgi.service.cdi.annotations.SingleComponent;
+import org.osgi.service.cdi.propertytypes.ServiceDescription;
+
+@Bean
+@Service
+@ServiceDescription("two")
+@SingleComponent
+public class Two implements BeanService<Boolean> {
+
+ @Override
+ public String doSomething() {
+ return "";
+ }
+
+ @Override
+ public Boolean get() {
+ return Boolean.TRUE;
+ }
+
+}
Added: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3_1/One.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3_1/One.java?rev=1841503&view=auto
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3_1/One.java (added)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3_1/One.java Thu Sep 20 19:34:35 2018
@@ -0,0 +1,51 @@
+package org.apache.aries.cdi.test.tb152_3_1;
+
+import java.util.function.Function;
+
+import javax.enterprise.context.ApplicationScoped;
+import javax.enterprise.context.BeforeDestroyed;
+import javax.enterprise.context.Destroyed;
+import javax.enterprise.context.Initialized;
+import javax.enterprise.event.Observes;
+import javax.enterprise.inject.spi.BeanManager;
+import javax.enterprise.inject.spi.EventMetadata;
+import javax.inject.Inject;
+
+import org.osgi.service.cdi.annotations.Bean;
+import org.osgi.service.cdi.annotations.ComponentScoped;
+import org.osgi.service.cdi.annotations.Reference;
+import org.osgi.service.cdi.propertytypes.ServiceDescription;
+
+@ApplicationScoped
+@Bean
+@SuppressWarnings({"rawtypes", "unchecked"})
+public class One {
+
+ @Inject
+ @Reference
+ @ServiceDescription("onInitialized")
+ Function onInitialized;
+
+ @Inject
+ @Reference
+ @ServiceDescription("onBeforeDestroyed")
+ Function onBeforeDestroyed;
+
+ @Inject
+ @Reference
+ @ServiceDescription("onDestroyed")
+ Function onDestroyed;
+
+ void onInitialized(@Observes @Initialized(ComponentScoped.class) Object obj, EventMetadata metadata, BeanManager bm) {
+ onInitialized.apply(new Object[] {obj, bm, metadata});
+ }
+
+ void onBeforeDestroyed(@Observes @BeforeDestroyed(ComponentScoped.class) Object obj, EventMetadata metadata, BeanManager bm) {
+ onBeforeDestroyed.apply(new Object[] {obj, bm, metadata});
+ }
+
+ void onDestroyed(@Observes @Destroyed(ComponentScoped.class) Object obj, EventMetadata metadata, BeanManager bm) {
+ onDestroyed.apply(new Object[] {obj, bm, metadata});
+ }
+
+}
Added: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3_1/Three.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3_1/Three.java?rev=1841503&view=auto
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3_1/Three.java (added)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3_1/Three.java Thu Sep 20 19:34:35 2018
@@ -0,0 +1,50 @@
+package org.apache.aries.cdi.test.tb152_3_1;
+
+import javax.annotation.PostConstruct;
+import javax.annotation.PreDestroy;
+import javax.inject.Inject;
+
+import org.apache.aries.cdi.test.interfaces.BeanService;
+import org.osgi.service.cdi.annotations.Bean;
+import org.osgi.service.cdi.annotations.FactoryComponent;
+import org.osgi.service.cdi.annotations.Reference;
+import org.osgi.service.cdi.annotations.Service;
+import org.osgi.service.cdi.propertytypes.ServiceDescription;
+
+@Bean
+@Service
+@ServiceDescription("three")
+@FactoryComponent
+public class Three implements BeanService<Integer> {
+
+ private volatile String status;
+
+ public Three() {
+ status = "CONSTRUCTED";
+ }
+
+ @Override
+ public String doSomething() {
+ return status;
+ }
+
+ @Override
+ public Integer get() {
+ return number;
+ }
+
+ @PostConstruct
+ void postConstruct() {
+ status = "POST_CONSTRUCTED";
+ }
+
+ @PreDestroy
+ void preDestroy() {
+ status = "DESTROYED";
+ }
+
+ @Inject
+ @Reference
+ @ServiceDescription("three")
+ Integer number;
+}
Added: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3_1/Two.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3_1/Two.java?rev=1841503&view=auto
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3_1/Two.java (added)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb152_3_1/Two.java Thu Sep 20 19:34:35 2018
@@ -0,0 +1,50 @@
+package org.apache.aries.cdi.test.tb152_3_1;
+
+import javax.annotation.PostConstruct;
+import javax.annotation.PreDestroy;
+import javax.inject.Inject;
+
+import org.apache.aries.cdi.test.interfaces.BeanService;
+import org.osgi.service.cdi.annotations.Bean;
+import org.osgi.service.cdi.annotations.Reference;
+import org.osgi.service.cdi.annotations.Service;
+import org.osgi.service.cdi.annotations.SingleComponent;
+import org.osgi.service.cdi.propertytypes.ServiceDescription;
+
+@Bean
+@Service
+@ServiceDescription("two")
+@SingleComponent
+public class Two implements BeanService<Integer> {
+
+ private volatile String status;
+
+ public Two() {
+ status = "CONSTRUCTED";
+ }
+
+ @Override
+ public String doSomething() {
+ return status;
+ }
+
+ @Override
+ public Integer get() {
+ return number;
+ }
+
+ @PostConstruct
+ void postConstruct() {
+ status = "POST_CONSTRUCTED";
+ }
+
+ @PreDestroy
+ void preDestroy() {
+ status = "DESTROYED";
+ }
+
+ @Inject
+ @Reference
+ @ServiceDescription("two")
+ Integer number;
+}
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb9/ContainerReferenceEventHandler.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb9/ContainerReferenceEventHandler.java?rev=1841503&r1=1841502&r2=1841503&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb9/ContainerReferenceEventHandler.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb9/ContainerReferenceEventHandler.java Thu Sep 20 19:34:35 2018
@@ -24,6 +24,7 @@ import org.osgi.framework.ServiceReferen
import org.osgi.service.cdi.annotations.Bean;
import org.osgi.service.cdi.annotations.Service;
import org.osgi.service.cdi.reference.BindServiceReference;
+import org.osgi.service.log.Logger;
@Bean
@ApplicationScoped
@@ -31,22 +32,22 @@ import org.osgi.service.cdi.reference.Bi
public class ContainerReferenceEventHandler implements Pojo {
@Inject
- void integers(BindServiceReference<Integer> binder) {
+ void integers(BindServiceReference<Integer> binder, Logger logger) {
binder.adding(
sr -> {
- System.out.println("=====ADDING==>>> " + sr);
+ logger.info("=====ADDING==>>> {}", sr);
_services.put(sr, "ADDED");
}
).modified(
sr -> {
- System.out.println("=====UPDATING==>>> " + sr);
+ logger.info("=====UPDATING==>>> {}", sr);
_services.put(sr, "UPDATED");
}
).removed(
sr -> {
- System.out.println("=====REMOVING==>>> " + sr);
+ logger.info("=====REMOVING==>>> {}", sr);
_services.remove(sr);
}