You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by rf...@apache.org on 2007/10/16 02:47:38 UTC

svn commit: r584985 - in /incubator/tuscany/java/sca/modules/implementation-java/src: main/java/org/apache/tuscany/sca/implementation/java/impl/ main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ test/java/org/apache/tuscany/sca/impl...

Author: rfeng
Date: Mon Oct 15 17:47:36 2007
New Revision: 584985

URL: http://svn.apache.org/viewvc?rev=584985&view=rev
Log:
Limit the method injection to setters and allow the setter annotation to override field annotation

Modified:
    incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/impl/JavaClassIntrospectorImpl.java
    incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/AbstractPropertyProcessor.java
    incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/HeuristicPojoProcessor.java
    incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/JavaIntrospectionHelper.java
    incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/PropertyProcessor.java
    incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ReferenceProcessor.java
    incubator/tuscany/java/sca/modules/implementation-java/src/test/java/org/apache/tuscany/sca/implementation/java/introspect/impl/PropertyProcessorTestCase.java
    incubator/tuscany/java/sca/modules/implementation-java/src/test/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ReferenceProcessorTestCase.java

Modified: incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/impl/JavaClassIntrospectorImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/impl/JavaClassIntrospectorImpl.java?rev=584985&r1=584984&r2=584985&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/impl/JavaClassIntrospectorImpl.java (original)
+++ incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/impl/JavaClassIntrospectorImpl.java Mon Oct 15 17:47:36 2007
@@ -86,17 +86,17 @@
             }
         }
 
-        Set<Method> methods = JavaIntrospectionHelper.getAllUniquePublicProtectedMethods(clazz, true);
-        for (Method method : methods) {
-            for (JavaClassVisitor processor : visitors) {
-                processor.visitMethod(method, type);
-            }
-        }
-
         Set<Field> fields = JavaIntrospectionHelper.getAllPublicAndProtectedFields(clazz, true);
         for (Field field : fields) {
             for (JavaClassVisitor extension : visitors) {
                 extension.visitField(field, type);
+            }
+        }
+        
+        Set<Method> methods = JavaIntrospectionHelper.getAllUniquePublicProtectedMethods(clazz, true);
+        for (Method method : methods) {
+            for (JavaClassVisitor processor : visitors) {
+                processor.visitMethod(method, type);
             }
         }
 

Modified: incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/AbstractPropertyProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/AbstractPropertyProcessor.java?rev=584985&r1=584984&r2=584985&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/AbstractPropertyProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/AbstractPropertyProcessor.java Mon Oct 15 17:47:36 2007
@@ -19,9 +19,11 @@
 package org.apache.tuscany.sca.implementation.java.introspect.impl;
 
 import java.lang.annotation.Annotation;
+import java.lang.annotation.ElementType;
 import java.lang.reflect.Field;
 import java.lang.reflect.Method;
 import java.util.Collection;
+import java.util.List;
 import java.util.Map;
 
 import org.apache.tuscany.sca.assembly.AssemblyFactory;
