Class BootstrapResolver

  • All Implemented Interfaces:
    javax.xml.transform.URIResolver, org.xml.sax.EntityResolver

    public class BootstrapResolver
    extends java.lang.Object
    implements org.xml.sax.EntityResolver, javax.xml.transform.URIResolver
    A simple bootstrapping resolver.

    This class is used as the entity resolver when reading XML Catalogs. It searches for the OASIS XML Catalog DTD, Relax NG Grammar and W3C XML Schema as resources (e.g., in the resolver jar file).

    If you have your own DTDs or schemas, you can extend this class and set the BootstrapResolver in your CatalogManager.

    Version:
    1.0
    See Also:
    CatalogManager
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.util.Hashtable publicMap
      Private hash used for public identifiers.
      private java.util.Hashtable systemMap
      Private hash used for system identifiers.
      private java.util.Hashtable uriMap
      Private hash used for URIs.
      static java.lang.String xmlCatalogPubId
      Public identifier for OASIS XML Catalog files.
      static java.lang.String xmlCatalogRNG
      URI of the RELAX NG Grammar for OASIS XML Catalog files.
      static java.lang.String xmlCatalogSysId
      System identifier for OASIS XML Catalog files.
      static java.lang.String xmlCatalogXSD
      URI of the W3C XML Schema for OASIS XML Catalog files.
    • Constructor Summary

      Constructors 
      Constructor Description
      BootstrapResolver()
      Constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private java.lang.String makeAbsolute​(java.lang.String uri)
      Attempt to construct an absolute URI
      javax.xml.transform.Source resolve​(java.lang.String href, java.lang.String base)
      Transformer resolve API.
      org.xml.sax.InputSource resolveEntity​(java.lang.String publicId, java.lang.String systemId)
      SAX resolveEntity API.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • xmlCatalogXSD

        public static final java.lang.String xmlCatalogXSD
        URI of the W3C XML Schema for OASIS XML Catalog files.
        See Also:
        Constant Field Values
      • xmlCatalogRNG

        public static final java.lang.String xmlCatalogRNG
        URI of the RELAX NG Grammar for OASIS XML Catalog files.
        See Also:
        Constant Field Values
      • xmlCatalogPubId

        public static final java.lang.String xmlCatalogPubId
        Public identifier for OASIS XML Catalog files.
        See Also:
        Constant Field Values
      • xmlCatalogSysId

        public static final java.lang.String xmlCatalogSysId
        System identifier for OASIS XML Catalog files.
        See Also:
        Constant Field Values
      • publicMap

        private java.util.Hashtable publicMap
        Private hash used for public identifiers.
      • systemMap

        private java.util.Hashtable systemMap
        Private hash used for system identifiers.
      • uriMap

        private java.util.Hashtable uriMap
        Private hash used for URIs.
    • Constructor Detail

      • BootstrapResolver

        public BootstrapResolver()
        Constructor.
    • Method Detail

      • resolveEntity

        public org.xml.sax.InputSource resolveEntity​(java.lang.String publicId,
                                                     java.lang.String systemId)
        SAX resolveEntity API.
        Specified by:
        resolveEntity in interface org.xml.sax.EntityResolver
      • resolve

        public javax.xml.transform.Source resolve​(java.lang.String href,
                                                  java.lang.String base)
                                           throws javax.xml.transform.TransformerException
        Transformer resolve API.
        Specified by:
        resolve in interface javax.xml.transform.URIResolver
        Throws:
        javax.xml.transform.TransformerException
      • makeAbsolute

        private java.lang.String makeAbsolute​(java.lang.String uri)
        Attempt to construct an absolute URI