Author: objectiser
Date: 2008-09-11 12:48:42 -0400 (Thu, 11 Sep 2008)
New Revision: 326
Added:
cdl/trunk/distribution/src/main/release/samples/jbossesb/trailblazer/
cdl/trunk/distribution/src/main/release/samples/jbossesb/trailblazer/models/
cdl/trunk/distribution/src/main/release/samples/jbossesb/trailblazer/models/.classpath
cdl/trunk/distribution/src/main/release/samples/jbossesb/trailblazer/models/.project
cdl/trunk/distribution/src/main/release/samples/jbossesb/trailblazer/models/src/
cdl/trunk/distribution/src/main/release/samples/jbossesb/trailblazer/models/src/pi4soa.xml
cdl/trunk/samples/jbossesb/trailblazer/models/
cdl/trunk/samples/jbossesb/trailblazer/models/LoanRequest.scn
cdl/trunk/samples/jbossesb/trailblazer/models/TrailBlazer.cdm
Modified:
cdl/trunk/distribution/src/main/release/samples/jbossesb/brokerage/supplier/.project
Log:
Added trailblazer model and assemble an Eclipse project to make it easier for user to
import into an Eclipse environment.
Modified:
cdl/trunk/distribution/src/main/release/samples/jbossesb/brokerage/supplier/.project
===================================================================
---
cdl/trunk/distribution/src/main/release/samples/jbossesb/brokerage/supplier/.project 2008-09-11
15:16:26 UTC (rev 325)
+++
cdl/trunk/distribution/src/main/release/samples/jbossesb/brokerage/supplier/.project 2008-09-11
16:48:42 UTC (rev 326)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
- <name>brokage-supplier</name>
+ <name>brokerage-supplier</name>
<comment></comment>
<projects>
<project>brokerage-models</project>
Added:
cdl/trunk/distribution/src/main/release/samples/jbossesb/trailblazer/models/.classpath
===================================================================
---
cdl/trunk/distribution/src/main/release/samples/jbossesb/trailblazer/models/.classpath
(rev 0)
+++
cdl/trunk/distribution/src/main/release/samples/jbossesb/trailblazer/models/.classpath 2008-09-11
16:48:42 UTC (rev 326)
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con"
path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
Added:
cdl/trunk/distribution/src/main/release/samples/jbossesb/trailblazer/models/.project
===================================================================
--- cdl/trunk/distribution/src/main/release/samples/jbossesb/trailblazer/models/.project
(rev 0)
+++
cdl/trunk/distribution/src/main/release/samples/jbossesb/trailblazer/models/.project 2008-09-11
16:48:42 UTC (rev 326)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>trailblazer-models</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
Added:
cdl/trunk/distribution/src/main/release/samples/jbossesb/trailblazer/models/src/pi4soa.xml
===================================================================
---
cdl/trunk/distribution/src/main/release/samples/jbossesb/trailblazer/models/src/pi4soa.xml
(rev 0)
+++
cdl/trunk/distribution/src/main/release/samples/jbossesb/trailblazer/models/src/pi4soa.xml 2008-09-11
16:48:42 UTC (rev 326)
@@ -0,0 +1,37 @@
+<!--
+/*
+# * Copyright 2005-8 Pi4 Technologies Ltd
+# *
+# * Licensed under the Apache License, Version 2.0 (the "License");
+# * you may not use this file except in compliance with the License.
+# * You may obtain a copy of the License at
+# *
+# *
http://www.apache.org/licenses/LICENSE-2.0
+# *
+# * Unless required by applicable law or agreed to in writing, software
+# * distributed under the License is distributed on an "AS IS" BASIS,
+# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# * See the License for the specific language governing permissions and
+# * limitations under the License.
+# *
+# *
+# * Change History:
+# * 14, April 2008 : Initial version created by gary
+# */
+-->
+
+<pi4soa>
+ <tracker>
+ <jndi>
+
<initialContextFactory>org.jnp.interfaces.NamingContextFactory</initialContextFactory>
+ <providerURL>jnp://localhost:1099</providerURL>
+
<factoryURLPackages>org.jboss.naming:org.jnp.interfaces</factoryURLPackages>
+ </jndi>
+ <jms>
+ <connectionFactory>ConnectionFactory</connectionFactory>
+
<connectionFactoryAlternate>ConnectionFactory</connectionFactoryAlternate>
+ <destination>topic/tracker</destination>
+ </jms>
+ </tracker>
+</pi4soa>
+
Added: cdl/trunk/samples/jbossesb/trailblazer/models/LoanRequest.scn
===================================================================
--- cdl/trunk/samples/jbossesb/trailblazer/models/LoanRequest.scn
(rev 0)
+++ cdl/trunk/samples/jbossesb/trailblazer/models/LoanRequest.scn 2008-09-11 16:48:42 UTC
(rev 326)
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="Cp1252"?>
+<scn:Scenario xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:scn="http://www.pi4soa.org/scenario" name="LoanRequest"
description="Valid loan request" author="gary"
choreographyDescriptionURL="TrailBlazer.cdm">
+ <scenarioObjects xsi:type="scn:MessageEvent"
participant="//(a)participants.0" operationName="checkCredit"
value="<creditCheck name="Joe Broke"
ssn="1234567890" address="1 Spenditall Str., BrokeTown 99999
DC" employerName="" salary="50000.0"
loanAmount="1000.0" loanDuration="12"
email=&quot;gary(a)pi4tech.com&quot; creditScore="0" />"
serviceType="{http://www.pi4soa.org/TrailBlazer}creditAgency"
messageType="creditCheck"/>
+ <scenarioObjects xsi:type="scn:MessageEvent"
participant="//(a)participants.1" operationName="checkCredit"
value="<creditCheck name="Joe Broke"
ssn="1234567890" address="1 Spenditall Str., BrokeTown 99999
DC" employerName="" salary="50000.0"
loanAmount="1000.0" loanDuration="12"
email=&quot;gary(a)pi4tech.com&quot; creditScore="0" />"
direction="receive"
serviceType="{http://www.pi4soa.org/TrailBlazer}creditAgency"
messageType="creditCheck"/>
+ <scenarioObjects xsi:type="scn:MessageEvent"
participant="//(a)participants.1" operationName="checkCredit"
isRequest="false" value="<creditCheckResult
ssn="1234567890" score="4" />"
serviceType="{http://www.pi4soa.org/TrailBlazer}creditAgency"
messageType="creditCheckResult"/>
+ <scenarioObjects xsi:type="scn:MessageEvent"
participant="//(a)participants.0" operationName="checkCredit"
isRequest="false" value="<creditCheckResult
ssn="1234567890" score="4" />"
direction="receive"
serviceType="{http://www.pi4soa.org/TrailBlazer}creditAgency"
messageType="creditCheckResult"/>
+ <scenarioObjects xsi:type="scn:MessageEvent"
participant="//(a)participants.0" operationName="requestQuote"
value="<quoteRequest ssn="1234567890"
creditScore="0" creditHistoryLen="0"
amount="1000" term="12" ref="1"
customerUID="1234567890"
customerEmail=&quot;gary(a)scribble.org&quot; />"
serviceType="{http://www.pi4soa.org/TrailBlazer}bank"
messageType="quoteRequest"/>
+ <scenarioObjects xsi:type="scn:MessageEvent"
participant="//(a)participants.2" operationName="requestQuote"
value="<quoteRequest ssn="1234567890"
creditScore="0" creditHistoryLen="0"
amount="1000" term="12" ref="1"
customerUID="1234567890"
customerEmail=&quot;gary(a)scribble.org&quot; />"
direction="receive"
serviceType="{http://www.pi4soa.org/TrailBlazer}bank"
messageType="quoteRequest"/>
+ <scenarioObjects xsi:type="scn:MessageEvent"
participant="//(a)participants.2" operationName="requestQuote"
isRequest="false" value="<quote>

