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
(Generate patch)

Comparing projects/cms/source/util/uk/org/iscream/cms/util/XMLPacketMaker.java (file contents):
Revision 1.4 by tdb, Thu Nov 30 02:04:18 2000 UTC vs.
Revision 1.10 by tdb, Thu Mar 1 16:55:11 2001 UTC

# Line 1 | Line 1
1   //---PACKAGE DECLARATION---
2 < package uk.ac.ukc.iscream.xml;
2 > package uk.ac.ukc.iscream.util;
3  
4   //---IMPORTS---
5   import java.io.*;
# Line 10 | Line 10 | import javax.xml.parsers.SAXParserFactory;
10   import javax.xml.parsers.ParserConfigurationException;
11   import javax.xml.parsers.SAXParser;
12  
13 import uk.ac.ukc.iscream.core.*;
14 import uk.ac.ukc.iscream.refman.*;
15
13   /**
14   * XMLPacketMaker - Creates an XMLPacket object.
15   *
# Line 32 | Line 29 | public class XMLPacketMaker extends HandlerBase {
29  
30   //---CONSTRUCTORS---
31  
32 <    // Constructor for accepting XML input.
32 >    /**
33 >     * Constructor for accepting XML input.
34 >     *
35 >     * @param xml A String of XML to process.
36 >     */
37      public XMLPacketMaker (String xml) {
38          _xml = xml;
39      }
40  
41   //---PUBLIC METHODS---
42  
43 <    public XMLPacket createXMLPacket() {
43 >    /**
44 >     * Method to create an XML packet from the data this
45 >     * class was constructed with.
46 >     *
47 >     * @return an XMLPacket representing the XML String given
48 >     * @throws InvalidXMLException if the XML cannot be parsed
49 >     */
50 >    public XMLPacket createXMLPacket() throws InvalidXMLException {
51  
52          // Create the XMLPacket to store values in.
53          XMLPacket packet = new XMLPacket();
# Line 47 | Line 55 | public class XMLPacketMaker extends HandlerBase {
55          // Use the default (non-validating) parser
56          SAXParserFactory factory = SAXParserFactory.newInstance();
57          try {
50
58              // Parse the input
59              InputSource inputSource = new InputSource(new StringReader(_xml));
60              SAXParser saxParser = factory.newSAXParser();
61              saxParser.parse(inputSource, new XMLStringParser(packet));
55
62          }
63          catch (Exception e) {
64 <            _logger.write(this.toString(), Logger.WARNING, "An invalid XML UDP packet has been detected: "+packet.printAll());
65 <            return null;
64 >            // couldn't parse the XML for some reason
65 >            throw new InvalidXMLException("Could not parse the XML: "+_xml);
66          }
67 <        
67 >        // parsed successfully, return the packet
68          return packet;
69      }
70  
# Line 66 | Line 72 | public class XMLPacketMaker extends HandlerBase {
72       * Overrides the {@link java.lang.Object#toString() Object.toString()}
73       * method to provide clean logging (every class should have this).
74       *
75 +     * This uses the uk.ac.ukc.iscream.util.NameFormat class
76 +     * to format the toString()
77 +     *
78       * @return the name of this class and its CVS revision
79       */
80      public String toString() {
81 <        return this.getClass().getName() + "(" + REVISION.substring(11, REVISION.length() - 2) + ")";
81 >        return FormatName.getName(
82 >            _name,
83 >            getClass().getName(),
84 >            REVISION);
85      }
86  
87   //---PRIVATE METHODS---
# Line 78 | Line 90 | public class XMLPacketMaker extends HandlerBase {
90  
91   //---ATTRIBUTES---
92  
93 +    /**
94 +     * Holds the xml
95 +     */
96      String _xml;
97 <    Logger _logger = ReferenceManager.getInstance().getLogger();
97 >    
98 >    /**
99 >     * This is the friendly identifier of the
100 >     * component this class is running in.
101 >     * eg, a Filter may be called "filter1",
102 >     * If this class does not have an owning
103 >     * component,  a name from the configuration
104 >     * can be placed here.  This name could also
105 >     * be changed to null for utility classes.
106 >     */
107 >    private String _name = null;
108  
109   //---STATIC ATTRIBUTES---
110  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines