You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by cs...@apache.org on 2015/05/21 18:30:23 UTC

svn commit: r1680922 - in /aries/trunk/blueprint/blueprint-maven-plugin/src: main/java/org/apache/aries/blueprint/plugin/model/ test/java/org/apache/aries/blueprint/plugin/model/ test/java/org/apache/aries/blueprint/plugin/test/

Author: cschneider
Date: Thu May 21 16:30:22 2015
New Revision: 1680922

URL: http://svn.apache.org/r1680922
Log:
[ARIES-1326] Allow to define bean id for service ref

Modified:
    aries/trunk/blueprint/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/model/Context.java
    aries/trunk/blueprint/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/model/OsgiServiceRef.java
    aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/model/BeanTest.java
    aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/model/ContextTest.java
    aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/MyBean3.java
    aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/ServiceReferences.java

Modified: aries/trunk/blueprint/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/model/Context.java
URL: http://svn.apache.org/viewvc/aries/trunk/blueprint/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/model/Context.java?rev=1680922&r1=1680921&r2=1680922&view=diff
==============================================================================
--- aries/trunk/blueprint/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/model/Context.java (original)
+++ aries/trunk/blueprint/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/model/Context.java Thu May 21 16:30:22 2015
@@ -72,7 +72,7 @@ public class Context implements Matcher
         for (Field field : clazz.getDeclaredFields()) {
             OsgiService osgiService = field.getAnnotation(OsgiService.class);
             if (osgiService != null) {
-                serviceRefs.add(new OsgiServiceRef(field.getType(), osgiService));
+                serviceRefs.add(new OsgiServiceRef(field));
             }
         }
     }

Modified: aries/trunk/blueprint/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/model/OsgiServiceRef.java
URL: http://svn.apache.org/viewvc/aries/trunk/blueprint/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/model/OsgiServiceRef.java?rev=1680922&r1=1680921&r2=1680922&view=diff
==============================================================================
--- aries/trunk/blueprint/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/model/OsgiServiceRef.java (original)
+++ aries/trunk/blueprint/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/model/OsgiServiceRef.java Thu May 21 16:30:22 2015
@@ -18,6 +18,8 @@
  */
 package org.apache.aries.blueprint.plugin.model;
 
+import java.lang.reflect.Field;
+
 import org.ops4j.pax.cdi.api.OsgiService;
 
 /**
@@ -27,8 +29,12 @@ public class OsgiServiceRef extends Bean
 
     public String filter;
 
-    public OsgiServiceRef(Class<?> clazz, OsgiService osgiService) {
-        super(clazz);
+    public OsgiServiceRef(Field field) {
+        super(field);
+        if (id == null) {
+            id = getBeanName(clazz);
+        }
+        OsgiService osgiService = field.getAnnotation(OsgiService.class);
         filter = osgiService.filter();
     }
 

Modified: aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/model/BeanTest.java
URL: http://svn.apache.org/viewvc/aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/model/BeanTest.java?rev=1680922&r1=1680921&r2=1680922&view=diff
==============================================================================
--- aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/model/BeanTest.java (original)
+++ aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/model/BeanTest.java Thu May 21 16:30:22 2015
@@ -63,7 +63,7 @@ public class BeanTest {
         assertEquals("There should be no persistence fields", 0, bean.persistenceFields.length);
         assertEquals("*", bean.transactionDef.getMethod());
         assertEquals("RequiresNew", bean.transactionDef.getType());
-        assertEquals(4, bean.properties.size());
+        assertEquals(5, bean.properties.size());
     }
     
     @Test

Modified: aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/model/ContextTest.java
URL: http://svn.apache.org/viewvc/aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/model/ContextTest.java?rev=1680922&r1=1680921&r2=1680922&view=diff
==============================================================================
--- aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/model/ContextTest.java (original)
+++ aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/model/ContextTest.java Thu May 21 16:30:22 2015
@@ -45,7 +45,7 @@ public class ContextTest {
     public void testLists2()  {
         Context context = new Context(ServiceReferences.class);
         Assert.assertEquals(1, context.getBeans().size());
-        Assert.assertEquals(1, context.getServiceRefs().size());
+        Assert.assertEquals(2, context.getServiceRefs().size());
     }
     
     @Test

Modified: aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/MyBean3.java
URL: http://svn.apache.org/viewvc/aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/MyBean3.java?rev=1680922&r1=1680921&r2=1680922&view=diff
==============================================================================
--- aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/MyBean3.java (original)
+++ aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/MyBean3.java Thu May 21 16:30:22 2015
@@ -42,5 +42,9 @@ public class MyBean3 {
     ServiceB serviceB;
     
     @Inject
+    @Named("serviceB2Id")
+    ServiceB serviceB2;
+    
+    @Inject
     MyProduced myProduced;
 }

Modified: aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/ServiceReferences.java
URL: http://svn.apache.org/viewvc/aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/ServiceReferences.java?rev=1680922&r1=1680921&r2=1680922&view=diff
==============================================================================
--- aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/ServiceReferences.java (original)
+++ aries/trunk/blueprint/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/ServiceReferences.java Thu May 21 16:30:22 2015
@@ -20,6 +20,7 @@
 package org.apache.aries.blueprint.plugin.test;
 
 import javax.inject.Inject;
+import javax.inject.Named;
 
 import org.ops4j.pax.cdi.api.OsgiService;
 import org.springframework.stereotype.Component;
@@ -27,4 +28,6 @@ import org.springframework.stereotype.Co
 @Component
 public class ServiceReferences {
     @Inject @OsgiService ServiceB serviceB;
+    
+    @Named("serviceB2Id") @Inject @OsgiService ServiceB serviceB2;
 }