Class ExplicitLocation

  • All Implemented Interfaces:
    javax.xml.transform.SourceLocator, Location, org.xml.sax.Locator

    public class ExplicitLocation
    extends java.lang.Object
    implements Location
    Class to hold details of the location of an expression, of an error in a source file, etc. The object is immutable.
    • Constructor Summary

      Constructors 
      Constructor Description
      ExplicitLocation​(java.lang.String systemId, int lineNumber, int columnNumber)
      Create an ExpressionLocation corresponding to a given module, line number, and column number
      ExplicitLocation​(javax.xml.transform.SourceLocator loc)
      Create an ExpressionLocation, taking the data from a supplied JAXP SourceLocator
    • Constructor Detail

      • ExplicitLocation

        public ExplicitLocation​(javax.xml.transform.SourceLocator loc)
        Create an ExpressionLocation, taking the data from a supplied JAXP SourceLocator
        Parameters:
        loc - the JAXP SourceLocator
      • ExplicitLocation

        public ExplicitLocation​(java.lang.String systemId,
                                int lineNumber,
                                int columnNumber)
        Create an ExpressionLocation corresponding to a given module, line number, and column number
        Parameters:
        systemId - the module URI
        lineNumber - the line number (starting at 1; -1 means unknown)
        columnNumber - the column number (starting at 1; -1 means unknown)
    • Method Detail

      • makeFromSax

        public static ExplicitLocation makeFromSax​(org.xml.sax.Locator loc)
        Create an ExpressionLocation, taking the data from a supplied SAX Locator
        Parameters:
        loc - the SAX Locator
      • getSystemId

        public java.lang.String getSystemId()
        Get the system ID (the module URI)
        Specified by:
        getSystemId in interface Location
        Specified by:
        getSystemId in interface org.xml.sax.Locator
        Specified by:
        getSystemId in interface javax.xml.transform.SourceLocator
        Returns:
        the system ID
      • getPublicId

        public java.lang.String getPublicId()
        Get the Public ID
        Specified by:
        getPublicId in interface Location
        Specified by:
        getPublicId in interface org.xml.sax.Locator
        Specified by:
        getPublicId in interface javax.xml.transform.SourceLocator
        Returns:
        always null in this implementation
      • getLineNumber

        public int getLineNumber()
        Get the line number
        Specified by:
        getLineNumber in interface Location
        Specified by:
        getLineNumber in interface org.xml.sax.Locator
        Specified by:
        getLineNumber in interface javax.xml.transform.SourceLocator
        Returns:
        the line number
      • getColumnNumber

        public int getColumnNumber()
        Get the column number
        Specified by:
        getColumnNumber in interface Location
        Specified by:
        getColumnNumber in interface org.xml.sax.Locator
        Specified by:
        getColumnNumber in interface javax.xml.transform.SourceLocator
        Returns:
        the column number
      • saveLocation

        public Location saveLocation()
        Get an immutable copy of this Location object. By default Location objects may be mutable, so they should not be saved for later use. The result of this operation holds the same location information, but in an immutable form.
        Specified by:
        saveLocation in interface Location
      • isUnknown

        public static boolean isUnknown​(Location location)
        Ask whether this is an "unknown location"