You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by an...@apache.org on 2009/10/15 22:39:11 UTC

svn commit: r825642 - /tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ReferenceProcessor.java

Author: antelder
Date: Thu Oct 15 20:39:11 2009
New Revision: 825642

URL: http://svn.apache.org/viewvc?rev=825642&view=rev
Log:
FIx JCA_90016 - @Reference on a constructor must not have required=false

Modified:
    tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ReferenceProcessor.java

Modified: 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/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ReferenceProcessor.java?rev=825642&r1=825641&r2=825642&view=diff
==============================================================================
--- tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ReferenceProcessor.java (original)
+++ tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/introspect/impl/ReferenceProcessor.java Thu Oct 15 20:39:11 2009
@@ -137,6 +137,11 @@
         if (refAnnotation == null) {
             return;
         }
+        
+        if (!refAnnotation.required()) {
+            throw new InvalidReferenceException("JCA90016 Constructor has @Reference with required=false: " + type.getName());
+        }
+        
         String paramName = parameter.getName();
         String name = getReferenceName(paramName, parameter.getIndex(), refAnnotation.name());
         JavaElementImpl ref = type.getReferenceMembers().get(name);