<interestRate>8.60</interestRate>

<quoteId>JMSBasedBank-0</quoteId>

<ref>1</ref>

<errorCode>0</errorCode>

<customerUID>1234567890</customerUID>

<customerEmail>gary@scribble.org</customerEmail>
</quote>
"
serviceType="{http://www.pi4soa.org/TrailBlazer}bank"
messageType="quote"/>
+ <scenarioObjects xsi:type="scn:MessageEvent"
participant="//(a)participants.0" operationName="requestQuote"
isRequest="false" value="<quote>

<interestRate>8.60</interestRate>

<quoteId>JMSBasedBank-0</quoteId>

<ref>1</ref>

<errorCode>0</errorCode>

<customerUID>1234567890</customerUID>

<customerEmail>gary@scribble.org</customerEmail>
</quote>
"
direction="receive"
serviceType="{http://www.pi4soa.org/TrailBlazer}bank"
messageType="quote"/>
+ <scenarioObjects xsi:type="scn:MessageEvent"
participant="//(a)participants.0" operationName="notify"
value="<quote>

<interestRate>8.60</interestRate>

<quoteId>JMSBasedBank-0</quoteId>

<ref>1</ref>

<errorCode>0</errorCode>

<customerUID>1234567890</customerUID>

<customerEmail>gary@scribble.org</customerEmail>
</quote>"
serviceType="{http://www.pi4soa.org/TrailBlazer}notifier"
messageType="quote"/>
+ <scenarioObjects xsi:type="scn:MessageEvent"
participant="//(a)participants.4" operationName="notify"
value="<quote>

