Author: antelder
Date: Thu Apr 17 05:28:33 2008
New Revision: 649061

URL: http://svn.apache.org/viewvc?rev=649061&view=rev
Log:
TUSCANY-2165: apply patch from Vamsavardhana Reddy for Java runtime should 
inject service references to field with common name in absence of @Reference

Modified:
    
incubator/tuscany/java/sca/modules/implementation-java-runtime/src/main/java/org/apache/tuscany/sca/implementation/java/invocation/JavaComponentContextProvider.java

Modified: 
incubator/tuscany/java/sca/modules/implementation-java-runtime/src/main/java/org/apache/tuscany/sca/implementation/java/invocation/JavaComponentContextProvider.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-java-runtime/src/main/java/org/apache/tuscany/sca/implementation/java/invocation/JavaComponentContextProvider.java?rev=649061&r1=649060&r2=649061&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/implementation-java-runtime/src/main/java/org/apache/tuscany/sca/implementation/java/invocation/JavaComponentContextProvider.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/implementation-java-runtime/src/main/java/org/apache/tuscany/sca/implementation/java/invocation/JavaComponentContextProvider.java
 Thu Apr 17 05:28:33 2008
@@ -18,10 +18,12 @@
  */
 package org.apache.tuscany.sca.implementation.java.invocation;
 
+import java.lang.annotation.ElementType;
 import java.lang.reflect.Constructor;
 import java.lang.reflect.Field;
 import java.lang.reflect.Member;
 import java.lang.reflect.Method;
+import java.lang.reflect.Modifier;
 import java.lang.reflect.Type;
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -172,7 +174,16 @@
                 
instanceFactoryProvider.getImplementation().getReferenceMembers().get(ref.getName());
             if (element != null) {
                 if (!(element.getAnchor() instanceof Constructor)) {
-                    instanceFactoryProvider.getInjectionSites().add(element);
+                    if(element.getElementType() == ElementType.FIELD) {
+                        Field field = (Field)element.getAnchor();
+                        if(Modifier.isPublic(field.getModifiers())) {
+                            
instanceFactoryProvider.getInjectionSites().add(element);
+                        } else 
if(field.getAnnotation(org.osoa.sca.annotations.Reference.class) != null) {
+                            
instanceFactoryProvider.getInjectionSites().add(element);
+                        }
+                    } else {
+                        
instanceFactoryProvider.getInjectionSites().add(element);
+                    }
                 }
                 ComponentReference componentReference = null;
                 List<RuntimeWire> wireList = null;



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to