package com.digertech.sdk.samples; import java.io.File; import com.digertech.sdk.reader.*; import com.digertech.sdk.records.*; import com.digertech.sdk.records.x9100.*; import com.digertech.sdk.records.x937.*; /** * This sample implements ReaderInterface and loads * the records from ICL file and print field value of * each record when it reads records. * * To run this sample, a jar file in the lib folder should * be included in the classpath: * FileProcessingSDK.jar * * Execute the commmand to run the sample : * java com.digertech.sdk.samples.SampleX937FileReader [ICL file] [license key] * [ICL file] - ICL file full path name. * [license key] - File processing SDK license key. */ public class SampleICLFileReader implements ReaderInterface { private int itemCount = 0; public SampleICLFileReader() { super(); } public void readRecord(int recordType, X9Record record) throws FileIOException { // skip if this record is null if (record == null) return; // count the record. if (recordType == X9Record.TYPE_25 || recordType == X9Record.TYPE_31) { itemCount++; } if (skipRecord(recordType)) return; if (recordType == X9Record.TYPE_25 || recordType == X9Record.TYPE_31) { System.out.println(" "); System.out.println(" Item Index = " + itemCount); } else { System.out.println(" "); } System.out.println("============================"); System.out.println("|| Process type " + recordType + " record ||"); System.out.println("============================"); switch(recordType) { case X9Record.TYPE_01 : processType01Record(record); break; case X9Record.TYPE_10 : processType10Record(record); break; case X9Record.TYPE_20 : processType20Record(record); break; case X9Record.TYPE_25 : processType25Record(record); break; case X9Record.TYPE_26 : processType26Record(record); break; case X9Record.TYPE_27 : processType27Record(record); break; case X9Record.TYPE_28 : processType28Record(record); break; case X9Record.TYPE_31 : processType31Record(record); break; case X9Record.TYPE_32 : processType32Record(record); break; case X9Record.TYPE_33 : processType33Record(record); break; case X9Record.TYPE_34 : processType34Record(record); break; case X9Record.TYPE_35 : processType35Record(record); break; case X9Record.TYPE_40 : processType40Record(record); break; case X9Record.TYPE_41 : processType41Record(record); break; case X9Record.TYPE_50 : processType50Record(record); break; case X9Record.TYPE_52 : processType52Record(record); break; case X9Record.TYPE_54 : processType54Record(record); break; case X9Record.TYPE_70 : processType70Record(record); break; case X9Record.TYPE_75 : processType75Record(record); break; case X9Record.TYPE_85 : processType85Record(record); break; case X9Record.TYPE_90 : processType90Record(record); break; case X9Record.TYPE_99 : processType99Record(record); break; default : processRecord(record); break; } } private void processType01Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type01Record t01 = (X937Type01Record)record; System.out.println("Record Type = " + t01.getRecordType()); System.out.println("Standard Level = " + t01.getStandardLevel()); System.out.println("Test File Ind = " + t01.getTestFileInd()); System.out.println("Dest Routing Num = " + t01.getDestRoutingNum()); System.out.println("Origin RoutingNum = " + t01.getOriginRoutingNum()); System.out.println("File Create Date = " + t01.getFileCreateDate()); System.out.println("File Create Time = " + t01.getFileCreateTime()); System.out.println("Resend Ind = " + t01.getResendInd()); System.out.println("Dest Name = " + t01.getDestName()); System.out.println("Origin Name = " + t01.getOriginName()); System.out.println("File Id Modifier = " + t01.getFileIdModifier()); System.out.println("Country Code = " + t01.getCountryCode()); System.out.println("User Field = " + t01.getUserField()); System.out.println("Reserved = " + t01.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type01Record t01 = (X9100Type01Record)record; System.out.println("Record Type = " + t01.getRecordType()); System.out.println("Standard Level = " + t01.getStandardLevel()); System.out.println("Test File Ind = " + t01.getTestFileInd()); System.out.println("Dest Routing Num = " + t01.getDestRoutingNum()); System.out.println("Origin RoutingNum = " + t01.getOriginRoutingNum()); System.out.println("File Create Date = " + t01.getFileCreateDate()); System.out.println("File Create Time = " + t01.getFileCreateTime()); System.out.println("Resend Ind = " + t01.getResendInd()); System.out.println("Dest Name = " + t01.getDestName()); System.out.println("Origin Name = " + t01.getOriginName()); System.out.println("File Id Modifier = " + t01.getFileIdModifier()); System.out.println("Country Code = " + t01.getCountryCode()); System.out.println("User Field = " + t01.getUserField()); System.out.println("Reserved = " + t01.getReserved()); } } private void processType10Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type10Record t10 = (X937Type10Record)record; System.out.println("Record Type = " + t10.getRecordType()); System.out.println("Collection Type Ind = " + t10.getCollectionTypeInd()); System.out.println("DestRouting Num = " + t10.getDestRoutingNum()); System.out.println("Institution Routing Num = " + t10.getInstitutionRoutingNum()); System.out.println("Business Date = " + t10.getBusinessDate()); System.out.println("Create Date = " + t10.getCreateDate()); System.out.println("Create Time = " + t10.getCreateTime()); System.out.println("Record Type Ind = " + t10.getRecordTypeInd()); System.out.println("Doc Type Ind = " + t10.getDocTypeInd()); System.out.println("Cashletter ID = " + t10.getCashletterID()); System.out.println("Orig Contact Name = " + t10.getOrigContactName()); System.out.println("Orig Contact Phone = " + t10.getOrigContactPhone()); System.out.println("Fed Work Type = " + t10.getFedWorkType()); System.out.println("User Field = " + t10.getUserField()); System.out.println("Reserved = " + t10.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type10Record t10 = (X9100Type10Record)record; System.out.println("Record Type = " + t10.getRecordType()); System.out.println("Collection Type Ind = " + t10.getCollectionTypeInd()); System.out.println("DestRouting Num = " + t10.getDestRoutingNum()); System.out.println("Institution Routing Num = " + t10.getInstitutionRoutingNum()); System.out.println("Business Date = " + t10.getBusinessDate()); System.out.println("Create Date = " + t10.getCreateDate()); System.out.println("Create Time = " + t10.getCreateTime()); System.out.println("Record Type Ind = " + t10.getRecordTypeInd()); System.out.println("Doc Type Ind = " + t10.getDocTypeInd()); System.out.println("Cashletter ID = " + t10.getCashletterID()); System.out.println("Orig Contact Name = " + t10.getOrigContactName()); System.out.println("Orig Contact Phone = " + t10.getOrigContactPhone()); System.out.println("Fed Work Type = " + t10.getFedWorkType()); System.out.println("User Field = " + t10.getUserField()); } } private void processType20Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type20Record t20 = (X937Type20Record)record; System.out.println("Record Type = " + t20.getRecordType()); System.out.println("Collection Type Ind = " + t20.getCollectionTypeInd()); System.out.println("Dest Routing Num = " + t20.getDestRoutingNum()); System.out.println("Institution Routing Num = " + t20.getInstitutionRoutingNum()); System.out.println("Business Date = " + t20.getBusinessDate()); System.out.println("Create Date = " + t20.getCreateDate()); System.out.println("Bundle ID = " + t20.getBundleID()); System.out.println("Bundle Seq Num = " + t20.getBundleSeqNum()); System.out.println("Cycle Num = " + t20.getCycleNum()); System.out.println("Return Routing Num = " + t20.getReturnRoutingNum()); System.out.println("User Field = " + t20.getUserField()); System.out.println("Reserved = " + t20.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type20Record t20 = (X9100Type20Record)record; System.out.println("Record Type = " + t20.getRecordType()); System.out.println("Collection Type Ind = " + t20.getCollectionTypeInd()); System.out.println("Dest Routing Num = " + t20.getDestRoutingNum()); System.out.println("Institution Routing Num = " + t20.getInstitutionRoutingNum()); System.out.println("Business Date = " + t20.getBusinessDate()); System.out.println("Create Date = " + t20.getCreateDate()); System.out.println("Bundle ID = " + t20.getBundleID()); System.out.println("Bundle Seq Num = " + t20.getBundleSeqNum()); System.out.println("Cycle Num = " + t20.getCycleNum()); System.out.println("Return Routing Num = " + t20.getReturnRoutingNum()); System.out.println("Bundle Create Time = " + t20.getBundleCreateTime()); System.out.println("User Field = " + t20.getUserField()); System.out.println("Reserved = " + t20.getReserved()); } } private void processType25Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type25Record t25 = (X937Type25Record)record; System.out.println("Record Type = " + t25.getRecordType()); System.out.println("Aux OnUs = " + t25.getAuxOnUs()); System.out.println("Ext Proc Code = " + t25.getExtProcCode()); System.out.println("Routing Num = " + t25.getRoutingNum()); System.out.println("Routing Num Check Digit = " + t25.getRoutingNumCheckDigit()); System.out.println("OnUs Field = " + t25.getOnUsField()); System.out.println("Amount = " + t25.getAmount()); System.out.println("Item Seq Num = " + t25.getItemSeqNum()); System.out.println("Doc Type Ind = " + t25.getDocTypeInd()); System.out.println("Ret Accept Ind = " + t25.getRetAcceptInd()); System.out.println("Micr Valid Ind = " + t25.getMicrValidInd()); System.out.println("Bofd Ind = " + t25.getBofdInd()); System.out.println("Addendum Count = " + t25.getAddendumCount()); System.out.println("Correction Ind = " + t25.getCorrectionInd()); System.out.println("Archive Type Ind = " + t25.getArchiveTypeInd()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type25Record t25 = (X9100Type25Record)record; System.out.println("Record Type = " + t25.getRecordType()); System.out.println("Aux OnUs = " + t25.getAuxOnUs()); System.out.println("Ext Proc Code = " + t25.getExtProcCode()); System.out.println("Routing Num = " + t25.getRoutingNum()); System.out.println("OnUs Field = " + t25.getOnUsField()); System.out.println("Amount = " + t25.getAmount()); System.out.println("Item Seq Num = " + t25.getItemSeqNum()); System.out.println("Doc Type Ind = " + t25.getDocTypeInd()); System.out.println("Ret Accept Ind = " + t25.getRetAcceptInd()); System.out.println("Micr Valid Ind = " + t25.getMicrValidInd()); System.out.println("Bofd Ind = " + t25.getBofdInd()); System.out.println("Addendum Count = " + t25.getAddendumCount()); System.out.println("Correction Ind = " + t25.getCorrectionInd()); System.out.println("Archive Type Ind = " + t25.getArchiveTypeInd()); } } private void processType26Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type26Record t26 = (X937Type26Record)record; System.out.println("Record Type = " + t26.getRecordType()); System.out.println("Collection Type Ind = " + t26.getAddendumNum()); System.out.println("Dest Routing Num = " + t26.getBofdRoutingNum()); System.out.println("Institution Routing Num = " + t26.getBofdBusinessDate()); System.out.println("Business Date = " + t26.getBofdItemSeqNum()); System.out.println("Create Date = " + t26.getBofdDepositAccountNum()); System.out.println("Create Time = " + t26.getBofdDepositBranch()); System.out.println("Record Type Ind = " + t26.getPayeeName()); System.out.println("Doc Type Ind = " + t26.getTruncationInd()); System.out.println("Cashletter ID = " + t26.getBofdConversionInd()); System.out.println("Cashletter ID = " + t26.getBofdCorrectionInd()); System.out.println("User Field = " + t26.getUserField()); System.out.println("Reserved = " + t26.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type26Record t26 = (X9100Type26Record)record; System.out.println("Record Type = " + t26.getRecordType()); System.out.println("Addendum A Record Number = " + t26.getAddendumNum()); System.out.println("BOFD Routing Number = " + t26.getBofdRoutingNum()); System.out.println("BOFD Business Date = " + t26.getBofdBusinessDate()); System.out.println("BOFD Item Sequence Number = " + t26.getBofdItemSeqNum()); System.out.println("BOFD Deposit Account Num = " + t26.getBofdDepositAccountNum()); System.out.println("BOFD Deposit Branch = " + t26.getBofdDepositBranch()); System.out.println("Payee Name = " + t26.getPayeeName()); System.out.println("Truncation Ind = " + t26.getTruncationInd()); System.out.println("BOFD Conversion Ind = " + t26.getBofdConversionInd()); System.out.println("BOFD Correction Ind = " + t26.getBofdCorrectionInd()); System.out.println("BOFD Magnetic Read Ind = " + t26.getMagneticReadInd()); System.out.println("User Field = " + t26.getUserField()); System.out.println("Reserved = " + t26.getReserved()); } } private void processType27Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type27Record t27 = (X937Type27Record)record; System.out.println("Record Type = " + t27.getRecordType()); System.out.println("Collection Type Ind = " + t27.getVarRecordInd()); System.out.println("Micro Archive Seq Num = " + t27.getMicroArchiveSeqNum()); System.out.println("Image Archive Locator Len = " + t27.getImgArchiveLocatorLen()); System.out.println("Image Archive Locator = " + t27.getImgArchiveLocator()); System.out.println("Description = " + t27.getDescription()); System.out.println("User Field = " + t27.getUserField()); System.out.println("Reserved = " + t27.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type27Record t27 = (X9100Type27Record)record; System.out.println("Record Type = " + t27.getRecordType()); System.out.println("Description = " + t27.getDescription()); System.out.println("Image Capture Date = " + t27.getImgCaptureDate()); System.out.println("Image Capture Time = " + t27.getImgCaptureTime()); System.out.println("Micro Archive Seq Num = " + t27.getMicroArchiveSeqNum()); System.out.println("Img Archive Locator = " + t27.getImgArchiveLocatorLen()); System.out.println("Cap Unparsed MICR Data Len = " + t27.getCapturedUnparsedMICRDataLen()); System.out.println("Cap High Unparsed MICR Data Len = " + t27.getCapturedHighUnparsedMICRDataLen()); System.out.println("Corr Unparsed MICR Data Len = " + t27.getCorrectedUnparsedMICRDataLen()); System.out.println("Corr High Unparsed MICR Data Len = " + t27.getCorrectedHighUnparsedMICRDataLen()); System.out.println("User Data Len = " + t27.getUserDataLen()); System.out.println("Reserved = " + t27.getReserved()); System.out.println("Img Archive Locator = " + t27.getImgArchiveLocator()); System.out.println("Cap Unparsed MICR Data = " + t27.getCapturedUnparsedMICRData()); System.out.println("Cap High Unparsed MICR Data = " + t27.getCapturedHighUnparsedMICRData()); System.out.println("Corr Unparsed MICR Data = " + t27.getCorrectedUnparsedMICRData()); System.out.println("Corr High Unparsed MICR Data = " + t27.getCorrectedHighUnparsedMICRData()); System.out.println("User Field = " + t27.getUserField()); } } private void processType28Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type28Record t28 = (X937Type28Record)record; System.out.println("Record Type = " + t28.getRecordType()); System.out.println("Addendum Record Num = " + t28.getAddendumRecordNum()); System.out.println("Routing Num = " + t28.getRoutingNum()); System.out.println("Endorsing Date = " + t28.getEndorsingDate()); System.out.println("Item Seq Num = " + t28.getItemSeqNum()); System.out.println("Truncation Ind = " + t28.getTruncationInd()); System.out.println("Conversion Ind = " + t28.getConversionInd()); System.out.println("Correction Ind = " + t28.getCorrectionInd()); System.out.println("Return Reason = " + t28.getReturnReason()); System.out.println("User Field = " + t28.getUserField()); System.out.println("Reserved = " + t28.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type28Record t28 = (X9100Type28Record)record; System.out.println("Record Type = " + t28.getRecordType()); System.out.println("Addendum Record Num = " + t28.getAddendumRecordNum()); System.out.println("Routing Num = " + t28.getRoutingNum()); System.out.println("Endorsing Date = " + t28.getEndorsingDate()); System.out.println("Item Seq Num = " + t28.getItemSeqNum()); System.out.println("Truncation Ind = " + t28.getTruncationInd()); System.out.println("Conversion Ind = " + t28.getConversionInd()); System.out.println("Correction Ind = " + t28.getCorrectionInd()); System.out.println("Return Reason = " + t28.getReturnReason()); System.out.println("Magnetic Read Ind = " + t28.getMagneticReadInd()); System.out.println("Identifier = " + t28.getBankId()); System.out.println("Deposit Account Number = " + t28.getDepositAccount()); System.out.println("User Field = " + t28.getUserField()); System.out.println("Reserved = " + t28.getReserved()); } } private void processType31Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type31Record t31 = (X937Type31Record)record; System.out.println("Record Type = " + t31.getRecordType()); System.out.println("Routing Num = " + t31.getRoutingNum()); System.out.println("Routing Num Check Digit = " + t31.getRoutingNumCheckDigit()); System.out.println("OnUs = " + t31.getOnUs()); System.out.println("Amount = " + t31.getAmount()); System.out.println("Return Reason = " + t31.getReturnReason()); System.out.println("Addendum Count = " + t31.getAddendumCount()); System.out.println("Doc Type Ind = " + t31.getDocTypeInd()); System.out.println("Forward Bundle Date = " + t31.getForwardBundleDate()); System.out.println("Item Seq Num = " + t31.getItemSeqNum()); System.out.println("Ext Proc Code = " + t31.getExtProcCode()); System.out.println("Notification Ind = " + t31.getNotificationInd()); System.out.println("Archive Type Ind = " + t31.getArchiveTypeInd()); System.out.println("Reserved = " + t31.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type31Record t31 = (X9100Type31Record)record; System.out.println("Record Type = " + t31.getRecordType()); System.out.println("Aux OnUs = " + t31.getAuxOnUs()); System.out.println("Ext Proc Code = " + t31.getExtProcCode()); System.out.println("Routing Num = " + t31.getRoutingNum()); System.out.println("OnUs = " + t31.getOnUs()); System.out.println("Amount = " + t31.getAmount()); System.out.println("Item Seq Num = " + t31.getItemSeqNum()); System.out.println("Addendum Count = " + t31.getAddendumCount()); System.out.println("Reserved = " + t31.getReserved()); } } private void processType32Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type32Record t32 = (X937Type32Record)record; System.out.println("Record Type = " + t32.getRecordType()); System.out.println("Addendum A Record Number = " + t32.getAddendumNum()); System.out.println("BOFD Routing Number = " + t32.getBofdRoutingNum()); System.out.println("BOFD Business Date = " + t32.getBofdBusinessDate()); System.out.println("BOFD Item Sequence Number = " + t32.getBofdItemSeqNum()); System.out.println("BOFD Deposit Account Num = " + t32.getBofdDepositAccountNum()); System.out.println("BOFD Deposit Branch = " + t32.getBofdDepositBranch()); System.out.println("Payee Name = " + t32.getPayeeName()); System.out.println("Truncation Ind = " + t32.getTruncationInd()); System.out.println("BOFD Conversion Ind = " + t32.getBofdConversionInd()); System.out.println("BOFD Correction Ind = " + t32.getBofdCorrectionInd()); System.out.println("User Field = " + t32.getUserField()); System.out.println("Reserved = " + t32.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type32Record t32 = (X9100Type32Record)record; System.out.println("Record Type = " + t32.getRecordType()); System.out.println("Addendum A Record Number = " + t32.getAddendumNum()); System.out.println("BOFD Routing Number = " + t32.getBofdRoutingNum()); System.out.println("BOFD Business Date = " + t32.getBofdBusinessDate()); System.out.println("BOFD Item Sequence Number = " + t32.getBofdItemSeqNum()); System.out.println("BOFD Deposit Account Num = " + t32.getBofdDepositAccountNum()); System.out.println("BOFD Deposit Branch = " + t32.getBofdDepositBranch()); System.out.println("Payee Name = " + t32.getPayeeName()); System.out.println("Truncation Ind = " + t32.getTruncationInd()); System.out.println("BOFD Conversion Ind = " + t32.getBofdConversionInd()); System.out.println("BOFD Correction Ind = " + t32.getBofdCorrectionInd()); System.out.println("BOFD Magnetic Read Ind = " + t32.getMagneticReadInd()); System.out.println("User Field = " + t32.getUserField()); System.out.println("Reserved = " + t32.getReserved()); } } private void processType33Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type33Record t33 = (X937Type33Record)record; System.out.println("Record Type = " + t33.getRecordType()); System.out.println("Payor Bank Name = " + t33.getPayorBankName()); System.out.println("Aux OnUs = " + t33.getAuxOnUs()); System.out.println("Pay Bank Item Seq Num = " + t33.getPayBankItemSeqNum()); System.out.println("Pay Bank Business Date = " + t33.getPayBankBusinessDate()); System.out.println("Pay Account Name = " + t33.getPayAccountName()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type33Record t33 = (X9100Type33Record)record; System.out.println("Record Type = " + t33.getRecordType()); System.out.println("Return Reason = " + t33.getReturnReason()); System.out.println("Forward Bundle Date = " + t33.getForwardBundleDate()); System.out.println("Additional Return Reason = " + t33.getAdditionalReturnReason()); System.out.println("Number of Times Returned = " + t33.getNumReturned()); System.out.println("Doc Type Ind = " + t33.getRetDocTypeInd()); System.out.println("Archive Type Ind = " + t33.getArchiveTypeInd()); System.out.println("Payor Bank Name = " + t33.getPayorBankName()); System.out.println("Pay Bank Item Seq Num = " + t33.getPayBankItemSeqNum()); System.out.println("Pay Bank Business Date = " + t33.getPayBankBusinessDate()); System.out.println("Pay Account Name = " + t33.getPayAccountName()); } } private void processType34Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type34Record t34 = (X937Type34Record)record; System.out.println("Record Type = " + t34.getRecordType()); System.out.println("Var Record Ind = " + t34.getVarRecordInd()); System.out.println("Micro Archive Seq Num = " + t34.getMicroArchiveSeqNum()); System.out.println("Img Archive Locator Len = " + t34.getImgArchiveLocatorLen()); System.out.println("Img Archive Locator = " + t34.getImgArchiveLocator()); System.out.println("Description = " + t34.getDescription()); System.out.println("User Field = " + t34.getUserField()); System.out.println("Reserved = " + t34.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type34Record t34 = (X9100Type34Record)record; System.out.println("Record Type = " + t34.getRecordType()); System.out.println("Description = " + t34.getDescription()); System.out.println("Image Capture Date = " + t34.getImgCaptureDate()); System.out.println("Image Capture Time = " + t34.getImgCaptureTime()); System.out.println("Micro Archive Seq Num = " + t34.getMicroArchiveSeqNum()); System.out.println("Img Archive Locator = " + t34.getImgArchiveLocatorLen()); System.out.println("Cap Unparsed MICR Data Len = " + t34.getCapturedUnparsedMICRDataLen()); System.out.println("Cap High Unparsed MICR Data Len = " + t34.getCapturedHighUnparsedMICRDataLen()); System.out.println("Corr Unparsed MICR Data Len = " + t34.getCorrectedUnparsedMICRDataLen()); System.out.println("Corr High Unparsed MICR Data Len = " + t34.getCorrectedHighUnparsedMICRDataLen()); System.out.println("User Data Len = " + t34.getUserDataLen()); System.out.println("Reserved = " + t34.getReserved()); System.out.println("Img Archive Locator = " + t34.getImgArchiveLocator()); System.out.println("Cap Unparsed MICR Data = " + t34.getCapturedUnparsedMICRData()); System.out.println("Cap High Unparsed MICR Data = " + t34.getCapturedHighUnparsedMICRData()); System.out.println("Corr Unparsed MICR Data = " + t34.getCorrectedUnparsedMICRData()); System.out.println("Corr High Unparsed MICR Data = " + t34.getCorrectedHighUnparsedMICRData()); System.out.println("User Field = " + t34.getUserField()); } } private void processType35Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type35Record t35 = (X937Type35Record)record; System.out.println("Record Type = " + t35.getRecordType()); System.out.println("Addendum Record Num = " + t35.getAddendumRecordNum()); System.out.println("Routing Num = " + t35.getRoutingNum()); System.out.println("Endorsing Date = " + t35.getEndorsingDate()); System.out.println("Item Seq Num = " + t35.getItemSeqNum()); System.out.println("Truncation Ind = " + t35.getTruncationInd()); System.out.println("Conversion Ind = " + t35.getConversionInd()); System.out.println("Correction Ind = " + t35.getCorrectionInd()); System.out.println("Return Reason = " + t35.getReturnReason()); System.out.println("User Field = " + t35.getUserField()); System.out.println("Reserved = " + t35.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type35Record t35 = (X9100Type35Record)record; System.out.println("Record Type = " + t35.getRecordType()); System.out.println("Addendum Record Num = " + t35.getAddendumRecordNum()); System.out.println("Routing Num = " + t35.getRoutingNum()); System.out.println("Endorsing Date = " + t35.getEndorsingDate()); System.out.println("Item Seq Num = " + t35.getItemSeqNum()); System.out.println("Truncation Ind = " + t35.getTruncationInd()); System.out.println("Conversion Ind = " + t35.getConversionInd()); System.out.println("Correction Ind = " + t35.getCorrectionInd()); System.out.println("Return Reason = " + t35.getReturnReason()); System.out.println("Magnetic Read Ind = " + t35.getMagneticReadInd()); System.out.println("Identifier = " + t35.getBankId()); System.out.println("Deposit Account Number = " + t35.getDepositAccount()); System.out.println("User Field = " + t35.getUserField()); System.out.println("Reserved = " + t35.getReserved()); } } private void processType40Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type40Record t40 = (X937Type40Record)record; System.out.println("Record Type = " + t40.getRecordType()); System.out.println("Dest Routing Num = " + t40.getDestRoutingNum()); System.out.println("Low Account = " + t40.getLowAccount()); System.out.println("High Account = " + t40.getHighAccount()); System.out.println("Total Item Count = " + t40.getTotalItemCount()); System.out.println("Total Item Amount = " + t40.getTotalItemAmount()); System.out.println("User Field = " + t40.getUserField()); System.out.println("Reserved = " + t40.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type40Record t40 = (X9100Type40Record)record; System.out.println("Record Type = " + t40.getRecordType()); System.out.println("Dest Routing Num = " + t40.getDestRoutingNum()); System.out.println("Low Account = " + t40.getLowAccount()); System.out.println("High Account = " + t40.getHighAccount()); System.out.println("Total Item Count = " + t40.getTotalItemCount()); System.out.println("Total Item Amount = " + t40.getTotalItemAmount()); System.out.println("User Field = " + t40.getUserField()); System.out.println("Reserved = " + t40.getReserved()); } } private void processType41Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type41Record t41 = (X937Type41Record)record; System.out.println("Record Type = " + t41.getRecordType()); System.out.println("Dest Routing Num = " + t41.getDestRoutingNum()); System.out.println("Non-Hit Ind = " + t41.getNonHitInd()); System.out.println("Total Item Count = " + t41.getTotalItemCount()); System.out.println("Total Item Amount = " + t41.getTotalItemAmount()); System.out.println("User Field = " + t41.getUserField()); System.out.println("Reserved = " + t41.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type41Record t41 = (X9100Type41Record)record; System.out.println("Record Type = " + t41.getRecordType()); System.out.println("Dest Routing Num = " + t41.getDestRoutingNum()); System.out.println("Non-Hit Ind = " + t41.getNonHitInd()); System.out.println("Total Item Count = " + t41.getTotalItemCount()); System.out.println("Total Item Amount = " + t41.getTotalItemAmount()); System.out.println("User Field = " + t41.getUserField()); System.out.println("Reserved = " + t41.getReserved()); } } private void processType50Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type50Record t50 = (X937Type50Record)record; System.out.println("Record Type = " + t50.getRecordType()); System.out.println("Image Ind = " + t50.getImageInd()); System.out.println("Routing Num = " + t50.getRoutingNum()); System.out.println("Create Date = " + t50.getCreateDate()); System.out.println("View Format Ind = " + t50.getViewFormatInd()); System.out.println("View Compression = " + t50.getViewCompression()); System.out.println("View Data Size = " + t50.getViewDataSize()); System.out.println("View Side Ind = " + t50.getViewSideInd()); System.out.println("View Descriptor = " + t50.getViewDescriptor()); System.out.println("Dig Sign Ind = " + t50.getDigSignInd()); System.out.println("Dig Sign Method = " + t50.getDigSignMethod()); System.out.println("Security Key Size = " + t50.getSecurityKeySize()); System.out.println("Protected Data Start = " + t50.getProtectedDataStart()); System.out.println("Protected Datat Len = " + t50.getProtectedDatatLen()); System.out.println("Img Recreate Ind = " + t50.getImgRecreateInd()); System.out.println("User Field = " + t50.getUserField()); System.out.println("Reserved = " + t50.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type50Record t50 = (X9100Type50Record)record; System.out.println("Record Type = " + t50.getRecordType()); System.out.println("Image Ind = " + t50.getImageInd()); System.out.println("Routing Num = " + t50.getRoutingNum()); System.out.println("Create Date = " + t50.getCreateDate()); System.out.println("View Format Ind = " + t50.getViewFormatInd()); System.out.println("View Compression = " + t50.getViewCompression()); System.out.println("View Type = " + t50.getViewType()); System.out.println("View Side Ind = " + t50.getViewSideInd()); System.out.println("View Descriptor = " + t50.getViewDescriptor()); System.out.println("Dig Sign Ind = " + t50.getDigSignInd()); System.out.println("Dig Sign Ind = " + t50.getDigSignInd()); System.out.println("Dig Sign Hash Function = " + t50.getDigSignHashFuncMethod()); System.out.println("Dig Sign Crypt Algorithm Method = " + t50.getDigSignCryptAlgrMethod()); System.out.println("DSA Key Size = " + t50.getDsaKeySize()); System.out.println("Digital Cert Ind = " + t50.getDigCertfInd()); System.out.println("Digital Cert Format = " + t50.getDigCertfFormat()); System.out.println("Digital Conv Method = " + t50.getDigCertfConvMethod()); System.out.println("Protected Data Start = " + t50.getProtectedDataStart()); System.out.println("Protected Datat Len = " + t50.getProtectedDatatLen()); System.out.println("Img Recreate Ind = " + t50.getImgRecreateInd()); System.out.println("Img Test Override Ind = " + t50.getImgTestOverrideInd()); System.out.println("Img Capture Time = " + t50.getImgCaptureTime()); System.out.println("User Field = " + t50.getUserField()); System.out.println("Reserved = " + t50.getReserved()); } } private void processType52Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type52Record t52 = (X937Type52Record)record; System.out.println("Record Type = " + t52.getRecordType()); System.out.println("Routing Num = " + t52.getRoutingNum()); System.out.println("Business Date = " + t52.getBusinessDate()); System.out.println("Cycle Num = " + t52.getCycleNum()); System.out.println("Item Seq Num = " + t52.getItemSeqNum()); System.out.println("Security Orig Name = " + t52.getSecurityOrigName()); System.out.println("Security Auth Name = " + t52.getSecurityAuthName()); System.out.println("Security Key Name = " + t52.getSecurityKeyName()); System.out.println("Clipping Origin = " + t52.getClippingOrigin()); System.out.println("Clipping Coordinate H1 = " + t52.getClippingCoordinateH1()); System.out.println("Clipping Coordinate H2 = " + t52.getClippingCoordinateH2()); System.out.println("Clipping Coordinate V1 = " + t52.getClippingCoordinateV1()); System.out.println("Clipping Coordinate V2 = " + t52.getClippingCoordinateV2()); System.out.println("Image Ref Key Len = " + t52.getImageRefKeyLen()); System.out.println("Image Ref Key = " + t52.getImageRefKey()); System.out.println("Dig Sig Len = " + t52.getDigSigLen()); // System.out.println("Dig Sig = " + t52.getDigSig()); System.out.println("Image Data Len = " + t52.getImageDataLen()); // System.out.println("Image Data = " + t52.getImageData()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type52Record t52 = (X9100Type52Record)record; System.out.println("Record Type = " + t52.getRecordType()); System.out.println("Routing Num = " + t52.getRoutingNum()); System.out.println("Business Date = " + t52.getBusinessDate()); System.out.println("Cycle Num = " + t52.getCycleNum()); System.out.println("Item Seq Num = " + t52.getItemSeqNum()); System.out.println("Security Orig Name = " + t52.getSecurityOrigName()); System.out.println("Security Auth Name = " + t52.getSecurityAuthName()); System.out.println("Security Key Name = " + t52.getSecurityKeyName()); System.out.println("Clipping Origin = " + t52.getClippingOrigin()); System.out.println("Clipping Coordinate H1 = " + t52.getClippingCoordinateH1()); System.out.println("Clipping Coordinate H2 = " + t52.getClippingCoordinateH2()); System.out.println("Clipping Coordinate V1 = " + t52.getClippingCoordinateV1()); System.out.println("Clipping Coordinate V2 = " + t52.getClippingCoordinateV2()); System.out.println("Ancillary Data Ind = " + t52.getAncillaryDataInd()); System.out.println("Image Ref Key Len = " + t52.getImageRefKeyLen()); System.out.println("Digital Signature Len = " + t52.getDigSigLen()); System.out.println("Digital Certificate Issuer Distinguished Name Len = " + t52.getDigCertfIssuerDistNameLen()); System.out.println("Digital Certificate Serial Number Len = " + t52.getDigCertfSerialNumLen()); System.out.println("Digital Certificate Len = " + t52.getDigCertfLen()); System.out.println("Image Data Len = " + t52.getImageDataLen()); System.out.println("Ancillary Data Len = " + t52.getAncillaryDataLen()); System.out.println("Image Ref Key = " + t52.getImageRefKey()); // System.out.println("Digital Signature = " + t52.getDigSig()); System.out.println("Digital Certificate Issuer Distinguished Name = " + t52.getDigCertfIssuerDistName()); System.out.println("Digital Certificate Serial Number = " + t52.getDigCertfSerialNum()); // System.out.println("Digital Certificate = " + t52.getDigCertf()); // System.out.println("Image Data = " + t52.getImageData()); // System.out.println("Ancillary Data = " + t52.getAncillaryData()); } } private void processType54Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type54Record t54 = (X937Type54Record)record; System.out.println("Record Type = " + t54.getRecordType()); System.out.println("Global Image Quality = " + t54.getGlobalImageQuality()); System.out.println("Global Image Usability = " + t54.getGlobalImageUsability()); System.out.println("Image Bank Specific Test = " + t54.getImageBankSpecificTest()); System.out.println("Partial Image = " + t54.getPartialImage()); System.out.println("Excess Image Skew = " + t54.getExcessImageSkew()); System.out.println("Piggyback Image = " + t54.getPiggybackImage()); System.out.println("Too Light Or Dark = " + t54.getTooLightOrDark()); System.out.println("Streak Bands = " + t54.getStreakBands()); System.out.println("Below Min Image Size = " + t54.getBelowMinImageSize()); System.out.println("Exceed Max Image Size = " + t54.getExceedMaxImageSize()); System.out.println("Reserved 12_24 = " + t54.getReserved12_24()); System.out.println("Image Enabled Pod = " + t54.getImageEnabledPod()); System.out.println("Source Doc Bad = " + t54.getSourceDocBad()); System.out.println("Date Usability = " + t54.getDateUsability()); System.out.println("Payee Usability = " + t54.getPayeeUsability()); System.out.println("Convenient Amount Usability = " + t54.getConvenientAmountUsability()); System.out.println("Amount Words Usability = " + t54.getAmountWordsUsability()); System.out.println("Signature Usability = " + t54.getSignatureUsability()); System.out.println("Payor Name Address Usability = " + t54.getPayorNameAddressUsability()); System.out.println("Micr Line Usability = " + t54.getMicrLineUsability()); System.out.println("Memo Line Usability = " + t54.getMemoLineUsability()); System.out.println("Payor Bank Name Address Usability = " + t54.getPayorBankNameAddressUsability()); System.out.println("Payee Endorsement Usability = " + t54.getPayeeEndorsementUsability()); System.out.println("Bofd Endorsement Usability = " + t54.getBofdEndorsementUsability()); System.out.println("Transit Endorsement Usability = " + t54.getTransitEndorsementUsability()); System.out.println("Reserved 39_44 = " + t54.getReserved39_44()); System.out.println("User Field = " + t54.getUserField()); System.out.println("Reserved = " + t54.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type54Record t54 = (X9100Type54Record)record; System.out.println("Record Type = " + t54.getRecordType()); System.out.println("Global Image Quality = " + t54.getGlobalImageQuality()); System.out.println("Global Image Usability = " + t54.getGlobalImageUsability()); System.out.println("Image Bank Specific Test = " + t54.getImageBankSpecificTest()); System.out.println("Partial Image = " + t54.getPartialImage()); System.out.println("Excess Image Skew = " + t54.getExcessImageSkew()); System.out.println("Piggyback Image = " + t54.getPiggybackImage()); System.out.println("Too Light = " + t54.getTooLight()); System.out.println("Too Dark = " + t54.getTooDark()); System.out.println("Streak Bands = " + t54.getStreakBands()); System.out.println("Below Min Image Size = " + t54.getBelowMinImageSize()); System.out.println("Exceed Max Image Size = " + t54.getExceedMaxImageSize()); System.out.println("Reserved 12_24 = " + t54.getReserved12_24()); System.out.println("Image Enabled Pod = " + t54.getImageEnabledPod()); System.out.println("Source Doc Bad = " + t54.getSourceDocBad()); System.out.println("Date Usability = " + t54.getDateUsability()); System.out.println("Payee Usability = " + t54.getPayeeUsability()); System.out.println("Convenient Amount Usability = " + t54.getConvenientAmountUsability()); System.out.println("Amount Words Usability = " + t54.getAmountWordsUsability()); System.out.println("Signature Usability = " + t54.getSignatureUsability()); System.out.println("Payor Name Address Usability = " + t54.getPayorNameAddressUsability()); System.out.println("Micr Line Usability = " + t54.getMicrLineUsability()); System.out.println("Memo Line Usability = " + t54.getMemoLineUsability()); System.out.println("Payor Bank Name Address Usability = " + t54.getPayorBankNameAddressUsability()); System.out.println("Payee Endorsement Usability = " + t54.getPayeeEndorsementUsability()); System.out.println("Bofd Endorsement Usability = " + t54.getBofdEndorsementUsability()); System.out.println("Transit Endorsement Usability = " + t54.getTransitEndorsementUsability()); System.out.println("Reserved 39_44 = " + t54.getReserved39_44()); System.out.println("User Field = " + t54.getUserField()); System.out.println("Reserved = " + t54.getReserved()); } } private void processType70Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type70Record t70 = (X937Type70Record)record; System.out.println("Record Type = " + t70.getRecordType()); System.out.println("Item Count = " + t70.getItemCount()); System.out.println("Total Amount = " + t70.getTotalAmount()); System.out.println("Micr Total Amount = " + t70.getMicrTotalAmount()); System.out.println("Image Count = " + t70.getImageCount()); System.out.println("User Field = " + t70.getUserField()); System.out.println("Reserved = " + t70.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type70Record t70 = (X9100Type70Record)record; System.out.println("Record Type = " + t70.getRecordType()); System.out.println("Item Count = " + t70.getItemCount()); System.out.println("Total Amount = " + t70.getTotalAmount()); System.out.println("Micr Total Amount = " + t70.getMicrTotalAmount()); System.out.println("Image Count = " + t70.getImageCount()); System.out.println("Credit Item Count = " + t70.getCreditItemCount()); System.out.println("Credit Total Amount = " + t70.getCreditTotalAmount()); System.out.println("User Field = " + t70.getUserField()); System.out.println("Reserved = " + t70.getReserved()); } } private void processType75Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type75Record t75 = (X937Type75Record)record; System.out.println("Record Type = " + t75.getRecordType()); System.out.println("Dest Routing Num = " + t75.getDestRoutingNum()); System.out.println("Seq Num = " + t75.getSeqNum()); System.out.println("Bundle Count = " + t75.getBundleCount()); System.out.println("Number Id = " + t75.getNumberId()); System.out.println("Total Amount = " + t75.getTotalAmount()); System.out.println("Reserved = " + t75.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type75Record t75 = (X9100Type75Record)record; System.out.println("Record Type = " + t75.getRecordType()); System.out.println("Dest Routing Num = " + t75.getDestRoutingNum()); System.out.println("Seq Num = " + t75.getSeqNum()); System.out.println("Bundle Count = " + t75.getBundleCount()); System.out.println("Number Id = " + t75.getNumberId()); System.out.println("Total Amount = " + t75.getTotalAmount()); System.out.println("Credit Total Amount = " + t75.getTotalCreditAmount()); System.out.println("Reserved = " + t75.getReserved()); } } private void processType85Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type85Record t85 = (X937Type85Record)record; System.out.println("Record Type = " + t85.getRecordType()); System.out.println("Routing Num = " + t85.getRoutingNum()); System.out.println("Total Amount = " + t85.getTotalAmount()); System.out.println("Item Count = " + t85.getItemCount()); System.out.println("UserField = " + t85.getUserField()); System.out.println("Reserved = " + t85.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type85Record t85 = (X9100Type85Record)record; System.out.println("Record Type = " + t85.getRecordType()); System.out.println("Routing Num = " + t85.getRoutingNum()); System.out.println("Total Amount = " + t85.getTotalAmount()); System.out.println("Item Count = " + t85.getItemCount()); System.out.println("Credit Total Amount = " + t85.getCreditTotalAmount()); System.out.println("UserField = " + t85.getUserField()); System.out.println("Reserved = " + t85.getReserved()); } } private void processType90Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type90Record t90 = (X937Type90Record)record; System.out.println("Record Type = " + t90.getRecordType()); System.out.println("Bundle Count = " + t90.getBundleCount()); System.out.println("Item Count = " + t90.getItemCount()); System.out.println("Total Amount = " + t90.getTotalAmount()); System.out.println("Image Count = " + t90.getImageCount()); System.out.println("Institution Name = " + t90.getInstitutionName()); System.out.println("Settlement Date = " + t90.getSettlementDate()); System.out.println("Reserved = " + t90.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type90Record t90 = (X9100Type90Record)record; System.out.println("Record Type = " + t90.getRecordType()); System.out.println("Bundle Count = " + t90.getBundleCount()); System.out.println("Item Count = " + t90.getItemCount()); System.out.println("Total Amount = " + t90.getTotalAmount()); System.out.println("Image Count = " + t90.getImageCount()); System.out.println("Institution Name = " + t90.getInstitutionName()); System.out.println("Settlement Date = " + t90.getSettlementDate()); System.out.println("Credit Item Count = " + t90.getCreditItemCount()); System.out.println("Credit Total Amount = " + t90.getCreditTotalAmount()); } } private void processType99Record(X9Record record) { if (record.getFormat() == X9Record.X937_2003) { X937Type99Record t99 = (X937Type99Record)record; System.out.println("Record Type = " + t99.getRecordType()); System.out.println("Cashletter Count = " + t99.getCashletterCount()); System.out.println("Total Record Count = " + t99.getTotalRecordCount()); System.out.println("Total Item Count = " + t99.getTotalItemCount()); System.out.println("Total Amount = " + t99.getTotalAmount()); System.out.println("Contact Name = " + t99.getContactName()); System.out.println("Contact Phone = " + t99.getContactPhone()); System.out.println("Reserved = " + t99.getReserved()); } else if (record.getFormat() == X9Record.X9100_180) { X9100Type99Record t99 = (X9100Type99Record)record; System.out.println("Record Type = " + t99.getRecordType()); System.out.println("Cashletter Count = " + t99.getCashletterCount()); System.out.println("Total Record Count = " + t99.getTotalRecordCount()); System.out.println("Total Item Count = " + t99.getTotalItemCount()); System.out.println("Total Amount = " + t99.getTotalAmount()); System.out.println("Contact Name = " + t99.getContactName()); System.out.println("Contact Phone = " + t99.getContactPhone()); System.out.println("Credit Total Amount = " + t99.getCreditTotalAmount()); } } private void processRecord(X9Record record) { // do something with this record... } private boolean skipRecord(int recordType) { if (itemCount <= 10) { // print all records if item index less than 10 return false; } else if (itemCount <= 500) { if (itemCount % 50 == 0) { // print records for every 50 item if item index less than 500 return false; } } else if (itemCount <= 10000) { if (itemCount % 500 == 0) { // print records for every 500 item if item index less than 10000 return false; } } else { if (itemCount % 1000 == 0) { // print records for every 1000 item return false; } } if (recordType == X9Record.TYPE_10 || recordType == X9Record.TYPE_20 || recordType == X9Record.TYPE_70 || recordType == X9Record.TYPE_75 || recordType == X9Record.TYPE_85 || recordType == X9Record.TYPE_90 || recordType == X9Record.TYPE_99) { return false; } else { return true; } } public static void setLicenseKey() { // The license key contains 25 chars. You will recieve the license key after you // purchase the SDK product. String licenseKey = "XXXXXXXXXXXXXXXXXXXXXXXXX"; setLicenseKey(licenseKey); } public static void setLicenseKey(String licenseKey) { System.out.println("************************************************"); System.out.println("* DigerTech Inc. ICL File Reading SDK Sample *"); System.out.println("* *"); System.out.println("* Version : " + FPLicenseInfo.VERSION + " *"); System.out.println("************************************************"); System.out.println(" "); // Make sure the license key is set to the SDK before it starts to process files. // Set the license key only one time when the JVM starts. // If the license key is valid, SDK will return the valid product id of the license. // othwise the productId is free version int productId = DTFileReader.setLicenseKey(licenseKey); if (productId == DTFileReader.SDK_FILE_READER_DEVELOPER) { System.out.println("This is a Developer version SDK license. SDK can process file less than 500 items."); } else if (productId == DTFileReader.SDK_FILE_READER_ENTERPRISE_I) { System.out.println("This is an Enterprise I version SDK license. SDK can process file less than 10000 items."); } else if (productId == DTFileReader.SDK_FILE_READER_ENTERPRISE_II) { System.out.println("This is an Enterprise II version SDK license. SDK can process file unlimited items."); } else { System.out.println("This is a free version SDK license. SDK can process file less than 10 items."); } FPLicenseInfo fpLicenseInfo = DTFileReader.getLicenseInfo(); System.out.println("------------------------- "); System.out.println("Computer Id = " + fpLicenseInfo.getComputerId()); System.out.println("Product Id = " + fpLicenseInfo.getProductId()); System.out.println("Version = " + fpLicenseInfo.getVersion()); System.out.println("Permanent = " + fpLicenseInfo.isPermanent()); System.out.println("Expired = " + fpLicenseInfo.isExpired()); System.out.println("Maintiance Expired Date = " + fpLicenseInfo.getMaintainanceDate()); System.out.println("------------------------- "); } public static void main(String args[]) { if (args == null || args.length < 1) { System.out.println(new StringBuffer().append("Usage: \n") .append("java com.digertech.sdk.samples.SampleX937FileProcessor [ICL file] [license key]\n") .append(" [ICL file] - ICL file with full path name.\n") .append(" [license key] - File processing SDK license key.\n") .toString()); } else { // Set the SDK license key before we process any files. // If it is better to set SDK license key when the JVM starts. if (args.length == 2) { setLicenseKey(args[1]); } else { setLicenseKey(); } File file = new File(args[0]); DTFileReader reader = null; SampleICLFileReader processor = null; try { // Initialize the DTFileReader which will parse the records in // the ICL file. reader = new DTFileReader(file); // Initialize this sample file which implements the ProcessingInterface processor = new SampleICLFileReader(); // Call the readRecords method in the DTFileReader which read all // records and call the processRecord method in this sample class // to print each field value of all records in the ICL file. reader.readRecords(processor); } catch (FileIOException e) { System.out.println("Error reading ICL file. " + e.toString()); } finally { if (reader != null) { // ensure to close the ICL file after the file is processed. try { reader.close(); } catch (FileIOException e) { System.out.println("Error closing ICL file. " + e.toString()); } } } } } }