<interestRate>8.60</interestRate>

<quoteId>JMSBasedBank-0</quoteId>

<ref>1</ref>

<errorCode>0</errorCode>

<customerUID>1234567890</customerUID>

<customerEmail>gary@scribble.org</customerEmail>
</quote>"
direction="receive"
serviceType="{http://www.pi4soa.org/TrailBlazer}notifier"
messageType="quote"/>
+ <scenarioObjects xsi:type="scn:MessageEvent"
participant="//(a)participants.0" operationName="requestQuote"
value="<quoteRequest ssn="1234567890"
creditScore="0" creditHistoryLen="0"
amount="1000" term="12" ref="2"
customerUID="1234567890"
customerEmail=&quot;gary(a)scribble.org&quot; />"
serviceType="{http://www.pi4soa.org/TrailBlazer}bank"
messageType="quoteRequest"/>
+ <scenarioObjects xsi:type="scn:MessageEvent"
participant="//(a)participants.3" operationName="requestQuote"
value="<quoteRequest ssn="1234567890"
creditScore="0" creditHistoryLen="0"
amount="1000" term="12" ref="2"
customerUID="1234567890"
customerEmail=&quot;gary(a)scribble.org&quot; />"
direction="receive"
serviceType="{http://www.pi4soa.org/TrailBlazer}bank"
messageType="quoteRequest"/>
+ <scenarioObjects xsi:type="scn:MessageEvent"
participant="//(a)participants.3" operationName="requestQuote"
isRequest="false" value="<quote>

<interestRate>8.60</interestRate>

<quoteId>FileBasedBank-0</quoteId>

<ref>2</ref>

<errorCode>0</errorCode>

<customerUID>1234567890</customerUID>

<customerEmail>gary@scribble.org</customerEmail>
</quote>
"
serviceType="{http://www.pi4soa.org/TrailBlazer}bank"
messageType="quote"/>
+ <scenarioObjects xsi:type="scn:MessageEvent"
participant="//(a)participants.0" operationName="requestQuote"
isRequest="false" value="<quote>

<interestRate>8.60</interestRate>

<quoteId>FileBasedBank-0</quoteId>

<ref>2</ref>

<errorCode>0</errorCode>

<customerUID>1234567890</customerUID>

