## org.codehaus.groovy.control
Class ErrorCollector

    java.lang.Object
      org.codehaus.groovy.control.ErrorCollector

    public class ErrorCollector

extends Object

A base class for collecting messages and errors during processing. Each CompilationUnit should have one and SourceUnits should share their ErrorCollector with the CompilationUnit.

Version:
  $Id: ErrorCollector.java 16694 2009-06-12 08:32:22Z paulk $
Author:
  Chris Poirier, Jochen Theodorou

Field Summary
`protected CompilerConfiguration` `configuration` Configuration and other settings that control processing
`protected LinkedList` `errors` ErrorMessages collected during processing
`protected LinkedList` `warnings` WarningMessages collected during processing

Constructor Summary
`ErrorCollector(CompilerConfiguration configuration)` Initialize the ErrorReporter.

Method Summary
`void` `addCollectorContents(ErrorCollector er)`
`void` `addError(Message message)` Adds a non-fatal error to the message set.
`void` `addError(Message message, boolean fatal)` Adds an optionally-fatal error to the message set.
`void` `addError(String text, CSTNode context, SourceUnit source)` Convenience wrapper for addError().
`void` `addError(SyntaxException error, SourceUnit source)` Convenience wrapper for addError().
`void` `addErrorAndContinue(Message message)` Adds an error to the message set, but don't fail.
`void` `addException(Exception cause, SourceUnit source)`
`void` `addFatalError(Message message)` Adds a fatal exception to the message set and throws the unit as a PhaseFailedException.
`void` `addWarning(int importance, String text, CSTNode context, SourceUnit source)` Convenience wrapper for addWarning() that won't create an object unless it is relevant.
`void` `addWarning(int importance, String text, Object data, CSTNode context, SourceUnit source)` Convenience wrapper for addWarning() that won't create an object unless it is relevant.
`void` `addWarning(WarningMessage message)` Adds a WarningMessage to the message set.
`protected void` `failIfErrors()` Causes the current phase to fail by throwing a CompilationFailedException.
`Message` `getError(int index)` Returns the specified error message, or null.
`int` `getErrorCount()` Returns the number of errors.
`List` `getErrors()` Returns the list of errors, or null if there are none.
`Exception` `getException(int index)` Convenience routine to return the specified error's underlying Exception, or null if it isn't one.
`Message` `getLastError()` Returns the last error reported
`SyntaxException` `getSyntaxError(int index)` Convenience routine to return the specified error's underlying SyntaxException, or null if it isn't one.
`WarningMessage` `getWarning(int index)` Returns the specified warning message, or null.
`int` `getWarningCount()` Returns the number of warnings.
`List` `getWarnings()` Returns the list of warnings, or null if there are none.
`boolean` `hasErrors()` Returns true if there are any errors pending.
`boolean` `hasWarnings()` Returns true if there are any warnings pending.
`void` `write(PrintWriter writer, Janitor janitor)` Writes error messages to the specified PrintWriter.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### warnings

    protected LinkedList warnings

  WarningMessages collected during processing

### errors

    protected LinkedList errors

  ErrorMessages collected during processing

### configuration

    protected CompilerConfiguration configuration

  Configuration and other settings that control processing

Constructor Detail

### ErrorCollector

    public ErrorCollector(CompilerConfiguration configuration)

  Initialize the ErrorReporter.

Method Detail

### addCollectorContents

    public void addCollectorContents(ErrorCollector er)

### addErrorAndContinue

    public void addErrorAndContinue(Message message)

  Adds an error to the message set, but don't fail.

### addError

    public void addError(Message message)
                  throws CompilationFailedException

  Adds a non-fatal error to the message set.

  Throws:
    `CompilationFailedException`

### addError

    public void addError(Message message,
                         boolean fatal)
                  throws CompilationFailedException

  Adds an optionally-fatal error to the message set. Throws the unit as a PhaseFailedException, if the error is fatal.

  Throws:
    `CompilationFailedException`

### addError

    public void addError(SyntaxException error,
                         SourceUnit source)
                  throws CompilationFailedException

  Convenience wrapper for addError().

  Throws:
    `CompilationFailedException`

### addError

    public void addError(String text,
                         CSTNode context,
                         SourceUnit source)
                  throws CompilationFailedException

  Convenience wrapper for addError().

  Throws:
    `CompilationFailedException`

### addFatalError

    public void addFatalError(Message message)
                       throws CompilationFailedException

  Adds a fatal exception to the message set and throws the unit as a PhaseFailedException.

  Throws:
    `CompilationFailedException`

### addException

    public void addException(Exception cause,
                             SourceUnit source)
                      throws CompilationFailedException

  Throws:
    `CompilationFailedException`

### hasErrors

    public boolean hasErrors()

  Returns true if there are any errors pending.

### hasWarnings

    public boolean hasWarnings()

  Returns true if there are any warnings pending.

### getWarnings

    public List getWarnings()

  Returns the list of warnings, or null if there are none.

### getErrors

    public List getErrors()

  Returns the list of errors, or null if there are none.

### getWarningCount

    public int getWarningCount()

  Returns the number of warnings.

### getErrorCount

    public int getErrorCount()

  Returns the number of errors.

### getWarning

    public WarningMessage getWarning(int index)

  Returns the specified warning message, or null.

### getError

    public Message getError(int index)

  Returns the specified error message, or null.

### getLastError

    public Message getLastError()

  Returns the last error reported

### getSyntaxError

    public SyntaxException getSyntaxError(int index)

  Convenience routine to return the specified error's underlying SyntaxException, or null if it isn't one.

### getException

    public Exception getException(int index)

  Convenience routine to return the specified error's underlying Exception, or null if it isn't one.

### addWarning

    public void addWarning(WarningMessage message)

  Adds a WarningMessage to the message set.

### addWarning

    public void addWarning(int importance,
                           String text,
                           CSTNode context,
                           SourceUnit source)

  Convenience wrapper for addWarning() that won't create an object unless it is relevant.

### addWarning

    public void addWarning(int importance,
                           String text,
                           Object data,
                           CSTNode context,
                           SourceUnit source)

  Convenience wrapper for addWarning() that won't create an object unless it is relevant.

### failIfErrors

    protected void failIfErrors()
                         throws CompilationFailedException

  Causes the current phase to fail by throwing a CompilationFailedException.

  Throws:
    `CompilationFailedException`

### write

    public void write(PrintWriter writer,
                      Janitor janitor)

  Writes error messages to the specified PrintWriter.

Copyright © 2003-2009 The Codehaus. All rights reserved.