[savara-commits] savara SVN: r38 - in trunk/tools/eclipse/plugins: org.jboss.savara.tools.bpel/src/java/org/jboss/savara/tools/bpel/generator and 2 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Mon Oct 5 16:00:55 EDT 2009
Author: objectiser
Date: 2009-10-05 16:00:54 -0400 (Mon, 05 Oct 2009)
New Revision: 38
Modified:
trunk/tools/eclipse/plugins/org.jboss.savara.tools.bpel/META-INF/MANIFEST.MF
trunk/tools/eclipse/plugins/org.jboss.savara.tools.bpel/src/java/org/jboss/savara/tools/bpel/generator/Generator.java
trunk/tools/eclipse/plugins/org.jboss.savara.tools.wsdl.tests/src/java/org/jboss/savara/tools/wsdl/tests/WSDLGeneratorTest.java
trunk/tools/eclipse/plugins/org.jboss.savara.tools.wsdl/src/java/org/jboss/savara/tools/wsdl/WSDLGenerator.java
Log:
Pass the contract details through to the BPEL generator, to enable it to import appropriate WSDL files.
Modified: trunk/tools/eclipse/plugins/org.jboss.savara.tools.bpel/META-INF/MANIFEST.MF
===================================================================
--- trunk/tools/eclipse/plugins/org.jboss.savara.tools.bpel/META-INF/MANIFEST.MF 2009-10-03 20:58:25 UTC (rev 37)
+++ trunk/tools/eclipse/plugins/org.jboss.savara.tools.bpel/META-INF/MANIFEST.MF 2009-10-05 20:00:54 UTC (rev 38)
@@ -16,7 +16,8 @@
org.scribble.conversation.parser,
org.apache.commons.logging,
org.scribble.expression.xpath,
- org.scribble.pi4soa.cdm;resolution:=optional
+ org.scribble.pi4soa.cdm;resolution:=optional,
+ org.scribble.contract.model
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Bundle-Vendor: www.jboss.org
Modified: trunk/tools/eclipse/plugins/org.jboss.savara.tools.bpel/src/java/org/jboss/savara/tools/bpel/generator/Generator.java
===================================================================
--- trunk/tools/eclipse/plugins/org.jboss.savara.tools.bpel/src/java/org/jboss/savara/tools/bpel/generator/Generator.java 2009-10-03 20:58:25 UTC (rev 37)
+++ trunk/tools/eclipse/plugins/org.jboss.savara.tools.bpel/src/java/org/jboss/savara/tools/bpel/generator/Generator.java 2009-10-05 20:00:54 UTC (rev 38)
@@ -125,6 +125,13 @@
if (projector != null) {
Role role=new Role(localModelRef.getLocatedRole());
+ // Transfer contract details (if defined) from local model
+ // reference to role
+ if (localModelRef.getAnnotations().containsKey(org.scribble.contract.model.Contract.class.getName())) {
+ role.getAnnotations().put(org.scribble.contract.model.Contract.class.getName(),
+ localModelRef.getAnnotations().get(org.scribble.contract.model.Contract.class.getName()));
+ }
+
ModelReference srcRef=
new ModelReference(ConversationNotation.NOTATION_CODE);
Modified: trunk/tools/eclipse/plugins/org.jboss.savara.tools.wsdl/src/java/org/jboss/savara/tools/wsdl/WSDLGenerator.java
===================================================================
--- trunk/tools/eclipse/plugins/org.jboss.savara.tools.wsdl/src/java/org/jboss/savara/tools/wsdl/WSDLGenerator.java 2009-10-03 20:58:25 UTC (rev 37)
+++ trunk/tools/eclipse/plugins/org.jboss.savara.tools.wsdl/src/java/org/jboss/savara/tools/wsdl/WSDLGenerator.java 2009-10-05 20:00:54 UTC (rev 38)
@@ -120,7 +120,7 @@
ret.setName(mep.getOperation());
- javax.wsdl.Message mesg=generateMessage(defn, mep.getTypes());
+ javax.wsdl.Message mesg=getMessage(defn, mep.getTypes());
if (mesg != null) {
javax.wsdl.Input input=defn.createInput();
@@ -132,7 +132,7 @@
if (mep instanceof RequestResponseMEP) {
RequestResponseMEP rr=(RequestResponseMEP)mep;
- javax.wsdl.Message om=generateMessage(defn, rr.getResponseTypes());
+ javax.wsdl.Message om=getMessage(defn, rr.getResponseTypes());
if (om != null) {
javax.wsdl.Output output=defn.createOutput();
output.setMessage(om);
@@ -144,7 +144,7 @@
for (int i=0; i < rr.getFaultDetails().size(); i++) {
FaultDetails fd=rr.getFaultDetails().get(i);
- javax.wsdl.Message fm=generateMessage(defn, fd.getTypes());
+ javax.wsdl.Message fm=getMessage(defn, fd.getTypes());
if (fm != null) {
javax.wsdl.Fault fault=defn.createFault();
fault.setName(fd.getName());
@@ -161,29 +161,42 @@
}
/**
- * This method generates a message, using the supplied WSDL definition,
+ * This method returns a message, using the supplied WSDL definition,
* based on the information supplied in the list of type references. If
* a single type reference is supplied, this will be the message type,
* if multiple type references are supplied, then these will be considered
- * the message parts.
+ * the message parts.<p>
+ * <p>
+ * The returned message will be part of the supplied definition. If it
+ * does not exist prior to the call to this method, then it will be
+ * created and added to the definition upon returning the message.
*
* @param defn The WSDL definition
* @param types The list of type references
* @return The WSDL message
*/
- public javax.wsdl.Message generateMessage(javax.wsdl.Definition defn,
+ public javax.wsdl.Message getMessage(javax.wsdl.Definition defn,
java.util.List<TypeReference> types) {
javax.wsdl.Message ret=null;
if (defn != null && types != null && types.size() > 0) {
- ret = defn.createMessage();
-
+ javax.xml.namespace.QName qname=null;
+
if (types.size() == 1) {
TypeReference ref=types.get(0);
- ret.setQName(new javax.xml.namespace.QName(ref.getNamespace(),ref.getLocalpart()));
+ qname = new javax.xml.namespace.QName(ref.getNamespace(),ref.getLocalpart());
} else {
throw new UnsupportedOperationException("Currently only supports single type reference");
}
+
+ if (qname != null &&
+ (ret = defn.getMessage(qname)) == null) {
+ ret = defn.createMessage();
+
+ ret.setQName(qname);
+
+ defn.addMessage(ret);
+ }
}
return(ret);
Modified: trunk/tools/eclipse/plugins/org.jboss.savara.tools.wsdl.tests/src/java/org/jboss/savara/tools/wsdl/tests/WSDLGeneratorTest.java
===================================================================
--- trunk/tools/eclipse/plugins/org.jboss.savara.tools.wsdl.tests/src/java/org/jboss/savara/tools/wsdl/tests/WSDLGeneratorTest.java 2009-10-03 20:58:25 UTC (rev 37)
+++ trunk/tools/eclipse/plugins/org.jboss.savara.tools.wsdl.tests/src/java/org/jboss/savara/tools/wsdl/tests/WSDLGeneratorTest.java 2009-10-05 20:00:54 UTC (rev 38)
@@ -283,7 +283,7 @@
WSDLGenerator gen=new WSDLGenerator();
- javax.wsdl.Message result=gen.generateMessage(defn, refs);
+ javax.wsdl.Message result=gen.getMessage(defn, refs);
if (result == null) {
fail("Message is null");
More information about the savara-commits
mailing list