org.oddjob.arooa.parsing
Class Location

java.lang.Object
  extended by org.oddjob.arooa.parsing.Location
All Implemented Interfaces:
Serializable

public class Location
extends Object
implements Serializable

Stores the location of a piece of text within a file (file name, line number and column number). Note that the column number is currently ignored.

Based on the original by Matt Foemmel.

See Also:
Serialized Form

Field Summary
static Location UNKNOWN_LOCATION
          Location to use when one is needed but no information is available
 
Constructor Summary
Location(Locator loc)
          Creates a location from the SAX locator using the system ID as the filename.
Location(String fileName)
          Creates a location consisting of a file name but no line number or column number.
Location(String fileName, int lineNumber, int columnNumber)
          Creates a location consisting of a file name, line number and column number.
 
Method Summary
 int getColumnNumber()
           
 String getFileName()
           
 int getLineNumber()
           
 String toString()
          Returns the file name, line number, a colon and a trailing space.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

UNKNOWN_LOCATION

public static final Location UNKNOWN_LOCATION
Location to use when one is needed but no information is available

Constructor Detail

Location

public Location(String fileName)
Creates a location consisting of a file name but no line number or column number.

Parameters:
fileName - The name of the file. May be null, in which case the location is equivalent to UNKNOWN_LOCATION.

Location

public Location(Locator loc)
Creates a location from the SAX locator using the system ID as the filename.

Since:
Ant 1.6
Parameters:
loc - Must not be null.

Location

public Location(String fileName,
                int lineNumber,
                int columnNumber)
Creates a location consisting of a file name, line number and column number.

Parameters:
fileName - The name of the file. May be null, in which case the location is equivalent to UNKNOWN_LOCATION.
lineNumber - Line number within the file. Use 0 for unknown positions within a file.
columnNumber - Column number within the line.
Method Detail

getFileName

public String getFileName()
Returns:
the filename portion of the location

getLineNumber

public int getLineNumber()
Returns:
the line number

getColumnNumber

public int getColumnNumber()

toString

public String toString()
Returns the file name, line number, a colon and a trailing space. An error message can be appended easily. For unknown locations, an empty string is returned.

Overrides:
toString in class Object
Returns:
a String of the form "fileName: lineNumber: " if both file name and line number are known, "fileName: " if only the file name is known, and the empty string for unknown locations.