ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/server/uk/org/iscream/cms/server/filter/FilterThread.java
Revision: 1.7
Committed: Mon Nov 27 21:47:13 2000 UTC (23 years, 5 months ago) by tdb
Branch: MAIN
Changes since 1.6: +1 -1 lines
Log Message:
Yuck, a System.out.println() :)

File Contents

# User Rev Content
1 pjm2 1.1 import java.io.*;
2     import java.net.*;
3     import java.util.*;
4 pjm2 1.6 import uk.ac.ukc.iscream.core.*;
5 tdb 1.2 import uk.ac.ukc.iscream.filter.*;
6 pjm2 1.1
7 pjm2 1.3 // Handle an incoming UDP packet as a separate thread.
8 tdb 1.2 public class FilterThread extends Thread{
9 pjm2 1.1
10 pjm2 1.3 // Class constructor. Obtains the byte[] from a DatagramPacket.
11 pjm2 1.5 public FilterThread(DatagramPacket packet, Filter parent, Logger logger){
12 tdb 1.2 this.parent = parent;
13 pjm2 1.3 this.rawPacket = packet.getData();
14 pjm2 1.6 this.logger = logger;
15 pjm2 1.1 }
16    
17 pjm2 1.3 // Class constructor for passing XML Strings.
18 pjm2 1.5 public FilterThread(String xml, Filter parent, Logger logger){
19 pjm2 1.3 this.parent = parent;
20     this.rawPacket = xml.getBytes();
21 pjm2 1.1 }
22    
23     public void run(){
24    
25     // Get a string without any null characters in it.
26     String xml = new String(rawPacket);
27 pjm2 1.3 if (xml.indexOf(0) != -1) {
28 tdb 1.2 xml = xml.substring(0, xml.indexOf(0));
29     }
30     else {
31     xml = xml.substring(0, xml.length());
32     }
33 tdb 1.7 //System.out.println(xml);
34 pjm2 1.1
35 pjm2 1.3 // Use my XMLPacketMaker to make an XMLPacket object.
36 pjm2 1.6 XMLPacketMaker xmlPacketMaker = new XMLPacketMaker(xml, logger);
37 pjm2 1.1 XMLPacket packet = xmlPacketMaker.createXMLPacket();
38    
39     if (packet == null){
40 pjm2 1.6 // A null XML packet was returned - don't pass it on.
41     logger.write(this.toString(), Logger.SYSMSG, "An XML UDP packet was sucessfully filtered from the system.");
42 pjm2 1.1 return;
43     }
44 pjm2 1.6
45     // Now do something with this XMLPacket!!!
46     // .... let's try this...
47 tdb 1.2 parent.receiveXML(xml);
48 pjm2 1.1
49     }
50    
51 tdb 1.2 Filter parent;
52 pjm2 1.1 byte[] rawPacket;
53 pjm2 1.5 Logger logger;
54 pjm2 1.1 }