Class PdbSAXParser

java.lang.Object
org.biojava.bio.program.sax.PdbSAXParser
All Implemented Interfaces:
XMLReader

public class PdbSAXParser extends Object
A SAX2 parser for dealing with native PDB files. That is, this class allows native PDB format files to be processed as if they were in PdbXML format, but without an interconversion step. That is, events are generated that call methods on an XML document handler.

Note this code is experimental, and may change without notice.

Copyright © 2000 - 2002 Cambridge Antibody Technology.

Primary author -

  • Simon Brocklehurst (CAT)
Other authors -
  • Neil Benn (CAT)
  • Derek Crockford (CAT)
  • Tim Dilks (CAT)
  • Colin Hardman (CAT)
  • Stuart Johnston (CAT)
Version:
0.8
Author:
Cambridge Antibody Technology (CAT), Greg Cox
  • Field Details

    • oHandler

      protected ContentHandler oHandler
    • tNamespaces

      protected boolean tNamespaces
    • tNamespacePrefixes

      protected boolean tNamespacePrefixes
    • oNamespacePrefix

      protected String oNamespacePrefix
    • oFullNamespacePrefix

      protected String oFullNamespacePrefix
    • iState

      protected int iState
  • Constructor Details

    • PdbSAXParser

      public PdbSAXParser()
      Sets namespace prefix to "biojava"
  • Method Details

    • parse

      public void parse(String poURI) throws IOException, SAXException
      Full implementation of interface method.
      Specified by:
      parse in interface XMLReader
      Throws:
      IOException
      SAXException
    • parse

      public void parse(InputSource poSource) throws IOException, SAXException
      Describe 'parse' method here.
      Specified by:
      parse in interface XMLReader
      Parameters:
      poSource - -
      Throws:
      IOException
      SAXException
    • setContentHandler

      public void setContentHandler(ContentHandler poHandler)
      Allow an application to register a content event handler. If the application does not register a content handler, all content events reported by the SAX parser will be silently ignored.

      Applications may register a new or different handler in the middle of a parse, and the SAX parser must begin using the new handler immediately.

      Specified by:
      setContentHandler in interface XMLReader
      Parameters:
      poHandler - a ContentHandler The XML content handler
      Throws:
      NullPointerException - If the handler argument is null
    • getContentHandler

      public ContentHandler getContentHandler()
      Return the content handler.
      Specified by:
      getContentHandler in interface XMLReader
      Returns:
      a ContentHandler The current content handler, or null if none has been registered.
    • getFeature

      public boolean getFeature(String poName) throws SAXNotRecognizedException, SAXNotSupportedException
      Do-nothing implementation of interface method
      Specified by:
      getFeature in interface XMLReader
      Throws:
      SAXNotRecognizedException
      SAXNotSupportedException
    • setFeature

      public void setFeature(String poName, boolean value) throws SAXNotRecognizedException, SAXNotSupportedException
      Handles support for ReasoningDomain and Namespace-prefixes
      Specified by:
      setFeature in interface XMLReader
      Throws:
      SAXNotRecognizedException
      SAXNotSupportedException
    • getProperty

      Do-nothing implementation of interface method
      Specified by:
      getProperty in interface XMLReader
      Throws:
      SAXNotRecognizedException
      SAXNotSupportedException
    • setProperty

      public void setProperty(String name, Object value) throws SAXNotRecognizedException, SAXNotSupportedException
      Do-nothing implementation of interface method
      Specified by:
      setProperty in interface XMLReader
      Throws:
      SAXNotRecognizedException
      SAXNotSupportedException
    • setEntityResolver

      public void setEntityResolver(EntityResolver resolver)
      Do-nothing implementation of interface method
      Specified by:
      setEntityResolver in interface XMLReader
    • getEntityResolver

      public EntityResolver getEntityResolver()
      Do-nothing implementation of interface method
      Specified by:
      getEntityResolver in interface XMLReader
    • setDTDHandler

      public void setDTDHandler(DTDHandler handler)
      Do-nothing implementation of interface method
      Specified by:
      setDTDHandler in interface XMLReader
    • getDTDHandler

      public DTDHandler getDTDHandler()
      Do-nothing implementation of interface method
      Specified by:
      getDTDHandler in interface XMLReader
    • setErrorHandler

      public void setErrorHandler(ErrorHandler handler)
      Do-nothing implementation of interface method
      Specified by:
      setErrorHandler in interface XMLReader
    • getErrorHandler

      public ErrorHandler getErrorHandler()
      Do-nothing implementation of interface method
      Specified by:
      getErrorHandler in interface XMLReader
    • startElement

      protected void startElement(org.biojava.bio.program.sax.QName poQName, Attributes atts) throws SAXException
      Utility method to centralize sending of a SAX startElement message to document handler
      Parameters:
      poQName - a QName value
      atts - an Attributes value
      Throws:
      SAXException - if an error occurs
    • endElement

      protected void endElement(org.biojava.bio.program.sax.QName poQName) throws SAXException
      Utility method to centralize the sending of a SAX endElement message a document handler.
      Parameters:
      poQName - -
    • characters

      protected void characters(char[] ch, int start, int length) throws SAXException
      Utility method to centralize the sending of a SAX characters message a document handler.
      Parameters:
      ch - -
      start - -
      length - -
    • getNamespaces

      public boolean getNamespaces()
      Support SAX2 configuration of namespace support of parser.
    • getNamespacePrefixes

      public boolean getNamespacePrefixes()
      Support SAX2 configuration of namespace support of parser.
    • addPrefixMapping

      public void addPrefixMapping(String poPrefix, String poURI)
      Adds a namespace prefix to URI mapping as (key,value) pairs. This mapping can be looked up later to get URIs on request using the getURIFromPrefix method.
      Parameters:
      poPrefix - a String representation of the namespace prefix
      poURI - a String representation of the URI for the namespace prefix.
    • getURIFromPrefix

      public String getURIFromPrefix(String poPrefix)
      Gets the URI for a namespace prefix, given that prefix, or null if the prefix is not recognised.
      Parameters:
      poPrefix - a String The namespace prefix.
    • setNamespacePrefix

      public void setNamespacePrefix(String poPrefix)
      Parameters:
      poPrefix - a String value
    • getNamespacePrefix

      public String getNamespacePrefix()
      Describe getNamespacePrefix method here.
      Returns:
      a String value
    • prefix

      public String prefix(String poElementName)
      Given an unprefixed element name, returns a new element name with a namespace prefix
      Returns:
      a String value
    • getContentStream

      protected BufferedReader getContentStream(InputSource poSource)
      Create a stream from an an InputSource, picking the correct stream according to order of precedance.
      Parameters:
      poSource - an InputSource value
      Returns:
      a BufferedReader value
    • changeState

      protected void changeState(int piState)
      Centralise chaining of iState field to help with debugging. E.g. printing out value etc. All changes to iState should be made through this method.
      Parameters:
      piState - an int value