User exit interface

The MCRE extract user exit has several methods that you can use to customize each of the default MCRE output record types. It must extend the UserControlMCRERecord class.

The MCRE file creation extract contains the following interface:
com.ibm.paydir.izl.mcre.core.userexit.UserControlMCRERecordInterface
Each customization method receives the default output record as an object that implements the MCRERecordInterface interface. It must return an array of MCRERecordInterface objects that contains the changes that were made to the output record. A method can return one of the following types of arrays:
Null array
The default output record that was received is to be deleted.
Single-object array
The object contains the modifications to be made to the default output record that was received. The default output record is modified.
Multiple-object array
The array contains a list of records the user is adding, modifying, or deleting. The order of the records in the list is the order in which they appear in the output. To delete a record, do not include its object in the list.
To change the default output record received, use the getter and setter methods in the MCRERecordInterface object. To insert a new record, do the following steps.
  1. Create the new output record as an array of bytes.
  2. Call the setUserFormattedRecord(byteBuff) method in the MCRERecordInterface object.
  3. Add the object reference for the new record to the return object array.
The user exit provides the customization methods that are shown in the following table. For more information about these methods, see the Javadoc information.
Table 1. MCRE user exit customization methods
Method Description
MCRERecordInterface[] processMCREFileHeaderRecord(MCREFileHeaderRecord mcreFileHeaderRecord, MCRERecordParams mcreRecordParams) This method can be used to change the output file header record. The MCREFileHeaderRecord object is the default header record and the MCRERecordParams object is parameters for the user exit to use.
MCRERecordInterface[] processMCREPresentmentHeaderRecord(MCREPresentmentHeaderRecord mcrePresentmentHeader, MCRERecordParams mcreRecordParams) This method can be used to change the output presentment header record. The MCREPresentmentHeaderRecord object is the default presentment header record and the MCRERecordParams object is parameters for the user exit to use. The getPresentmentData method in MCRERecordParams returns an object that is compliant with the MCRERecordInterface object and contains related accounting information.
MCRERecordInterface[] processMCREDetailRecord(MCREDetailRecord mcreDetail, MCRERecordParams mcreRecordParams) This method can be used to change a detail record. The MCREDetailRecord object is the default detail record and the MCRERecordParams object is parameters for the user exit to use. If extended database access is enabled, the getEndorsementData method in MCRERecordParams returns an object that is compliant with the MCRERecordInterface object and contains related endorsement information.
MCRERecordInterface[] processMCREKillBundleRecord(MCREKillBundleRecord mcreKillBundle, MCRERecordParams mcreRecordParams) This method can be used to change the output kill segment detail record. The MCREKillBundleRecord object is the default kill segment detail record and the MCRERecordParams object is parameters for the user exit to use.
finalize(Long[] outboundPresentmentGroupsMCREd, BusinessDay businessDay, String taskCompletionStatus) This method is called at the end of the MCRE task.