Close the Output Channel Manually
About this task
You can also close the output channel manually (that is, without shutting down the SWIFTNet7 Adapter) by creating and invoking a business process similar to the SWIFTNet7CloseOutputChannel business process.
Note: Do not modify the SWIFTNet7CloseOutputChannel
business process because this may affect the automatic opening of
the output channel.
The business process you create must rely on the output channel configuration in the SWIFTNet7 Adapter and the adapter must be enabled with the appropriate output channel settings.
This is a sample business process to close an output channel manually:
<process name="SWIFTNet7CloseOutputChannel">
<sequence name="SWIFTNetCloseoutputChannel">
<operation name="set user token">
<participant name="SetUserToken"/>
<input message="SetUserTokenMessage">
<assign to="USER_TOKEN">admin</assign>
<assign to="." from="*"/>
</input>
</operation>
<!-- build Close request -->
<operation name="Send CloseOutputChannelSnFRequest">
<participant name="SWIFTNet7ClientService"/>
<output message="closeOutputChannelRequest">
<assign to="outputChannelName">swiftbic_oc1!x</assign>
<assign to="serverAdapterName">SWIFTNet7Adapter</assign>
<assign to="queueName">swiftbic_generic!x</assign>
<assign to="." from="*"/>
</output>
<input message="closeOutputChannelResponse">
<assign to="." from="*"/>
</input>
</operation>
<operation name="Receive CloseOutputChannelSnFResponse">
<participant name="SWIFTNet7ClientService"/>
<output message="handleOutputChannelResponse">
<assign to="." from="*"/>
</output>
<input message="outputChannelOut">
<assign to="." from="*"/>
</input>
</operation>
<onFault>
<operation name="Receive CloseOutputChannelSnFResponse">
<participant name="SWIFTNet7ClientService"/>
<output message="handleOutputChannelResponse">
<assign to="." from="*"/>
</output>
<input message="outputChannelOut">
<assign to="." from="*"/>
</input>
</operation>
<onFault>
</sequence>
</process>
To close the output channel manually:
Procedure
- Configure (with the appropriate output channel settings) and enable the SWIFTNet7 Adapter.
- Create a new business process based on the example above and name it SWIFTNetManualCloseOutputChannel.
- Supply the following parameter in the business process: serverAdapterName, which indicates where to get the output channel configuration from (from which instance of the SWIFTNet7 Adapter). If you are using the default SWIFTNet7 Adapter, you do not need to specify this parameter. This is an optional parameter and the default value is SWIFTNetServerAdapter. This instance of the adapter must be enabled when you execute the business process.
- After you have finished editing, save the business process.
- Execute the business process you created, SWIFTNetManualCloseOutputChannel, to send the Close Output Channel request.
- If the business process successfully completes, the output channel has been closed successfully. If an error occurs, it may indicate that your request to close the output channel is pending until any gaps are resolved. If this occurs, the resend scheduler attempts to resolve any gaps and the output channel will be closed automatically once all gaps resolved. If you try to send message(s) while the resend scheduler is processing, the messages are stored on local processing. .