source: ccr/trunk/nhin-vista/projects/NHINC/Current/Product/Production/Gateway/NhincInternalOrchBPEL/src/NhincComponentInternalDocRetrieve.bpel@ 507

Last change on this file since 507 was 507, checked in by George Lilly, 15 years ago

NHIN gateway and adaptor for use on linux with VistA EHR and RPMS

File size: 14.0 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<process
3 name="NhincComponentInternalDocRetrieve"
4 targetNamespace="urn:gov:hhs:fha:nhinc:gateway:nhincinternalorchbpel:nhinccomponentinternaldocretrieve"
5 xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
6 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
7 xmlns:sxt="http://www.sun.com/wsbpel/2.0/process/executable/SUNExtension/Trace"
8 xmlns:sxed="http://www.sun.com/wsbpel/2.0/process/executable/SUNExtension/Editor"
9 xmlns:sxeh="http://www.sun.com/wsbpel/2.0/process/executable/SUNExtension/ErrorHandling"
10 xmlns:tns="urn:gov:hhs:fha:nhinc:gateway:nhincinternalorchbpel:nhinccomponentinternaldocretrieve" xmlns:ns0="urn:oasis:names:tc:ebxml-regrep:xsd:rs:3.0" xmlns:ns1="urn:gov:hhs:fha:nhinc:common:propertyaccess" xmlns:ns2="urn:gov:hhs:fha:nhinc:common:connectionmanagerinfo" xmlns:ns3="http://docs.oasis-open.org/wsbpel/2.0/process/executable" xmlns:ns4="urn:gov:hhs:fha:nhinc:common:nhinccommon" xmlns:ns5="urn:ihe:iti:xds-b:2007" xmlns:ns6="urn:gov:hhs:fha:nhinc:common:nhinccommoninternalorch" xmlns:ns7="urn:gov:hhs:fha:nhinc:common:nhinccommonadapter" xmlns:ns8="urn:gov:hhs:fha:nhinc:common:eventcommon" xmlns:ns9="urn:gov:hhs:fha:nhinc:common:policyenginedte" xmlns:ns10="urn:oasis:names:tc:xacml:2.0:context:schema:os">
11 <import namespace="urn:gov:hhs:fha:nhinc:nhinccomponentinternaldocretrieveorch" location="Interfaces/wsdl/NhincComponentInternalDocRetrieveOrch.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
12 <import namespace="urn:gov:hhs:fha:nhinc:nhinccomponentpropaccessor" location="Interfaces/wsdl/NhincComponentPropAccessor.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
13 <import namespace="urn:gov:hhs:fha:nhinc:nhinccomponentconnectionmanager" location="Interfaces/wsdl/NhincComponentConnectionManager.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
14 <import namespace="urn:gov:hhs:fha:nhinc:adapterdocretrieve" location="Interfaces/wsdl/AdapterDocRetrieve.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
15 <import namespace="urn:gov:hhs:fha:nhinc:NhincComponentInternalPolicyEngineFacade" location="Interfaces/wsdl/NhincComponentInternalPolicyEngineFacade.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"/>
16 <partnerLinks>
17 <partnerLink name="PolicyEnginePL" xmlns:tns="urn:gov:hhs:fha:nhinc:NhincComponentInternalPolicyEngineFacade" partnerLinkType="tns:NhincComponentInternalPolicyEngineFacade" partnerRole="NhincComponentInternalPolicyEngineFacadePortTypeRole"/>
18 <partnerLink name="PropertyAccessorPL" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentpropaccessor" partnerLinkType="tns:NhincComponentPropAccessor" partnerRole="NhincComponentPropAccessorPortTypeRole"/>
19 <partnerLink name="ConnectionManagerPL" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentconnectionmanager" partnerLinkType="tns:NhincComponentConnectionManager" partnerRole="NhincComponentConnectionManagerPortTypeRole"/>
20 <partnerLink name="AdapterDocRetrievePL" xmlns:tns="urn:gov:hhs:fha:nhinc:adapterdocretrieve" partnerLinkType="tns:AdapterDocRetrieve" partnerRole="AdapterDocRetrievePortTypeRole"/>
21 <partnerLink name="InternalDocRetrievePL" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentinternaldocretrieveorch" partnerLinkType="tns:NhincComponentInternalDocRetrieveOrch" myRole="NhincComponentInternalDocRetrieveOrchPortTypeRole"/>
22 </partnerLinks>
23 <variables>
24 <variable name="Internal_CrossGatewayRetrieveOut" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentinternaldocretrieveorch" messageType="tns:RespondingGateway_CrossGatewayRetrieveResponse"/>
25 <variable name="Internal_CrossGatewayRetrieveIn" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentinternaldocretrieveorch" messageType="tns:RespondingGateway_CrossGatewayRetrieveRequest"/>
26 </variables>
27 <sequence>
28 <receive name="ReceiveInternalDocRetrieve" createInstance="yes" partnerLink="InternalDocRetrievePL" operation="RespondingGateway_CrossGatewayRetrieve" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentinternaldocretrieveorch" portType="tns:NhincComponentInternalDocRetrieveOrchPortType" variable="Internal_CrossGatewayRetrieveIn"/>
29 <scope name="InternalDocRetrieveScope">
30 <variables>
31 <variable name="CheckPolicyDocRetrieveOut" xmlns:tns="urn:gov:hhs:fha:nhinc:NhincComponentInternalPolicyEngineFacade" messageType="tns:CheckPolicyResponseMessage"/>
32 <variable name="CheckPolicyDocRetrieveIn" xmlns:tns="urn:gov:hhs:fha:nhinc:NhincComponentInternalPolicyEngineFacade" messageType="tns:CheckPolicyDocRetrieveRequestMessage"/>
33 <variable name="Adapter_CrossGatewayRetrieveOut" xmlns:tns="urn:gov:hhs:fha:nhinc:adapterdocretrieve" messageType="tns:RespondingGateway_CrossGatewayRetrieveResponseMessage"/>
34 <variable name="Adapter_CrossGatewayRetrieveIn" xmlns:tns="urn:gov:hhs:fha:nhinc:adapterdocretrieve" messageType="tns:RespondingGateway_CrossGatewayRetrieveRequestMessage"/>
35 <variable name="GetConnectionInfoEndpointByServiceNameOut" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentconnectionmanager" messageType="tns:GetConnectionInfoEndpointByServiceNameResponseMessage"/>
36 <variable name="GetConnectionInfoEndpointByServiceNameIn" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentconnectionmanager" messageType="tns:GetConnectionInfoEndpointByServiceNameRequestMessage"/>
37 <variable name="GetPropertyOut" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentpropaccessor" messageType="tns:GetPropertyResponseMessage"/>
38 <variable name="GetPropertyIn" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentpropaccessor" messageType="tns:GetPropertyRequestMessage"/>
39 </variables>
40 <faultHandlers>
41 <catch faultName="sxeh:systemFault" faultVariable="systemFaultVar" faultMessageType="sxeh:faultMessage">
42 <sequence name="SystemFaultSeq">
43 <assign name="AssignErrorInfo">
44 <sxt:trace>
45 <sxt:log level="info" location="onStart">
46 <ns3:from>'NhincComponentInternalDocRetreive.bpel - A system fault was encountered processing a doc retrieve message. Fault details follow...'</ns3:from>
47 </sxt:log>
48 <sxt:log level="warning" location="onStart">
49 <ns3:from variable="systemFaultVar"/>
50 </sxt:log>
51 </sxt:trace>
52 <copy>
53 <from>'urn:oasis:names:tc:ebxml-regrep:ResponseStatusType:Failure'</from>
54 <to>$Internal_CrossGatewayRetrieveOut.RetrieveDocumentSetResponse/ns0:RegistryResponse/@status</to>
55 </copy>
56 </assign>
57 <reply name="ReplyInternalDocRetrieveFromFault" partnerLink="InternalDocRetrievePL" operation="RespondingGateway_CrossGatewayRetrieve" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentinternaldocretrieveorch" portType="tns:NhincComponentInternalDocRetrieveOrchPortType" variable="Internal_CrossGatewayRetrieveOut"/>
58 <exit name="ExitFromFault"/>
59 </sequence>
60 </catch>
61 </faultHandlers>
62 <sequence name="InternalDocRetrieveSeq">
63 <assign name="AssignPolicyEngineInput">
64 <copy>
65 <from>'Inbound'</from>
66 <to>$CheckPolicyDocRetrieveIn.CheckPolicyDocRetrieveRequest/ns8:direction</to>
67 </copy>
68 <copy>
69 <from>$Internal_CrossGatewayRetrieveIn.RetrieveDocumentSetRequest/ns5:RetrieveDocumentSetRequest/ns5:DocumentRequest/ns5:HomeCommunityId</from>
70 <to>$CheckPolicyDocRetrieveIn.CheckPolicyDocRetrieveRequest/ns8:sendingHomeCommunity/ns4:homeCommunityId</to>
71 </copy>
72 <copy>
73 <from>$Internal_CrossGatewayRetrieveIn.RetrieveDocumentSetRequest/ns5:RetrieveDocumentSetRequest</from>
74 <to>$CheckPolicyDocRetrieveIn.CheckPolicyDocRetrieveRequest/ns8:message/ns5:RetrieveDocumentSetRequest</to>
75 </copy>
76 <copy>
77 <from>$Internal_CrossGatewayRetrieveIn.RetrieveDocumentSetRequest/ns6:assertion</from>
78 <to>$CheckPolicyDocRetrieveIn.CheckPolicyDocRetrieveRequest/ns8:message/ns8:assertion</to>
79 </copy>
80 </assign>
81 <invoke name="InvokePolicyEngine" partnerLink="PolicyEnginePL" operation="CheckPolicyDocRetrieve" xmlns:tns="urn:gov:hhs:fha:nhinc:NhincComponentInternalPolicyEngineFacade" portType="tns:NhincComponentInternalPolicyEngineFacadePortType" inputVariable="CheckPolicyDocRetrieveIn" outputVariable="CheckPolicyDocRetrieveOut"/>
82 <if name="IfPolicyCheck">
83 <condition>'Permit' = $CheckPolicyDocRetrieveOut.CheckPolicyResponse/ns7:response/ns10:Result/ns10:Decision</condition>
84 <sequence name="PolicyCheckTrueSeq">
85 <assign name="AssignGetHomeCommunityInput">
86 <copy>
87 <from>'gateway'</from>
88 <to>$GetPropertyIn.GetPropertyRequest/ns1:propertyFile</to>
89 </copy>
90 <copy>
91 <from>'localHomeCommunityId'</from>
92 <to>$GetPropertyIn.GetPropertyRequest/ns1:propertyName</to>
93 </copy>
94 </assign>
95 <invoke name="InvokeGetHomeCommunityId" partnerLink="PropertyAccessorPL" operation="GetProperty" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentpropaccessor" portType="tns:NhincComponentPropAccessorPortType" inputVariable="GetPropertyIn" outputVariable="GetPropertyOut"/>
96 <assign name="AssignGetConnectionInput">
97 <copy>
98 <from>'adapterdocretrieve'</from>
99 <to>$GetConnectionInfoEndpointByServiceNameIn.GetConnectionInfoEndpointByServiceNameRequest/ns2:homeCommunityWithServiceName/ns2:serviceName</to>
100 </copy>
101 <copy>
102 <from>$GetPropertyOut.GetPropertyResponse/ns1:propertyValue</from>
103 <to>$GetConnectionInfoEndpointByServiceNameIn.GetConnectionInfoEndpointByServiceNameRequest/ns2:homeCommunityWithServiceName/ns2:homeCommunity/ns4:homeCommunityId</to>
104 </copy>
105 </assign>
106 <invoke name="InvokeGetAdapterDocRetrieveConnection" partnerLink="ConnectionManagerPL" operation="GetConnectionInfoEndpointByServiceName" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentconnectionmanager" portType="tns:NhincComponentConnectionManagerPortType" inputVariable="GetConnectionInfoEndpointByServiceNameIn" outputVariable="GetConnectionInfoEndpointByServiceNameOut"/>
107 <assign name="AssignAdapterDocRetrieveInput">
108 <copy>
109 <from>ns3:doXslTransform('urn:stylesheets:wrap2serviceref.xsl', $GetConnectionInfoEndpointByServiceNameOut.ConnectionInfoEndpoint/ns2:serviceConnectionInfoEndpoints/ns2:serviceConnectionInfoEndpoint/ns4:EPR/ns4:EndpointReference)</from>
110 <to partnerLink="AdapterDocRetrievePL"/>
111 </copy>
112 <copy>
113 <from>$Internal_CrossGatewayRetrieveIn.RetrieveDocumentSetRequest/ns5:RetrieveDocumentSetRequest</from>
114 <to>$Adapter_CrossGatewayRetrieveIn.RespondingGateway_CrossGatewayRetrieveRequest/ns5:RetrieveDocumentSetRequest</to>
115 </copy>
116 <copy>
117 <from>$Internal_CrossGatewayRetrieveIn.RetrieveDocumentSetRequest/ns6:assertion</from>
118 <to>$Adapter_CrossGatewayRetrieveIn.RespondingGateway_CrossGatewayRetrieveRequest/ns7:assertion</to>
119 </copy>
120 </assign>
121 <invoke name="InvokeAdapterDocRetrieve" partnerLink="AdapterDocRetrievePL" operation="RespondingGateway_CrossGatewayRetrieve" xmlns:tns="urn:gov:hhs:fha:nhinc:adapterdocretrieve" portType="tns:AdapterDocRetrievePortType" inputVariable="Adapter_CrossGatewayRetrieveIn" outputVariable="Adapter_CrossGatewayRetrieveOut"/>
122 <assign name="AssignDocRetrieveResults">
123 <copy>
124 <from variable="Adapter_CrossGatewayRetrieveOut" part="RespondingGateway_CrossGatewayRetrieveResponse"/>
125 <to variable="Internal_CrossGatewayRetrieveOut" part="RetrieveDocumentSetResponse"/>
126 </copy>
127 </assign>
128 </sequence>
129 </if>
130 </sequence>
131 </scope>
132 <reply name="ReplyInternalDocRetrieve" partnerLink="InternalDocRetrievePL" operation="RespondingGateway_CrossGatewayRetrieve" xmlns:tns="urn:gov:hhs:fha:nhinc:nhinccomponentinternaldocretrieveorch" portType="tns:NhincComponentInternalDocRetrieveOrchPortType" variable="Internal_CrossGatewayRetrieveOut">
133 <sxt:trace>
134 <sxt:log level="info" location="onStart">
135 <ns4:from variable="Internal_CrossGatewayRetrieveOut"/>
136 </sxt:log>
137 <sxt:log level="warning" location="onStart">
138 <ns4:from>'### Reply from NhincComponentInternalDocRetrieveOrch BPEL ...'</ns4:from>
139 </sxt:log>
140 </sxt:trace>
141 </reply>
142 </sequence>
143</process>
Note: See TracBrowser for help on using the repository browser.