System information
Appendix D. JAVA Example Code
D-9
if(table != null)
{
// form the command message to poll the table
CreateHeader();
out_packet.message_type = 0x09;
out_packet.tran_no = 0x09;
out_packet.add_short((short)0); // security code
out_packet.add_byte((byte)5); // collect most recent records
out_packet.add_short((short)table.table_no);
out_packet.add_short((short)table.def_sig);
out_packet.add_int(num_records); // specify the number of
// records to return
out_packet.add_short((short)0); // send all fields
}
else
System.out.println("Unable to locate the table def for
\"Public\"");
}
}
/**
*/
static void GetLine()
{
try
{
byte[] read_buffer = new byte[2048];
int read_index = 0;
char getlinesig = 0xAAAA;
Counter timeout = new Counter();
byte b;
boolean unquote_next = false;
boolean done = false;
while(!done && timeout.elapsed() < 10000)
{
if(in_stream.available() > 0)
{
b = (byte)read_byte();
if(b == (byte)0xBC)
{
unquote_next = true;
continue;
}
if(b != (byte)0xBD)
{
if(unquote_next)
{
b -= 0x20;
unquote_next = false;
}
getlinesig = calcSigForByte(b,getlinesig);
read_buffer[read_index++] = b;
}
else if(read_index >= 12 && getlinesig == 0)
{
try
{
in_packet = new Packet(read_buffer,read_index - 2);
flush_io_log("end of packet detected, size = " +
in_packet.whats_left());
done = true;
}