You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by ra...@apache.org on 2009/08/27 12:34:15 UTC

svn commit: r808356 - in /tuscany/java/sca/modules/assembly-xml/src/main: java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java resources/assembly-xml-validation-messages.properties

Author: ramkumar
Date: Thu Aug 27 10:34:14 2009
New Revision: 808356

URL: http://svn.apache.org/viewvc?rev=808356&view=rev
Log:
Fixes to generate proper exception for ASM_6029 and ASM_6030 otests

Modified:
    tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java
    tuscany/java/sca/modules/assembly-xml/src/main/resources/assembly-xml-validation-messages.properties

Modified: tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java?rev=808356&r1=808355&r2=808356&view=diff
==============================================================================
--- tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java (original)
+++ tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java Thu Aug 27 10:34:14 2009
@@ -948,8 +948,18 @@
 	        for (int i = 0, n = composite.getIncludes().size(); i < n; i++) {
 	            Composite include = composite.getIncludes().get(i);
 	            if (include != null) {
-	                include = resolver.resolveModel(Composite.class, include);
-	                composite.getIncludes().set(i, include);
+	            	Composite resolved = resolver.resolveModel(Composite.class, include);
+	            	if (!resolved.isUnresolved()) {	                	
+	                	if ((composite.isLocal() && resolved.isLocal()) || (!composite.isLocal() && !resolved.isLocal())) {
+	                		composite.getIncludes().set(i, resolved);
+	                	} else {
+	                		ContributionResolveException ce = new ContributionResolveException("Error: Composite "+ composite.getName() +" can only include another composite with the identical @local attribute value");
+	                        error("ContributionResolveException", include, ce);
+	                	}
+	                } else {
+	                	ContributionResolveException ce = new ContributionResolveException("Error: Composite "+ include.getName() +" is not a valid composite within the domain");
+                        error("ContributionResolveException", include, ce);
+	                }
 	            }
 	        }
 	

Modified: tuscany/java/sca/modules/assembly-xml/src/main/resources/assembly-xml-validation-messages.properties
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/assembly-xml/src/main/resources/assembly-xml-validation-messages.properties?rev=808356&r1=808355&r2=808356&view=diff
==============================================================================
--- tuscany/java/sca/modules/assembly-xml/src/main/resources/assembly-xml-validation-messages.properties (original)
+++ tuscany/java/sca/modules/assembly-xml/src/main/resources/assembly-xml-validation-messages.properties Thu Aug 27 10:34:14 2009
@@ -25,6 +25,7 @@
 PolicyImplValidationException = PolicyValidation exception when processing implementation of component {0} due to {1}. 
 PolicyServiceValidationException = PolicyValidation exceptions when processing service/reference {0} in {1}. Error is {2}
 ContributionReadException = ContributionReadException occured due to : {0}
+ContributionResolveException = ContributionResolveException occured due to : {0}
 ContributionWriteException = ContributionWriteException occured due to : {0}
 XMLStreamException = XMLStreamException occured due to : {0}
 DuplicateCompositeName = [ASM_6001] More than one composite with the same name {0} found in contribution {1}