Example Code

The following code example shows how to use some of the methods provided in the API.
// call Duplicate Detect synchronously
boolean _sync = true;

// set up our queue parameters
QueueParameters qParms = new QueueParameters();
qParms.setClient(true);
qParms.setHost("localhost");
qParms.setChannel("SYSTEM.DEF.SVRCONN");
qParms.setPort(1414);
qParms.setQmgr("QM_test");
qParms.setSendQName("DUP_Q");
qParms.setReplyToQName("CLIENT_REPLY_Q");

try {
   // create the API class
   DuplicateDetectAPI dupAPI = new DuplicateDetectAPI(qParms);
   // create the data to duplicate check
   DupCheckData dupCheck = new DupCheckData();
   // set the UOW name for this request
   dupCheck.setClientUowName("MyUOWName1");
   // set the namespace we are processing against
   dupCheck.setNamespace("DUP_PAYMENT");

   ArrayList records = new ArrayList();

   // create a RecordData object
   RecordData rec = new RecordData();
   records.add(rec);
   rec.addField(new FieldData("account","12345678901234"));
   rec.addField(new FieldData("routing_transit", "987654321"));
   rec.addField(new FieldData("amount", "40000"));
   rec.addField(new FieldData("payment_id", ""+System.currentTimeMillis()));
   rec.addField(new FieldData("CHANNEL", "ICL"));
   rec.addField(new FieldData("SOURCE_COMP", "DupDetectClient"));
   rec.addField(new FieldData("PROCESS_CONTROL", "micr2-field"));
   rec.addField(new FieldData("FIELD_4", "micr4-field"));
   rec.addField(new FieldData("EXT_PROC_CODE", "micr6-field"));
   rec.addField(new FieldData("AUX_ONUS", "22233344"));

   // create a second RecordData object
   rec = new RecordData();
   records.add(rec);
   rec.addField(new FieldData("account","12345678901234"));
   rec.addField(new FieldData("routing_transit", "987654321"));
   rec.addField(new FieldData("amount", "5000"));
   rec.addField(new FieldData("payment_id", ""+System.currentTimeMillis()));
   rec.addField(new FieldData("CHANNEL", "ICL"));
   rec.addField(new FieldData("SOURCE_COMP", "DupDetectClient"));
   rec.addField(new FieldData("PROCESS_CONTROL", "micr2-field"));
   rec.addField(new FieldData("FIELD_4", "micr4-field"));
   rec.addField(new FieldData("EXT_PROC_CODE", "micr6-field"));
   rec.addField(new FieldData("AUX_ONUS", "22233344"));

   // these are the items to duplicate check
   dupCheck.setRecords(records);

   DupCheckData dupRsp = dupAPI.checkForDup(dupCheck, _sync);

   dupAPI.close();

} catch (DupDetectException e) {
   e.printStackTrace();
}