org.eclipse.jdt.internal.compiler.apt.dispatch
Class BatchAnnotationProcessorManager

java.lang.Object
  extended by org.eclipse.jdt.internal.compiler.AbstractAnnotationProcessorManager
      extended by org.eclipse.jdt.internal.compiler.apt.dispatch.BaseAnnotationProcessorManager
          extended by org.eclipse.jdt.internal.compiler.apt.dispatch.BatchAnnotationProcessorManager
All Implemented Interfaces:
IProcessorProvider

public class BatchAnnotationProcessorManager
extends BaseAnnotationProcessorManager

Java 6 annotation processor manager used when compiling from the command line or via the javax.tools.JavaCompiler interface.

See Also:
org.eclipse.jdt.internal.compiler.apt.ide.dispatch.IdeAnnotationProcessorManager

Field Summary
 
Fields inherited from class org.eclipse.jdt.internal.compiler.apt.dispatch.BaseAnnotationProcessorManager
_err, _isFirstRound, _out, _printProcessorInfo, _printRounds, _processingEnv, _processors, _round
 
Constructor Summary
BatchAnnotationProcessorManager()
          Zero-arg constructor so this object can be easily created via reflection.
 
Method Summary
 void configure(Object batchCompiler, String[] commandLineArguments)
          Configure the receiver using the given batch compiler and the given options.
 ProcessorInfo discoverNextProcessor()
          Return the next processor that can be discovered, according to the order and discovery rules of the provider (see, for instance, Processor.
 void reportProcessorException(Processor p, Exception e)
          Called when a processor throws an exception.
 void setProcessors(Object[] processors)
          Set the processors for annotation processing.
 
Methods inherited from class org.eclipse.jdt.internal.compiler.apt.dispatch.BaseAnnotationProcessorManager
configureFromPlatform, getDeletedUnits, getDiscoveredProcessors, getNewClassFiles, getNewUnits, processAnnotations, reset, setErr, setOut
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BatchAnnotationProcessorManager

public BatchAnnotationProcessorManager()
Zero-arg constructor so this object can be easily created via reflection. A BatchAnnotationProcessorManager cannot be used until its #configure(Main, String[]) method has been called.

Method Detail

configure

public void configure(Object batchCompiler,
                      String[] commandLineArguments)
Description copied from class: AbstractAnnotationProcessorManager
Configure the receiver using the given batch compiler and the given options. The parameter batchCompiler is expected to be an instance of the batch compiler. This method is only used for the batch mode. For the IDE mode, please see AbstractAnnotationProcessorManager.configureFromPlatform(Compiler, Object, Object).

Overrides:
configure in class BaseAnnotationProcessorManager
Parameters:
batchCompiler - the given batch compiler object
commandLineArguments - the given options

discoverNextProcessor

public ProcessorInfo discoverNextProcessor()
Description copied from interface: IProcessorProvider
Return the next processor that can be discovered, according to the order and discovery rules of the provider (see, for instance, Processor.

Returns:
a ProcessorInfo wrapping an initialized Processor, or null if there are no more processors to be discovered.

reportProcessorException

public void reportProcessorException(Processor p,
                                     Exception e)
Description copied from interface: IProcessorProvider
Called when a processor throws an exception. This may abort compilation, throw an unchecked exception, etc; the caller should not assume that this method will return.

Parameters:
p - the processor, if known, or null if not.

setProcessors

public void setProcessors(Object[] processors)
Description copied from class: AbstractAnnotationProcessorManager
Set the processors for annotation processing.

Overrides:
setProcessors in class BaseAnnotationProcessorManager
Parameters:
processors - the given processors


Copyright © 2012. All Rights Reserved.