Author: objectiser
Date: 2011-01-09 18:22:28 -0500 (Sun, 09 Jan 2011)
New Revision: 564
Modified:
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/java/org/savara/bpel/generator/GeneratorTest.java
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)Broker.bpel
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)Buyer.bpel
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)CreditAgency.bpel
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)SupplierQuoteEngine.bpel
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)SupplierTxnProcessor.bpel
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods(a)Buyer.bpel
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods(a)CreditAgency.bpel
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods(a)Store.bpel
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ReqRespFault(a)Buyer.bpel
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ReqRespFault(a)Seller.bpel
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/testmodels/ESBBroker.cdm
branches/experimental/2.0.x/bundles/org.savara.bpel/src/main/java/org/savara/bpel/model/change/ChoiceModelChangeRule.java
branches/experimental/2.0.x/bundles/org.savara.bpel/src/main/java/org/savara/bpel/model/change/InteractionModelChangeRule.java
branches/experimental/2.0.x/bundles/org.savara.bpel/src/main/java/org/savara/bpel/model/change/InteractionPatterns.java
branches/experimental/2.0.x/bundles/org.savara.common/src/main/java/org/savara/common/model/util/InteractionUtil.java
branches/experimental/2.0.x/bundles/org.savara.common/src/main/java/org/savara/common/model/util/PropertyName.java
branches/experimental/2.0.x/bundles/org.savara.contract/META-INF/MANIFEST.MF
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/ContractGenerator.java
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/impl/ContractGeneratorImpl.java
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/impl/ContractIntrospector.java
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/Contract.java
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/FaultDetails.java
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/Interface.java
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/OneWayRequestMEP.java
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/RequestResponseMEP.java
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/Type.java
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/TypeDefinition.java
branches/experimental/2.0.x/bundles/org.savara.contract/src/test/java/org/savara/contract/generator/ContractGeneratorTest.java
branches/experimental/2.0.x/bundles/org.savara.contract/src/test/java/org/savara/contract/generator/impl/ContractIntrospectorTest.java
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/CDMProtocolParser.java
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ChoiceConverterRuleImpl.java
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ConditionalConverterRuleImpl.java
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ConverterContext.java
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ConverterUtil.java
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/DefaultConverterContext.java
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/InteractionConverterRuleImpl.java
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ProtocolConverterRuleImpl.java
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ProtocolModelConverterRuleImpl.java
Log:
Update to use contract derived from protocol model.
Modified:
branches/experimental/2.0.x/bundles/org.savara.bpel/src/main/java/org/savara/bpel/model/change/ChoiceModelChangeRule.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.bpel/src/main/java/org/savara/bpel/model/change/ChoiceModelChangeRule.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.bpel/src/main/java/org/savara/bpel/model/change/ChoiceModelChangeRule.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -108,18 +108,18 @@
java.util.List<When> paths=elem.getWhens();
Role role=null;
- String roleNamespace=null;
+ //String roleNamespace=null;
if (elem.enclosingProtocol() != null) {
role = elem.enclosingProtocol().getRole();
}
- Contract contract=ModelChangeUtils.getContract(context,
- elem.enclosingProtocol().getRole());
+ //Contract contract=ModelChangeUtils.getContract(context,
+ // elem.enclosingProtocol().getRole());
- if (contract != null) {
- roleNamespace = contract.getNamespace();
- }
+ //if (contract != null) {
+ // roleNamespace = contract.getNamespace();
+ //}
// Check if the 'If' construct is to handle responses
// to a preceding request being sent
@@ -169,8 +169,8 @@
TSequence subseq=null;
if (//act instanceof Interaction &&
- InteractionPatterns.isFaultResponse(path)) {
- String faultName=InteractionPatterns.getFaultName(path);
+ InteractionUtil.isFaultResponse(path)) {
+ String faultName=InteractionUtil.getFaultName(path);
Contract fromContract = ModelChangeUtils.getContract(context,
(elem.getFromRole()==null?role:elem.getFromRole()));
@@ -221,9 +221,9 @@
if (InteractionUtil.isRequest(path)) {
qname = WSDLGeneratorUtil.getRequestMessageType(fromContract.getNamespace(),
path.getMessageSignature().getOperation());
- } else if (InteractionPatterns.isFaultResponse(path)) {
+ } else if (InteractionUtil.isFaultResponse(path)) {
qname = WSDLGeneratorUtil.getFaultMessageType(fromContract.getNamespace(),
- InteractionPatterns.getFaultName(path));
+ InteractionUtil.getFaultName(path));
} else {
qname = WSDLGeneratorUtil.getResponseMessageType(fromContract.getNamespace(),
path.getMessageSignature().getOperation());
@@ -303,6 +303,8 @@
// other direction
TPartnerLink prev=
PartnerLinkUtil.getPartnerLink(bpelModel, prevPLName);
+
+ Contract contract=null;
if (InteractionUtil.isRequest(path) && prev == null) {
@@ -312,23 +314,25 @@
String
plt=elem.getFromRole().getName()+"To"+role.getName()+"Service"+"LT";
- pl.setPartnerLinkType(new QName(roleNamespace, plt));
-
contract = ModelChangeUtils.getContract(context, role);
- if (contract != null && contract.getInterfaces().size() > 0) {
- Interface intf = contract.getInterfaces().iterator().next();
+ if (contract != null) {
+ pl.setPartnerLinkType(new QName(contract.getNamespace(), plt)); //roleNamespace,
plt));
- portType = intf.getName();
- namespace = intf.getNamespace();
-
- /* TODO: namespace issue
- String prefix = bpelModel.addNamespace(intf.getNamespace());
-
- if (prefix != null) {
- portType = prefix+":"+portType;
+ if (contract.getInterfaces().size() > 0) {
+ Interface intf = contract.getInterfaces().iterator().next();
+
+ portType = intf.getName();
+ namespace = intf.getNamespace();
+
+ /* TODO: namespace issue
+ String prefix = bpelModel.addNamespace(intf.getNamespace());
+
+ if (prefix != null) {
+ portType = prefix+":"+portType;
+ }
+ */
}
- */
}
} else {
pl.setMyRole(role.getName()+"Requester");
@@ -337,25 +341,29 @@
String
plt=role.getName()+"To"+elem.getFromRole().getName()+"Requester"+"LT";
- pl.setPartnerLinkType(new QName(roleNamespace, plt));
//portType = role.getName()+
// recv.getFromRole().getName()+"CallbackPT";
- Contract fromContract = ModelChangeUtils.getContract(context, elem.getFromRole());
- if (fromContract != null && fromContract.getInterfaces().size() > 0) {
- Interface intf = fromContract.getInterfaces().iterator().next();
-
- portType = intf.getName();
- namespace = intf.getNamespace();
-
- /* TODO: Namespace issue
- String prefix = bpelModel.addNamespace(intf.getNamespace());
-
- if (prefix != null) {
- portType = prefix+":"+portType;
+ contract = ModelChangeUtils.getContract(context, elem.getFromRole());
+
+ if (contract != null) {
+ pl.setPartnerLinkType(new QName(contract.getNamespace(), plt)); //roleNamespace,
plt));
+
+ if (contract.getInterfaces().size() > 0) {
+ Interface intf = contract.getInterfaces().iterator().next();
+
+ portType = intf.getName();
+ namespace = intf.getNamespace();
+
+ /* TODO: Namespace issue
+ String prefix = bpelModel.addNamespace(intf.getNamespace());
+
+ if (prefix != null) {
+ portType = prefix+":"+portType;
+ }
+ */
}
- */
}
}
@@ -363,9 +371,9 @@
if (InteractionUtil.isRequest(path)) {
qname = WSDLGeneratorUtil.getRequestMessageType(contract.getNamespace(),
path.getMessageSignature().getOperation());
- } else if (InteractionPatterns.isFaultResponse(path)) {
+ } else if (InteractionUtil.isFaultResponse(path)) {
qname = WSDLGeneratorUtil.getFaultMessageType(contract.getNamespace(),
- InteractionPatterns.getFaultName(path));
+ InteractionUtil.getFaultName(path));
} else {
qname = WSDLGeneratorUtil.getResponseMessageType(contract.getNamespace(),
path.getMessageSignature().getOperation());
@@ -428,15 +436,26 @@
TSequence seq=new TSequence();
+ Contract contract=null;
+
+ if ((InteractionUtil.isRequest(path) && !InteractionUtil.isSend(path)) ||
+ (InteractionUtil.isResponse(path) && InteractionUtil.isSend(path))) {
+ contract = ModelChangeUtils.getContract(context, role);
+ } else if (InteractionUtil.isRequest(path)) {
+ contract = ModelChangeUtils.getContract(context, elem.getToRole());
+ } else {
+ contract = ModelChangeUtils.getContract(context, elem.getFromRole());
+ }
+
// Handle when message signature
if (InteractionUtil.isResponse(path)) {
QName qname=null;
if (InteractionUtil.isRequest(path)) {
qname = WSDLGeneratorUtil.getRequestMessageType(contract.getNamespace(),
path.getMessageSignature().getOperation());
- } else if (InteractionPatterns.isFaultResponse(path)) {
+ } else if (InteractionUtil.isFaultResponse(path)) {
qname = WSDLGeneratorUtil.getFaultMessageType(contract.getNamespace(),
- InteractionPatterns.getFaultName(path));
+ InteractionUtil.getFaultName(path));
} else {
qname = WSDLGeneratorUtil.getResponseMessageType(contract.getNamespace(),
path.getMessageSignature().getOperation());
@@ -466,12 +485,12 @@
String
plt=elem.getToRole().getName()+"To"+role.getName()+"Service"+"LT";
- pl.setPartnerLinkType(new QName(roleNamespace, plt));
+ pl.setPartnerLinkType(new QName(contract.getNamespace(), plt)); //roleNamespace,
plt));
//portType = role.getName()+"PT";
- if (InteractionPatterns.isFaultResponse(path)) {
- String faultName=InteractionPatterns.getFaultName(path);
+ if (InteractionUtil.isFaultResponse(path)) {
+ String faultName=InteractionUtil.getFaultName(path);
// TODO: Not sure what to do about namespace here?
reply.setFaultName(new QName(contract.getNamespace(), faultName));
@@ -515,9 +534,9 @@
if (InteractionUtil.isRequest(path)) {
qname = WSDLGeneratorUtil.getRequestMessageType(contract.getNamespace(),
path.getMessageSignature().getOperation());
- } else if (InteractionPatterns.isFaultResponse(path)) {
+ } else if (InteractionUtil.isFaultResponse(path)) {
qname = WSDLGeneratorUtil.getFaultMessageType(contract.getNamespace(),
- InteractionPatterns.getFaultName(path));
+ InteractionUtil.getFaultName(path));
} else {
qname = WSDLGeneratorUtil.getResponseMessageType(contract.getNamespace(),
path.getMessageSignature().getOperation());
@@ -547,7 +566,7 @@
String plt=role.getName()+"To"+elem.getToRole().getName()+"LT";
- pl.setPartnerLinkType(new QName(roleNamespace, plt));
+ pl.setPartnerLinkType(new QName(contract.getNamespace(), plt)); //roleNamespace,
plt));
//portType = interaction.getToRole().getName()+"PT";
Modified:
branches/experimental/2.0.x/bundles/org.savara.bpel/src/main/java/org/savara/bpel/model/change/InteractionModelChangeRule.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.bpel/src/main/java/org/savara/bpel/model/change/InteractionModelChangeRule.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.bpel/src/main/java/org/savara/bpel/model/change/InteractionModelChangeRule.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -122,17 +122,29 @@
//String mainPrefix=null;
- Contract contract=ModelChangeUtils.getContract(context,
- interaction.enclosingProtocol().getRole());
+ //Contract contract=ModelChangeUtils.getContract(context,
+ // interaction.enclosingProtocol().getRole());
+ Contract contract=null;
+
+ if ((InteractionUtil.isRequest(interaction) &&
!InteractionUtil.isSend(interaction)) ||
+ (InteractionUtil.isResponse(interaction) &&
InteractionUtil.isSend(interaction))) {
+ contract = ModelChangeUtils.getContract(context, role);
+ } else if (InteractionUtil.isRequest(interaction)) {
+ contract = ModelChangeUtils.getContract(context, interaction.getToRoles().get(0));
+ } else {
+ contract = ModelChangeUtils.getContract(context, interaction.getFromRole());
+ }
+
/* TODO: Namespace issue
if (contract != null) {
mainPrefix = bpelModel.getBPELProcess().addNamespace(contract.getNamespace());
}
*/
- if (contract != null) {
- roleNamespace = contract.getNamespace();
+ Contract roleContract=ModelChangeUtils.getContract(context, role);
+ if (roleContract != null) {
+ roleNamespace = roleContract.getNamespace();
}
Role roleType=null;
@@ -153,7 +165,7 @@
}
if (roleType != null) {
- contract = ModelChangeUtils.getContract(context, roleType);
+ //contract = ModelChangeUtils.getContract(context, roleType);
if (contract != null) {
if (interaction.getProperties().containsKey(INTERFACE_NAME)) {
@@ -189,9 +201,9 @@
if (InteractionUtil.isRequest(interaction)) {
qname = WSDLGeneratorUtil.getRequestMessageType(contract.getNamespace(),
interaction.getMessageSignature().getOperation());
- } else if (InteractionPatterns.isFaultResponse(interaction)) {
+ } else if (InteractionUtil.isFaultResponse(interaction)) {
qname = WSDLGeneratorUtil.getFaultMessageType(contract.getNamespace(),
- InteractionPatterns.getFaultName(interaction));
+ InteractionUtil.getFaultName(interaction));
} else {
qname = WSDLGeneratorUtil.getResponseMessageType(contract.getNamespace(),
interaction.getMessageSignature().getOperation());
@@ -282,8 +294,8 @@
//portType = role.getName()+"PT";
- if (InteractionPatterns.isFaultResponse(interaction)) {
- String faultName=InteractionPatterns.getFaultName(interaction);
+ if (InteractionUtil.isFaultResponse(interaction)) {
+ String faultName=InteractionUtil.getFaultName(interaction);
// Find namespace prefix
//if (intf != null) {
Modified:
branches/experimental/2.0.x/bundles/org.savara.bpel/src/main/java/org/savara/bpel/model/change/InteractionPatterns.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.bpel/src/main/java/org/savara/bpel/model/change/InteractionPatterns.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.bpel/src/main/java/org/savara/bpel/model/change/InteractionPatterns.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -328,40 +328,6 @@
return(getRequestForResponseInFaultHandler(interaction) != null);
}
- public static boolean isFaultResponse(Interaction interaction) {
- boolean ret=false;
-
- if (InteractionUtil.isRequest(interaction) == false &&
- interaction.getMessageSignature().getProperties().
- keySet().contains(PropertyName.FAULT_NAME)) {
- ret = true;
- }
-
- return(ret);
- }
-
- public static boolean isFaultResponse(When interaction) {
- boolean ret=false;
-
- if (InteractionUtil.isRequest(interaction) == false &&
- interaction.getMessageSignature().getProperties().
- keySet().contains(PropertyName.FAULT_NAME)) {
- ret = true;
- }
-
- return(ret);
- }
-
- public static String getFaultName(Interaction interaction) {
- return((String)interaction.
- getMessageSignature().getProperties().get(PropertyName.FAULT_NAME));
- }
-
- public static String getFaultName(When interaction) {
- return((String)interaction.
- getMessageSignature().getProperties().get(PropertyName.FAULT_NAME));
- }
-
/*
public static String getMessageTypeLocalPart(Interaction interaction) {
return((String)interaction.
Modified:
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/java/org/savara/bpel/generator/GeneratorTest.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/java/org/savara/bpel/generator/GeneratorTest.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/java/org/savara/bpel/generator/GeneratorTest.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -26,7 +26,9 @@
import org.savara.bpel.util.BPELModelUtil;
import org.savara.common.model.generator.ModelGenerator;
import org.savara.common.model.util.PropertyName;
+import org.savara.common.util.ScribbleServices;
import org.scribble.common.logging.CachedJournal;
+import org.scribble.protocol.model.Role;
import org.savara.pi4soa.cdm.parser.CDMProtocolParser;
public class GeneratorTest {
@@ -34,7 +36,7 @@
public static Test suite() {
TestSuite suite = new TestSuite("Choreography->BPEL Generator
Tests");
- suite.addTest(new ChoreographyToBPELTester("ESBBroker",
"Buyer"));
+ suite.addTest(new ChoreographyToBPELTester("ESBBroker",
"Buyer"));
suite.addTest(new ChoreographyToBPELTester("ESBBroker",
"SupplierTxnProcessor"));
suite.addTest(new ChoreographyToBPELTester("ESBBroker",
"CreditAgency"));
suite.addTest(new ChoreographyToBPELTester("ESBBroker",
"Broker"));
@@ -46,7 +48,7 @@
suite.addTest(new ChoreographyToBPELTester("ReqRespFault",
"Buyer"));
suite.addTest(new ChoreographyToBPELTester("ReqRespFault",
"Seller"));
-
+
return suite;
}
@@ -89,6 +91,11 @@
* @param result The test result
*/
public void run(TestResult result) {
+ // Setup scribble services
+ ScribbleServices.setProtocolProjector(
+ new org.scribble.protocol.projection.impl.ProtocolProjectorImpl());
+
+ // Run test
result.startTest(this);
String filename="generator/testmodels/"+m_name+".cdm";
@@ -159,6 +166,8 @@
}
*/
+ java.util.List<Role> projectedRoles=projected.getRoles();
+
ModelGenerator generator=new ProtocolToBPELModelGenerator();
//defn = projected.getProtocol();
Modified:
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)Broker.bpel
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)Broker.bpel 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)Broker.bpel 2011-01-09
23:22:28 UTC (rev 564)
@@ -2,7 +2,7 @@
<process
xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier"
xmlns:tns="http://www.pi4soa.org/ESBBroker"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency"
xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer"
xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker"
targetNamespace="http://www.pi4soa.org/ESBBroker/Broker"
name="ESBBrokerProcess_Broker">
<import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_Broker.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/Broker"/>
<import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_CreditAgency.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/CreditAgency"/>
- <import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_Supplier.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+ <import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_SupplierTxnProcessor.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
<import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_BrokerArtifacts.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/Broker"/>
<partnerLinks>
<partnerLink myRole="Broker"
partnerLinkType="brk:BuyerToBrokerServiceLT"
name="BuyerToBroker"/>
@@ -25,37 +25,37 @@
<variable messageType="brk:cancelRequest"
name="cancelRequestVar"/>
</variables>
<sequence>
- <receive createInstance="yes"
variable="makeEnquiryRequestVar" operation="makeEnquiry"
portType="brk:BrokerBehavior" partnerLink="BuyerToBroker"
name="Receive_enquiry"/>
+ <receive createInstance="yes"
variable="makeEnquiryRequestVar" operation="makeEnquiry"
portType="brk:Broker" partnerLink="BuyerToBroker"
name="Receive_enquiry"/>
<while>
<sequence>
<scope>
<sequence>
- <invoke outputVariable="getQuoteResponseVar"
inputVariable="getQuoteRequestVar" operation="getQuote"
portType="spr:SupplierBehavior"
partnerLink="BrokerToSupplierQuoteEngine"
name="Send_requestForQuote"/>
+ <invoke outputVariable="getQuoteResponseVar"
inputVariable="getQuoteRequestVar" operation="getQuote"
portType="spr:SupplierQuoteEngine"
partnerLink="BrokerToSupplierQuoteEngine"
name="Send_requestForQuote"/>
</sequence>
</scope>
</sequence>
</while>
- <reply variable="makeEnquiryResponseVar"
operation="makeEnquiry" portType="brk:BrokerBehavior"
partnerLink="BuyerToBroker" name="Send_quoteList"/>
+ <reply variable="makeEnquiryResponseVar"
operation="makeEnquiry" portType="brk:Broker"
partnerLink="BuyerToBroker" name="Send_quoteList"/>
<pick>
- <onMessage variable="buyRequestVar" operation="buy"
portType="brk:BrokerBehavior" partnerLink="BuyerToBroker">
+ <onMessage variable="buyRequestVar" operation="buy"
portType="brk:Broker" partnerLink="BuyerToBroker">
<sequence>
<scope>
<faultHandlers>
<catch faultMessageType="cay:invalidCreditFault"
faultVariable="invalidCreditFaultVar"
faultName="cay:invalidCredit">
<sequence>
- <reply faultName="brk:rejected" variable="rejectedFaultVar"
operation="buy" portType="brk:BrokerBehavior"
partnerLink="BuyerToBroker" name="Send_orderRejected"/>
+ <reply faultName="brk:rejected" variable="rejectedFaultVar"
operation="buy" portType="brk:Broker"
partnerLink="BuyerToBroker" name="Send_orderRejected"/>
</sequence>
</catch>
</faultHandlers>
<sequence>
- <invoke outputVariable="checkCreditResponseVar"
inputVariable="checkCreditRequestVar" operation="checkCredit"
portType="cay:CreditAgencyBehavior" partnerLink="BrokerToCreditAgency"
name="Send_CreditCheckRequest"/>
- <invoke outputVariable="confirmResponseVar"
inputVariable="confirmRequestVar" operation="confirm"
portType="spr:SupplierBehavior"
partnerLink="BrokerToSupplierTxnProcessor"
name="Send_orderConfirmed"/>
- <reply variable="buyResponseVar"
operation="buy" portType="brk:BrokerBehavior"
partnerLink="BuyerToBroker" name="Send_bookingReference"/>
+ <invoke outputVariable="checkCreditResponseVar"
inputVariable="checkCreditRequestVar" operation="checkCredit"
portType="cay:CreditAgency" partnerLink="BrokerToCreditAgency"
name="Send_CreditCheckRequest"/>
+ <invoke outputVariable="confirmResponseVar"
inputVariable="confirmRequestVar" operation="confirm"
portType="spr:SupplierTxnProcessor"
partnerLink="BrokerToSupplierTxnProcessor"
name="Send_orderConfirmed"/>
+ <reply variable="buyResponseVar"
operation="buy" portType="brk:Broker"
partnerLink="BuyerToBroker" name="Send_bookingReference"/>
</sequence>
</scope>
</sequence>
</onMessage>
- <onMessage variable="cancelRequestVar"
operation="cancel" portType="brk:BrokerBehavior"
partnerLink="BuyerToBroker">
+ <onMessage variable="cancelRequestVar"
operation="cancel" portType="brk:Broker"
partnerLink="BuyerToBroker">
<sequence/>
</onMessage>
</pick>
Modified:
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)Buyer.bpel
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)Buyer.bpel 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)Buyer.bpel 2011-01-09
23:22:28 UTC (rev 564)
@@ -2,7 +2,7 @@
<process
xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier"
xmlns:tns="http://www.pi4soa.org/ESBBroker"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency"
xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer"
xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker"
targetNamespace="http://www.pi4soa.org/ESBBroker/Buyer"
name="ESBBrokerProcess_Buyer">
<import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_Broker.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/Broker"/>
<import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_CreditAgency.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/CreditAgency"/>
- <import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_Supplier.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+ <import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_SupplierTxnProcessor.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
<import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_BuyerArtifacts.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/Buyer"/>
<partnerLinks>
<partnerLink partnerRole="BrokerRequester"
partnerLinkType="byr:BuyerToBrokerLT" name="BuyerToBroker"/>
@@ -10,12 +10,12 @@
<variables>
<variable messageType="brk:makeEnquiryRequest"
name="makeEnquiryRequestVar"/>
<variable messageType="brk:makeEnquiryResponse"
name="makeEnquiryResponseVar"/>
- <variable messageType="byr:buyRequest"
name="buyRequestVar"/>
+ <variable messageType="brk:buyRequest"
name="buyRequestVar"/>
<variable messageType="brk:buyResponse"
name="buyResponseVar"/>
- <variable messageType="byr:cancelRequest"
name="cancelRequestVar"/>
+ <variable messageType="brk:cancelRequest"
name="cancelRequestVar"/>
</variables>
<sequence>
- <invoke outputVariable="makeEnquiryResponseVar"
inputVariable="makeEnquiryRequestVar" operation="makeEnquiry"
portType="brk:BrokerBehavior" partnerLink="BuyerToBroker"
name="Send_enquiry"/>
+ <invoke outputVariable="makeEnquiryResponseVar"
inputVariable="makeEnquiryRequestVar" operation="makeEnquiry"
portType="brk:Broker" partnerLink="BuyerToBroker"
name="Send_enquiry"/>
<if>
<sequence>
<scope>
@@ -25,13 +25,13 @@
</catch>
</faultHandlers>
<sequence>
- <invoke outputVariable="buyResponseVar"
inputVariable="buyRequestVar" operation="buy"
portType="byr:BuyerBehavior" partnerLink="BuyerToBroker"
name="Send_buy"/>
+ <invoke outputVariable="buyResponseVar"
inputVariable="buyRequestVar" operation="buy"
portType="brk:Broker" partnerLink="BuyerToBroker"
name="Send_buy"/>
</sequence>
</scope>
</sequence>
<else>
<sequence>
- <invoke inputVariable="cancelRequestVar"
operation="cancel" portType="byr:BuyerBehavior"
partnerLink="BuyerToBroker" name="Send_cancel"/>
+ <invoke inputVariable="cancelRequestVar"
operation="cancel" portType="brk:Broker"
partnerLink="BuyerToBroker" name="Send_cancel"/>
</sequence>
</else>
</if>
Modified:
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)CreditAgency.bpel
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)CreditAgency.bpel 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)CreditAgency.bpel 2011-01-09
23:22:28 UTC (rev 564)
@@ -2,7 +2,6 @@
<process
xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier"
xmlns:tns="http://www.pi4soa.org/ESBBroker"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency"
xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer"
xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker"
targetNamespace="http://www.pi4soa.org/ESBBroker/CreditAgency"
name="ESBBrokerProcess_CreditAgency">
<import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_CreditAgency.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/CreditAgency"/>
<import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_Broker.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/Broker"/>
- <import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_Supplier.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
<import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_SupplierTxnProcessor.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
<import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_CreditAgencyArtifacts.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/CreditAgency"/>
<partnerLinks>
@@ -14,14 +13,14 @@
<variable messageType="cay:invalidCreditFault"
name="invalidCreditFaultVar"/>
</variables>
<sequence>
- <receive createInstance="yes"
variable="checkCreditRequestVar" operation="checkCredit"
portType="cay:CreditAgencyBehavior" partnerLink="BrokerToCreditAgency"
name="Receive_CreditCheckRequest"/>
+ <receive createInstance="yes"
variable="checkCreditRequestVar" operation="checkCredit"
portType="cay:CreditAgency" partnerLink="BrokerToCreditAgency"
name="Receive_CreditCheckRequest"/>
<if>
<sequence>
- <reply variable="checkCreditResponseVar"
operation="checkCredit" portType="cay:CreditAgencyBehavior"
partnerLink="BrokerToCreditAgency" name="Send_CreditCheckOk"/>
+ <reply variable="checkCreditResponseVar"
operation="checkCredit" portType="cay:CreditAgency"
partnerLink="BrokerToCreditAgency" name="Send_CreditCheckOk"/>
</sequence>
<else>
<sequence>
- <reply faultName="cay:invalidCredit"
variable="invalidCreditFaultVar" operation="checkCredit"
portType="cay:CreditAgencyBehavior" partnerLink="BrokerToCreditAgency"
name="Send_CreditCheckInvalid"/>
+ <reply faultName="cay:invalidCredit"
variable="invalidCreditFaultVar" operation="checkCredit"
portType="cay:CreditAgency" partnerLink="BrokerToCreditAgency"
name="Send_CreditCheckInvalid"/>
</sequence>
</else>
</if>
Modified:
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)SupplierQuoteEngine.bpel
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)SupplierQuoteEngine.bpel 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)SupplierQuoteEngine.bpel 2011-01-09
23:22:28 UTC (rev 564)
@@ -10,7 +10,7 @@
<variable messageType="spr:getQuoteResponse"
name="getQuoteResponseVar"/>
</variables>
<sequence>
- <receive createInstance="yes"
variable="getQuoteRequestVar" operation="getQuote"
portType="spr:SupplierBehavior"
partnerLink="BrokerToSupplierQuoteEngine"
name="Receive_requestForQuote"/>
- <reply variable="getQuoteResponseVar" operation="getQuote"
portType="spr:SupplierBehavior"
partnerLink="BrokerToSupplierQuoteEngine" name="Send_quote"/>
+ <receive createInstance="yes"
variable="getQuoteRequestVar" operation="getQuote"
portType="spr:SupplierQuoteEngine"
partnerLink="BrokerToSupplierQuoteEngine"
name="Receive_requestForQuote"/>
+ <reply variable="getQuoteResponseVar" operation="getQuote"
portType="spr:SupplierQuoteEngine"
partnerLink="BrokerToSupplierQuoteEngine" name="Send_quote"/>
</sequence>
</process>
Modified:
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)SupplierTxnProcessor.bpel
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)SupplierTxnProcessor.bpel 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ESBBroker(a)SupplierTxnProcessor.bpel 2011-01-09
23:22:28 UTC (rev 564)
@@ -1,7 +1,9 @@
<?xml version="1.0" encoding="UTF-8"
standalone="yes"?>
-<process
xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier"
xmlns:tns="http://www.pi4soa.org/ESBBroker"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency"
xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer"
xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker"
targetNamespace="http://www.pi4soa.org/ESBBroker/Supplier"
name="CompleteTransaction_SupplierTxnProcessor">
- <import
importType="http://schemas.xmlsoap.org/wsdl/"
location="CompleteTransaction_SupplierTxnProcessor.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
- <import
importType="http://schemas.xmlsoap.org/wsdl/"
location="CompleteTransaction_SupplierTxnProcessorArtifacts.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+<process
xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
xmlns:spr="http://www.pi4soa.org/ESBBroker/Supplier"
xmlns:tns="http://www.pi4soa.org/ESBBroker"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:cay="http://www.pi4soa.org/ESBBroker/CreditAgency"
xmlns:byr="http://www.pi4soa.org/ESBBroker/Buyer"
xmlns:brk="http://www.pi4soa.org/ESBBroker/Broker"
targetNamespace="http://www.pi4soa.org/ESBBroker/Supplier"
name="ESBBrokerProcess_SupplierTxnProcessor">
+ <import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_SupplierTxnProcessor.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
+ <import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_Broker.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/Broker"/>
+ <import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_CreditAgency.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/CreditAgency"/>
+ <import
importType="http://schemas.xmlsoap.org/wsdl/"
location="ESBBrokerProcess_SupplierTxnProcessorArtifacts.wsdl"
namespace="http://www.pi4soa.org/ESBBroker/Supplier"/>
<partnerLinks>
<partnerLink myRole="SupplierTxnProcessor"
partnerLinkType="spr:BrokerToSupplierTxnProcessorServiceLT"
name="BrokerToSupplierTxnProcessor"/>
</partnerLinks>
@@ -10,7 +12,7 @@
<variable messageType="spr:confirmResponse"
name="confirmResponseVar"/>
</variables>
<sequence>
- <receive createInstance="yes" variable="confirmRequestVar"
operation="confirm" portType="spr:SupplierBehavior"
partnerLink="BrokerToSupplierTxnProcessor"
name="Receive_orderConfirmed"/>
- <reply variable="confirmResponseVar" operation="confirm"
portType="spr:SupplierBehavior"
partnerLink="BrokerToSupplierTxnProcessor"
name="Send_bookingReference"/>
+ <receive createInstance="yes" variable="confirmRequestVar"
operation="confirm" portType="spr:SupplierTxnProcessor"
partnerLink="BrokerToSupplierTxnProcessor"
name="Receive_orderConfirmed"/>
+ <reply variable="confirmResponseVar" operation="confirm"
portType="spr:SupplierTxnProcessor"
partnerLink="BrokerToSupplierTxnProcessor"
name="Send_bookingReference"/>
</sequence>
</process>
Modified:
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods(a)Buyer.bpel
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods(a)Buyer.bpel 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods(a)Buyer.bpel 2011-01-09
23:22:28 UTC (rev 564)
@@ -18,7 +18,7 @@
</catch>
</faultHandlers>
<sequence>
- <invoke outputVariable="buyResponseVar"
inputVariable="buyRequestVar" operation="buy"
portType="sto:StoreInterface" partnerLink="BuyerToStore"
name="Send_BuyRequest"/>
+ <invoke outputVariable="buyResponseVar"
inputVariable="buyRequestVar" operation="buy"
portType="sto:Store" partnerLink="BuyerToStore"
name="Send_BuyRequest"/>
</sequence>
</scope>
</sequence>
Modified:
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods(a)CreditAgency.bpel
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods(a)CreditAgency.bpel 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods(a)CreditAgency.bpel 2011-01-09
23:22:28 UTC (rev 564)
@@ -12,14 +12,14 @@
<variable messageType="pur:CreditCheckFailedFault"
name="CreditCheckFailedFaultVar"/>
</variables>
<sequence>
- <receive createInstance="yes"
variable="checkCreditRequestVar" operation="checkCredit"
portType="pur:CreditAgencyInterface" partnerLink="StoreToCreditAgency"
name="Receive_CreditCheckRequest"/>
+ <receive createInstance="yes"
variable="checkCreditRequestVar" operation="checkCredit"
portType="pur:CreditAgency" partnerLink="StoreToCreditAgency"
name="Receive_CreditCheckRequest"/>
<if>
<sequence>
- <reply variable="checkCreditResponseVar"
operation="checkCredit" portType="pur:CreditAgencyInterface"
partnerLink="StoreToCreditAgency" name="Send_CreditCheckOk"/>
+ <reply variable="checkCreditResponseVar"
operation="checkCredit" portType="pur:CreditAgency"
partnerLink="StoreToCreditAgency" name="Send_CreditCheckOk"/>
</sequence>
<else>
<sequence>
- <reply faultName="pur:CreditCheckFailed"
variable="CreditCheckFailedFaultVar" operation="checkCredit"
portType="pur:CreditAgencyInterface" partnerLink="StoreToCreditAgency"
name="Send_CreditCheckInvalid"/>
+ <reply faultName="pur:CreditCheckFailed"
variable="CreditCheckFailedFaultVar" operation="checkCredit"
portType="pur:CreditAgency" partnerLink="StoreToCreditAgency"
name="Send_CreditCheckInvalid"/>
</sequence>
</else>
</if>
Modified:
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods(a)Store.bpel
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods(a)Store.bpel 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/PurchaseGoods(a)Store.bpel 2011-01-09
23:22:28 UTC (rev 564)
@@ -15,18 +15,18 @@
<variable messageType="sto:BuyFailedFault"
name="BuyFailedFaultVar"/>
</variables>
<sequence>
- <receive createInstance="yes" variable="buyRequestVar"
operation="buy" portType="sto:StoreInterface"
partnerLink="BuyerToStore" name="Receive_BuyRequest"/>
+ <receive createInstance="yes" variable="buyRequestVar"
operation="buy" portType="sto:Store"
partnerLink="BuyerToStore" name="Receive_BuyRequest"/>
<scope>
<faultHandlers>
<catch faultMessageType="pur:CreditCheckFailedFault"
faultVariable="CreditCheckFailedFaultVar"
faultName="pur:CreditCheckFailed">
<sequence>
- <reply faultName="sto:BuyFailed"
variable="BuyFailedFaultVar" operation="buy"
portType="sto:StoreInterface" partnerLink="BuyerToStore"
name="Send_BuyFailed"/>
+ <reply faultName="sto:BuyFailed"
variable="BuyFailedFaultVar" operation="buy"
portType="sto:Store" partnerLink="BuyerToStore"
name="Send_BuyFailed"/>
</sequence>
</catch>
</faultHandlers>
<sequence>
- <invoke outputVariable="checkCreditResponseVar"
inputVariable="checkCreditRequestVar" operation="checkCredit"
portType="pur:CreditAgencyInterface" partnerLink="StoreToCreditAgency"
name="Send_CreditCheckRequest"/>
- <reply variable="buyResponseVar" operation="buy"
portType="sto:StoreInterface" partnerLink="BuyerToStore"
name="Send_BuyConfirmed"/>
+ <invoke outputVariable="checkCreditResponseVar"
inputVariable="checkCreditRequestVar" operation="checkCredit"
portType="pur:CreditAgency" partnerLink="StoreToCreditAgency"
name="Send_CreditCheckRequest"/>
+ <reply variable="buyResponseVar" operation="buy"
portType="sto:Store" partnerLink="BuyerToStore"
name="Send_BuyConfirmed"/>
</sequence>
</scope>
</sequence>
Modified:
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ReqRespFault(a)Buyer.bpel
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ReqRespFault(a)Buyer.bpel 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ReqRespFault(a)Buyer.bpel 2011-01-09
23:22:28 UTC (rev 564)
@@ -17,7 +17,7 @@
</catch>
</faultHandlers>
<sequence>
- <invoke outputVariable="checkCreditResponseVar"
inputVariable="checkCreditRequestVar" operation="checkCredit"
portType="slr:SellerBehavior" partnerLink="BuyerToSeller"
name="Send_CreditCheckRequest"/>
+ <invoke outputVariable="checkCreditResponseVar"
inputVariable="checkCreditRequestVar" operation="checkCredit"
portType="slr:Seller" partnerLink="BuyerToSeller"
name="Send_CreditCheckRequest"/>
</sequence>
</scope>
</sequence>
Modified:
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ReqRespFault(a)Seller.bpel
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ReqRespFault(a)Seller.bpel 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/results/ReqRespFault(a)Seller.bpel 2011-01-09
23:22:28 UTC (rev 564)
@@ -11,14 +11,14 @@
<variable messageType="slr:insufficientCreditFault"
name="insufficientCreditFaultVar"/>
</variables>
<sequence>
- <receive createInstance="yes"
variable="checkCreditRequestVar" operation="checkCredit"
portType="slr:SellerBehavior" partnerLink="BuyerToSeller"
name="Receive_CreditCheckRequest"/>
+ <receive createInstance="yes"
variable="checkCreditRequestVar" operation="checkCredit"
portType="slr:Seller" partnerLink="BuyerToSeller"
name="Receive_CreditCheckRequest"/>
<if>
<sequence>
- <reply variable="checkCreditResponseVar"
operation="checkCredit" portType="slr:SellerBehavior"
partnerLink="BuyerToSeller" name="Send_CreditCheckOk"/>
+ <reply variable="checkCreditResponseVar"
operation="checkCredit" portType="slr:Seller"
partnerLink="BuyerToSeller" name="Send_CreditCheckOk"/>
</sequence>
<else>
<sequence>
- <reply faultName="slr:insufficientCredit"
variable="insufficientCreditFaultVar" operation="checkCredit"
portType="slr:SellerBehavior" partnerLink="BuyerToSeller"
name="Send_CreditCheckInvalid"/>
+ <reply faultName="slr:insufficientCredit"
variable="insufficientCreditFaultVar" operation="checkCredit"
portType="slr:Seller" partnerLink="BuyerToSeller"
name="Send_CreditCheckInvalid"/>
</sequence>
</else>
</if>
Modified:
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/testmodels/ESBBroker.cdm
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/testmodels/ESBBroker.cdm 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.bpel.tests/src/test/resources/generator/testmodels/ESBBroker.cdm 2011-01-09
23:22:28 UTC (rev 564)
@@ -54,7 +54,7 @@
</typeDefinitions>
<choreographies description="Choreography flow for the ESBBroker process"
name="ESBBrokerProcess" root="true">
<enclosedChoreographies name="CompleteTransaction">
- <participantDefinitions name="SupplierTxnProcessor"
roleTypes="//@typeDefinitions/(a)roleTypes.3">
+ <participantDefinitions name="spr:SupplierTxnProcessor"
roleTypes="//@typeDefinitions/(a)roleTypes.3">
<semanticAnnotations
annotation="overlord.cdl.samples.LoanBroker@SupplierTxnProcessor"
name="conversationType"/>
</participantDefinitions>
<variableDefinitions description="Channel to facilitate interaction to
Broker" name="BrokerChannel"
type="//@typeDefinitions/(a)channelTypes.0" free="true"
roleTypes="//@typeDefinitions/(a)roleTypes.0
//@typeDefinitions/(a)roleTypes.1"/>
@@ -90,7 +90,7 @@
</activities>
</enclosedChoreographies>
<enclosedChoreographies name="RequestForQuote">
- <participantDefinitions name="SupplierQuoteEngine"
roleTypes="//@typeDefinitions/(a)roleTypes.3">
+ <participantDefinitions name="spr:SupplierQuoteEngine"
roleTypes="//@typeDefinitions/(a)roleTypes.3">
<semanticAnnotations
annotation="overlord.cdl.samples.LoanBroker@SupplierQuoteEngine"
name="conversationType"/>
</participantDefinitions>
<variableDefinitions description="Channel to facilitate interaction to
Supplier" name="SupplierChannel"
type="//@typeDefinitions/(a)channelTypes.2"/>
Modified:
branches/experimental/2.0.x/bundles/org.savara.common/src/main/java/org/savara/common/model/util/InteractionUtil.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.common/src/main/java/org/savara/common/model/util/InteractionUtil.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.common/src/main/java/org/savara/common/model/util/InteractionUtil.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -17,8 +17,6 @@
*/
package org.savara.common.model.util;
-import java.util.logging.Logger;
-
import org.scribble.protocol.model.*;
/**
@@ -26,8 +24,6 @@
*/
public class InteractionUtil {
- private static Logger logger = Logger.getLogger(InteractionUtil.class.getName());
-
/**
* This method returns the name associated with the interaction.
*
@@ -212,4 +208,66 @@
return(ret);
}
+ /**
+ * This method determines if the supplied interaction is a fault
+ * response.
+ *
+ * @param interaction The interaction
+ * @return Whether the interaction is a fault response
+ */
+ public static boolean isFaultResponse(Interaction interaction) {
+ boolean ret=false;
+
+ if (isResponse(interaction) &&
+ interaction.getMessageSignature().getProperties().
+ keySet().contains(PropertyName.FAULT_NAME)) {
+ ret = true;
+ }
+
+ return(ret);
+ }
+
+ /**
+ * This method determines if the supplied interaction is a fault
+ * response.
+ *
+ * @param interaction The interaction
+ * @return Whether the interaction is a fault response
+ */
+ public static boolean isFaultResponse(When interaction) {
+ boolean ret=false;
+
+ if (InteractionUtil.isResponse(interaction) &&
+ interaction.getMessageSignature().getProperties().
+ keySet().contains(PropertyName.FAULT_NAME)) {
+ ret = true;
+ }
+
+ return(ret);
+ }
+
+ /**
+ * This method returns the fault name associated with the supplied
+ * interaction.
+ *
+ * @param interaction The interaction
+ * @return The fault name, or null if not found
+ */
+ public static String getFaultName(Interaction interaction) {
+ return((String)interaction.
+ getMessageSignature().getProperties().get(PropertyName.FAULT_NAME));
+ }
+
+ /**
+ * This method returns the fault name associated with the supplied
+ * interaction.
+ *
+ * @param interaction The interaction
+ * @return The fault name, or null if not found
+ */
+ public static String getFaultName(When interaction) {
+ return((String)interaction.
+ getMessageSignature().getProperties().get(PropertyName.FAULT_NAME));
+ }
+
}
Modified:
branches/experimental/2.0.x/bundles/org.savara.common/src/main/java/org/savara/common/model/util/PropertyName.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.common/src/main/java/org/savara/common/model/util/PropertyName.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.common/src/main/java/org/savara/common/model/util/PropertyName.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -23,7 +23,9 @@
public static final String SCHEMA_LOCATIONS="SchemaLocations";
- public static final String MESSAGE_TYPE = "MessageType";
+ public static final String NAMESPACE = "Namespace";
+
+ public static final String DATA_TYPE = "DataType";
public static final String INTERFACE_NAME = "InterfaceName";
Modified: branches/experimental/2.0.x/bundles/org.savara.contract/META-INF/MANIFEST.MF
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.contract/META-INF/MANIFEST.MF 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.contract/META-INF/MANIFEST.MF 2011-01-09
23:22:28 UTC (rev 564)
@@ -10,4 +10,5 @@
org.osgi.framework
Require-Bundle: org.scribble.common,
org.savara.common
-Export-Package: org.savara.contract.model
+Export-Package: org.savara.contract.generator,
+ org.savara.contract.model
Modified:
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/ContractGenerator.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/ContractGenerator.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/ContractGenerator.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -18,7 +18,9 @@
package org.savara.contract.generator;
import org.savara.contract.model.Contract;
+import org.scribble.common.logging.Journal;
import org.scribble.protocol.model.Protocol;
+import org.scribble.protocol.model.ProtocolModel;
/**
* This interface represents the capability that generates a contract
@@ -28,12 +30,24 @@
public interface ContractGenerator {
/**
+ * This method creates contracts for the roles associated with the
+ * supplied protocol model and associates them with the relevant
+ * roles.
+ *
+ * @param pm The protocol model
+ * @param journal The journal
+ * @throws IllegalArgumentException
+ */
+ public void generate(ProtocolModel pm, Journal journal) throws
IllegalArgumentException;
+
+ /**
* This method generates a contract associated with a supplied located
* protocol.
*
* @param cm The protocol
+ * @param journal The journal
* @return The contract
*/
- public Contract generate(Protocol cm) throws IllegalArgumentException;
+ public Contract generate(Protocol cm, Journal journal) throws IllegalArgumentException;
}
Modified:
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/impl/ContractGeneratorImpl.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/impl/ContractGeneratorImpl.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/impl/ContractGeneratorImpl.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -19,9 +19,15 @@
import java.text.MessageFormat;
+import org.savara.common.util.ScribbleServices;
import org.savara.contract.model.Contract;
import org.savara.contract.generator.ContractGenerator;
+import org.scribble.common.logging.CachedJournal;
+import org.scribble.common.logging.Journal;
import org.scribble.protocol.model.Protocol;
+import org.scribble.protocol.model.ProtocolModel;
+import org.scribble.protocol.model.Role;
+import org.scribble.protocol.model.RoleList;
/**
* This class generates a contract from a protocol defining the behaviour of
@@ -31,13 +37,51 @@
public class ContractGeneratorImpl implements ContractGenerator {
/**
+ * This method creates contracts for the roles associated with the
+ * supplied protocol model and associates them with the relevant
+ * roles.
+ *
+ * @param pm The protocol model
+ * @param journal The journal
+ * @throws IllegalArgumentException
+ */
+ public void generate(ProtocolModel pm, Journal journal) throws IllegalArgumentException
{
+ java.util.List<Role> roles=pm.getRoles();
+
+ for (Role r : roles) {
+ ProtocolModel lm=ScribbleServices.getProtocolProjector().project(pm, r, journal);
+
+ if (lm != null) {
+ Contract c=generate(lm.getProtocol(), journal);
+
+ if (c != null) {
+ r.getProperties().put(Contract.class.getName(), c);
+
+ /*
+ // Find role definition in local projection
+ java.util.List<Role> localRoles=lm.getRoles();
+
+ for (Role lr : localRoles) {
+ if (lr.getName().equals(r.getName())) {
+ lr.getProperties().put(Contract.class.getName(), c);
+ break;
+ }
+ }
+ */
+ }
+ }
+ }
+ }
+
+ /**
* This method generates a contract associated with a supplied located
* protocol.
*
* @param cm The protocol
+ * @param journal The journal
* @return The contract
*/
- public Contract generate(Protocol cm) throws IllegalArgumentException {
+ public Contract generate(Protocol cm, Journal journal) throws IllegalArgumentException
{
// Check parameters
if (cm == null) {
@@ -53,7 +97,7 @@
getString("SAVARAPC-00002"), (Object)null));
}
- ContractIntrospector introspector=new ContractIntrospector(cm);
+ ContractIntrospector introspector=new ContractIntrospector(cm, journal);
introspector.process();
Modified:
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/impl/ContractIntrospector.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/impl/ContractIntrospector.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/impl/ContractIntrospector.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -27,19 +27,23 @@
import org.savara.common.model.util.InteractionUtil;
import org.savara.common.model.util.PropertyName;
import org.savara.contract.model.Contract;
+import org.savara.contract.model.FaultDetails;
import org.savara.contract.model.Interface;
import org.savara.contract.model.MessageExchangePattern;
import org.savara.contract.model.OneWayRequestMEP;
import org.savara.contract.model.RequestResponseMEP;
import org.savara.contract.model.Type;
import org.savara.contract.model.TypeDefinition;
+import org.scribble.common.logging.Journal;
import org.scribble.protocol.model.AbstractModelObjectVisitor;
+import org.scribble.protocol.model.Choice;
import org.scribble.protocol.model.Protocol;
import org.scribble.protocol.model.Interaction;
import org.scribble.protocol.model.Run;
import org.scribble.protocol.model.ModelObject;
import org.scribble.protocol.model.Role;
import org.scribble.protocol.model.TypeReference;
+import org.scribble.protocol.model.When;
/**
* This class examines a protocol to determine the contract that represents
@@ -52,6 +56,7 @@
private java.util.Set<Protocol> m_processedProtocols=null;
private Role m_role=null;
private Protocol m_protocol=null;
+ private Journal m_journal=null;
private static Logger logger = Logger.getLogger(ContractIntrospector.class.getName());
@@ -60,8 +65,8 @@
*
* @param protocol The protocol to introspect
*/
- public ContractIntrospector(Protocol protocol) {
- this(protocol, null, null);
+ public ContractIntrospector(Protocol protocol, Journal journal) {
+ this(protocol, null, null, journal);
}
/**
@@ -72,11 +77,23 @@
* @param processed The optional set of protocols currently processed
*/
public ContractIntrospector(Protocol protocol, Contract contract,
- java.util.Set<Protocol> processed) {
+ java.util.Set<Protocol> processed, Journal journal) {
m_contract = contract;
+ if (protocol != null) {
+ m_role = protocol.getRole();
+ }
+
if (m_contract == null) {
m_contract = new Contract();
+
+ m_contract.setName(m_role.getName());
+
+ String namespace=(String)m_role.getProperties().get(PropertyName.NAMESPACE);
+
+ if (namespace != null) {
+ m_contract.setNamespace(namespace);
+ }
}
if (processed != null) {
@@ -86,10 +103,6 @@
}
m_protocol = protocol;
-
- if (protocol != null) {
- m_role = protocol.getRole();
- }
}
/**
@@ -102,6 +115,15 @@
}
/**
+ * This method returns the journal.
+ *
+ * @return The journal
+ */
+ public Journal getJournal() {
+ return(m_journal);
+ }
+
+ /**
* This method returns the interface.
*
* @return The interface
@@ -114,6 +136,18 @@
ret = new Interface();
ret.setName(m_role.getName());
+ // TODO: Need to consider how to manage different interfaces,
+ // in case the choreography has multiple interfaces. Each
+ // interaction could have an 'INTERFACE_NAME' property which
+ // could determine the interface - and if not defined default
+ // to using an interface named after the role
+
+ String namespace=(String)m_role.getProperties().get(PropertyName.NAMESPACE);
+
+ if (namespace != null) {
+ ret.setNamespace(namespace);
+ }
+
getContract().getInterfaces().add(ret);
}
@@ -166,7 +200,7 @@
m_processedProtocols.add(toProtocol);
ContractIntrospector ci=new ContractIntrospector(toProtocol,
- getContract(), getProcessedProtocols());
+ getContract(), getProcessedProtocols(), getJournal());
ci.process();
} else {
@@ -187,6 +221,10 @@
*/
public void accept(Interaction interaction) {
+ // Receiving a request - so record this in the contract
+ Interface intf=getInterface();
+
+ /*
// Check if the interacton is being received
if (interaction.getFromRole() != null &&
interaction.getFromRole().equals(m_role) == false) {
@@ -195,10 +233,11 @@
// has been set, indicating it is receiving a response
if (InteractionUtil.getReplyToLabel(interaction) == null ||
InteractionUtil.getReplyToLabel(interaction).trim().length() == 0) {
+ */
+
+ // Check if receiving a request
+ if (InteractionUtil.isRequest(interaction) &&
!InteractionUtil.isSend(interaction)) {
- // Receiving a request - so record this in the contract
- Interface intf=getInterface();
-
if (interaction.getMessageSignature().getOperation() != null) {
// Check if message exchange pattern exists for operation
@@ -223,10 +262,170 @@
}
}
+ //} else {
+
+ //}
+
+ } else if (InteractionUtil.isResponse(interaction) &&
InteractionUtil.isSend(interaction)) {
+
+ if (interaction.getMessageSignature().getOperation() != null) {
+
+ // Check if message exchange pattern exists for operation
+ MessageExchangePattern mep=intf.getMessageExchangePatternForOperation(
+ interaction.getMessageSignature().getOperation());
+
+ if (mep instanceof RequestResponseMEP) {
+ RequestResponseMEP rrmep=(RequestResponseMEP)mep;
+
+ if (InteractionUtil.isFaultResponse(interaction)) {
+ String faultName=InteractionUtil.getFaultName(interaction);
+
+ if (rrmep.getFaultDetails(faultName) == null) {
+ FaultDetails fd=new FaultDetails();
+ fd.setName(faultName);
+
+ for (int i=0; i < interaction.getMessageSignature().getTypeReferences().size();
i++) {
+ fd.getTypes().add(convertType(interaction.getMessageSignature().getTypeReferences().get(i)));
+ }
+
+ rrmep.getFaultDetails().add(fd);
+ }
+
+ } else if (rrmep.getResponseTypes().size() == 0) {
+
+ if (interaction.getMessageSignature().getTypeReferences().size() > 1) {
+ getJournal().error("Response has more than one type", null);
+ } else if (interaction.getMessageSignature().getTypeReferences().size() == 1) {
+ rrmep.getResponseTypes().add(convertType(
+ interaction.getMessageSignature().getTypeReferences().get(0)));
+ }
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * This method introspects the supplied interaction to generate Message Exchange
+ * Patterns on the contract interface.
+ *
+ * @param interaction The interaction
+ */
+ public boolean start(When when) {
+
+ // Receiving a request - so record this in the contract
+ Interface intf=getInterface();
+
+ // Check if receiving a request
+ if (InteractionUtil.isRequest(when) && !InteractionUtil.isSend(when)) {
+
+ if (when.getMessageSignature().getOperation() != null) {
+
+ // Check if message exchange pattern exists for operation
+ MessageExchangePattern mep=intf.getMessageExchangePatternForOperation(
+ when.getMessageSignature().getOperation());
+
+ if (mep == null) {
+ // Create new MEP
+ if (InteractionUtil.getRequestLabel(when) != null) {
+ mep = new RequestResponseMEP();
+ } else {
+ mep = new OneWayRequestMEP();
+ }
+
+ mep.setOperation(when.getMessageSignature().getOperation());
+
+ for (int i=0; i < when.getMessageSignature().getTypeReferences().size(); i++) {
+ mep.getTypes().add(convertType(when.getMessageSignature().getTypeReferences().get(i)));
+ }
+
+ intf.getMessageExchangePatterns().add(mep);
+ }
+ }
+ } else if (InteractionUtil.isResponse(when) && InteractionUtil.isSend(when)) {
+
+ if (when.getMessageSignature().getOperation() != null) {
+
+ // Check if message exchange pattern exists for operation
+ MessageExchangePattern mep=intf.getMessageExchangePatternForOperation(
+ when.getMessageSignature().getOperation());
+
+ if (mep instanceof RequestResponseMEP) {
+ RequestResponseMEP rrmep=(RequestResponseMEP)mep;
+
+ if (InteractionUtil.isFaultResponse(when)) {
+ String faultName=InteractionUtil.getFaultName(when);
+
+ if (rrmep.getFaultDetails(faultName) == null) {
+ FaultDetails fd=new FaultDetails();
+ fd.setName(faultName);
+
+ for (int i=0; i < when.getMessageSignature().getTypeReferences().size(); i++)
{
+ fd.getTypes().add(convertType(when.getMessageSignature().getTypeReferences().get(i)));
+ }
+
+ rrmep.getFaultDetails().add(fd);
+ }
+
+ } else if (rrmep.getResponseTypes().size() == 0) {
+
+ if (when.getMessageSignature().getTypeReferences().size() > 1) {
+ getJournal().error("Response has more than one type", null);
+ } else if (when.getMessageSignature().getTypeReferences().size() == 1) {
+ rrmep.getResponseTypes().add(convertType(
+ when.getMessageSignature().getTypeReferences().get(0)));
+ }
+ }
+ }
+ }
+ }
+
+ /*
+ Choice choice=(Choice)when.getParent();
+
+ // Check if the interacton is being received
+ if (choice.getFromRole() != null &&
+ choice.getFromRole().equals(m_role) == false) {
+
+ // Received by the role, but need to check if its replyTo
+ // has been set, indicating it is receiving a response
+ if (InteractionUtil.getReplyToLabel(when) == null ||
+ InteractionUtil.getReplyToLabel(when).trim().length() == 0) {
+
+ // Receiving a request - so record this in the contract
+ Interface intf=getInterface();
+
+ if (when.getMessageSignature().getOperation() != null) {
+
+ // Check if message exchange pattern exists for operation
+ MessageExchangePattern mep=intf.getMessageExchangePatternForOperation(
+ when.getMessageSignature().getOperation());
+
+ if (mep == null) {
+ // Create new MEP
+ if (InteractionUtil.getRequestLabel(when) != null) {
+ mep = new RequestResponseMEP();
+ } else {
+ mep = new OneWayRequestMEP();
+ }
+
+ mep.setOperation(when.getMessageSignature().getOperation());
+
+ for (int i=0; i < when.getMessageSignature().getTypeReferences().size(); i++) {
+ mep.getTypes().add(convertType(when.getMessageSignature().getTypeReferences().get(i)));
+ }
+
+ intf.getMessageExchangePatterns().add(mep);
+ }
+ }
+
} else {
}
}
+ */
+
+ return(true);
}
/**
@@ -242,7 +441,7 @@
TypeDefinition td=new TypeDefinition();
td.setName(tref.getName());
- td.setDataType((String)tref.getProperties().get(PropertyName.MESSAGE_TYPE));
+ td.setDataType((String)tref.getProperties().get(PropertyName.DATA_TYPE));
// Copy properties that may provide additional information about the type
td.getProperties().putAll(tref.getProperties());
Modified:
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/Contract.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/Contract.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/Contract.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -148,4 +148,22 @@
public java.util.Set<Namespace> getNamespaces() {
return(m_namespaces);
}
+
+ public String toString() {
+ StringBuffer buf=new StringBuffer();
+
+ buf.append("Contract {"+m_namespace+"}"+m_name+"
{\r\n");
+
+ for (TypeDefinition td : getTypeDefinitions()) {
+ buf.append(td.toString());
+ }
+
+ for (Interface intf : getInterfaces()) {
+ buf.append(intf.toString());
+ }
+
+ buf.append("}\r\n");
+
+ return(buf.toString());
+ }
}
Modified:
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/FaultDetails.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/FaultDetails.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/FaultDetails.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -23,7 +23,6 @@
public class FaultDetails extends ContractObject {
private String m_name=null;
- private String m_namespace=null;
private java.util.List<Type> m_types=
new java.util.Vector<Type>();
@@ -53,25 +52,6 @@
}
/**
- * This method returns the namespace associated with the
- * fault.
- *
- * @return The namespace
- */
- public String getNamespace() {
- return(m_namespace);
- }
-
- /**
- * This method sets the namespace of the fault.
- *
- * @param namespace The namespace
- */
- public void setNamespace(String namespace) {
- m_namespace = namespace;
- }
-
- /**
* This method returns the list of types.
*
* @return The list of types
@@ -79,4 +59,19 @@
public java.util.List<Type> getTypes() {
return(m_types);
}
+
+ public String toString() {
+ StringBuffer buf=new StringBuffer();
+
+ buf.append("Fault "+getName()+"( ");
+
+ for (Type t : getTypes()) {
+ buf.append(t.toString()+" ");
+ }
+
+ buf.append(")");
+
+ return(buf.toString());
+ }
+
}
Modified:
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/Interface.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/Interface.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/Interface.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -103,4 +103,18 @@
return(ret);
}
+
+ public String toString() {
+ StringBuffer buf=new StringBuffer();
+
+ buf.append("\tInterface {"+m_namespace+"}"+m_name+"
{\r\n");
+
+ for (MessageExchangePattern mep : getMessageExchangePatterns()) {
+ buf.append(mep.toString());
+ }
+
+ buf.append("\t}\r\n");
+
+ return(buf.toString());
+ }
}
Modified:
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/OneWayRequestMEP.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/OneWayRequestMEP.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/OneWayRequestMEP.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -28,4 +28,17 @@
public OneWayRequestMEP() {
}
+ public String toString() {
+ StringBuffer buf=new StringBuffer();
+
+ buf.append("\t\tOneWayRequestMEP "+getOperation()+"( ");
+
+ for (Type t : getTypes()) {
+ buf.append(t.toString()+" ");
+ }
+
+ buf.append(")\r\n");
+
+ return(buf.toString());
+ }
}
Modified:
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/RequestResponseMEP.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/RequestResponseMEP.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/RequestResponseMEP.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -50,4 +50,44 @@
public java.util.List<FaultDetails> getFaultDetails() {
return(m_faultDetails);
}
+
+ /**
+ * This method returns the fault details for the supplied
+ * name.
+ *
+ * @param faultName The fault name
+ * @return The fault details, or null if not found
+ */
+ public FaultDetails getFaultDetails(String faultName) {
+ for (FaultDetails fd : m_faultDetails) {
+ if (fd.getName().equals(faultName)) {
+ return(fd);
+ }
+ }
+ return(null);
+ }
+
+ public String toString() {
+ StringBuffer buf=new StringBuffer();
+
+ buf.append("\t\tRequestResponseMEP "+getOperation()+"( ");
+
+ for (Type t : getTypes()) {
+ buf.append(t.toString()+" ");
+ }
+
+ buf.append(") : ");
+
+ for (Type t : getResponseTypes()) {
+ buf.append(t.toString()+" ");
+ }
+
+ for (FaultDetails fd : getFaultDetails()) {
+ buf.append(fd.toString()+" ");
+ }
+
+ buf.append("\r\n");
+
+ return(buf.toString());
+ }
}
Modified:
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/Type.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/Type.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/Type.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -51,4 +51,7 @@
m_name = name;
}
+ public String toString() {
+ return(getName());
+ }
}
Modified:
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/TypeDefinition.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/TypeDefinition.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/TypeDefinition.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -109,4 +109,9 @@
public void setTypeSystem(String typeSystem) {
m_typeSystem = typeSystem;
}
+
+ public String toString() {
+ return("\tTypeDef "+m_name+" type="+m_dataType+
+ " location="+m_location+"
typeSystem="+m_typeSystem+"\r\n");
+ }
}
Modified:
branches/experimental/2.0.x/bundles/org.savara.contract/src/test/java/org/savara/contract/generator/ContractGeneratorTest.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.contract/src/test/java/org/savara/contract/generator/ContractGeneratorTest.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.contract/src/test/java/org/savara/contract/generator/ContractGeneratorTest.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -4,8 +4,14 @@
import org.savara.contract.generator.ContractGenerator;
import org.savara.contract.generator.ContractGeneratorFactory;
+import org.savara.contract.model.Contract;
+import org.scribble.common.logging.CachedJournal;
+import org.scribble.common.logging.Journal;
+import org.scribble.protocol.model.Interaction;
+import org.scribble.protocol.model.MessageSignature;
import org.scribble.protocol.model.Protocol;
import org.scribble.protocol.model.Role;
+import org.scribble.protocol.model.TypeReference;
public class ContractGeneratorTest {
@@ -17,8 +23,10 @@
try {
Protocol conv=null;
- generator.generate(conv);
+ Journal journal=new CachedJournal();
+ generator.generate(conv, journal);
+
fail("Should have thrown IllegalArgumentException");
} catch(IllegalArgumentException iae) {
@@ -35,8 +43,10 @@
Protocol conv=new Protocol();
conv.setName("NonLocatedProtocol");
- generator.generate(conv);
+ Journal journal=new CachedJournal();
+ generator.generate(conv, journal);
+
fail("Should have thrown IllegalArgumentException");
} catch(IllegalArgumentException iae) {
@@ -54,10 +64,61 @@
conv.setRole(new Role());
conv.setName("LocatedProtocol");
- generator.generate(conv);
+ Journal journal=new CachedJournal();
+ generator.generate(conv, journal);
+
} catch(IllegalArgumentException iae) {
fail("Should NOT have thrown IllegalArgumentException");
}
}
+
+ @org.junit.Test
+ public void testGenerateOneWayRequestSend() {
+
+ ContractGenerator generator=ContractGeneratorFactory.getContractGenerator();
+
+ try {
+ Role fromRole=new Role();
+ fromRole.setName("from");
+
+ Role toRole=new Role();
+ toRole.setName("to");
+
+ Protocol conv=new Protocol();
+ conv.setRole(fromRole);
+ conv.setName("LocatedProtocol");
+
+ Interaction interaction=new Interaction();
+ interaction.getToRoles().add(toRole);
+
+ MessageSignature ms=new MessageSignature();
+ ms.setOperation("op");
+
+ interaction.setMessageSignature(ms);
+
+ TypeReference tref1=new TypeReference();
+ tref1.setName("type");
+ ms.getTypeReferences().add(tref1);
+
+ conv.getBlock().add(interaction);
+
+ Journal journal=new CachedJournal();
+
+ Contract c=generator.generate(conv, journal);
+
+ if (c == null) {
+ fail("Contract is null");
+ }
+
+ if (c.getInterfaces().size() != 1) {
+ fail("Only one interface expected");
+ }
+
+
+
+ } catch(IllegalArgumentException iae) {
+ fail("Should NOT have thrown IllegalArgumentException");
+ }
+ }
}
Modified:
branches/experimental/2.0.x/bundles/org.savara.contract/src/test/java/org/savara/contract/generator/impl/ContractIntrospectorTest.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.contract/src/test/java/org/savara/contract/generator/impl/ContractIntrospectorTest.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.contract/src/test/java/org/savara/contract/generator/impl/ContractIntrospectorTest.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -29,6 +29,8 @@
import org.savara.contract.model.RequestResponseMEP;
import org.savara.contract.model.Type;
import org.savara.contract.generator.impl.ContractIntrospector;
+import org.scribble.common.logging.CachedJournal;
+import org.scribble.common.logging.Journal;
import org.scribble.protocol.model.Protocol;
import org.scribble.protocol.model.Interaction;
import org.scribble.protocol.model.ProtocolReference;
@@ -76,8 +78,10 @@
mid.getBlock().getContents().add(run);
mid.getBlock().getContents().add(sub);
- ContractIntrospector introspector=new ContractIntrospector(top);
+ Journal journal=new CachedJournal();
+ ContractIntrospector introspector=new ContractIntrospector(top, journal);
+
introspector.process();
if (introspector.getProcessedProtocols().size() != 0) {
@@ -124,8 +128,10 @@
mid.getBlock().getContents().add(run2);
mid.getBlock().getContents().add(sub);
- ContractIntrospector introspector=new ContractIntrospector(top);
+ Journal journal=new CachedJournal();
+ ContractIntrospector introspector=new ContractIntrospector(top, journal);
+
introspector.process();
if (introspector.getProcessedProtocols().size() != 2) {
@@ -148,8 +154,10 @@
role.setName(MY_ROLE);
protocol.setRole(role);
- ContractIntrospector introspector=new ContractIntrospector(protocol);
+ Journal journal=new CachedJournal();
+ ContractIntrospector introspector=new ContractIntrospector(protocol, journal);
+
if (introspector.getContract().getInterfaces().size() != 0) {
fail("Should be 0 interfaces:
"+introspector.getContract().getInterfaces().size());
}
@@ -182,8 +190,10 @@
role.setName(MY_ROLE);
protocol.setRole(role);
- ContractIntrospector introspector=new ContractIntrospector(protocol);
+ Journal journal=new CachedJournal();
+ ContractIntrospector introspector=new ContractIntrospector(protocol, journal);
+
Interaction interaction=new Interaction();
MessageSignature msig=new MessageSignature();
@@ -236,8 +246,10 @@
role.setName(MY_ROLE);
protocol.setRole(role);
- ContractIntrospector introspector=new ContractIntrospector(protocol);
+ Journal journal=new CachedJournal();
+ ContractIntrospector introspector=new ContractIntrospector(protocol, journal);
+
Interaction interaction=new Interaction();
MessageSignature msig=new MessageSignature();
Modified:
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/CDMProtocolParser.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/CDMProtocolParser.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/CDMProtocolParser.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -61,7 +61,7 @@
if (rule != null) {
ConverterContext cctxt=
- new DefaultConverterContext();
+ new DefaultConverterContext(journal);
ret = (ProtocolModel)rule.convert(cctxt,
ProtocolModel.class, cdlpack);
Modified:
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ChoiceConverterRuleImpl.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ChoiceConverterRuleImpl.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ChoiceConverterRuleImpl.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -24,6 +24,8 @@
import org.pi4soa.cdl.Package;
import org.pi4soa.cdl.Parallel;
import org.pi4soa.cdl.util.CDLTypeUtil;
+import org.pi4soa.cdl.util.InteractionUtil;
+import org.savara.common.model.util.PropertyName;
import org.scribble.protocol.model.*;
import org.scribble.protocol.model.Choice;
import org.scribble.protocol.model.When;
@@ -128,7 +130,16 @@
}
if (ed.getAction() == ExchangeActionType.RESPOND) {
- block.getProperties().put("ReplyToLabel",
ConverterUtil.getLabel(ed));
+ block.getProperties().put(PropertyName.REPLY_TO_LABEL,
ConverterUtil.getLabel(ed));
+ } else {
+ // Check if request has response/fault exchanges
+ java.util.List<ExchangeDetails> resps=
+ InteractionUtil.getResponseExchangeDetails(ed);
+
+ if (resps != null && resps.size() > 0) {
+ block.getProperties().put(PropertyName.REQUEST_LABEL,
+ ConverterUtil.getLabel(ed));
+ }
}
}
}
Modified:
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ConditionalConverterRuleImpl.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ConditionalConverterRuleImpl.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ConditionalConverterRuleImpl.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -21,6 +21,8 @@
import org.pi4soa.cdl.*;
import org.pi4soa.cdl.util.CDLTypeUtil;
+import org.pi4soa.cdl.util.InteractionUtil;
+import org.savara.common.model.util.PropertyName;
import org.savara.pi4soa.cdm.parser.rules.ChoiceConverterRuleImpl.InteractionLocator;
import org.scribble.protocol.model.*;
import org.scribble.protocol.model.When;
@@ -95,6 +97,19 @@
ret.setToRole(new Role(InteractionConverterRuleImpl.getToRole(context,
ed)));
+
+ if (ed.getAction() == ExchangeActionType.RESPOND) {
+ block.getProperties().put(PropertyName.REPLY_TO_LABEL, ConverterUtil.getLabel(ed));
+ } else {
+ // Check if request has response/fault exchanges
+ java.util.List<ExchangeDetails> resps=
+ InteractionUtil.getResponseExchangeDetails(ed);
+
+ if (resps != null && resps.size() > 0) {
+ block.getProperties().put(PropertyName.REQUEST_LABEL,
+ ConverterUtil.getLabel(ed));
+ }
+ }
}
}
Modified:
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ConverterContext.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ConverterContext.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ConverterContext.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -21,11 +21,19 @@
import org.pi4soa.cdl.Choreography;
import org.pi4soa.cdl.ExchangeDetails;
+import org.scribble.common.logging.Journal;
import org.scribble.protocol.model.*;
public interface ConverterContext {
/**
+ * This method returns the journal for reporting issues.
+ *
+ * @return The journal
+ */
+ public Journal getJournal();
+
+ /**
* This method returns the source model reference.
*
* @return The source model reference
Modified:
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ConverterUtil.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ConverterUtil.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ConverterUtil.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -22,6 +22,8 @@
import javax.xml.namespace.QName;
import org.pi4soa.cdl.ExchangeDetails;
+import org.savara.common.model.util.PropertyName;
+import org.savara.common.model.util.TypeSystem;
import org.scribble.protocol.model.*;
/**
@@ -54,17 +56,20 @@
if (org.pi4soa.common.util.NamesUtil.isSet(infoType.getTypeName())) {
typeName = infoType.getTypeName();
+ ret.getProperties().put(PropertyName.XSD_TYPE, "true");
} else if (org.pi4soa.common.util.NamesUtil.isSet(infoType.getElementName())) {
typeName = infoType.getElementName();
+ ret.getProperties().put(PropertyName.XSD_ELEMENT, "true");
}
if (typeName != null) {
ret.setName(org.pi4soa.common.xml.XMLUtils.getLocalname(typeName));
- ret.getProperties().put(QNAME,
+ ret.getProperties().put(PropertyName.DATA_TYPE,
(new QName(org.pi4soa.common.xml.XMLUtils.getNamespace(typeName, resolver, null),
org.pi4soa.common.xml.XMLUtils.getLocalname(typeName))).toString());
+ ret.getProperties().put(PropertyName.TYPE_SYSTEM, TypeSystem.XSD);
//ret.setNamespace(org.pi4soa.common.xml.XMLUtils.getNamespace(typeName, resolver,
null));
}
Modified:
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/DefaultConverterContext.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/DefaultConverterContext.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/DefaultConverterContext.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -23,6 +23,7 @@
import org.pi4soa.cdl.Choreography;
import org.pi4soa.cdl.ExchangeDetails;
+import org.scribble.common.logging.Journal;
import org.scribble.protocol.model.*;
/**
@@ -30,10 +31,13 @@
*/
public class DefaultConverterContext implements ConverterContext {
+ private Journal m_journal=null;
+
/**
* Default constructor.
*/
- public DefaultConverterContext() {
+ public DefaultConverterContext(Journal journal) {
+ m_journal = journal;
}
/**
@@ -60,6 +64,15 @@
*/
/**
+ * This method returns the journal for reporting issues.
+ *
+ * @return The journal
+ */
+ public Journal getJournal() {
+ return(m_journal);
+ }
+
+ /**
* This method returns the declaration associated
* with the supplied name.
*
Modified:
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/InteractionConverterRuleImpl.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/InteractionConverterRuleImpl.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/InteractionConverterRuleImpl.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -382,7 +382,7 @@
InteractionUtil.getResponseExchangeDetails(details);
if (resps != null && resps.size() > 0) {
- interaction.getProperties().put("RequestLabel",
ConverterUtil.getLabel(details));
+ interaction.getProperties().put(PropertyName.REQUEST_LABEL,
ConverterUtil.getLabel(details));
}
// Check if fault thrown
@@ -438,7 +438,7 @@
}
if (details.getAction() == ExchangeActionType.RESPOND) {
- interaction.getProperties().put("ReplyToLabel",
ConverterUtil.getLabel(details));
+ interaction.getProperties().put(PropertyName.REPLY_TO_LABEL,
ConverterUtil.getLabel(details));
}
// Check if fault thrown
@@ -751,7 +751,7 @@
String lp=XMLUtils.getLocalname(itype.getTypeName());
QName qname=new QName(ns, lp);
- ms.getProperties().put(PropertyName.MESSAGE_TYPE, qname.toString());
+ ms.getProperties().put(PropertyName.DATA_TYPE, qname.toString());
ms.getProperties().put(PropertyName.XSD_TYPE, "true");
@@ -771,7 +771,7 @@
String lp=XMLUtils.getLocalname(itype.getElementName());
QName qname=new QName(ns, lp);
- ms.getProperties().put(PropertyName.MESSAGE_TYPE, qname.toString());
+ ms.getProperties().put(PropertyName.DATA_TYPE, qname.toString());
ms.getProperties().put(PropertyName.XSD_ELEMENT, "true");
Modified:
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ProtocolConverterRuleImpl.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ProtocolConverterRuleImpl.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ProtocolConverterRuleImpl.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -41,8 +41,6 @@
public class ProtocolConverterRuleImpl implements ConverterRule {
- private static final String CONVERSATION_TYPE = "conversationType";
-
/**
* This method determines whether the rule can be applied
* to the supplied CDL type.
@@ -256,8 +254,8 @@
protected static void defineRoles(ConverterContext context,
final Choreography choreo, Block block) {
- org.pi4soa.cdl.interfaces.InterfaceDeriver intfDeriver=
- org.pi4soa.cdl.interfaces.InterfaceFactory.getInterfaceDeriver();
+ //org.pi4soa.cdl.interfaces.InterfaceDeriver intfDeriver=
+ // org.pi4soa.cdl.interfaces.InterfaceFactory.getInterfaceDeriver();
final java.util.List<ParticipantType> partTypes=new
java.util.Vector<ParticipantType>();
final java.util.List<Participant> partInstances=new
java.util.Vector<Participant>();
@@ -310,7 +308,9 @@
while (piter.hasNext()) {
Role role=new Role();
Participant pinst=piter.next();
- role.setName(pinst.getName());
+ role.setName(XMLUtils.getLocalname(pinst.getName()));
+ role.getProperties().put(PropertyName.NAMESPACE,
+ CDLTypeUtil.getNamespace(pinst.getName(), pinst, true));
if (roleList == null) {
roleList = new RoleList();
@@ -326,6 +326,7 @@
//registerRole(context, choreo, conv, roleList, role, pinst);
// Setup interfaces
+ /*
for (int i=0; i < pinst.getRoleTypes().size(); i++) {
Contract contract=null;
@@ -373,6 +374,7 @@
setupInterfaces((org.pi4soa.cdl.RoleType)pinst.getRoleTypes().get(i),
contract, intfDeriver);
}
+ */
}
java.util.Iterator<ParticipantType> ptiter=partTypes.iterator();
@@ -387,6 +389,8 @@
Role role=new Role();
ParticipantType ptype=ptiter.next();
role.setName(XMLUtils.getLocalname(ptype.getName()));
+ role.getProperties().put(PropertyName.NAMESPACE,
+ CDLTypeUtil.getNamespace(ptype.getName(), ptype, true));
if (roleList == null) {
roleList = new RoleList();
@@ -406,6 +410,7 @@
//registerRole(context, choreo, conv, roleList, role, ptype);
// Setup interfaces
+ /*
for (int i=0; i < ptype.getRoleTypes().size(); i++) {
Contract contract=null;
@@ -439,10 +444,12 @@
setupInterfaces((org.pi4soa.cdl.RoleType)ptype.getRoleTypes().get(i),
contract, intfDeriver);
}
+ */
}
}
}
+ /*
protected static void setupInterfaces(org.pi4soa.cdl.RoleType roleType, Contract
contract,
org.pi4soa.cdl.interfaces.InterfaceDeriver intfDeriver) {
@@ -453,6 +460,7 @@
rtd.visit(iv);
}
+ */
/*
protected void convertVariables(ConverterContext context,
@@ -737,7 +745,7 @@
FaultDetails fault=new FaultDetails();
fault.setName(defn.getFaultName());
- fault.setNamespace(defn.getFaultNamespace());
+ //fault.setNamespace(defn.getFaultNamespace());
fault.getTypes().add(createType(defn));
Modified:
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ProtocolModelConverterRuleImpl.java
===================================================================
---
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ProtocolModelConverterRuleImpl.java 2011-01-08
23:39:18 UTC (rev 563)
+++
branches/experimental/2.0.x/bundles/org.savara.pi4soa.cdm/src/main/java/org/savara/pi4soa/cdm/parser/rules/ProtocolModelConverterRuleImpl.java 2011-01-09
23:22:28 UTC (rev 564)
@@ -24,6 +24,8 @@
import org.pi4soa.cdl.*;
import org.pi4soa.cdl.util.CDLTypeUtil;
import org.savara.common.model.util.PropertyName;
+import org.savara.contract.generator.ContractGenerator;
+import org.savara.contract.generator.ContractGeneratorFactory;
import org.scribble.protocol.model.*;
public class ProtocolModelConverterRuleImpl implements ConverterRule {
@@ -145,6 +147,12 @@
}
*/
+ // Derive contracts associated with the protocol model
+ ContractGenerator cg=ContractGeneratorFactory.getContractGenerator();
+ if (cg != null) {
+ cg.generate(ret, context.getJournal());
+ }
+
return(ret);
}