Skip to content

Instantly share code, notes, and snippets.

View martinusadyh's full-sized avatar

Martinus Ady H martinusadyh

View GitHub Profile
package id.web.martinusadyh.iso8583.jpos;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.jpos.iso.ISOException;
import org.jpos.iso.ISOMUX;
import org.jpos.iso.ISOMsg;
import org.jpos.iso.ISOPackager;
import org.jpos.iso.ISORequest;
package id.web.martinusadyh.iso8583.jpos;
import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.jpos.iso.BaseChannel;
import org.jpos.iso.ISOException;
import org.jpos.iso.ISOMsg;
import org.jpos.iso.ISOPackager;
import org.jpos.iso.ISORequestListener;
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE isopackager SYSTEM "genericpackager.dtd">
<!-- ISO 8583:1993 (ASCII) field descriptions for GenericPackager -->
<isopackager>
<isofield
id="0"
length="4"
name="Message Type Indicator"
<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT isopackager (isofield+,isofieldpackager*)*>
<!ATTLIST isopackager maxValidField CDATA #IMPLIED>
<!ATTLIST isopackager bitmapField CDATA #IMPLIED>
<!ATTLIST isopackager firstField CDATA #IMPLIED>
<!ATTLIST isopackager emitBitmap (true|false) #IMPLIED>
<!ATTLIST isopackager headerLength CDATA #IMPLIED>
<!-- isofield -->
@martinusadyh
martinusadyh / gist:8a7c06df95b004eff5ad
Created October 3, 2014 18:19
Cara mengambil respon melalui ISORequest
ISOMsg reply = req.getResponse(50*1000);
if (reply != null) {
System.out.println("Req ["+new String(networkReq.pack()) + "]");
System.out.println("Res ["+new String(reply.pack()) + "]");
}
@martinusadyh
martinusadyh / gist:b67364e745ffb43e34bf
Created October 3, 2014 18:18
Cara mengirimkan message melalui ISORequest
ISORequest req = new ISORequest(networkReq);
isoMux.queue(req);
@martinusadyh
martinusadyh / gist:59705b33e55bb02918d9
Created October 3, 2014 18:18
Contoh Penggunaan class ISOMsg
// bikin network request
ISOMsg networkReq = new ISOMsg();
networkReq.setMTI("1800");
networkReq.set(3, "123456");
networkReq.set(7, new SimpleDateFormat("yyyyMMdd").format(new Date()));
networkReq.set(11, "000001");
networkReq.set(12, new SimpleDateFormat("HHmmss").format(new Date()));
networkReq.set(13, new SimpleDateFormat("MMdd").format(new Date()));
networkReq.set(48, "Tutorial ISO 8583 Dengan Java");
networkReq.set(70, "001");
@martinusadyh
martinusadyh / gist:3f71d7dd1179158e24f0
Created October 3, 2014 18:16
Contoh Penggunaan ISOServer
ISOServer server = new ISOServer(portNumber, channel, null);
new Thread(server).start();
@martinusadyh
martinusadyh / gist:3323534463bc8bed0bb6
Created October 3, 2014 18:15
Contoh Penggunaan ISOMUX
ISOMUX isoMux = new ISOMUX(channel) {
@Override
protected String getKey(ISOMsg m) throws ISOException {
return super.getKey(m);
}
};
// jalankan ISOMUXnya
new Thread(isoMux).start();
@martinusadyh
martinusadyh / gist:e9095f7fe37d12660c94
Created October 3, 2014 18:12
Contoh penggunaan ASCIIChannel
...
ASCIIChannel channel = new ASCIIChannel(hostname, portNumber, packager);
...