edu.sc.seis.seisFile.fdsnws
Class StaxUtil

java.lang.Object
  extended by edu.sc.seis.seisFile.fdsnws.StaxUtil

public class StaxUtil
extends java.lang.Object


Field Summary
static java.lang.String DATE_FORMAT
           
static java.lang.String SHORT_DATE_FORMAT
           
 
Constructor Summary
StaxUtil()
           
 
Method Summary
static javax.xml.stream.events.StartElement expectStartElement(java.lang.String expected, javax.xml.stream.XMLEventReader reader)
           
static boolean hasAttribute(javax.xml.stream.events.StartElement start, java.lang.String name)
           
static boolean hasNext(javax.xml.stream.XMLEventReader reader, java.lang.String elementName, java.lang.String endElementName)
          Checks for a next element of name "elementName".
static java.util.Date parseDate(java.lang.String text)
           
static java.lang.String pullAttribute(javax.xml.stream.events.StartElement start, java.lang.String name)
           
static java.lang.String pullAttributeIfExists(javax.xml.stream.events.StartElement start, java.lang.String name)
           
static java.lang.String pullContiguousText(javax.xml.stream.XMLEventReader reader)
           
static java.util.Date pullDate(javax.xml.stream.XMLEventReader reader, java.lang.String name)
           
static java.util.Date pullDateAttributeIfExists(javax.xml.stream.events.StartElement start, java.lang.String name)
          extracts a Date from the named attribute.
static float pullFloat(javax.xml.stream.XMLEventReader reader, java.lang.String elementName)
           
static java.lang.Float pullFloatAttribute(javax.xml.stream.events.StartElement start, java.lang.String name)
           
static int pullInt(javax.xml.stream.XMLEventReader reader, java.lang.String elementName)
           
static java.lang.Integer pullIntAttribute(javax.xml.stream.events.StartElement start, java.lang.String name)
           
static java.lang.String pullText(javax.xml.stream.XMLEventReader reader, java.lang.String elementName)
           
static void skipToMatchingEnd(javax.xml.stream.XMLEventReader reader)
           
static void skipToStartElement(javax.xml.stream.XMLEventReader reader)
           
static void skipToStartOrEndElement(javax.xml.stream.XMLEventReader reader)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DATE_FORMAT

public static final java.lang.String DATE_FORMAT
See Also:
Constant Field Values

SHORT_DATE_FORMAT

public static final java.lang.String SHORT_DATE_FORMAT
See Also:
Constant Field Values
Constructor Detail

StaxUtil

public StaxUtil()
Method Detail

expectStartElement

public static javax.xml.stream.events.StartElement expectStartElement(java.lang.String expected,
                                                                      javax.xml.stream.XMLEventReader reader)
                                                               throws javax.xml.stream.XMLStreamException,
                                                                      StationXMLException
Throws:
javax.xml.stream.XMLStreamException
StationXMLException

pullContiguousText

public static java.lang.String pullContiguousText(javax.xml.stream.XMLEventReader reader)
                                           throws javax.xml.stream.XMLStreamException,
                                                  StationXMLException
Throws:
javax.xml.stream.XMLStreamException
StationXMLException

pullText

public static java.lang.String pullText(javax.xml.stream.XMLEventReader reader,
                                        java.lang.String elementName)
                                 throws javax.xml.stream.XMLStreamException,
                                        StationXMLException
Throws:
javax.xml.stream.XMLStreamException
StationXMLException

pullInt

public static int pullInt(javax.xml.stream.XMLEventReader reader,
                          java.lang.String elementName)
                   throws java.lang.NumberFormatException,
                          javax.xml.stream.XMLStreamException,
                          StationXMLException
Throws:
java.lang.NumberFormatException
javax.xml.stream.XMLStreamException
StationXMLException

pullFloat

public static float pullFloat(javax.xml.stream.XMLEventReader reader,
                              java.lang.String elementName)
                       throws java.lang.NumberFormatException,
                              javax.xml.stream.XMLStreamException,
                              StationXMLException
Throws:
java.lang.NumberFormatException
javax.xml.stream.XMLStreamException
StationXMLException

skipToStartElement

public static void skipToStartElement(javax.xml.stream.XMLEventReader reader)
                               throws javax.xml.stream.XMLStreamException
Throws:
javax.xml.stream.XMLStreamException

skipToMatchingEnd

public static void skipToMatchingEnd(javax.xml.stream.XMLEventReader reader)
                              throws javax.xml.stream.XMLStreamException
Throws:
javax.xml.stream.XMLStreamException

skipToStartOrEndElement

public static void skipToStartOrEndElement(javax.xml.stream.XMLEventReader reader)
                                    throws javax.xml.stream.XMLStreamException
Throws:
javax.xml.stream.XMLStreamException

hasNext

public static boolean hasNext(javax.xml.stream.XMLEventReader reader,
                              java.lang.String elementName,
                              java.lang.String endElementName)
                       throws javax.xml.stream.XMLStreamException
Checks for a next element of name "elementName". Skips over any other elements so long as it doesn't hit an element of name "endElementName. This is so we don't return stations from the next network when passing a ending network tag.

Parameters:
reader -
elementName - element name we are looking for
endElementName - end element name to not go past, ie the parent element
Returns:
true if there is another element, false otherwise
Throws:
javax.xml.stream.XMLStreamException

hasAttribute

public static boolean hasAttribute(javax.xml.stream.events.StartElement start,
                                   java.lang.String name)

pullAttributeIfExists

public static java.lang.String pullAttributeIfExists(javax.xml.stream.events.StartElement start,
                                                     java.lang.String name)
                                              throws StationXMLException
Throws:
StationXMLException

pullAttribute

public static java.lang.String pullAttribute(javax.xml.stream.events.StartElement start,
                                             java.lang.String name)
                                      throws StationXMLException
Throws:
StationXMLException

pullIntAttribute

public static java.lang.Integer pullIntAttribute(javax.xml.stream.events.StartElement start,
                                                 java.lang.String name)
                                          throws StationXMLException
Throws:
StationXMLException

pullFloatAttribute

public static java.lang.Float pullFloatAttribute(javax.xml.stream.events.StartElement start,
                                                 java.lang.String name)
                                          throws StationXMLException
Throws:
StationXMLException

pullDate

public static java.util.Date pullDate(javax.xml.stream.XMLEventReader reader,
                                      java.lang.String name)
                               throws StationXMLException,
                                      javax.xml.stream.XMLStreamException
Throws:
StationXMLException
javax.xml.stream.XMLStreamException

pullDateAttributeIfExists

public static java.util.Date pullDateAttributeIfExists(javax.xml.stream.events.StartElement start,
                                                       java.lang.String name)
                                                throws StationXMLException
extracts a Date from the named attribute. Null if the attribute is not found.

Throws:
StationXMLException

parseDate

public static java.util.Date parseDate(java.lang.String text)
                                throws StationXMLException
Throws:
StationXMLException