@@ -40,11 +42,25 @@
  */
 public abstract class AbstractPropertyProcessor<A extends Annotation> extends BaseJavaClassVisitor {
     private final Class<A> annotationClass;
-    
+
     protected AbstractPropertyProcessor(AssemblyFactory assemblyFactory, Class<A> annotationClass) {
         super(assemblyFactory);
         this.annotationClass = annotationClass;
     }
+    
+    private boolean removeProperty(JavaElementImpl prop, JavaImplementation type) {
+        if(prop==null) {
+            return false;
+        }
+        List<Property> props = type.getProperties();
+        for(int i=0;i<props.size();i++) {
+            if(props.get(i).getName().equals(prop.getName())) {
+                props.remove(i);
+                return true;
+            }
+        }
+        return false;
+    }
 
     @Override
     public void visitMethod(Method method, JavaImplementation type) throws IntrospectionException {
@@ -53,12 +69,8 @@
             return;
         }
 
-        if (!Void.TYPE.equals(method.getReturnType())) {
-            throw new IllegalPropertyException("Method does not have void return type", method);
-        }
-        Class[] paramTypes = method.getParameterTypes();
-        if (paramTypes.length != 1) {
-            throw new IllegalPropertyException("Method must have a single parameter", method);
+        if (!JavaIntrospectionHelper.isSetter(method)) {
+            throw new IllegalPropertyException("Annotated method is not a setter: " + method, method);
         }
 
         String name = getName(annotation);
@@ -70,10 +82,14 @@
         }
 
         Map<String, JavaElementImpl> properties = type.getPropertyMembers();
-        if (properties.containsKey(name)) {
+        JavaElementImpl prop = properties.get(name);
+        // Setter override field
+        if (prop != null && prop.getElementType() != ElementType.FIELD) {
             throw new DuplicatePropertyException(name);
         }
 
+        removeProperty(prop, type);
+        
         JavaElementImpl element = new JavaElementImpl(method, 0);
         Property property = createProperty(name, element);
 
@@ -101,15 +117,19 @@
         }
 
         Map<String, JavaElementImpl> properties = type.getPropertyMembers();
-        if (properties.containsKey(name)) {
+        JavaElementImpl prop = properties.get(name);
+        // Setter override field
+        if (prop != null && prop.getElementType() == ElementType.FIELD) {
             throw new DuplicatePropertyException(name);
         }
 
-        JavaElementImpl element = new JavaElementImpl(field);
-        Property property = createProperty(name, element);
-        initProperty(property, annotation);
-        type.getProperties().add(property);
-        properties.put(name, element);    
+        if (prop == null) {
+            JavaElementImpl element = new JavaElementImpl(field);
+            Property property = createProperty(name, element);
+            initProperty(property, annotation);
+            type.getProperties().add(property);
+            properties.put(name, element);
+        }
     }
 
     @Override
@@ -133,9 +153,13 @@
                 name = parameter.getName();
             }
 
