uk.ac.starlink.ttools.votlint
Class VotLintContext

java.lang.Object
  extended by uk.ac.starlink.ttools.votlint.VotLintContext
Direct Known Subclasses:
ReporterVotLintContext

public class VotLintContext
extends Object

Context for a VOTLint process. This is the object which knows most of the available global information about the parse. It also provides facilities for reporting log information about the parse to the user.

Author:
Mark Taylor (Starlink)

Field Summary
static int MAX_REPEAT
          Maximum number of identical error messages which will be logged.
 
Constructor Summary
VotLintContext(VOTableVersion version, boolean validate, boolean debug, PrintStream out)
          Constructor.
 
Method Summary
 void error(String msg)
          Write an error message to the user.
 Locator getLocator()
          Returns the SAX document locator for this parse.
 Map getNamespaceMap()
          Returns prefix->namespaceURI map for the xmlns namespaces currently in scope.
 PrintStream getOutput()
          Returns the output stream to which messages will be written.
 VOTableVersion getVersion()
          Returns the version of VOTable this context is parsing.
 void info(String msg)
          Write an informative message to the user.
 boolean isDebug()
          Returns whether we are in debug mode.
 boolean isValidating()
          Indicates whether this lint is validating.
 void message(String type, String msg, Throwable e)
          Dispatches a message to the user.
 void registerID(String id, ElementHandler handler)
          Register the fact that an XML ID-type attribute has been seen on an element.
 void registerRef(String id, ElementRef from, RefChecker checker)
          Register the fact that an XML IDREF-type attribute has been seen on an element.
 void reportUncheckedRefs()
          Goes through all the unresolved IDREF->ID arcs and reports them.
 void setLocator(Locator locator)
          Sets the SAX document locator for this parse.
 void warning(String msg)
          Write a warning message to the user.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MAX_REPEAT

public static final int MAX_REPEAT
Maximum number of identical error messages which will be logged.

See Also:
Constant Field Values
Constructor Detail

VotLintContext

public VotLintContext(VOTableVersion version,
                      boolean validate,
                      boolean debug,
                      PrintStream out)
Constructor.

Parameters:
version - version of VOTable for which the parse will be done
validate - if true, validation will be performed against the appropriate DTD/schema
debug - if true, a stack trace will be output with each log message
out - output stream to which messages will be written
Method Detail

getVersion

public VOTableVersion getVersion()
Returns the version of VOTable this context is parsing.

Returns:
version object

isValidating

public boolean isValidating()
Indicates whether this lint is validating.

Returns:
true for validating lint

isDebug

public boolean isDebug()
Returns whether we are in debug mode.

Returns:
true if debugging output is on

setLocator

public void setLocator(Locator locator)
Sets the SAX document locator for this parse.

Parameters:
locator - locator

getLocator

public Locator getLocator()
Returns the SAX document locator for this parse.

Returns:
locator

getOutput

public PrintStream getOutput()
Returns the output stream to which messages will be written.

Returns:
output stream

getNamespaceMap

public Map getNamespaceMap()
Returns prefix->namespaceURI map for the xmlns namespaces currently in scope.


registerID

public void registerID(String id,
                       ElementHandler handler)
Register the fact that an XML ID-type attribute has been seen on an element.

Parameters:
id - ID value
handler - element labelled id

registerRef

public void registerRef(String id,
                        ElementRef from,
                        RefChecker checker)
Register the fact that an XML IDREF-type attribute has been seen on an element.

Parameters:
id - ID value
from - the element on which the ref has been seen
checker - the checker which knows how to check links of this type

reportUncheckedRefs

public void reportUncheckedRefs()
Goes through all the unresolved IDREF->ID arcs and reports them. This is done at the end of the parse.


info

public void info(String msg)
Write an informative message to the user.

Parameters:
msg - message

warning

public void warning(String msg)
Write a warning message to the user.

Parameters:
msg - message

error

public void error(String msg)
Write an error message to the user.

Parameters:
msg - message

message

public void message(String type,
                    String msg,
                    Throwable e)
Dispatches a message to the user. Context information, such as position in the parse and message severity, are output as well as the text itself. Additionally an effort is made not to write the same message millions of times. Either the msg or the e arguments, but not both, may be null.

Parameters:
type - indication of message severity
msg - specific message content
e - throwable associated with this message


Copyright © 2015 Central Laboratory of the Research Councils. All Rights Reserved.