ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/util/uk/org/iscream/cms/util/XMLStringParser.java
(Generate patch)

Comparing projects/cms/source/util/uk/org/iscream/cms/util/XMLStringParser.java (file contents):
Revision 1.10 by tdb, Sat Mar 10 04:03:52 2001 UTC vs.
Revision 1.15 by tdb, Sat May 18 18:16:04 2002 UTC

# Line 1 | Line 1
1 + /*
2 + * i-scream central monitoring system
3 + * Copyright (C) 2000-2002 i-scream
4 + *
5 + * This program is free software; you can redistribute it and/or
6 + * modify it under the terms of the GNU General Public License
7 + * as published by the Free Software Foundation; either version 2
8 + * of the License, or (at your option) any later version.
9 + *
10 + * This program is distributed in the hope that it will be useful,
11 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 + * GNU General Public License for more details.
14 + *
15 + * You should have received a copy of the GNU General Public License
16 + * along with this program; if not, write to the Free Software
17 + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
18 + */
19 +
20   //---PACKAGE DECLARATION---
21 < package uk.ac.ukc.iscream.util;
21 > package uk.org.iscream.cms.server.util;
22  
23   //---IMPORTS---
24   import java.io.*;
25 < import java.util.ArrayList;
25 > import java.util.LinkedList;
26 > import java.util.Iterator;
27   import org.xml.sax.*;
28   import org.xml.sax.helpers.*;
29   import javax.xml.parsers.*;
# Line 58 | Line 78 | public class XMLStringParser extends DefaultHandler {
78       * within the XMLPacket.
79       */
80      public void startElement (String uri, String name, String qName, Attributes atts) {
81 <            _indentLevel++;
62 <        _tagList.add(name);
81 >        _tagList.addLast(qName);
82          if (atts != null) {
83              for (int i = 0; i < atts.getLength (); i++) {
84 <                _packet.addParam(getPath()+".attributes."+atts.getLocalName(i), atts.getValue(i));
84 >                _packet.addParam(getPath()+".attributes."+atts.getQName(i), atts.getValue(i));
85              }
86          }
87      }
# Line 73 | Line 92 | public class XMLStringParser extends DefaultHandler {
92       * level.
93       */
94      public void endElement (String uri, String name, String qName) {
95 <            _tagList.remove(_tagList.size() - 1);    
77 <        _indentLevel--;
95 >            _tagList.removeLast();    
96      }
97      
98      /**
# Line 92 | Line 110 | public class XMLStringParser extends DefaultHandler {
110       * Overrides the {@link java.lang.Object#toString() Object.toString()}
111       * method to provide clean logging (every class should have this).
112       *
113 <     * This uses the uk.ac.ukc.iscream.util.NameFormat class
113 >     * This uses the uk.org.iscream.cms.server.util.NameFormat class
114       * to format the toString()
115       *
116       * @return the name of this class and its CVS revision
# Line 115 | Line 133 | public class XMLStringParser extends DefaultHandler {
133       * in the XMLPacket.
134       */
135      private String getPath () {
136 <        String path = (String) _tagList.get(0);
136 >        String path = "";
137          if (_tagList.size() > 0) {
138 <            for (int i = 1 ; i < _tagList.size() ; i++) {
139 <                path = path + "." + (String) _tagList.get(i);
138 >            Iterator i = _tagList.iterator();
139 >            path = (String) i.next();
140 >            while(i.hasNext()) {
141 >                path = path + "." + (String) i.next();
142              }
143          }
144          return path;
# Line 134 | Line 154 | public class XMLStringParser extends DefaultHandler {
154      }
155  
156   //---ATTRIBUTES---
137
138    /**
139     * To keep track of our identation level
140     */
141    private int _indentLevel = 0;
157      
158      /**
159 <     * An ArrayList of tags
159 >     * A LinkedList of tags
160       */
161 <    private ArrayList _tagList = new ArrayList();
161 >    private LinkedList _tagList = new LinkedList();
162      
163      /**
164       * A reference to the XMLPacket we are making

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines