@SupportedAnnotationTypes(value={"javax.inject.*","injector.*"}) public class InjectorProcessor extends generator.apt.SimplifiedAbstractProcessor
| Modifier and Type | Field and Description |
|---|---|
(package private) static String |
EOL |
(package private) generator.apt.ClassGenerator |
exposedServiceLoader |
(package private) static String |
FACTORY |
(package private) static String |
FACTORY_LOCATION |
(package private) static String |
LOADER |
(package private) static String |
LOADER_LOCATION |
(package private) Map<String,List<String>> |
loaderClasses |
(package private) generator.apt.ClassGenerator |
nonSingletonFactory |
(package private) JavaFileManager.Location |
outputLocation |
(package private) generator.apt.ClassGenerator |
producerClassFactory |
(package private) generator.apt.ClassGenerator |
singletonFactory |
(package private) static String |
SPI_LOCATION |
(package private) Map<String,List<String>> |
spiClasses |
processingEnv| Constructor and Description |
|---|
InjectorProcessor() |
InjectorProcessor(JavaFileManager.Location outputLocation) |
| Modifier and Type | Method and Description |
|---|---|
private File |
createFile(URI uri) |
private void |
createNeededDirectoriesTo(URI uri) |
private InjectorType |
createNewType(generator.apt.SimplifiedAST.Type type) |
private Writer |
createResource(String resourcePath) |
private InjectorType |
createTypeWithSingleMethod(generator.apt.SimplifiedAST.Type type,
generator.apt.SimplifiedAST.Method method) |
private void |
error(String msg) |
private void |
generateClasses(Collection<generator.apt.SimplifiedAST.Type> types) |
private void |
generateExposedService(InjectorType type) |
private void |
generateFactory(generator.apt.ClassGenerator generator,
InjectorType factory) |
private void |
generateProducers(List<InjectorType> producers) |
private void |
generateRegularFactory(InjectorType type) |
private void |
generateSPIFiles() |
private List<String> |
getSpiClassesForFactory() |
private void |
info(String msg) |
private void |
memorizeLoaders() |
protected void |
process(Collection<generator.apt.SimplifiedAST.Type> types) |
private Set<String> |
readResourceIfExists(String resourcePath) |
private InjectorTypes |
splitInjectorTypes(generator.apt.SimplifiedAST.Type type) |
getSupportedSourceVersion, processgetCompletions, getSupportedAnnotationTypes, getSupportedOptions, init, isInitializedstatic final String EOL
static final String SPI_LOCATION
static final String FACTORY
static final String FACTORY_LOCATION
static final String LOADER
static final String LOADER_LOCATION
final generator.apt.ClassGenerator nonSingletonFactory
final generator.apt.ClassGenerator singletonFactory
final generator.apt.ClassGenerator producerClassFactory
final generator.apt.ClassGenerator exposedServiceLoader
final JavaFileManager.Location outputLocation
public InjectorProcessor()
InjectorProcessor(JavaFileManager.Location outputLocation)
protected void process(Collection<generator.apt.SimplifiedAST.Type> types)
process in class generator.apt.SimplifiedAbstractProcessorprivate void generateClasses(Collection<generator.apt.SimplifiedAST.Type> types) throws IOException
IOExceptionprivate InjectorTypes splitInjectorTypes(generator.apt.SimplifiedAST.Type type)
private InjectorType createTypeWithSingleMethod(generator.apt.SimplifiedAST.Type type, generator.apt.SimplifiedAST.Method method)
private InjectorType createNewType(generator.apt.SimplifiedAST.Type type)
private void generateRegularFactory(InjectorType type) throws IOException
IOExceptionprivate void generateProducers(List<InjectorType> producers) throws IOException
IOExceptionprivate void generateFactory(generator.apt.ClassGenerator generator,
InjectorType factory)
throws IOException
IOExceptionprivate void generateSPIFiles()
throws IOException
IOExceptionprivate void generateExposedService(InjectorType type) throws IOException
IOExceptionprivate void memorizeLoaders()
throws IOException
IOExceptionprivate Set<String> readResourceIfExists(String resourcePath) throws IOException
IOExceptionprivate Writer createResource(String resourcePath) throws IOException
IOExceptionprivate void createNeededDirectoriesTo(URI uri)
private File createFile(URI uri) throws IOException
IOExceptionprivate void info(String msg)
private void error(String msg)
Copyright © 2018. All rights reserved.