Class ComponentReader

java.lang.Object
org.exolab.castor.xml.schema.reader.ComponentReader
Direct Known Subclasses:
AnnotationUnmarshaller, AppInfoUnmarshaller, AttributeGroupUnmarshaller, AttributeUnmarshaller, CharacterUnmarshaller, ComplexContentRestrictionUnmarshaller, ComplexContentUnmarshaller, ComplexTypeUnmarshaller, DocumentationUnmarshaller, ElementUnmarshaller, ExtensionUnmarshaller, FacetUnmarshaller, FieldOrSelectorUnmarshaller, GroupUnmarshaller, IdentityConstraintUnmarshaller, ImportUnmarshaller, IncludeUnmarshaller, ModelGroupUnmarshaller, RedefineUnmarshaller, SchemaUnmarshaller, SimpleContentRestrictionUnmarshaller, SimpleContentUnmarshaller, SimpleTypeListUnmarshaller, SimpleTypeRestrictionUnmarshaller, SimpleTypeUnmarshaller, UnionUnmarshaller, UnknownUnmarshaller, WildcardUnmarshaller

public abstract class ComponentReader extends Object
The base class for separate component unmarshallers for reading an XML Schema component.
Version:
$Revision: 7410 $ $Date: 2006-04-14 04:14:43 -0600 (Fri, 14 Apr 2006) $
Author:
Keith Visco
  • Constructor Details

    • ComponentReader

      protected ComponentReader(SchemaContext schemaContext)
      To hand down a couple of configuration items to all Unmarshaller classes.
      Parameters:
      schemaContext - the SchemaContext to use
  • Method Details

    • elementName

      public abstract String elementName()
      Returns the name of the element that this ComponentReader handles
      Returns:
      the name of the element that this ComponentReader handles
    • getObject

      public abstract Object getObject()
      Returns the Object created by this Unmarshaller
      Returns:
      the Object created by this Unmarshaller
    • finish

      public void finish() throws XMLException
      Called to signal an end of unmarshalling. This method should be overridden to perform any necessary clean up by an unmarshaller
      Throws:
      XMLException
    • getResolver

      public Resolver getResolver()
      Returns the resolver used for resolving id references.
      Returns:
      the resolver used for resolving id references.
    • getURIResolver

      public URIResolver getURIResolver()
      Returns the URIresolver used for resolving hrefs.
      Returns:
      the URIresolver used for resolving hrefs.
    • setResolver

      public void setResolver(Resolver resolver)
      Sets the Resolver to be used for resolving id references
      Parameters:
      resolver - the Resolver to be used for resolving id references
    • setURIResolver

      public void setURIResolver(URIResolver uriResolver)
      Sets the URIResolver to be used for resolving hrefs.
      Parameters:
      uriResolver - the URIResolver to be used for resolving hrefs.
    • isWhiteSpace

      public static boolean isWhiteSpace(char[] chars, int start, int length)
      Determines if the given sequence of characters consists of whitespace characters
      Parameters:
      chars - an array of characters to check for whitespace
      start - the start index into the character array
      length - the number of characters to check
      Returns:
      true if the characters specficied consist only of whitespace characters
    • error

      public void error(String err) throws XMLException
      This method is called for a general error.
      Parameters:
      err - the error message to report
      Throws:
      XMLException
    • error

      public void error(Exception ex) throws XMLException
      This method is called for a general error.
      Parameters:
      ex - the Exception that caused the error.
      Throws:
      XMLException
    • illegalAttribute

      public void illegalAttribute(String attName) throws XMLException
      This method is called when an illegal Attribute is encountered.
      Parameters:
      attName - the name of the illegal attribute.
      Throws:
      XMLException
    • illegalElement

      public void illegalElement(String name) throws XMLException
      This method is called when an illegal Element is encountered.
      Parameters:
      name - the name of the illegal element
      Throws:
      XMLException
    • redefinedElement

      public void redefinedElement(String name) throws XMLException
      This method is called when an element which may only be defined once, is redefined.
      Parameters:
      name - the name of the element
      Throws:
      XMLException
    • redefinedElement

      public void redefinedElement(String name, String xtraInfo) throws XMLException
      This method is called when an element which may only be defined once, is redefined.
      Parameters:
      name - the name of the element
      Throws:
      XMLException
    • outOfOrder

      public void outOfOrder(String name) throws XMLException
      This method is called when an out of order element is encountered
      Throws:
      XMLException
    • toInt

      public static int toInt(String str) throws IllegalArgumentException
      Converts the given String to an int
      Parameters:
      str - the String to convert to an int
      Returns:
      the int derived from the given String
      Throws:
      IllegalArgumentException - when the given String does not represent a valid int
    • getDocumentLocator

      public Locator getDocumentLocator()
    • setDocumentLocator

      public void setDocumentLocator(Locator documentLocator)
    • characters

      public void characters(char[] chars, int start, int length) throws XMLException
      Signals to recieve charactes
      Parameters:
      chars - the character array containing the characters
      start - the starting index into the character array
      length - the number of characters to recieve
      Throws:
      XMLException
    • endElement

      public void endElement(String name, String namespace) throws XMLException
      Signals to end of the element with the given name.
      Parameters:
      name - the NCName of the element. It is an error if the name is a QName (ie. contains a prefix).
      namespace - the namespace of the element.
      Throws:
      XMLException
    • startElement

      public void startElement(String name, String namespace, AttributeSet atts, Namespaces nsDecls) throws XMLException
      Signals the start of an element with the given name.
      Parameters:
      name - the NCName of the element. It is an error if the name is a QName (ie. contains a prefix).
      namespace - the namespace of the element. This may be null. Note: A null namespace is not the same as the default namespace unless the default namespace is also null.
      atts - the AttributeSet containing the attributes associated with the element.
      nsDecls - the namespace declarations being declared for this element. This may be null.
      Throws:
      XMLException
    • setSchemaContext

      public void setSchemaContext(SchemaContext schemaContext)
      To set the Castor XML schema context to be used.
      Parameters:
      schemaContext - the Castor XML schema context to be used
    • getSchemaContext

      public SchemaContext getSchemaContext()
      To get the Castor XML schema context used.
      Returns:
      the Castor XML schema context used