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]