<customerEmail>gary@scribble.org</customerEmail>
</quote>
"
direction="receive"
serviceType="{http://www.pi4soa.org/TrailBlazer}bank"
messageType="quote"/>
+ <scenarioObjects xsi:type="scn:MessageEvent"
participant="//(a)participants.0" operationName="notify"
value="<quote>

<interestRate>8.60</interestRate>

<quoteId>FileBasedBank-0</quoteId>

<ref>2</ref>

<errorCode>0</errorCode>

<customerUID>1234567890</customerUID>

<customerEmail>gary@scribble.org</customerEmail>
</quote>"
serviceType="{http://www.pi4soa.org/TrailBlazer}notifier"
messageType="quote"/>
+ <scenarioObjects xsi:type="scn:MessageEvent"
participant="//(a)participants.4" operationName="notify"
value="<quote>

<interestRate>8.60</interestRate>

<quoteId>FileBasedBank-0</quoteId>

<ref>2</ref>

<errorCode>0</errorCode>

<customerUID>1234567890</customerUID>

<customerEmail>gary@scribble.org</customerEmail>
</quote>"
direction="receive"
serviceType="{http://www.pi4soa.org/TrailBlazer}notifier"
messageType="quote"/>
+ <messageLinks source="//(a)scenarioObjects.0"
target="//(a)scenarioObjects.1"/>
+ <messageLinks source="//(a)scenarioObjects.2"
target="//(a)scenarioObjects.3"/>
+ <messageLinks source="//(a)scenarioObjects.4"
target="//(a)scenarioObjects.5"/>
+ <messageLinks source="//(a)scenarioObjects.6"
target="//(a)scenarioObjects.7"/>
+ <messageLinks source="//(a)scenarioObjects.8"
target="//(a)scenarioObjects.9"/>
+ <messageLinks source="//(a)scenarioObjects.10"
target="//(a)scenarioObjects.11"/>
+ <messageLinks source="//(a)scenarioObjects.12"
target="//(a)scenarioObjects.13"/>
+ <messageLinks source="//(a)scenarioObjects.14"
target="//(a)scenarioObjects.15"/>
+ <participants type="LoanBrokerParticipant"/>
+ <participants type="CreditAgencyParticipant"/>
+ <participants type="BankParticipant" instance="JMSBank"/>
+ <participants type="BankParticipant" instance="FileBank"/>
+ <participants type="NotifierParticipant"/>
+</scn:Scenario>
+
\ No newline at end of file
Added: cdl/trunk/samples/jbossesb/trailblazer/models/TrailBlazer.cdm
===================================================================
--- cdl/trunk/samples/jbossesb/trailblazer/models/TrailBlazer.cdm
(rev 0)
+++ cdl/trunk/samples/jbossesb/trailblazer/models/TrailBlazer.cdm 2008-09-11 16:48:42 UTC
(rev 326)
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="Cp1252"?>
+<org.pi4soa.cdl:Package xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:org.pi4soa.cdl="http:///org/pi4soa/cdl.ecore" description="The
choreography description for TrailBlazer" name="TrailBlazer"
author="gary" version="0.1"
targetNamespace="http://www.pi4soa.org/TrailBlazer">
+ <typeDefinitions>
+ <nameSpaces description="Target Namespace for TrailBlazer"
prefix="tns"
uRI="http://www.pi4soa.org/TrailBlazer"/>
+ <nameSpaces description="XML Schema Namespace" prefix="xsd"
uRI="http://www.w3.org/2001/XMLSchema"/>
+ <informationTypes description="This is the information type
CreditCheckReq" name="CreditCheckReq"
elementName="creditCheck"/>
+ <informationTypes description="This is the information type
CreditCheckResp" name="CreditCheckResp"
elementName="creditCheckResult"/>
+ <informationTypes description="This is the information type
InsufficientCredit" name="InsufficientCredit"
elementName="insufficientCredit"/>
+ <informationTypes description="This is the information type Quote"
name="Quote" elementName="quote"/>
+ <informationTypes description="This is the information type
QuoteRefType" name="QuoteRefType" typeName="xsd:string"/>
+ <informationTypes description="This is the information type QuoteReq"
name="QuoteReq" elementName="quoteRequest"/>
+ <informationTypes description="This is the information type SSNType"
name="SSNType" typeName="xsd:string"/>
+ <informationTypes description="This is the information type URIType"
name="URIType" typeName="xsd:anyURI"/>
+ <tokens description="This is the token QuoteRef"
name="QuoteRef"
informationType="//@typeDefinitions/(a)informationTypes.4"/>
+ <tokens description="This is the token SSN" name="SSN"
informationType="//@typeDefinitions/(a)informationTypes.6"/>
+ <tokens description="This is the token URI" name="URI"
informationType="//@typeDefinitions/(a)informationTypes.7"/>
+ <tokenLocators description="This is the token locator
QuoteRef4InsufficientCredit" token="//@typeDefinitions/(a)tokens.0"
informationType="//@typeDefinitions/(a)informationTypes.2"
query="//ref/text()" name="QuoteRef4InsufficientCredit"/>
+ <tokenLocators description="This is the token locator QuoteRef4Quote"
token="//@typeDefinitions/(a)tokens.0"
informationType="//@typeDefinitions/(a)informationTypes.3"
query="//ref/text()" name="QuoteRef4Quote"/>
+ <tokenLocators description="This is the token locator QuoteRef4QuoteReq"
token="//@typeDefinitions/(a)tokens.0"
informationType="//@typeDefinitions/(a)informationTypes.5"
query="//@ref" name="QuoteRef4QuoteReq"/>
+ <tokenLocators description="This is the token locator
SSN4CreditCheckReq" token="//@typeDefinitions/(a)tokens.1"
informationType="//@typeDefinitions/(a)informationTypes.0"
query="//@ssn" name="SSN4CreditCheckReq"/>
+ <tokenLocators description="This is the token locator
SSN4CreditCheckResp" token="//@typeDefinitions/(a)tokens.1"
informationType="//@typeDefinitions/(a)informationTypes.1"
query="//@ssn" name="SSN4CreditCheckResp"/>
+ <tokenLocators description="This is the token locator
SSN4InsufficientCredit" token="//@typeDefinitions/(a)tokens.1"
informationType="//@typeDefinitions/(a)informationTypes.2"
query="//customerUID/text()" name="SSN4InsufficientCredit"/>
+ <tokenLocators description="This is the token locator SSN4Quote"
token="//@typeDefinitions/(a)tokens.1"
informationType="//@typeDefinitions/(a)informationTypes.3"
query="//customerUID/text()" name="SSN4Quote"/>
+ <tokenLocators description="This is the token locator SSN4QuoteReq"
token="//@typeDefinitions/(a)tokens.1"
informationType="//@typeDefinitions/(a)informationTypes.5"
query="//@ssn" name="SSN4QuoteReq"/>
+ <roleTypes description="This is the role type Bank"
name="Bank">
+ <behaviors description="This is the behavior BankBehavior"
name="BankBehavior" interface="bank"/>
+ </roleTypes>
+ <roleTypes description="This is the role type CreditAgency"
name="CreditAgency">
+ <behaviors description="This is the behavior CreditAgencyBehavior"
name="CreditAgencyBehavior" interface="creditAgency"/>
+ </roleTypes>
+ <roleTypes description="This is the role type LoanBroker"
name="LoanBroker">
+ <behaviors description="This is the behavior LoanBrokerBehavior"
name="LoanBrokerBehavior" interface="loanBroker"/>
+ </roleTypes>
+ <roleTypes description="This is the role type Notifier"
name="Notifier">
+ <behaviors description="This is the behavior NotifierBehavior"
name="NotifierBehavior" interface="notifier"/>
+ </roleTypes>
+ <relationshipTypes description="Relationship between LoanBroker and
Bank" name="LoanBrokerToBankRel"
firstRoleType="//@typeDefinitions/(a)roleTypes.2"
secondRoleType="//@typeDefinitions/(a)roleTypes.0"/>
+ <relationshipTypes description="Relationship between LoanBroker and
CreditAgency" name="LoanBrokerToCreditAgencyRel"
firstRoleType="//@typeDefinitions/(a)roleTypes.2"
secondRoleType="//@typeDefinitions/(a)roleTypes.1"/>
+ <relationshipTypes description="Relationship between LoanBroker and
Notifier" name="LoanBrokerToNotifierRel"
firstRoleType="//@typeDefinitions/(a)roleTypes.2"
secondRoleType="//@typeDefinitions/(a)roleTypes.3"/>
+ <participantTypes description="This is the participant type
BankParticipant" name="BankParticipant"
roleTypes="//@typeDefinitions/(a)roleTypes.0"/>
+ <participantTypes description="This is the participant type
CreditAgencyParticipant" name="CreditAgencyParticipant"
roleTypes="//@typeDefinitions/(a)roleTypes.1"/>
+ <participantTypes description="This is the participant type
LoanBrokerParticipant" name="LoanBrokerParticipant"
roleTypes="//@typeDefinitions/(a)roleTypes.2"/>
+ <participantTypes description="This is the participant type
NotifierParticipant" name="NotifierParticipant"
roleTypes="//@typeDefinitions/(a)roleTypes.3"/>
+ <channelTypes description="This is the channel type BankChannelType"
name="BankChannelType" referenceToken="//@typeDefinitions/(a)tokens.2"
roleType="//@typeDefinitions/(a)roleTypes.0">
+ <identities description="SSN Id and Quote Ref"
tokens="//@typeDefinitions/(a)tokens.1 //@typeDefinitions/(a)tokens.0"/>
+ <identities description="SSN Id" type="Association"
tokens="//@typeDefinitions/(a)tokens.1"/>
+ </channelTypes>
+ <channelTypes description="This is the channel type
CreditAgencyChannelType" name="CreditAgencyChannelType"
referenceToken="//@typeDefinitions/(a)tokens.2"
roleType="//@typeDefinitions/(a)roleTypes.1">
+ <identities description="SSN Id"
tokens="//@typeDefinitions/(a)tokens.1"/>
+ </channelTypes>
+ <channelTypes description="This is the channel type NotifierChannelType"
name="NotifierChannelType"
referenceToken="//@typeDefinitions/(a)tokens.2"
roleType="//@typeDefinitions/(a)roleTypes.3">
+ <identities description="SSN Id" type="Association"
tokens="//@typeDefinitions/(a)tokens.1"/>
+ <identities description="SSN Id and Quote Ref"
tokens="//@typeDefinitions/(a)tokens.1 //@typeDefinitions/(a)tokens.0"/>
+ </channelTypes>
+ </typeDefinitions>
+ <choreographies description="Choreography flow for the TrailBlazer
process" name="TrailBlazerProcess" root="true">
+ <enclosedChoreographies name="RequestQuote">
+ <variableDefinitions description="Channel to facilitate interaction to
Bank" name="BankChannel"
type="//@typeDefinitions/(a)channelTypes.0"
roleTypes="//@typeDefinitions/(a)roleTypes.0
//@typeDefinitions/(a)roleTypes.2"/>
+ <variableDefinitions description="Channel to facilitate interaction to
Notifier" name="NotifierChannel"
type="//@typeDefinitions/(a)channelTypes.2"
roleTypes="//@typeDefinitions/(a)roleTypes.2
//@typeDefinitions/(a)roleTypes.3"/>
+ <activities xsi:type="org.pi4soa.cdl:Interaction"
name="QuoteRequest" operation="requestQuote"
channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.0"
relationship="//@typeDefinitions/(a)relationshipTypes.0">
+ <exchangeDetails description="This is the exchange details for the
request exchange associated with interaction QuoteRequest"
name="QuoteRequestRequestExchange"
type="//@typeDefinitions/(a)informationTypes.5"/>
+ <exchangeDetails description="This is the exchange details for the
respond exchange associated with interaction QuoteRequest"
name="QuoteRequestRespondExchange"
type="//@typeDefinitions/(a)informationTypes.3" action="Respond"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Interaction"
name="NotifyCustomer" operation="notify"
channelVariable="//@choreographies.0/@enclosedChoreographies.0/(a)variableDefinitions.1"
relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the
request exchange associated with interaction NotifyCustomer"
name="NotifyCustomerRequestExchange"
type="//@typeDefinitions/(a)informationTypes.3"/>
+ </activities>
+ </enclosedChoreographies>
+ <variableDefinitions description="Channel to facilitate interaction to
CreditAgency" name="CreditAgencyChannel"
type="//@typeDefinitions/(a)channelTypes.1"
roleTypes="//@typeDefinitions/(a)roleTypes.1
//@typeDefinitions/(a)roleTypes.2"/>
+ <variableDefinitions description="This is the variable NotifierChannel"
name="NotifierChannel" type="//@typeDefinitions/(a)channelTypes.2"
roleTypes="//@typeDefinitions/(a)roleTypes.2
//@typeDefinitions/(a)roleTypes.3"/>
+ <variableDefinitions description="This is the variable
creditCheckResult" name="creditCheckResult"
type="//@typeDefinitions/(a)informationTypes.1"
roleTypes="//@typeDefinitions/(a)roleTypes.2"/>
+ <activities xsi:type="org.pi4soa.cdl:Interaction"
name="CreditCheck" operation="checkCredit"
channelVariable="//@choreographies.0/(a)variableDefinitions.0"
relationship="//@typeDefinitions/(a)relationshipTypes.1">
+ <exchangeDetails description="This is the exchange details for the request
exchange associated with interaction CreditCheck"
name="CreditCheckRequestExchange"
type="//@typeDefinitions/(a)informationTypes.0"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Interaction"
name="CreditCheck" operation="checkCredit"
channelVariable="//@choreographies.0/(a)variableDefinitions.0"
relationship="//@typeDefinitions/(a)relationshipTypes.1">
+ <exchangeDetails description="This is the exchange details for the respond
exchange associated with interaction CreditCheck"
name="CreditCheckRespondExchange"
type="//@typeDefinitions/(a)informationTypes.1" action="Respond"
receiveVariable="//@choreographies.0/(a)variableDefinitions.2"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Choice">
+ <activities xsi:type="org.pi4soa.cdl:Conditional"
description="Sufficient credit to request quotes" name="ValidCredit"
expression="cdl:getVariable('creditCheckResult','','//@score')
>= 4">
+ <activities xsi:type="org.pi4soa.cdl:Parallel">
+ <activities xsi:type="org.pi4soa.cdl:Sequence"
description="First quote">
+ <activities xsi:type="org.pi4soa.cdl:Perform"
choreography="//@choreographies.0/(a)enclosedChoreographies.0"/>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Sequence"
description="Second quote">
+ <activities xsi:type="org.pi4soa.cdl:Perform"
choreography="//@choreographies.0/(a)enclosedChoreographies.0"/>
+ </activities>
+ </activities>
+ </activities>
+ <activities xsi:type="org.pi4soa.cdl:Sequence"
description="Insufficient credit">
+ <activities xsi:type="org.pi4soa.cdl:Interaction"
name="NotifyCustomer" operation="notify"
channelVariable="//@choreographies.0/(a)variableDefinitions.1"
relationship="//@typeDefinitions/(a)relationshipTypes.2">
+ <exchangeDetails description="This is the exchange details for the
request exchange associated with interaction NotifyCustomer"
name="NotifyCustomerRequestExchange"
type="//@typeDefinitions/(a)informationTypes.2"/>
+ </activities>
+ </activities>
+ </activities>
+ </choreographies>
+</org.pi4soa.cdl:Package>