Class InstructionDetails

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

    public final class InstructionDetails
    extends java.lang.Object
    implements InstructionInfo
    Details about an instruction, used when reporting errors and when tracing
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int getColumnNumber()
      Get the column number identifying the position of the instruction.
      int getConstructType()
      Get the construct type
      int getLineNumber()
      Get the line number of the instruction within its module
      StructuredQName getObjectName()
      Get a name identifying the object of the expression, for example a function name, template name, variable name, key name, element name, etc.
      java.util.Iterator<java.lang.String> getProperties()
      Get an iterator over all the properties available.
      java.lang.Object getProperty​(java.lang.String name)
      Get a named property of the instruction
      java.lang.String getPublicId()
      Get the public ID of the module containing the instruction.
      java.lang.String getSystemId()
      Get the URI of the module containing the instruction
      Location saveLocation()
      Get an immutable copy of this Location object.
      void setColumnNumber​(int column)
      Set the column number
      void setConstructType​(int type)
      Set the type of construct
      void setLineNumber​(int lineNumber)
      Set the line number of the instruction within the module
      void setObjectName​(StructuredQName qName)
      Set a name identifying the object of the expression, for example a function name, template name, variable name, key name, element name, etc.
      void setProperty​(java.lang.String name, java.lang.Object value)
      Set a named property of the instruction
      void setSystemId​(java.lang.String systemId)
      Set the URI of the module containing the instruction
      • Methods inherited from class java.lang.Object

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

      • InstructionDetails

        public InstructionDetails()
      • InstructionDetails

        public InstructionDetails​(Expression expr)
    • Method Detail

      • setConstructType

        public void setConstructType​(int type)
        Set the type of construct
        Parameters:
        type - the type of contruct
      • getConstructType

        public int getConstructType()
        Get the construct type
        Specified by:
        getConstructType in interface InstructionInfo
        Returns:
        an integer identifying the kind of construct
      • setSystemId

        public void setSystemId​(java.lang.String systemId)
        Set the URI of the module containing the instruction
        Parameters:
        systemId - the module's URI, or null indicating unknown
      • getSystemId

        public java.lang.String getSystemId()
        Get the URI of the module containing the instruction
        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 module's URI, or null indicating unknown
      • setLineNumber

        public void setLineNumber​(int lineNumber)
        Set the line number of the instruction within the module
        Parameters:
        lineNumber - the line number
      • getLineNumber

        public int getLineNumber()
        Get the line number of the instruction within its module
        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
      • 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
      • setObjectName

        public void setObjectName​(StructuredQName qName)
        Set a name identifying the object of the expression, for example a function name, template name, variable name, key name, element name, etc. This is used only where the name is known statically.
        Parameters:
        qName - the name of the object, for example a function or variable name, or null to indicate that it has no name
      • getObjectName

        public StructuredQName getObjectName()
        Get a name identifying the object of the expression, for example a function name, template name, variable name, key name, element name, etc. This is used only where the name is known statically.
        Specified by:
        getObjectName in interface InstructionInfo
        Returns:
        the name of the object, or null to indicate that it has no name
      • setProperty

        public void setProperty​(java.lang.String name,
                                java.lang.Object value)
        Set a named property of the instruction
        Parameters:
        name - the name of the property
        value - the value of the property
      • getProperty

        public java.lang.Object getProperty​(java.lang.String name)
        Get a named property of the instruction
        Specified by:
        getProperty in interface InstructionInfo
        Parameters:
        name - name of the property
        Returns:
        the value of the named property
      • getProperties

        public java.util.Iterator<java.lang.String> getProperties()
        Get an iterator over all the properties available. The values returned by the iterator will be of type String, and each string can be supplied as input to the getProperty() method to retrieve the value of the property.
        Specified by:
        getProperties in interface InstructionInfo
        Returns:
        an iterator over the names of the properties
      • getPublicId

        public java.lang.String getPublicId()
        Get the public ID of the module containing the instruction. This method is provided to satisfy the SourceLocator interface. However, the public ID is not maintained by Saxon, and the method always returns null
        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:
        null
      • setColumnNumber

        public void setColumnNumber​(int column)
        Set the column number
        Parameters:
        column - the column number of the instruction in the source module
      • getColumnNumber

        public int getColumnNumber()
        Get the column number identifying the position of the instruction.
        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:
        -1 if column number is not known