ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/util/uk/org/iscream/cms/util/XMLPacketMaker.java
Revision: 1.6
Committed: Thu Dec 7 23:26:16 2000 UTC (23 years, 4 months ago) by tdb
Branch: MAIN
Branch point for: SERVER_PACKAGEBUILD
Changes since 1.5: +4 -3 lines
Log Message:
Just a bit of debugging.

File Contents

# User Rev Content
1 tdb 1.3 //---PACKAGE DECLARATION---
2 ajm 1.5 package uk.ac.ukc.iscream.util;
3 tdb 1.3
4     //---IMPORTS---
5 pjm2 1.1 import java.io.*;
6     import java.util.ArrayList;
7    
8     import org.xml.sax.*;
9     import javax.xml.parsers.SAXParserFactory;
10     import javax.xml.parsers.ParserConfigurationException;
11     import javax.xml.parsers.SAXParser;
12    
13 pjm2 1.2 import uk.ac.ukc.iscream.core.*;
14    
15 tdb 1.3 /**
16     * XMLPacketMaker - Creates an XMLPacket object.
17     *
18 tdb 1.6 * @author $Author: ajm4 $
19     * @version $Id: XMLPacketMaker.java,v 1.5 2000/11/30 02:38:17 ajm4 Exp $
20 tdb 1.3 */
21     public class XMLPacketMaker extends HandlerBase {
22 pjm2 1.1
23 tdb 1.3 //---FINAL ATTRIBUTES---
24    
25     /**
26     * The current CVS revision of this class
27     */
28 tdb 1.6 public final String REVISION = "$Revision: 1.5 $";
29 tdb 1.3
30     //---STATIC METHODS---
31    
32     //---CONSTRUCTORS---
33 pjm2 1.1
34     // Constructor for accepting XML input.
35 tdb 1.4 public XMLPacketMaker (String xml) {
36     _xml = xml;
37 pjm2 1.1 }
38    
39 tdb 1.3 //---PUBLIC METHODS---
40    
41 pjm2 1.1 public XMLPacket createXMLPacket() {
42    
43     // Create the XMLPacket to store values in.
44     XMLPacket packet = new XMLPacket();
45    
46     // Use the default (non-validating) parser
47     SAXParserFactory factory = SAXParserFactory.newInstance();
48     try {
49    
50     // Parse the input
51 tdb 1.4 InputSource inputSource = new InputSource(new StringReader(_xml));
52 pjm2 1.1 SAXParser saxParser = factory.newSAXParser();
53     saxParser.parse(inputSource, new XMLStringParser(packet));
54    
55     }
56     catch (Exception e) {
57 tdb 1.6 _logger.write(this.toString(), Logger.WARNING, e.toString());
58 tdb 1.4 _logger.write(this.toString(), Logger.WARNING, "An invalid XML UDP packet has been detected: "+packet.printAll());
59 pjm2 1.1 return null;
60     }
61    
62     return packet;
63     }
64 tdb 1.3
65     /**
66     * Overrides the {@link java.lang.Object#toString() Object.toString()}
67     * method to provide clean logging (every class should have this).
68     *
69     * @return the name of this class and its CVS revision
70     */
71     public String toString() {
72     return this.getClass().getName() + "(" + REVISION.substring(11, REVISION.length() - 2) + ")";
73     }
74    
75     //---PRIVATE METHODS---
76    
77     //---ACCESSOR/MUTATOR METHODS---
78    
79     //---ATTRIBUTES---
80    
81 tdb 1.4 String _xml;
82     Logger _logger = ReferenceManager.getInstance().getLogger();
83 tdb 1.3
84     //---STATIC ATTRIBUTES---
85    
86     }