org.xml.sax.helpers
Class LocatorImpl

java.lang.Object
  |
  +--org.xml.sax.helpers.LocatorImpl
All Implemented Interfaces:
Locator
Direct Known Subclasses:
Locator2Impl

public class LocatorImpl
extends java.lang.Object
implements Locator

Provide an optional convenience implementation of Locator.

This module, both source code and documentation, is in the Public Domain, and comes with NO WARRANTY. See http://www.saxproject.org for further information.

This class is available mainly for application writers, who can use it to make a persistent snapshot of a locator at any point during a document parse:

 Locator locator;
 Locator startloc;

 public void setLocator (Locator locator)
 {
         // note the locator
   this.locator = locator;
 }

 public void startDocument ()
 {
         // save the location of the start of the document
         // for future use.
   Locator startloc = new LocatorImpl(locator);
 }

Normally, parser writers will not use this class, since it is more efficient to provide location information only when requested, rather than constantly updating a Locator object.

Since:
SAX 1.0
Version:
2.0.1 (sax2r2)
Author:
David Megginson
See Also:
Locator

Constructor Summary
LocatorImpl()
          Zero-argument constructor.
LocatorImpl(Locator locator)
          Copy constructor.
 
Method Summary
 int getColumnNumber()
          Return the saved column number (1-based).
 int getLineNumber()
          Return the saved line number (1-based).
 java.lang.String getPublicId()
          Return the saved public identifier.
 java.lang.String getSystemId()
          Return the saved system identifier.
 void setColumnNumber(int columnNumber)
          Set the column number for this locator (1-based).
 void setLineNumber(int lineNumber)
          Set the line number for this locator (1-based).
 void setPublicId(java.lang.String publicId)
          Set the public identifier for this locator.
 void setSystemId(java.lang.String systemId)
          Set the system identifier for this locator.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LocatorImpl

public LocatorImpl()
Zero-argument constructor.

This will not normally be useful, since the main purpose of this class is to make a snapshot of an existing Locator.


LocatorImpl

public LocatorImpl(Locator locator)
Copy constructor.

Create a persistent copy of the current state of a locator. When the original locator changes, this copy will still keep the original values (and it can be used outside the scope of DocumentHandler methods).

Parameters:
locator - The locator to copy.
Method Detail

getPublicId

public java.lang.String getPublicId()
Return the saved public identifier.

Specified by:
getPublicId in interface Locator
Returns:
The public identifier as a string, or null if none is available.
See Also:
Locator.getPublicId(), setPublicId(java.lang.String)

getSystemId

public java.lang.String getSystemId()
Return the saved system identifier.

Specified by:
getSystemId in interface Locator
Returns:
The system identifier as a string, or null if none is available.
See Also:
Locator.getSystemId(), setSystemId(java.lang.String)

getLineNumber

public int getLineNumber()
Return the saved line number (1-based).

Specified by:
getLineNumber in interface Locator
Returns:
The line number as an integer, or -1 if none is available.
See Also:
Locator.getLineNumber(), setLineNumber(int)

getColumnNumber

public int getColumnNumber()
Return the saved column number (1-based).

Specified by:
getColumnNumber in interface Locator
Returns:
The column number as an integer, or -1 if none is available.
See Also:
Locator.getColumnNumber(), setColumnNumber(int)

setPublicId

public void setPublicId(java.lang.String publicId)
Set the public identifier for this locator.

Parameters:
publicId - The new public identifier, or null if none is available.
See Also:
getPublicId()

setSystemId

public void setSystemId(java.lang.String systemId)
Set the system identifier for this locator.

Parameters:
systemId - The new system identifier, or null if none is available.
See Also:
getSystemId()

setLineNumber

public void setLineNumber(int lineNumber)
Set the line number for this locator (1-based).

Parameters:
lineNumber - The line number, or -1 if none is available.
See Also:
getLineNumber()

setColumnNumber

public void setColumnNumber(int columnNumber)
Set the column number for this locator (1-based).

Parameters:
columnNumber - The column number, or -1 if none is available.
See Also:
getColumnNumber()