--- experimental/server/XMLReader/UDPReaderThread.java 2000/11/17 11:23:19 1.1 +++ experimental/server/XMLReader/UDPReaderThread.java 2000/11/21 10:27:24 1.7 @@ -4,20 +4,40 @@ import java.util.*; public class UDPReaderThread extends Thread{ - public UDPReaderThread(DatagramPacket packet){ - try { - xml = new String(packet.getData()); - } - catch (Exception e) { - System.out.println("An exception occured while attempting to return an XMLPacket!"); - e.printStackTrace(); - } + public UDPReaderThread(){ + // no-args constructor. } + public void run(DatagramPacket packet){ + rawPacket = packet.getData(); + start(); + } + + public void run(String xml){ + rawPacket = xml.getBytes(); + start(); + } + public void run(){ + + // Get a string without any null characters in it. + String xml = new String(rawPacket); + xml = xml.substring(0, xml.indexOf(0)); + + // USe my XMLPacketMaker to make an XMLPacket object. XMLPacketMaker xmlPacketMaker = new XMLPacketMaker(xml); XMLPacket packet = xmlPacketMaker.createXMLPacket(); + + if (packet == null){ + System.out.println("UDPReaderThread - A null XMLPacket was returned, I think I'll ignore it!"); + return; + } + System.out.println("UDPReaderThread - An XML Packet was read sucessfully: -"); + packet.printAll(); + // Now do something with this XMLPacket!!! + // .... but what? ;-) + } - String xml; + byte[] rawPacket; }