summaryrefslogtreecommitdiffstats
path: root/java
diff options
context:
space:
mode:
authoredwardsmj <edwardsmj@13f79535-47bb-0310-9956-ffa450edef68>2009-11-06 09:41:12 +0000
committeredwardsmj <edwardsmj@13f79535-47bb-0310-9956-ffa450edef68>2009-11-06 09:41:12 +0000
commit4df3110b21509ae73f5c9f336722b253b2990c8b (patch)
tree8e0c8dc8e9cebf9a04af4979dba475ad74026eab /java
parent43f34fbd29ae213570c18222273006919e663925 (diff)
Tweaks to enable implementation-bpel to pass latest OASIS BPEL testcases
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@833331 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java')
-rw-r--r--java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/BPELImplementation.java18
-rw-r--r--java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/impl/BPELImplementationImpl.java25
-rw-r--r--java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/xml/BPELDocumentProcessor.java5
-rw-r--r--java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/xml/BPELImplementationProcessor.java2
4 files changed, 47 insertions, 3 deletions
diff --git a/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/BPELImplementation.java b/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/BPELImplementation.java
index f8f7ee0ae2..db5d808f7a 100644
--- a/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/BPELImplementation.java
+++ b/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/BPELImplementation.java
@@ -88,4 +88,22 @@ public interface BPELImplementation extends Implementation {
* @param modelResolver
*/
void setModelResolver(ModelResolver modelResolver);
+
+ /**
+ * Gets the name of the partnerLink which corresponds to the SCA service with the supplied name
+ * This deals in particular with cases where the SCA service name is an alias which is not the
+ * same as the partnerLink name
+ * @param serviceName - the name of the SCA service
+ * @return
+ */
+ String getServicePartnerlinkName( String serviceName );
+
+ /**
+ * Gets the name of the partnerLink which corresponds to the SCA reference with the supplied name
+ * This deals in particular with cases where the SCA reference name is an alias which is not the
+ * same as the partnerLink name
+ * @param referenceName - the name of the SCA reference
+ * @return
+ */
+ String getReferencePartnerlinkName( String referenceName );
}
diff --git a/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/impl/BPELImplementationImpl.java b/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/impl/BPELImplementationImpl.java
index ad8b3a7bcf..67eb9bd047 100644
--- a/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/impl/BPELImplementationImpl.java
+++ b/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/impl/BPELImplementationImpl.java
@@ -30,6 +30,7 @@ import org.apache.tuscany.sca.assembly.impl.ImplementationImpl;
import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
import org.apache.tuscany.sca.implementation.bpel.BPELImplementation;
import org.apache.tuscany.sca.implementation.bpel.BPELProcessDefinition;
+import org.apache.tuscany.sca.implementation.bpel.xml.BPELPartnerLinkElement;
/**
* The model representing a BPEL implementation in an SCA assembly model.
@@ -124,4 +125,28 @@ class BPELImplementationImpl extends ImplementationImpl implements BPELImplement
return false;
}
}
+
+ public String getReferencePartnerlinkName(String referenceName) {
+ if( referenceName == null ) return null;
+ // Find the partnerLink which has its SCAName set to the supplied name
+ List<BPELPartnerLinkElement> partnerLinks = processDefinition.getPartnerLinks();
+ for( BPELPartnerLinkElement partnerLink : partnerLinks ) {
+ if( referenceName.equals(partnerLink.getSCAName()) ) {
+ return partnerLink.getName();
+ } // end if
+ } // end for
+ return null;
+ } // end method getReferencePartnerlinkName
+
+ public String getServicePartnerlinkName(String serviceName) {
+ if( serviceName == null ) return null;
+ // Find the partnerLink which has its SCAName set to the supplied name
+ List<BPELPartnerLinkElement> partnerLinks = processDefinition.getPartnerLinks();
+ for( BPELPartnerLinkElement partnerLink : partnerLinks ) {
+ if( serviceName.equals(partnerLink.getSCAName()) ) {
+ return partnerLink.getName();
+ } // end if
+ } // end for
+ return null;
+ } // end method getServicePartnerlinkName
}
diff --git a/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/xml/BPELDocumentProcessor.java b/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/xml/BPELDocumentProcessor.java
index 6b12f6666e..2c50ae98c3 100644
--- a/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/xml/BPELDocumentProcessor.java
+++ b/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/xml/BPELDocumentProcessor.java
@@ -228,8 +228,9 @@ public class BPELDocumentProcessor extends BaseStAXArtifactProcessor implements
if ((scaService != null) && (scaReference != null)) {
// It is incorrect to set both service & reference attributes
error(monitor, "PartnerLinkHasBothAttr", partnerLink, reader.getAttributeValue(null, "name"));
- throw new ContributionReadException("BPEL PartnerLink " + reader.getAttributeValue(null, "name") + " has both sca:reference and sca:service attributes set");
- }
+ throw new ContributionReadException("BPEL PartnerLink " + reader.getAttributeValue(null, "name") +
+ " has both sca:reference and sca:service attributes set");
+ } // end if
// Set the SCA type and the related name, if present
if (scaService != null)
diff --git a/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/xml/BPELImplementationProcessor.java b/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/xml/BPELImplementationProcessor.java
index 6a2d6310c0..47815f8377 100644
--- a/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/xml/BPELImplementationProcessor.java
+++ b/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/xml/BPELImplementationProcessor.java
@@ -311,7 +311,7 @@ public class BPELImplementationProcessor extends BaseStAXArtifactProcessor imple
/**
* Create an SCA service for a partnerLink
- * @param name - name of the reference
+ * @param name - name of the service
* @param myRolePT - partner link type of myRole
* @param partnerRolePT - partner link type of partnerRole
* @param theInterfaces - list of WSDL interfaces associated with the BPEL process