-            if (properties.containsKey(name)) {
-                throw new DuplicatePropertyException("Duplication property: " + name);
+            JavaElementImpl prop = properties.get(name);
+            // Setter override field
+            if (prop != null && prop.getElementType() != ElementType.FIELD) {
+                throw new DuplicatePropertyException(name);
             }
+            removeProperty(prop, type);
+            
             parameter.setName(name);
             parameter.setClassifer(annotationClass);
             Property property = createProperty(name, parameter);
@@ -150,7 +174,7 @@
     protected abstract void initProperty(Property property, A annotation) throws IntrospectionException;
 
     @SuppressWarnings("unchecked")
-    protected  Property createProperty(String name, JavaElementImpl element) throws IntrospectionException {
+    protected Property createProperty(String name, JavaElementImpl element) throws IntrospectionException {
 
         Property property = assemblyFactory.createProperty();
         property.setName(name);

Modified: incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/HeuristicPojoProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/HeuristicPojoProcessor.java?rev=584985&r1=584984&r2=584985&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/HeuristicPojoProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/HeuristicPojoProcessor.java Mon Oct 15 17:47:36 2007
@@ -73,8 +73,7 @@
 public class HeuristicPojoProcessor extends BaseJavaClassVisitor {
     private JavaInterfaceFactory javaFactory;
 
-    public HeuristicPojoProcessor(AssemblyFactory assemblyFactory,
-                                  JavaInterfaceFactory javaFactory) {
+    public HeuristicPojoProcessor(AssemblyFactory assemblyFactory, JavaInterfaceFactory javaFactory) {
         super(assemblyFactory);
         this.javaFactory = javaFactory;
     }
@@ -97,12 +96,12 @@
              * is the implementation class.
              */
             Set<Class> interfaces = getAllInterfaces(clazz);
-            for(Class<?> i: interfaces) {
-                if(i.isAnnotationPresent(Remotable.class)) {
+            for (Class<?> i : interfaces) {
+                if (i.isAnnotationPresent(Remotable.class)) {
                     addService(type, i);
                 }
             }
-            if(services.isEmpty()) {
+            if (services.isEmpty()) {
                 // class is the interface
                 addService(type, clazz);
             }
@@ -110,12 +109,12 @@
         Set<Method> methods = getAllUniquePublicProtectedMethods(clazz, false);
         if (!type.getReferenceMembers().isEmpty() || !type.getPropertyMembers().isEmpty()) {
             // references and properties have been explicitly defined
-//            if (type.getServices().isEmpty()) {
-//                calculateServiceInterface(clazz, type, methods);
-//                if (type.getServices().isEmpty()) {
-//                    throw new ServiceTypeNotFoundException(clazz.getName());
-//                }
-//            }
+            //            if (type.getServices().isEmpty()) {
+            //                calculateServiceInterface(clazz, type, methods);
+            //                if (type.getServices().isEmpty()) {
+            //                    throw new ServiceTypeNotFoundException(clazz.getName());
+            //                }
+            //            }
             evaluateConstructor(type, clazz);
             return;
         }
@@ -134,14 +133,14 @@
 
     private boolean isPublicSetter(Method method) {
         return method.getParameterTypes().length == 1 && Modifier.isPublic(method.getModifiers())
-               && method.getName().startsWith("set")
-               && method.getReturnType() == void.class;
+            && method.getName().startsWith("set")
+            && method.getReturnType() == void.class;
     }
 
     private boolean isProtectedSetter(Method method) {
         return method.getParameterTypes().length == 1 && Modifier.isProtected(method.getModifiers())
-               && method.getName().startsWith("set")
-               && method.getReturnType() == void.class;
+            && method.getName().startsWith("set")
+            && method.getReturnType() == void.class;
     }
 
     private <T> void calcPropRefs(Set<Method> methods,
@@ -188,11 +187,13 @@
             String name = toPropertyName(method.getName());
             setters.add(name);
             // avoid duplicate property or ref names
-            if (!type.getPropertyMembers().containsKey(name) && !type.getReferenceMembers().containsKey(name)) {
-                if (isReferenceType(param, method.getGenericParameterTypes()[0])) {
+            if (isReferenceType(param, method.getGenericParameterTypes()[0])) {
+                if (!type.getReferenceMembers().containsKey(name)) {
                     type.getReferences().add(createReference(name, param));
                     type.getReferenceMembers().put(name, new JavaElementImpl(method, 0));
-                } else {
+                }
+            } else {
+                if (!type.getPropertyMembers().containsKey(name)) {
                     type.getProperties().add(createProperty(name, param));
                     type.getPropertyMembers().put(name, new JavaElementImpl(method, 0));
                 }
@@ -213,11 +214,15 @@
             String name = field.getName();
             Class<?> paramType = field.getType();
             if (isReferenceType(paramType, field.getGenericType())) {
-                type.getReferences().add(createReference(name, paramType));
-                type.getReferenceMembers().put(name, new JavaElementImpl(field));
+                if (!type.getReferenceMembers().containsKey(name)) {
+                    type.getReferences().add(createReference(name, paramType));
+                    type.getReferenceMembers().put(name, new JavaElementImpl(field));
+                }
             } else {
-                type.getProperties().add(createProperty(name, paramType));
-                type.getPropertyMembers().put(name, new JavaElementImpl(field));
+                if (!type.getPropertyMembers().containsKey(name)) {
+                    type.getProperties().add(createProperty(name, paramType));
+                    type.getPropertyMembers().put(name, new JavaElementImpl(field));
+                }
             }
         }
     }
@@ -239,7 +244,7 @@
         Constructor constructor;
         boolean explict = false;
         if (definition != null && definition.getConstructor()
-                .isAnnotationPresent(org.osoa.sca.annotations.Constructor.class)) {
+            .isAnnotationPresent(org.osoa.sca.annotations.Constructor.class)) {
             // the constructor was already defined explicitly
             return;
         } else if (definition != null) {
@@ -452,7 +457,7 @@
     private boolean isReferenceType(Class<?> cls, Type genericType) {
         Class<?> baseType = JavaIntrospectionHelper.getBaseType(cls, genericType);
         return baseType.isInterface() && (baseType.isAnnotationPresent(Remotable.class) || baseType
-                   .isAnnotationPresent(Service.class));
+            .isAnnotationPresent(Service.class));
     }
 
     /**

Modified: incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/JavaIntrospectionHelper.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/JavaIntrospectionHelper.java?rev=584985&r1=584984&r2=584985&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/JavaIntrospectionHelper.java (original)
+++ incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/JavaIntrospectionHelper.java Mon Oct 15 17:47:36 2007
@@ -491,5 +491,14 @@
             getAllInterfaces(superClass, implemented);
         }
     }
+    
+    public static boolean isSetter(Method method) {
+        return (void.class == method.getReturnType() && method.getParameterTypes().length == 1 && method.getName()
+            .startsWith("set"));
+    }
 
+    public static boolean isGetter(Method method) {
+        return (void.class != method.getReturnType() && method.getParameterTypes().length == 0 && method.getName()
+            .startsWith("get"));
+    }    
 }

Modified: incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/PropertyProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/PropertyProcessor.java?rev=584985&r1=584984&r2=584985&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/PropertyProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/PropertyProcessor.java Mon Oct 15 17:47:36 2007
@@ -28,7 +28,7 @@
  * @version $Rev$ $Date$
  */
 public class PropertyProcessor extends AbstractPropertyProcessor<Property> {
-    
+
     public PropertyProcessor(AssemblyFactory assemblyFactory) {
         super(assemblyFactory, Property.class);
     }

Modified: incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ReferenceProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ReferenceProcessor.java?rev=584985&r1=584984&r2=584985&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ReferenceProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ReferenceProcessor.java Mon Oct 15 17:47:36 2007
@@ -20,10 +20,12 @@
 
 import static org.apache.tuscany.sca.implementation.java.introspect.impl.JavaIntrospectionHelper.getBaseType;
 
+import java.lang.annotation.ElementType;
 import java.lang.reflect.Field;
 import java.lang.reflect.Method;
 import java.lang.reflect.Type;
 import java.util.Collection;
+import java.util.List;
 
 import org.apache.tuscany.sca.assembly.AssemblyFactory;
 import org.apache.tuscany.sca.assembly.Multiplicity;
@@ -47,7 +49,7 @@
  */
 public class ReferenceProcessor extends BaseJavaClassVisitor {
     private JavaInterfaceFactory javaFactory;
-    
+
     public ReferenceProcessor(AssemblyFactory assemblyFactory, JavaInterfaceFactory javaFactory) {
         super(assemblyFactory);
         this.javaFactory = javaFactory;
@@ -59,16 +61,19 @@
         if (annotation == null) {
             return; // Not a reference annotation.
         }
-        if (method.getParameterTypes().length != 1) {
-            throw new IllegalReferenceException("Setter must have one parameter", method);
+        if (!JavaIntrospectionHelper.isSetter(method)) {
+            throw new IllegalReferenceException("Annotated method is not a setter: " + method, method);
         }
         String name = annotation.name();
         if ("".equals(name)) {
             name = JavaIntrospectionHelper.toPropertyName(method.getName());
         }
-        if (type.getReferenceMembers().get(name) != null) {
+        JavaElementImpl ref = type.getReferenceMembers().get(name);
+        // Setter override field
+        if (ref != null && ref.getElementType() != ElementType.FIELD) {
             throw new DuplicateReferenceException(name);
         }
+        removeReference(ref, type);
 
         JavaElementImpl element = new JavaElementImpl(method, 0);
         org.apache.tuscany.sca.assembly.Reference reference = createReference(element, name);
@@ -76,6 +81,20 @@
         type.getReferenceMembers().put(name, element);
     }
 
+    private boolean removeReference(JavaElementImpl ref, JavaImplementation type) {
+        if (ref == null) {
+            return false;
+        }
+        List<org.apache.tuscany.sca.assembly.Reference> refs = type.getReferences();
+        for (int i = 0; i < refs.size(); i++) {
+            if (refs.get(i).getName().equals(ref.getName())) {
+                refs.remove(i);
+                return true;
+            }
+        }
+        return false;
+    }
+
     @Override
     public void visitField(Field field, JavaImplementation type) throws IntrospectionException {
         Reference annotation = field.getAnnotation(Reference.class);
@@ -86,13 +105,18 @@
         if ("".equals(name)) {
             name = field.getName();
         }
-        if (type.getReferenceMembers().get(name) != null) {
+        JavaElementImpl ref = type.getReferenceMembers().get(name);
+        if (ref != null && ref.getElementType() == ElementType.FIELD) {
             throw new DuplicateReferenceException(name);
         }
-        JavaElementImpl element = new JavaElementImpl(field);
-        org.apache.tuscany.sca.assembly.Reference reference = createReference(element, name);
-        type.getReferences().add(reference);
-        type.getReferenceMembers().put(name, element);
+
+        // Setter method override field
+        if (ref == null) {
+            JavaElementImpl element = new JavaElementImpl(field);
+            org.apache.tuscany.sca.assembly.Reference reference = createReference(element, name);
+            type.getReferences().add(reference);
+            type.getReferenceMembers().put(name, element);
+        }
     }
 
     @Override
@@ -104,9 +128,14 @@
         }
         String paramName = parameter.getName();
         String name = getReferenceName(paramName, parameter.getIndex(), refAnnotation.name());
-        if (type.getReferenceMembers().get(name) != null) {
+        JavaElementImpl ref = type.getReferenceMembers().get(name);
+
+        // Setter override field
+        if (ref != null && ref.getElementType() != ElementType.FIELD) {
             throw new DuplicateReferenceException(name);
         }
+
+        removeReference(ref, type);
         org.apache.tuscany.sca.assembly.Reference reference = createReference(parameter, name);
         type.getReferences().add(reference);
         type.getReferenceMembers().put(name, parameter);
@@ -128,11 +157,12 @@
         }
     }
 
-    private org.apache.tuscany.sca.assembly.Reference createReference(JavaElementImpl element, String name) throws IntrospectionException {
+    private org.apache.tuscany.sca.assembly.Reference createReference(JavaElementImpl element, String name)
+        throws IntrospectionException {
         org.apache.tuscany.sca.assembly.Reference reference = assemblyFactory.createReference();
         JavaInterfaceContract interfaceContract = javaFactory.createJavaInterfaceContract();
         reference.setInterfaceContract(interfaceContract);
-        
+
         // reference.setMember((Member)element.getAnchor());
         boolean required = true;
         Reference ref = element.getAnnotation(Reference.class);
@@ -157,8 +187,8 @@
         }
         Type genericType = element.getGenericType();
         Class<?> baseType = getBaseType(rawType, genericType);
-        if(CallableReference.class.isAssignableFrom(baseType)) {
-            if(Collection.class.isAssignableFrom(rawType)) {
+        if (CallableReference.class.isAssignableFrom(baseType)) {
+            if (Collection.class.isAssignableFrom(rawType)) {
                 genericType = JavaIntrospectionHelper.getParameterType(genericType);
             }
             baseType = JavaIntrospectionHelper.getBusinessInterface(baseType, genericType);

Modified: incubator/tuscany/java/sca/modules/implementation-java/src/test/java/org/apache/tuscany/sca/implementation/java/introspect/impl/PropertyProcessorTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-java/src/test/java/org/apache/tuscany/sca/implementation/java/introspect/impl/PropertyProcessorTestCase.java?rev=584985&r1=584984&r2=584985&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/implementation-java/src/test/java/org/apache/tuscany/sca/implementation/java/introspect/impl/PropertyProcessorTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/implementation-java/src/test/java/org/apache/tuscany/sca/implementation/java/introspect/impl/PropertyProcessorTestCase.java Mon Oct 15 17:47:36 2007
@@ -85,9 +85,9 @@
     }
 
     public void testDuplicateMethods() throws Exception {
-        processor.visitMethod(Bar.class.getMethod("dupMethod", String.class), type);
+        processor.visitMethod(Bar.class.getMethod("setDupMethod", String.class), type);
         try {
-            processor.visitMethod(Bar.class.getMethod("dupSomeMethod", String.class), type);
+            processor.visitMethod(Bar.class.getMethod("setDupSomeMethod", String.class), type);
             fail();
         } catch (DuplicatePropertyException e) {
             // expected
@@ -143,11 +143,11 @@
         protected String baz;
 
         @Property
-        public void dupMethod(String s) {
+        public void setDupMethod(String s) {
         }
 
         @Property(name = "dupMethod")
-        public void dupSomeMethod(String s) {
+        public void setDupSomeMethod(String s) {
         }
 
         @Property

Modified: incubator/tuscany/java/sca/modules/implementation-java/src/test/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ReferenceProcessorTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-java/src/test/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ReferenceProcessorTestCase.java?rev=584985&r1=584984&r2=584985&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/implementation-java/src/test/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ReferenceProcessorTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/implementation-java/src/test/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ReferenceProcessorTestCase.java Mon Oct 15 17:47:36 2007
@@ -91,9 +91,9 @@
     }
 
     public void testDuplicateMethods() throws Exception {
-        processor.visitMethod(ReferenceProcessorTestCase.Bar.class.getMethod("dupMethod", Ref.class), type);
+        processor.visitMethod(ReferenceProcessorTestCase.Bar.class.getMethod("setDupMethod", Ref.class), type);
         try {
-            processor.visitMethod(ReferenceProcessorTestCase.Bar.class.getMethod("dupSomeMethod", Ref.class), type);
+            processor.visitMethod(ReferenceProcessorTestCase.Bar.class.getMethod("setDupSomeMethod", Ref.class), type);
             fail();
         } catch (DuplicateReferenceException e) {
             // expected
@@ -152,11 +152,11 @@
         protected Ref baz;
 
         @Reference
-        public void dupMethod(Ref s) {
+        public void setDupMethod(Ref s) {
         }
 
         @Reference(name = "dupMethod")
-        public void dupSomeMethod(Ref s) {
+        public void setDupSomeMethod(Ref s) {
         }
 
         @Reference



---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org