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/04/14 01:09:11 UTC
svn commit: r1829114 [6/8] - in /aries/trunk/cdi: ./ cdi-extender/
cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/
cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/command/
cdi-extender/src/main/java/org/apache/ari...
Copied: aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFooFooNamed.java (from r1828903, aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooFooNamed.java)
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFooFooNamed.java?p2=aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFooFooNamed.java&p1=aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooFooNamed.java&r1=1828903&r2=1829114&rev=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooFooNamed.java (original)
+++ aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFooFooNamed.java Sat Apr 14 01:09:09 2018
@@ -12,13 +12,15 @@
* limitations under the License.
*/
-package org.apache.aries.cdi.container.test.beans;
+package org.apache.aries.cdi.container.test.beans.ctorstaticreluctant;
import javax.inject.Inject;
+import javax.inject.Named;
+import org.apache.aries.cdi.container.test.beans.Foo;
import org.osgi.service.cdi.annotations.Reference;
public class CtorFooFooNamed {
@Inject
- public CtorFooFooNamed(@Reference(name = "foo_a") Foo foo_a, @Reference(name = "foo_b") Foo foo_b) {}
+ public CtorFooFooNamed(@Reference @Named("foo_a") Foo foo_a, @Reference @Named("foo_b") Foo foo_b) {}
}
\ No newline at end of file
Copied: aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFooNamed.java (from r1828903, aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooNamed.java)
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFooNamed.java?p2=aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFooNamed.java&p1=aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooNamed.java&r1=1828903&r2=1829114&rev=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooNamed.java (original)
+++ aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFooNamed.java Sat Apr 14 01:09:09 2018
@@ -12,13 +12,15 @@
* limitations under the License.
*/
-package org.apache.aries.cdi.container.test.beans;
+package org.apache.aries.cdi.container.test.beans.ctorstaticreluctant;
import javax.inject.Inject;
+import javax.inject.Named;
+import org.apache.aries.cdi.container.test.beans.Foo;
import org.osgi.service.cdi.annotations.Reference;
public class CtorFooNamed {
@Inject
- public CtorFooNamed(@Reference(name = "_foo_") Foo foo) {}
+ public CtorFooNamed(@Reference @Named("_foo_") Foo foo) {}
}
\ No newline at end of file
Copied: aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFooOptional.java (from r1828903, aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooOptional.java)
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFooOptional.java?p2=aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFooOptional.java&p1=aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooOptional.java&r1=1828903&r2=1829114&rev=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorFooOptional.java (original)
+++ aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorFooOptional.java Sat Apr 14 01:09:09 2018
@@ -12,14 +12,16 @@
* limitations under the License.
*/
-package org.apache.aries.cdi.container.test.beans;
+package org.apache.aries.cdi.container.test.beans.ctorstaticreluctant;
+
+import java.util.Optional;
import javax.inject.Inject;
+import org.apache.aries.cdi.container.test.beans.Foo;
import org.osgi.service.cdi.annotations.Reference;
-import org.osgi.service.cdi.annotations.ReferenceCardinality;
public class CtorFooOptional {
@Inject
- public CtorFooOptional(@Reference(cardinality = ReferenceCardinality.OPTIONAL) Foo foo) {}
+ public CtorFooOptional(@Reference Optional<Foo> foo) {}
}
\ No newline at end of file
Copied: aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorListFoo.java (from r1828903, aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorListFoo.java)
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorListFoo.java?p2=aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorListFoo.java&p1=aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorListFoo.java&r1=1828903&r2=1829114&rev=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/CtorListFoo.java (original)
+++ aries/trunk/cdi/cdi-extender/src/test/java/org/apache/aries/cdi/container/test/beans/ctorstaticreluctant/CtorListFoo.java Sat Apr 14 01:09:09 2018
@@ -12,12 +12,13 @@
* limitations under the License.
*/
-package org.apache.aries.cdi.container.test.beans;
+package org.apache.aries.cdi.container.test.beans.ctorstaticreluctant;
import java.util.List;
import javax.inject.Inject;
+import org.apache.aries.cdi.container.test.beans.Foo;
import org.osgi.service.cdi.annotations.Reference;
public class CtorListFoo {
Copied: aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.Bar.xml (from r1828903, aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-badly-annotated.xml)
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.Bar.xml?p2=aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.Bar.xml&p1=aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-badly-annotated.xml&r1=1828903&r2=1829114&rev=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-badly-annotated.xml (original)
+++ aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.Bar.xml Sat Apr 14 01:09:09 2018
@@ -15,6 +15,7 @@
*/
-->
-<beans xmlns:cdi="http://www.osgi.org/xmlns/cdi/v1.0.0">
- <cdi:component class="org.apache.aries.cdi.container.test.beans.BarBadlyAnnotated" />
-</beans>
\ No newline at end of file
+<cdi:bean
+ xmlns:cdi="http://www.osgi.org/xmlns/cdi/v1.0.0"
+ class="org.apache.aries.cdi.container.test.beans.Bar"
+/>
Copied: aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.BarAnnotated.xml (from r1828903, aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-only.xml)
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.BarAnnotated.xml?p2=aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.BarAnnotated.xml&p1=aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-only.xml&r1=1828903&r2=1829114&rev=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-only.xml (original)
+++ aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.BarAnnotated.xml Sat Apr 14 01:09:09 2018
@@ -15,7 +15,6 @@
*/
-->
-<beans xmlns:cdi="http://www.osgi.org/xmlns/cdi/v1.0.0">
- <cdi:component class="org.apache.aries.cdi.container.test.beans.Bar" />
- <cdi:component class="org.apache.aries.cdi.container.test.beans.Foo" />
-</beans>
\ No newline at end of file
+<cdi:bean
+ xmlns:cdi="http://www.osgi.org/xmlns/cdi/v1.0.0"
+ class="org.apache.aries.cdi.container.test.beans.BarAnnotated" />
Copied: aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.BarBadlyAnnotated.xml (from r1828903, aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-annotated.xml)
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.BarBadlyAnnotated.xml?p2=aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.BarBadlyAnnotated.xml&p1=aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-annotated.xml&r1=1828903&r2=1829114&rev=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-annotated.xml (original)
+++ aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.BarBadlyAnnotated.xml Sat Apr 14 01:09:09 2018
@@ -15,7 +15,6 @@
*/
-->
-<beans xmlns:cdi="http://www.osgi.org/xmlns/cdi/v1.0.0">
- <cdi:component class="org.apache.aries.cdi.container.test.beans.BarAnnotated" />
- <cdi:component class="org.apache.aries.cdi.container.test.beans.FooAnnotated" />
-</beans>
\ No newline at end of file
+<cdi:bean
+ xmlns:cdi="http://www.osgi.org/xmlns/cdi/v1.0.0"
+ class="org.apache.aries.cdi.container.test.beans.BarBadlyAnnotated" />
Copied: aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.FooAnnotated.xml (from r1828903, aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-badly-annotated.xml)
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.FooAnnotated.xml?p2=aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.FooAnnotated.xml&p1=aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-badly-annotated.xml&r1=1828903&r2=1829114&rev=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-badly-annotated.xml (original)
+++ aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.FooAnnotated.xml Sat Apr 14 01:09:09 2018
@@ -15,6 +15,6 @@
*/
-->
-<beans xmlns:cdi="http://www.osgi.org/xmlns/cdi/v1.0.0">
- <cdi:component class="org.apache.aries.cdi.container.test.beans.BarBadlyAnnotated" />
-</beans>
\ No newline at end of file
+<cdi:bean
+ xmlns:cdi="http://www.osgi.org/xmlns/cdi/v1.0.0"
+ class="org.apache.aries.cdi.container.test.beans.FooAnnotated" />
Copied: aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.FooService.xml (from r1828903, aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-badly-annotated.xml)
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.FooService.xml?p2=aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.FooService.xml&p1=aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-badly-annotated.xml&r1=1828903&r2=1829114&rev=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/beans-badly-annotated.xml (original)
+++ aries/trunk/cdi/cdi-extender/src/test/resources/OSGI-INF/cdi/org.apache.aries.cdi.container.test.beans.FooService.xml Sat Apr 14 01:09:09 2018
@@ -15,6 +15,6 @@
*/
-->
-<beans xmlns:cdi="http://www.osgi.org/xmlns/cdi/v1.0.0">
- <cdi:component class="org.apache.aries.cdi.container.test.beans.BarBadlyAnnotated" />
-</beans>
\ No newline at end of file
+<cdi:bean
+ xmlns:cdi="http://www.osgi.org/xmlns/cdi/v1.0.0"
+ class="org.apache.aries.cdi.container.test.beans.FooService" />
Modified: aries/trunk/cdi/cdi-extension-http/bnd.bnd
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extension-http/bnd.bnd?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-extension-http/bnd.bnd (original)
+++ aries/trunk/cdi/cdi-extension-http/bnd.bnd Sat Apr 14 01:09:09 2018
@@ -1,5 +1,9 @@
Bundle-Activator: org.apache.aries.cdi.extension.http.Activator
-Provide-Capability: osgi.cdi.extension;osgi.cdi.extension=http;version:Version="${Bundle-Version}"
+Provide-Capability: \
+ osgi.cdi.extension;\
+ osgi.cdi.extension=http;\
+ implementation="org.apache.aries.cdi.extension.http.HttpExtension";\
+ version:Version="${Bundle-Version}"
Require-Capability:\
osgi.implementation;filter:='(&(osgi.implementation=osgi.cdi)(version>=0.0.1)(!(version>=1.0.0)))',\
osgi.implementation;filter:="(&(osgi.implementation=osgi.http)(version>=1.0)(!(version>=2.0)))"
Modified: aries/trunk/cdi/cdi-extension-jndi/bnd.bnd
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-extension-jndi/bnd.bnd?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-extension-jndi/bnd.bnd (original)
+++ aries/trunk/cdi/cdi-extension-jndi/bnd.bnd Sat Apr 14 01:09:09 2018
@@ -1,5 +1,9 @@
Bundle-Activator: org.apache.aries.cdi.extension.jndi.Activator
-Provide-Capability: osgi.cdi.extension;osgi.cdi.extension=jndi;version:Version="${Bundle-Version}"
+Provide-Capability: \
+ osgi.cdi.extension;\
+ osgi.cdi.extension=jndi;\
+ implementation="org.apache.aries.cdi.extension.jndi.JndiExtension";\
+ version:Version="${Bundle-Version}"
Require-Capability:\
osgi.implementation;filter:='(&(osgi.implementation=osgi.cdi)(version>=0.0.1)(!(version>=1.0.0)))'
-contract: JavaCDI
Modified: aries/trunk/cdi/cdi-itests/logback.xml
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/logback.xml?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/logback.xml (original)
+++ aries/trunk/cdi/cdi-itests/logback.xml Sat Apr 14 01:09:09 2018
@@ -14,4 +14,4 @@
<root level="ERROR">
<appender-ref ref="STDOUT" />
</root>
-</configuration>
\ No newline at end of file
+</configuration>
Modified: aries/trunk/cdi/cdi-itests/pom.xml
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/pom.xml?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/pom.xml (original)
+++ aries/trunk/cdi/cdi-itests/pom.xml Sat Apr 14 01:09:09 2018
@@ -104,6 +104,11 @@
<dependencies>
<dependency>
+ <groupId>org.osgi</groupId>
+ <artifactId>org.osgi.util.promise</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
<groupId>org.slf4j</groupId>
<artifactId>log4j-over-slf4j</artifactId>
<version>1.7.25</version>
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/CdiEventObserver.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/CdiEventObserver.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/CdiEventObserver.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/CdiEventObserver.java Sat Apr 14 01:09:09 2018
@@ -17,16 +17,16 @@ package org.apache.aries.cdi.test.beans;
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList;
+import javax.enterprise.context.ApplicationScoped;
import javax.enterprise.event.Observes;
-import javax.inject.Singleton;
+import javax.enterprise.inject.Any;
import org.apache.aries.cdi.test.interfaces.BeanService;
import org.apache.aries.cdi.test.interfaces.CdiEventObserverQualifier;
-import org.osgi.service.cdi.CdiEvent;
@CdiEventObserverQualifier
-@Singleton
-public class CdiEventObserver implements BeanService<List<CdiEvent>> {
+@ApplicationScoped
+public class CdiEventObserver implements BeanService<List<Object>> {
@Override
public String doSomething() {
@@ -34,14 +34,14 @@ public class CdiEventObserver implements
}
@Override
- public List<CdiEvent> get() {
+ public List<Object> get() {
return events;
}
- public void onAnyDocumentEvent(@Observes CdiEvent event) {
+ public void onAnyDocumentEvent(@Observes @Any Object event) {
events.add(event);
}
- private final List<CdiEvent> events = new CopyOnWriteArrayList<>();
+ private final List<Object> events = new CopyOnWriteArrayList<>();
}
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/ConstructorInjectedService.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/ConstructorInjectedService.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/ConstructorInjectedService.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/ConstructorInjectedService.java Sat Apr 14 01:09:09 2018
@@ -19,12 +19,10 @@ import javax.inject.Inject;
import org.apache.aries.cdi.test.interfaces.BeanService;
import org.apache.aries.cdi.test.interfaces.Pojo;
import org.osgi.service.cdi.annotations.Component;
-import org.osgi.service.cdi.annotations.ServiceScope;
+import org.osgi.service.cdi.annotations.Service;
-@Component(
- service = {ConstructorInjectedService.class, BeanService.class},
- scope = ServiceScope.SINGLETON
-)
+@Component
+@Service({ConstructorInjectedService.class, BeanService.class})
public class ConstructorInjectedService implements BeanService<Pojo> {
@Inject
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/FieldInjectedBundleScopedImpl.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/FieldInjectedBundleScopedImpl.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/FieldInjectedBundleScopedImpl.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/FieldInjectedBundleScopedImpl.java Sat Apr 14 01:09:09 2018
@@ -25,13 +25,10 @@ import org.apache.aries.cdi.test.interfa
import org.osgi.framework.ServiceReference;
import org.osgi.service.cdi.annotations.Component;
import org.osgi.service.cdi.annotations.Reference;
-import org.osgi.service.cdi.annotations.ReferenceScope;
-import org.osgi.service.cdi.annotations.ServiceScope;
+import org.osgi.service.cdi.annotations.Service;
-@Component(
- service = {FieldInjectedBundleScopedImpl.class, FieldInjectedReference.class},
- scope = ServiceScope.SINGLETON
-)
+@Component
+@Service({FieldInjectedBundleScopedImpl.class, FieldInjectedReference.class})
public class FieldInjectedBundleScopedImpl implements FieldInjectedReference<BundleScoped> {
@Inject
@@ -39,15 +36,11 @@ public class FieldInjectedBundleScopedIm
private ServiceReference<BundleScoped> genericReference;
@Inject
- @Reference(service = BundleScoped.class, target = "(key=value)")
+ @Reference(value = BundleScoped.class, target = "(key=value)")
private Map<String, Object> properties;
@Inject
- @Reference(
- scope = ReferenceScope.BUNDLE,
- service = BundleScoped.class,
- target = "(key=value)"
- )
+ @Reference(value = BundleScoped.class, target = "(key=value)")
@SuppressWarnings("rawtypes")
private ServiceReference rawReference;
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/FieldInjectedPrototypeScopedImpl.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/FieldInjectedPrototypeScopedImpl.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/FieldInjectedPrototypeScopedImpl.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/FieldInjectedPrototypeScopedImpl.java Sat Apr 14 01:09:09 2018
@@ -25,13 +25,10 @@ import org.apache.aries.cdi.test.interfa
import org.osgi.framework.ServiceReference;
import org.osgi.service.cdi.annotations.Component;
import org.osgi.service.cdi.annotations.Reference;
-import org.osgi.service.cdi.annotations.ReferenceScope;
-import org.osgi.service.cdi.annotations.ServiceScope;
+import org.osgi.service.cdi.annotations.Service;
-@Component(
- service = {FieldInjectedPrototypeScopedImpl.class, FieldInjectedReference.class},
- scope = ServiceScope.SINGLETON
-)
+@Component
+@Service({FieldInjectedPrototypeScopedImpl.class, FieldInjectedReference.class})
public class FieldInjectedPrototypeScopedImpl implements FieldInjectedReference<PrototypeScoped> {
@Inject
@@ -39,15 +36,11 @@ public class FieldInjectedPrototypeScope
private ServiceReference<PrototypeScoped> genericReference;
@Inject
- @Reference(service = PrototypeScoped.class, target = "(key=value)")
+ @Reference(value = PrototypeScoped.class, target = "(key=value)")
private Map<String, Object> properties;
@Inject
- @Reference(
- scope = ReferenceScope.PROTOTYPE,
- service = PrototypeScoped.class,
- target = "(key=value)"
- )
+ @Reference(value = PrototypeScoped.class, target = "(key=value)")
@SuppressWarnings("rawtypes")
private ServiceReference rawReference;
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/FieldInjectedService.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/FieldInjectedService.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/FieldInjectedService.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/FieldInjectedService.java Sat Apr 14 01:09:09 2018
@@ -19,12 +19,10 @@ import javax.inject.Inject;
import org.apache.aries.cdi.test.interfaces.BeanService;
import org.apache.aries.cdi.test.interfaces.Pojo;
import org.osgi.service.cdi.annotations.Component;
-import org.osgi.service.cdi.annotations.ServiceScope;
+import org.osgi.service.cdi.annotations.Service;
-@Component(
- service = {FieldInjectedService.class, BeanService.class},
- scope = ServiceScope.SINGLETON
-)
+@Component
+@Service({FieldInjectedService.class, BeanService.class})
public class FieldInjectedService implements BeanService<Pojo> {
@Override
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/Instance_Optional.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/Instance_Optional.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/Instance_Optional.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/Instance_Optional.java Sat Apr 14 01:09:09 2018
@@ -14,7 +14,7 @@
package org.apache.aries.cdi.test.beans;
-import java.util.Iterator;
+import java.util.Collection;
import java.util.concurrent.Callable;
import javax.enterprise.inject.Instance;
@@ -23,33 +23,33 @@ import javax.inject.Inject;
import org.apache.aries.cdi.test.interfaces.BeanService;
import org.osgi.service.cdi.annotations.Component;
import org.osgi.service.cdi.annotations.Reference;
-import org.osgi.service.cdi.annotations.ReferenceCardinality;
-import org.osgi.service.cdi.annotations.ServiceScope;
+import org.osgi.service.cdi.annotations.Service;
-@Component(
- service = {BeanService.class, Instance_Optional.class},
- scope = ServiceScope.SINGLETON
-)
+@Component
+@Service({BeanService.class, Instance_Optional.class})
+@SuppressWarnings("rawtypes")
public class Instance_Optional implements BeanService<Callable<String>> {
@Override
public String doSomething() {
int count = 0;
- for (Iterator<?> iterator = _instance.iterator();iterator.hasNext();) {
- System.out.println(iterator.next());
+ Collection<Callable> callables = _instance.get();
+ for (Callable callable : callables) {
+ System.out.println(callable);
count++;
}
return String.valueOf(count);
}
@Override
+ @SuppressWarnings("unchecked")
public Callable<String> get() {
- Iterator<Callable<String>> iterator = _instance.iterator();
- return iterator.hasNext() ? iterator.next() : null;
+ Collection<Callable> iterator = _instance.get();
+ return iterator.iterator().next();
}
@Inject
- @Reference(cardinality = ReferenceCardinality.MULTIPLE)
- Instance<Callable<String>> _instance;
+ @Reference
+ Instance<Collection<Callable>> _instance;
}
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/Instance_ServiceProperties.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/Instance_ServiceProperties.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/Instance_ServiceProperties.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/Instance_ServiceProperties.java Sat Apr 14 01:09:09 2018
@@ -19,19 +19,14 @@ import java.util.Map;
import javax.enterprise.inject.Instance;
import javax.inject.Inject;
-import javax.inject.Singleton;
import org.apache.aries.cdi.test.interfaces.BeanService;
-import org.apache.aries.cdi.test.interfaces.SingletonScoped;
import org.osgi.service.cdi.annotations.Component;
import org.osgi.service.cdi.annotations.Reference;
-import org.osgi.service.cdi.annotations.ReferenceCardinality;
-import org.osgi.service.cdi.annotations.ServiceScope;
+import org.osgi.service.cdi.annotations.Service;
-@Component(
- service = {BeanService.class, Instance_ServiceProperties.class},
- scope = ServiceScope.SINGLETON
-)
+@Component
+@Service({BeanService.class, Instance_ServiceProperties.class})
public class Instance_ServiceProperties implements BeanService<Map<String, Object>> {
@Override
@@ -50,7 +45,7 @@ public class Instance_ServiceProperties
}
@Inject
- @Reference(service = SingletonScoped.class)
+ @Reference
Instance<Map<String, Object>> _instance;
}
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/Instance_ServiceReference.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/Instance_ServiceReference.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/Instance_ServiceReference.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/Instance_ServiceReference.java Sat Apr 14 01:09:09 2018
@@ -24,13 +24,10 @@ import org.apache.aries.cdi.test.interfa
import org.osgi.framework.ServiceReference;
import org.osgi.service.cdi.annotations.Component;
import org.osgi.service.cdi.annotations.Reference;
-import org.osgi.service.cdi.annotations.ReferenceCardinality;
-import org.osgi.service.cdi.annotations.ServiceScope;
+import org.osgi.service.cdi.annotations.Service;
-@Component(
- service = {BeanService.class, Instance_ServiceReference.class},
- scope = ServiceScope.SINGLETON
-)
+@Component
+@Service({BeanService.class, Instance_ServiceReference.class})
@SuppressWarnings("rawtypes")
public class Instance_ServiceReference implements BeanService<ServiceReference> {
@@ -50,7 +47,7 @@ public class Instance_ServiceReference i
}
@Inject
- @Reference(service = SingletonScoped.class)
+ @Reference(SingletonScoped.class)
Instance<ServiceReference> _instance;
}
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/MethodInjectedService.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/MethodInjectedService.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/MethodInjectedService.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/MethodInjectedService.java Sat Apr 14 01:09:09 2018
@@ -19,12 +19,10 @@ import javax.inject.Inject;
import org.apache.aries.cdi.test.interfaces.BeanService;
import org.apache.aries.cdi.test.interfaces.Pojo;
import org.osgi.service.cdi.annotations.Component;
-import org.osgi.service.cdi.annotations.ServiceScope;
+import org.osgi.service.cdi.annotations.Service;
-@Component(
- service = {MethodInjectedService.class, BeanService.class},
- scope = ServiceScope.SINGLETON
-)
+@Component
+@Service({MethodInjectedService.class, BeanService.class})
public class MethodInjectedService implements BeanService<Pojo> {
@Inject
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/ServiceWithProperties.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/ServiceWithProperties.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/ServiceWithProperties.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/beans/ServiceWithProperties.java Sat Apr 14 01:09:09 2018
@@ -14,142 +14,51 @@
package org.apache.aries.cdi.test.beans;
-import java.lang.annotation.ElementType;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import javax.inject.Inject;
import javax.inject.Qualifier;
-import javax.inject.Singleton;
-import org.apache.aries.cdi.test.beans.ServiceWithProperties.MoreProperties;
import org.apache.aries.cdi.test.interfaces.BeanService;
import org.apache.aries.cdi.test.interfaces.Pojo;
import org.osgi.service.cdi.annotations.Component;
-import org.osgi.service.cdi.annotations.ServiceScope;
-
-@Component(
- property = {
- "test.key.b1=test.value.b1",
- "test.key.b2=test.value.b2",
-
- "p.Boolean:Boolean=true",
- "p.Boolean.array:Boolean=true",
- "p.Boolean.array:Boolean=false",
-
- "p.Boolean.list:List<Boolean>=false",
- "p.Boolean.list:List<Boolean>=true",
-
- "p.Boolean.set:Set<Boolean>=true",
- "p.Boolean.set:Set<Boolean>=true",
- "p.Boolean.set:Set<Boolean>=false",
-
- "p.Byte:Byte=2",
-
- "p.Byte.array:Byte=2",
- "p.Byte.array:Byte=34",
-
- "p.Byte.list:List<Byte>=34",
- "p.Byte.list:List<Byte>=2",
-
- "p.Byte.set:Set<Byte>=34",
- "p.Byte.set:Set<Byte>=34",
- "p.Byte.set:Set<Byte>=2",
-
- "p.Character:Character=C",
-
- "p.Character.array:Character=C",
- "p.Character.array:Character=D",
-
- "p.Character.list:List<Character>=D",
- "p.Character.list:List<Character>=C",
-
- "p.Character.set:Set<Character>=D",
- "p.Character.set:Set<Character>=D",
- "p.Character.set:Set<Character>=C",
-
- "p.Double:Double=2.5",
-
- "p.Double.array:Double=2.5",
- "p.Double.array:Double=45.678",
-
- "p.Double.list:List<Double>=45.678",
- "p.Double.list:List<Double>=2.5",
-
- "p.Double.set:Set<Double>=45.678",
- "p.Double.set:Set<Double>=45.678",
- "p.Double.set:Set<Double>=2.5",
-
- "p.Float:Float=3.4",
-
- "p.Float.array:Float=3.4",
- "p.Float.array:Float=78.9",
+import org.osgi.service.cdi.annotations.Service;
- "p.Float.list:List<Float>=78.9",
- "p.Float.list:List<Float>=3.4",
-
- "p.Float.set:Set<Float>=78.9",
- "p.Float.set:Set<Float>=78.9",
- "p.Float.set:Set<Float>=3.4",
-
- "p.Integer:Integer=5",
-
- "p.Integer.array:Integer=5",
- "p.Integer.array:Integer=34567",
-
- "p.Integer.list:List<Integer>=34567",
- "p.Integer.list:List<Integer>=5",
-
- "p.Integer.set:Set<Integer>=34567",
- "p.Integer.set:Set<Integer>=34567",
- "p.Integer.set:Set<Integer>=5",
-
- "p.Long:Long=7",
-
- "p.Long.array:Long=7",
- "p.Long.array:Long=7789654",
-
- "p.Long.list:List<Long>=7789654",
- "p.Long.list:List<Long>=7",
-
- "p.Long.set:Set<Long>=7789654",
- "p.Long.set:Set<Long>=7789654",
- "p.Long.set:Set<Long>=7",
-
- "p.Short:Short=25",
-
- "p.Short.array:Short=25",
- "p.Short.array:Short=196",
-
- "p.Short.list:List<Short>=196",
- "p.Short.list:List<Short>=25",
-
- "p.Short.set:Set<Short>=196",
- "p.Short.set:Set<Short>=196",
- "p.Short.set:Set<Short>=25",
-
- "p.String=black",
-
- "p.String.array=black",
- "p.String.array=green",
-
- "p.String.list:List<String>=green",
- "p.String.list:List<String>=black",
-
- "p.String.set:Set<String>=green",
- "p.String.set:Set<String>=green",
- "p.String.set:Set<String>=black"
- },
- service = {ServiceWithProperties.class, BeanService.class},
- scope = ServiceScope.SINGLETON
-)
-@MoreProperties(glub_integer = 45, goo_string = "green")
+@Component
+@Service({ServiceWithProperties.class, BeanService.class})
+@ServiceWithProperties.Props
+@ServiceWithProperties.MoreProperties(glub_integer = 45, goo_string = "green")
public class ServiceWithProperties implements BeanService<Pojo> {
- @Qualifier
- @Retention(value = RetentionPolicy.RUNTIME)
- @Target(value = { ElementType.TYPE })
+ @Qualifier @Retention(RUNTIME) @Target(TYPE)
+ public @interface Props {
+ String test_key_b1() default "test.value.b1";
+ String test_key_b2() default "test.value.b2";
+ boolean p_Boolean() default true;
+ boolean[] p_Boolean_array() default {true, false};
+ byte p_Byte() default 2;
+ byte[] p_Byte_array() default {2, 34};
+ char p_Character() default 'C';
+ char[] p_Character_array() default {'C', 'D'};
+ double p_Double() default 2.5;
+ double[] p_Double_array() default {2.5, 45.678};
+ float p_Float() default 3.4f;
+ float[] p_Float_array() default {3.4f, 78.9f};
+ int p_Integer() default 5;
+ int[] p_Integer_array() default {5, 34567};
+ long p_Long() default 7l;
+ long[] p_Long_array() default {7l, 7789654l};
+ short p_Short() default 25;
+ short[] p_Short_array() default {25, 196};
+ String p_String() default "black";
+ String[] p_String_array() default {"black", "green"};
+ }
+
+ @Qualifier @Retention(RUNTIME) @Target(TYPE )
public @interface MoreProperties {
String goo_string();
int glub_integer();
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/AbstractTestCase.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/AbstractTestCase.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/AbstractTestCase.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/AbstractTestCase.java Sat Apr 14 01:09:09 2018
@@ -19,14 +19,13 @@ import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
+import java.util.concurrent.Callable;
import javax.enterprise.context.spi.CreationalContext;
import javax.enterprise.inject.Any;
import javax.enterprise.inject.spi.Bean;
import javax.enterprise.inject.spi.BeanManager;
-import javax.enterprise.util.AnnotationLiteral;
-import org.apache.aries.cdi.test.interfaces.Pojo;
import org.osgi.framework.Bundle;
import org.osgi.framework.BundleContext;
import org.osgi.framework.Filter;
@@ -36,8 +35,10 @@ import org.osgi.framework.wiring.BundleW
import org.osgi.framework.wiring.BundleWiring;
import org.osgi.namespace.extender.ExtenderNamespace;
import org.osgi.service.cdi.CdiConstants;
-import org.osgi.service.cdi.CdiContainer;
-import org.osgi.service.cdi.CdiEvent;
+import org.osgi.service.cdi.runtime.CdiRuntime;
+import org.osgi.service.cdi.runtime.dto.ContainerDTO;
+import org.osgi.util.promise.Promise;
+import org.osgi.util.promise.PromiseFactory;
import org.osgi.util.tracker.ServiceTracker;
import junit.framework.TestCase;
@@ -50,26 +51,31 @@ public class AbstractTestCase extends Te
servicesBundle.start();
cdiBundle = bundleContext.installBundle("basic-beans.jar" , getBundle("basic-beans.jar"));
cdiBundle.start();
+
+ runtimeTracker = new ServiceTracker<>(bundleContext, CdiRuntime.class, null);
+ runtimeTracker.open();
+ cdiRuntime = runtimeTracker.waitForService(timeout);
}
@Override
protected void tearDown() throws Exception {
+ runtimeTracker.close();
cdiBundle.uninstall();
servicesBundle.uninstall();
}
- void assertPojoExists(BeanManager beanManager) {
- Set<Bean<?>> beans = beanManager.getBeans(Pojo.class, any);
+ void assertBeanExists(Class<?> clazz, BeanManager beanManager) {
+ Set<Bean<?>> beans = beanManager.getBeans(clazz, Any.Literal.INSTANCE);
assertFalse(beans.isEmpty());
Iterator<Bean<?>> iterator = beans.iterator();
Bean<?> bean = iterator.next();
- assertTrue(Pojo.class.isAssignableFrom(bean.getBeanClass()));
+ assertTrue(clazz.isAssignableFrom(bean.getBeanClass()));
assertFalse(iterator.hasNext());
bean = beanManager.resolve(beans);
CreationalContext<?> ctx = beanManager.createCreationalContext(bean);
- Pojo pojo = (Pojo)beanManager.getReference(bean, Pojo.class, ctx);
+ Object pojo = clazz.cast(beanManager.getReference(bean, clazz, ctx));
assertNotNull(pojo);
}
@@ -98,18 +104,6 @@ public class AbstractTestCase extends Te
return null;
}
- ServiceTracker<CdiContainer, CdiContainer> getServiceTracker(long bundleId) throws InvalidSyntaxException {
- Filter filter = bundleContext.createFilter(
- "(&(objectClass=" + CdiContainer.class.getName() + ")(service.bundleid=" + bundleId + ")(" +
- CdiConstants.CDI_CONTAINER_STATE + "=" + CdiEvent.Type.CREATED + "))");
-
- ServiceTracker<CdiContainer, CdiContainer> serviceTracker = new ServiceTracker<>(bundleContext, filter, null);
-
- serviceTracker.open();
-
- return serviceTracker;
- }
-
public Bundle installBundle(String url) throws Exception {
return installBundle(url, true);
}
@@ -124,17 +118,56 @@ public class AbstractTestCase extends Te
return b;
}
- CdiContainer waitForCdiContainer() throws Exception {
- return waitForCdiContainer(bundle.getBundleId());
+ Filter filter(String pattern, Object... objects) {
+ try {
+ return FrameworkUtil.createFilter(String.format(pattern, objects));
+ }
+ catch (InvalidSyntaxException e) {
+ throw new RuntimeException(e.getMessage());
+ }
}
- CdiContainer waitForCdiContainer(long bundleId) throws Exception {
- return getServiceTracker(bundleId).waitForService(timeout);
+ BeanManager getBeanManager(Bundle bundle) throws Exception {
+ return getServiceTracker(bundle).waitForService(timeout);
}
- static final AnnotationLiteral<Any> any = new AnnotationLiteral<Any>() {
- private static final long serialVersionUID = 1L;
- };
+ ServiceTracker<BeanManager, BeanManager> getServiceTracker(Bundle bundle) throws Exception {
+ ServiceTracker<BeanManager, BeanManager> serviceTracker = new ServiceTracker<>(
+ bundleContext,
+ filter(
+ "(&(objectclass=%s)(bundle.id=%d))",
+ BeanManager.class.getName(),
+ bundle.getBundleId()),
+ null);
+ serviceTracker.open();
+ return serviceTracker;
+ }
+
+ Promise<ContainerDTO> getContainerDTO() throws Exception {
+ return getContainerDTO(bundle);
+ }
+
+ Promise<ContainerDTO> getContainerDTO(Bundle bundle) throws Exception {
+ final PromiseFactory factory = new PromiseFactory(
+ PromiseFactory.inlineExecutor());
+
+ Promise<ContainerDTO> promise = factory.submit(new Callable<ContainerDTO>() {
+ @Override
+ public ContainerDTO call() throws Exception {
+ while (!Thread.interrupted()) {
+ ContainerDTO containerDTO = cdiRuntime.getContainerDTO(bundle);
+ if (containerDTO == null) {
+ Thread.sleep(10);
+ continue;
+ }
+ return containerDTO;
+ }
+ return null;
+ }
+ });
+
+ return promise.timeout(timeout);
+ }
static final Bundle bundle = FrameworkUtil.getBundle(CdiBeanTests.class);
static final BundleContext bundleContext = bundle.getBundleContext();
@@ -142,6 +175,8 @@ public class AbstractTestCase extends Te
Bundle cdiBundle;
Bundle servicesBundle;
- CdiContainer cdiContainer;
+ CdiRuntime cdiRuntime;
+ Promise<ContainerDTO> containerDTO;
+ ServiceTracker<CdiRuntime, CdiRuntime> runtimeTracker;
}
\ No newline at end of file
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/CdiBeanTests.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/CdiBeanTests.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/CdiBeanTests.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/CdiBeanTests.java Sat Apr 14 01:09:09 2018
@@ -38,7 +38,7 @@ public class CdiBeanTests extends Abstra
@Override
protected void setUp() throws Exception {
super.setUp();
- cdiContainer = waitForCdiContainer(cdiBundle.getBundleId());
+ containerDTO = getContainerDTO(cdiBundle);
}
public void testConstructorInjectedService() throws Exception {
@@ -232,7 +232,7 @@ public class CdiBeanTests extends Abstra
}
public void testBundleContextInjection() throws Exception {
- BeanManager beanManager = cdiContainer.getBeanManager();
+ BeanManager beanManager = getBeanManager(cdiBundle);
assertNotNull(beanManager);
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/CdiContainerTests.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/CdiContainerTests.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/CdiContainerTests.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/CdiContainerTests.java Sat Apr 14 01:09:09 2018
@@ -17,6 +17,7 @@ package org.apache.aries.cdi.test.cases;
import javax.enterprise.inject.spi.BeanManager;
import javax.enterprise.inject.spi.CDI;
+import org.apache.aries.cdi.test.interfaces.Pojo;
import org.osgi.framework.wiring.BundleWiring;
public class CdiContainerTests extends AbstractTestCase {
@@ -24,14 +25,14 @@ public class CdiContainerTests extends A
@Override
protected void setUp() throws Exception {
super.setUp();
- cdiContainer = waitForCdiContainer(cdiBundle.getBundleId());
+ containerDTO = getContainerDTO(cdiBundle);
}
public void testGetBeanFromCdiContainerService() throws Exception {
- BeanManager beanManager = cdiContainer.getBeanManager();
+ BeanManager beanManager = getBeanManager(cdiBundle);
assertNotNull(beanManager);
- assertPojoExists(beanManager);
+ assertBeanExists(Pojo.class, beanManager);
}
public void testGetBeanManagerFromCDI() throws Exception {
@@ -46,7 +47,7 @@ public class CdiContainerTests extends A
BeanManager beanManager = CDI.current().getBeanManager();
assertNotNull(beanManager);
- assertPojoExists(beanManager);
+ assertBeanExists(Pojo.class, beanManager);
}
finally {
currentThread.setContextClassLoader(contextClassLoader);
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/CdiExtenderTests.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/CdiExtenderTests.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/CdiExtenderTests.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/CdiExtenderTests.java Sat Apr 14 01:09:09 2018
@@ -14,8 +14,9 @@
package org.apache.aries.cdi.test.cases;
+import javax.enterprise.inject.spi.BeanManager;
+
import org.osgi.framework.Bundle;
-import org.osgi.service.cdi.CdiContainer;
import org.osgi.util.tracker.ServiceTracker;
public class CdiExtenderTests extends AbstractTestCase {
@@ -23,7 +24,7 @@ public class CdiExtenderTests extends Ab
public void testStopExtender() throws Exception {
Bundle cdiExtenderBundle = getCdiExtenderBundle();
- ServiceTracker<CdiContainer,CdiContainer> serviceTracker = getServiceTracker(cdiBundle.getBundleId());
+ ServiceTracker<BeanManager,BeanManager> serviceTracker = getServiceTracker(cdiBundle);
try {
assertNotNull(serviceTracker.waitForService(timeout));
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=1829114&r1=1829113&r2=1829114&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 Sat Apr 14 01:09:09 2018
@@ -18,22 +18,10 @@ import static org.junit.Assert.assertArr
import java.util.Dictionary;
import java.util.Hashtable;
-import java.util.Map;
-import java.util.Set;
import java.util.concurrent.Callable;
-import javax.enterprise.context.spi.CreationalContext;
-import javax.enterprise.inject.spi.Bean;
-import javax.enterprise.inject.spi.BeanManager;
-import javax.enterprise.util.TypeLiteral;
-
import org.apache.aries.cdi.test.interfaces.BeanService;
import org.osgi.framework.Bundle;
-import org.osgi.framework.Filter;
-import org.osgi.framework.ServiceReference;
-import org.osgi.service.cdi.CdiConstants;
-import org.osgi.service.cdi.CdiContainer;
-import org.osgi.service.cdi.CdiEvent;
import org.osgi.service.cm.Configuration;
import org.osgi.service.cm.ConfigurationAdmin;
import org.osgi.util.tracker.ServiceTracker;
@@ -47,23 +35,11 @@ public class ConfigurationTests extends
Configuration configurationA = null, configurationB = null;
try {
- Filter filter = bundleContext.createFilter(
- "(&(objectClass=" + CdiContainer.class.getName() + ")(service.bundleid=" + tb3Bundle.getBundleId() + "))");
-
- ServiceTracker<CdiContainer, CdiContainer> containerTracker = new ServiceTracker<>(
- bundleContext, filter, null);
-
- containerTracker.open();
-
- containerTracker.waitForService(timeout);
-
- ServiceReference<CdiContainer> serviceReference = containerTracker.getServiceReference();
-
- assertNotNull(serviceReference);
+ containerDTO = getContainerDTO();
- assertEquals(
- CdiEvent.Type.WAITING_FOR_CONFIGURATIONS,
- serviceReference.getProperty(CdiConstants.CDI_CONTAINER_STATE));
+// assertEquals(
+// WAITING_FOR_CONFIGURATIONS,
+// containerDTO...);
configurationA = configurationAdmin.getConfiguration("org.apache.aries.cdi.test.tb3.ConfigurationBeanA", "?");
@@ -78,17 +54,7 @@ public class ConfigurationTests extends
properties.put("ports", new int[] {80});
configurationB.update(properties);
- containerTracker.close();
-
- filter = bundleContext.createFilter(
- "(&(objectClass=" + CdiContainer.class.getName() + ")(service.bundleid=" + tb3Bundle.getBundleId() +
- ")(" + CdiConstants.CDI_CONTAINER_STATE + "=CREATED))");
-
- containerTracker = new ServiceTracker<>(bundleContext, filter, null);
-
- containerTracker.open();
-
- containerTracker.waitForService(timeout);
+ // after this we should eventually get the bean manager...
ServiceTracker<BeanService, BeanService> stA = new ServiceTracker<BeanService, BeanService>(
bundleContext, bundleContext.createFilter(
@@ -140,15 +106,11 @@ public class ConfigurationTests extends
Configuration configurationC = null;
try {
- Filter filter = bundleContext.createFilter(
- "(&(objectClass=" + CdiContainer.class.getName() + ")(service.bundleid=" + tb5Bundle.getBundleId() +
- ")(" + CdiConstants.CDI_CONTAINER_STATE + "=CREATED))");
-
- ServiceTracker<CdiContainer, CdiContainer> containerTracker = new ServiceTracker<>(bundleContext, filter, null);
-
- containerTracker.open();
+ containerDTO = getContainerDTO();
- containerTracker.waitForService(timeout);
+// assertEquals(
+// SHOULD BE OK,
+// containerDTO...);
ServiceTracker<BeanService, BeanService> stC = new ServiceTracker<BeanService, BeanService>(
bundleContext, bundleContext.createFilter(
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=1829114&r1=1829113&r2=1829114&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 Sat Apr 14 01:09:09 2018
@@ -24,18 +24,17 @@ import javax.enterprise.util.AnnotationL
import org.apache.aries.cdi.test.interfaces.BeanService;
import org.apache.aries.cdi.test.interfaces.CdiEventObserverQualifier;
-import org.osgi.service.cdi.CdiEvent;
public class EventsTests extends AbstractTestCase {
@Override
protected void setUp() throws Exception {
super.setUp();
- cdiContainer = waitForCdiContainer(cdiBundle.getBundleId());
+ containerDTO = getContainerDTO(cdiBundle);
}
public void testEventsGetSent() throws Exception {
- BeanManager beanManager = cdiContainer.getBeanManager();
+ BeanManager beanManager = getBeanManager(cdiBundle);
assertNotNull(beanManager);
@@ -46,8 +45,8 @@ public class EventsTests extends Abstrac
Object bcb = beanManager.getReference(bean, Object.class, ctx);
assertNotNull(bcb);
@SuppressWarnings("unchecked")
- BeanService<List<CdiEvent>> bti = (BeanService<List<CdiEvent>>)bcb;
- List<CdiEvent> list = bti.get();
+ BeanService<List<Object>> bti = (BeanService<List<Object>>)bcb;
+ List<Object> list = bti.get();
assertNotNull(list);
assertEquals(1, list.size());
}
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=1829114&r1=1829113&r2=1829114&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 Sat Apr 14 01:09:09 2018
@@ -14,22 +14,19 @@
package org.apache.aries.cdi.test.cases;
-import java.util.Collection;
import java.util.Hashtable;
import java.util.List;
import javax.enterprise.inject.spi.BeanManager;
import javax.naming.InitialContext;
+import org.apache.aries.cdi.test.interfaces.Pojo;
import org.osgi.framework.Bundle;
import org.osgi.framework.BundleEvent;
-import org.osgi.framework.ServiceReference;
import org.osgi.framework.wiring.BundleCapability;
import org.osgi.framework.wiring.BundleWiring;
import org.osgi.resource.Capability;
-import org.osgi.service.cdi.CdiConstants;
-import org.osgi.service.cdi.CdiContainer;
-import org.osgi.service.cdi.CdiEvent;
+import org.osgi.service.cdi.PortableExtensionNamespace;
import org.osgi.service.jndi.JNDIConstants;
import org.osgi.util.tracker.BundleTracker;
import org.osgi.util.tracker.BundleTrackerCustomizer;
@@ -39,7 +36,7 @@ public class JndiExtensionTests extends
@Override
protected void setUp() throws Exception {
super.setUp();
- cdiContainer = waitForCdiContainer(cdiBundle.getBundleId());
+ containerDTO = getContainerDTO(cdiBundle);
}
public void testGetBeanManagerThroughJNDI() throws Exception {
@@ -50,7 +47,7 @@ public class JndiExtensionTests extends
BeanManager beanManager = (BeanManager)context.lookup("java:comp/BeanManager");
assertNotNull(beanManager);
- assertPojoExists(beanManager);
+ assertBeanExists(Pojo.class, beanManager);
}
public void testDisableExtensionAndCDIContainerWaits() throws Exception {
@@ -60,7 +57,7 @@ public class JndiExtensionTests extends
@Override
public Bundle addingBundle(Bundle bundle, BundleEvent arg1) {
List<BundleCapability> capabilities = bundle.adapt(
- BundleWiring.class).getCapabilities(CdiConstants.CDI_EXTENSION_NAMESPACE);
+ BundleWiring.class).getCapabilities(PortableExtensionNamespace.CDI_EXTENSION_NAMESPACE);
if (capabilities.isEmpty()) {
return null;
@@ -91,33 +88,15 @@ public class JndiExtensionTests extends
Bundle extensionBundle = bt.getBundles()[0];
- Collection<ServiceReference<CdiContainer>> serviceReferences = bundleContext.getServiceReferences(
- CdiContainer.class, "(&(objectClass=" + CdiContainer.class.getName() + ")(service.bundleid=" +
- cdiBundle.getBundleId() + "))");
-
- assertNotNull(serviceReferences);
- assertFalse(serviceReferences.isEmpty());
-
- ServiceReference<CdiContainer> serviceReference = serviceReferences.iterator().next();
-
- CdiEvent.Type state = (CdiEvent.Type)serviceReference.getProperty(
- CdiConstants.CDI_CONTAINER_STATE);
-
- assertEquals(CdiEvent.Type.CREATED, state);
+ // TODO Check that everything is ok...
extensionBundle.stop();
- state = (CdiEvent.Type)serviceReference.getProperty(
- CdiConstants.CDI_CONTAINER_STATE);
-
- assertEquals(CdiEvent.Type.WAITING_FOR_EXTENSIONS, state);
+ // TODO check that CDI bundles dependent on the extension are not not OK
extensionBundle.start();
- state = (CdiEvent.Type)serviceReference.getProperty(
- CdiConstants.CDI_CONTAINER_STATE);
-
- assertEquals(CdiEvent.Type.CREATED, state);
+ // TODO check that they are ok again!
}
}
\ No newline at end of file
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/OSGiBeanDescriptorTests.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/OSGiBeanDescriptorTests.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/OSGiBeanDescriptorTests.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/cases/OSGiBeanDescriptorTests.java Sat Apr 14 01:09:09 2018
@@ -24,7 +24,6 @@ import javax.enterprise.util.TypeLiteral
import org.apache.aries.cdi.test.interfaces.BeanService;
import org.apache.aries.cdi.test.interfaces.Pojo;
import org.osgi.framework.Bundle;
-import org.osgi.service.cdi.CdiContainer;
import org.osgi.util.tracker.ServiceTracker;
public class OSGiBeanDescriptorTests extends AbstractTestCase {
@@ -50,10 +49,8 @@ public class OSGiBeanDescriptorTests ext
Bundle tb1Bundle = installBundle("tb1.jar");
Bundle tb2Bundle = installBundle("tb2.jar");
- CdiContainer cdiContainer = waitForCdiContainer(tb1Bundle.getBundleId());
-
try {
- BeanManager beanManager = cdiContainer.getBeanManager();
+ BeanManager beanManager = getBeanManager(tb1Bundle);
Set<Bean<?>> beans = beanManager.getBeans("beanimpl");
Bean<?> bean = beanManager.resolve(beans);
CreationalContext<?> ctx = beanManager.createCreationalContext(bean);
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb3/ConfigurationBeanA.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb3/ConfigurationBeanA.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb3/ConfigurationBeanA.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb3/ConfigurationBeanA.java Sat Apr 14 01:09:09 2018
@@ -14,22 +14,32 @@
package org.apache.aries.cdi.test.tb3;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
import java.util.concurrent.Callable;
import javax.inject.Inject;
+import javax.inject.Qualifier;
import org.apache.aries.cdi.test.interfaces.BeanService;
import org.osgi.service.cdi.annotations.Component;
import org.osgi.service.cdi.annotations.Configuration;
-import org.osgi.service.cdi.annotations.ConfigurationPolicy;
-import org.osgi.service.cdi.annotations.ServiceScope;
+import org.osgi.service.cdi.annotations.PID;
+import org.osgi.service.cdi.annotations.PID.Policy;
-@Component(
- property = "bean=A",
- scope = ServiceScope.SINGLETON
-)
+@Component
+@PID(policy = Policy.REQUIRED)
+@ConfigurationBeanA.Props
public class ConfigurationBeanA implements BeanService<Callable<int[]>> {
+ @Qualifier @Retention(RUNTIME) @Target(TYPE )
+ public @interface Props {
+ String bean() default "A";
+ }
+
@Override
public String doSomething() {
return config.color();
@@ -45,7 +55,7 @@ public class ConfigurationBeanA implemen
};
}
- @Configuration(configurationPolicy = ConfigurationPolicy.REQUIRE)
+ @Configuration
@Inject
Config config;
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb3/ConfigurationBeanB.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb3/ConfigurationBeanB.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb3/ConfigurationBeanB.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb3/ConfigurationBeanB.java Sat Apr 14 01:09:09 2018
@@ -14,23 +14,34 @@
package org.apache.aries.cdi.test.tb3;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
import java.util.Map;
import java.util.concurrent.Callable;
import javax.inject.Inject;
+import javax.inject.Qualifier;
import org.apache.aries.cdi.test.interfaces.BeanService;
import org.osgi.service.cdi.annotations.Component;
import org.osgi.service.cdi.annotations.Configuration;
-import org.osgi.service.cdi.annotations.ConfigurationPolicy;
-import org.osgi.service.cdi.annotations.ServiceScope;
+import org.osgi.service.cdi.annotations.PID;
+import org.osgi.service.cdi.annotations.PID.Policy;
-@Component(
- property = "bean=B",
- scope = ServiceScope.SINGLETON
-)
+@Component
+@PID(value = "org.apache.aries.cdi.test.tb3.ConfigurationBeanA", policy = Policy.REQUIRED)
+@PID(policy = Policy.REQUIRED)
+@ConfigurationBeanB.Props
public class ConfigurationBeanB implements BeanService<Callable<int[]>> {
+ @Qualifier @Retention(RUNTIME) @Target(TYPE )
+ public @interface Props {
+ String bean() default "B";
+ }
+
@Override
public String doSomething() {
return (String)config.get("color");
@@ -46,10 +57,7 @@ public class ConfigurationBeanB implemen
};
}
- @Configuration(
- configurationPolicy = ConfigurationPolicy.REQUIRE,
- value = {"org.apache.aries.cdi.test.tb3.ConfigurationBeanA", "$"}
- )
+ @Configuration
@Inject
Map<String, Object> config;
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb5/ConfigurationBeanC.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb5/ConfigurationBeanC.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb5/ConfigurationBeanC.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb5/ConfigurationBeanC.java Sat Apr 14 01:09:09 2018
@@ -14,19 +14,31 @@
package org.apache.aries.cdi.test.tb5;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
import java.util.concurrent.Callable;
import javax.inject.Inject;
+import javax.inject.Qualifier;
import org.apache.aries.cdi.test.interfaces.BeanService;
import org.osgi.service.cdi.annotations.Component;
import org.osgi.service.cdi.annotations.Configuration;
-import org.osgi.service.cdi.annotations.ConfigurationPolicy;
-import org.osgi.service.cdi.annotations.ServiceScope;
+import org.osgi.service.cdi.annotations.PID;
-@Component(property = "bean=C", scope = ServiceScope.SINGLETON)
+@Component
+@PID("foo.bar")
+@ConfigurationBeanC.Props
public class ConfigurationBeanC implements BeanService<Callable<int[]>> {
+ @Qualifier @Retention(RUNTIME) @Target(TYPE )
+ public @interface Props {
+ String bean() default "C";
+ }
+
@Override
public String doSomething() {
return config.color();
@@ -42,7 +54,7 @@ public class ConfigurationBeanC implemen
};
}
- @Configuration(value = "foo.bar")
+ @Configuration
@Inject
Config config;
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb6/BarServlet.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb6/BarServlet.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb6/BarServlet.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb6/BarServlet.java Sat Apr 14 01:09:09 2018
@@ -14,10 +14,16 @@
package org.apache.aries.cdi.test.tb6;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
import java.io.IOException;
import java.io.PrintWriter;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
import javax.inject.Inject;
+import javax.inject.Qualifier;
import javax.servlet.Servlet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
@@ -25,19 +31,20 @@ import javax.servlet.http.HttpServletReq
import javax.servlet.http.HttpServletResponse;
import org.osgi.service.cdi.annotations.Component;
-import org.osgi.service.cdi.annotations.ServiceScope;
-import org.osgi.service.http.whiteboard.HttpWhiteboardConstants;
+import org.osgi.service.cdi.annotations.Service;
-@Component(
- property = {
- HttpWhiteboardConstants.HTTP_WHITEBOARD_SERVLET_NAME + "=bar",
- HttpWhiteboardConstants.HTTP_WHITEBOARD_SERVLET_PATTERN + "=/bar"
- },
- service = Servlet.class,
- scope = ServiceScope.SINGLETON
-)
+@Component
+@Service(Servlet.class)
+@BarServlet.Props
public class BarServlet extends HttpServlet {
+ @Qualifier @Retention(RUNTIME) @Target(TYPE )
+ public @interface Props {
+ String osgi_http_whiteboard_servlet_name() default "bar";
+ String osgi_http_whiteboard_servlet_pattern() default "/bar";
+
+ }
+
private static final long serialVersionUID = 1L;
@Override
Modified: aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb6/FooServlet.java
URL: http://svn.apache.org/viewvc/aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb6/FooServlet.java?rev=1829114&r1=1829113&r2=1829114&view=diff
==============================================================================
--- aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb6/FooServlet.java (original)
+++ aries/trunk/cdi/cdi-itests/src/main/java/org/apache/aries/cdi/test/tb6/FooServlet.java Sat Apr 14 01:09:09 2018
@@ -14,10 +14,16 @@
package org.apache.aries.cdi.test.tb6;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
import java.io.IOException;
import java.io.PrintWriter;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
import javax.inject.Inject;
+import javax.inject.Qualifier;
import javax.servlet.Servlet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
@@ -25,19 +31,20 @@ import javax.servlet.http.HttpServletReq
import javax.servlet.http.HttpServletResponse;
import org.osgi.service.cdi.annotations.Component;
-import org.osgi.service.cdi.annotations.ServiceScope;
-import org.osgi.service.http.whiteboard.HttpWhiteboardConstants;
+import org.osgi.service.cdi.annotations.Service;
-@Component(
- property = {
- HttpWhiteboardConstants.HTTP_WHITEBOARD_SERVLET_NAME + "=foo",
- HttpWhiteboardConstants.HTTP_WHITEBOARD_SERVLET_PATTERN + "=/foo"
- },
- service = Servlet.class,
- scope = ServiceScope.SINGLETON
-)
+@Component
+@Service(Servlet.class)
+@FooServlet.Props
public class FooServlet extends HttpServlet {
+ @Qualifier @Retention(RUNTIME) @Target(TYPE )
+ public @interface Props {
+ String osgi_http_whiteboard_servlet_name() default "foo";
+ String osgi_http_whiteboard_servlet_pattern() default "/foo";
+
+ }
+
private static final long serialVersionUID = 1L;
@Override