Package org.codehaus.groovy.control
Class ProcessingUnit
- java.lang.Object
-
- org.codehaus.groovy.control.ProcessingUnit
-
- Direct Known Subclasses:
CompilationUnit
,SourceUnit
public abstract class ProcessingUnit extends Object
A base class for data structures that can collect messages and errors during processing.
-
-
Field Summary
Fields Modifier and Type Field Description protected GroovyClassLoader
classLoader
The ClassLoader to use during processingprotected CompilerConfiguration
configuration
Configuration and other settings that control processingprotected ErrorCollector
errorCollector
a helper to share errors and report themprotected int
phase
The current phaseprotected boolean
phaseComplete
True if phase is finished
-
Constructor Summary
Constructors Constructor Description ProcessingUnit(CompilerConfiguration configuration, GroovyClassLoader classLoader, ErrorCollector errorCollector)
Initializes the ProcessingUnit to the empty state.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
completePhase()
Marks the current phase complete and processes any errors.void
configure(CompilerConfiguration configuration)
Reconfigures the ProcessingUnit.GroovyClassLoader
getClassLoader()
Returns the class loader in use by this ProcessingUnit.CompilerConfiguration
getConfiguration()
Gets the CompilerConfiguration for this ProcessingUnit.ErrorCollector
getErrorCollector()
Errors found during the compilation should be reported through the ErrorCollector.int
getPhase()
Returns the current phase.String
getPhaseDescription()
Returns the description for the current phase.void
gotoPhase(int phase)
Wraps up any pending operations for the current phase and switches to the given phase.boolean
isPhaseComplete()
void
nextPhase()
A synonym forgotoPhase(getPhase() + 1)
.void
setClassLoader(GroovyClassLoader loader)
Sets the class loader for use by this ProcessingUnit.void
setConfiguration(CompilerConfiguration configuration)
Sets the CompilerConfiguration for this ProcessingUnit.
-
-
-
Field Detail
-
phase
protected int phase
The current phase
-
phaseComplete
protected boolean phaseComplete
True if phase is finished
-
configuration
protected CompilerConfiguration configuration
Configuration and other settings that control processing
-
classLoader
protected GroovyClassLoader classLoader
The ClassLoader to use during processing
-
errorCollector
protected ErrorCollector errorCollector
a helper to share errors and report them
-
-
Constructor Detail
-
ProcessingUnit
public ProcessingUnit(CompilerConfiguration configuration, GroovyClassLoader classLoader, ErrorCollector errorCollector)
Initializes the ProcessingUnit to the empty state.
-
-
Method Detail
-
configure
public void configure(CompilerConfiguration configuration)
Reconfigures the ProcessingUnit.
-
getConfiguration
public CompilerConfiguration getConfiguration()
Gets the CompilerConfiguration for this ProcessingUnit.
-
setConfiguration
public final void setConfiguration(CompilerConfiguration configuration)
Sets the CompilerConfiguration for this ProcessingUnit.
-
getClassLoader
public GroovyClassLoader getClassLoader()
Returns the class loader in use by this ProcessingUnit.
-
setClassLoader
public void setClassLoader(GroovyClassLoader loader)
Sets the class loader for use by this ProcessingUnit.
-
getErrorCollector
public ErrorCollector getErrorCollector()
Errors found during the compilation should be reported through the ErrorCollector.
-
getPhase
public int getPhase()
Returns the current phase.
-
getPhaseDescription
public String getPhaseDescription()
Returns the description for the current phase.
-
isPhaseComplete
public boolean isPhaseComplete()
-
completePhase
public void completePhase() throws CompilationFailedException
Marks the current phase complete and processes any errors.- Throws:
CompilationFailedException
-
nextPhase
public void nextPhase() throws CompilationFailedException
A synonym forgotoPhase(getPhase() + 1)
.- Throws:
CompilationFailedException
-
gotoPhase
public void gotoPhase(int phase) throws CompilationFailedException
Wraps up any pending operations for the current phase and switches to the given phase.- Throws:
CompilationFailedException
-
-