PaymentDeletedEventHandler

The PaymentDeletedEventHandler handles the PaymentDeletedEvent event.

EXEC specification: com.ibm.paydir.ima.txsvr.event.appbridge.PaymentDeletedEventHandler

This event handler issues a Messaging API message on the JMS send queue when a transaction that matches each of the values that are specified in the event parameters is deleted. For example, specifying a value of 820 for the inPaymentMessageType parameter causes the handler to put a message on the send queue when a transaction with that inbound transaction message type is deleted. Deleted transactions with other message types are ignored.

Note: This event is only created for transactions where all the following are true:
  • The transaction was deleted by using the PaymentDeleteBean interface.
  • The issuing application set a source component in the instance of the bean.

Event parameters

This event handler uses the general Messaging API event handler parameters and parameters that are specific to the event. Event parameters are specified in the Scheduler.xml file.

The following table shows the additional event parameters for the payment deleted event handler.
Table 1. PaymentDeletedEventHandler parameters
Parameter name Trigger Type Value Description
sourceComponents Yes String TransactionMessagingBean A comma-delimited list of source components. The target applications that use the PaymentDeleteBean to delete transactions define the source components. For more information about the value to use for this parameter, see the documentation for each target application.
Note: The options that are described in Specifying Value Modifiers and Special Values are not available for this parameter.
deleteFlag Yes enum Example values are shown in the following list:
  • DELETED
  • !DELETED
  • CANCELED
Specify the type of deletion that causes the event handler to run. Use the not indicator to cause the event handler to run for all transactions that do not have the specified delete flag.

For more options that are available with this parameter, see Specifying Value Modifiers and Special Values.

inPaymentStandard No Short N/A Specify a single inbound message standard value that causes the message to be sent for a transaction. Use the not indicator to cause the message to be sent when the transaction does not have this inbound message standard value.

For more information about using the not indicator, see Specifying Value Modifiers and Special Values.

inPaymentMsgType No Short N/A Specify a single inbound message type that causes the message to be sent for a transaction. Use the not indicator to cause the message to be sent when the transaction does not have this inbound message type.

For more information about using the not indicator, see Specifying Value Modifiers and Special Values.

inPaymentSchemeId No String Example values are shown in the following list:
  • CPA 005
A comma-delimited list of inbound payment scheme IDs. The values to use for this parameter are found in the Name column of the PAYMENT_SCHEME_TYPE table.
outPaymentStandard No Short N/A Specify a single outbound message standard value that causes the message to be sent for a transaction. Use the not indicator to cause the message to be sent when the transaction does not have this outbound message standard value.

For more information about using the not indicator, see Specifying Value Modifiers and Special Values.

outPaymentMsgType No Short N/A Specify a single outbound message type that causes the message to be sent for a transaction. Use the not indicator to cause the message to be sent when the transaction does not have this outbound message type.

For more information about using the not indicator, see Specifying Value Modifiers and Special Values.

outPaymentSchemeId No String   A comma-delimited list of outbound payment scheme IDs. The outbound payment scheme for a payment is the same as the payment scheme of the business day associated with the processing batch. The values to use for this parameter are found in the Name column of the PAYMENT_SCHEME_TYPE table.
Note: The following list describes what the value in the trigger column means:
Yes
When the value in this column in the database changes to one of the values that are allowed by the event stanza, the handler places a message on the specified queue.
No
When the value in this column in the database changes, it does not cause a message to be placed on a queue. This parameter can be added to provide more criteria that must be met to send a Messaging API message.
N/A
The parameter is not considered when it is being determined whether a message is sent.

Message contents

When the message is delivered to the target application, it contains the information that is shown in Table 2.
Table 2. Message content for PaymentDeletedEventHandler
Message part Value Description
Unit of Work Transaction ID as a long This value is used to locate the transaction in the database.
Payload The source component and delete flag. The source component and delete flag value for the transaction that was deleted.
Note: The contents of this message must match what the receiver is expecting.

Response processing

Any response from the target application is ignored.

Example handler XML

The example XML shows a transaction deleted Messaging API message that is sent on the FXH.DISTRIBUTION.INPUT.QUEUE on localhost when the transaction messaging bean deleted a transaction with an inbound message type of 820.
<EVENT>
   <NAME>Distribution – Payment Deleted</NAME>
   <TYPE>PaymentDeleted</TYPE>
   <EXEC>
      com.ibm.paydir.ima.txsvr.event.appbridge.PaymentDeletedEventHandler
   </EXEC>
   <PARAMETER name="msgType">transactionDelete</PARAMETER>
   <PARAMETER name="sourceComponents">TransactionMessagingBean</PARAMETER>
   <PARAMETER name="deleteFlag">DELETED</PARAMETER>
   <PARAMETER name="inPaymentMsgType">820</PARAMETER>
   <PARAMETER name="destinationID">MY DISTRIBUTION ENGINE</PARAMETER>
   <PARAMETER name="jmsQmgrHostname">localhost</PARAMETER>
   <PARAMETER name="jmsQmgrChannel">SYSTEM.DEF.SVRCONN</PARAMETER>
   <PARAMETER name="jmsQmgrPort">1414</PARAMETER>
   <PARAMETER name="jmsClient">true</PARAMETER>
   <PARAMETER name="jmsQmgrName">FTM.QMANAGER</PARAMETER>
   <PARAMETER name="jmsSendQueue">FXH.DISTRIBUTION.INPUT.QUEUE</PARAMETER>
   <PARAMETER name="jmsReplyQueue">FXH.TRANSSERVER.INPUT.QUEUE</PARAMETER>
</EVENT>