Class CompilerAutoConfiguration
- java.lang.Object
- org.springframework.boot.cli.compiler.CompilerAutoConfiguration
- Direct Known Subclasses:
CachingCompilerAutoConfiguration,GroovyTemplatesCompilerAutoConfiguration,JdbcCompilerAutoConfiguration,JmsCompilerAutoConfiguration,JUnitCompilerAutoConfiguration,RabbitCompilerAutoConfiguration,ReactorCompilerAutoConfiguration,SpockCompilerAutoConfiguration,SpringBatchCompilerAutoConfiguration,SpringBootCompilerAutoConfiguration,SpringIntegrationCompilerAutoConfiguration,SpringMobileCompilerAutoConfiguration,SpringMvcCompilerAutoConfiguration,SpringRetryCompilerAutoConfiguration,SpringSecurityCompilerAutoConfiguration,SpringSecurityOAuth2CompilerAutoConfiguration,SpringSocialFacebookCompilerAutoConfiguration,SpringSocialLinkedInCompilerAutoConfiguration,SpringSocialTwitterCompilerAutoConfiguration,SpringTestCompilerAutoConfiguration,SpringWebsocketCompilerAutoConfiguration,TransactionManagementCompilerAutoConfiguration
public abstract class CompilerAutoConfiguration extends Object
Strategy that can be used to apply some auto-configuration during theCompilePhase.CONVERSIONGroovy compile phase.
Constructor Summary
Constructors Constructor Description CompilerAutoConfiguration()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidapply(groovy.lang.GroovyClassLoader loader, GroovyCompilerConfiguration configuration, org.codehaus.groovy.classgen.GeneratorContext generatorContext, org.codehaus.groovy.control.SourceUnit source, org.codehaus.groovy.ast.ClassNode classNode)Apply any additional configuration.voidapplyDependencies(DependencyCustomizer dependencies)Apply any dependency customizations.voidapplyImports(org.codehaus.groovy.control.customizers.ImportCustomizer imports)Apply any import customizations.voidapplyToMainClass(groovy.lang.GroovyClassLoader loader, GroovyCompilerConfiguration configuration, org.codehaus.groovy.classgen.GeneratorContext generatorContext, org.codehaus.groovy.control.SourceUnit source, org.codehaus.groovy.ast.ClassNode classNode)Apply any customizations to the main class.booleanmatches(org.codehaus.groovy.ast.ClassNode classNode)Strategy method used to determine when compiler auto-configuration should be applied.
Constructor Detail
CompilerAutoConfiguration
public CompilerAutoConfiguration()
Method Detail
matches
public boolean matches(org.codehaus.groovy.ast.ClassNode classNode)
Strategy method used to determine when compiler auto-configuration should be applied. Defaults to always.- Parameters:
classNode- the class node- Returns:
trueif the compiler should be auto configured using this class. If this method returnsfalseno other strategy methods will be called.
applyDependencies
public void applyDependencies(DependencyCustomizer dependencies) throws org.codehaus.groovy.control.CompilationFailedException
Apply any dependency customizations. This method will only be called ifmatches(org.codehaus.groovy.ast.ClassNode)returnstrue.- Parameters:
dependencies- dependency customizer- Throws:
org.codehaus.groovy.control.CompilationFailedException- if the dependencies cannot be applied
applyImports
public void applyImports(org.codehaus.groovy.control.customizers.ImportCustomizer imports) throws org.codehaus.groovy.control.CompilationFailedException
Apply any import customizations. This method will only be called ifmatches(org.codehaus.groovy.ast.ClassNode)returnstrue.- Parameters:
imports- import customizer- Throws:
org.codehaus.groovy.control.CompilationFailedException- if the imports cannot be applied
applyToMainClass
public void applyToMainClass(groovy.lang.GroovyClassLoader loader, GroovyCompilerConfiguration configuration, org.codehaus.groovy.classgen.GeneratorContext generatorContext, org.codehaus.groovy.control.SourceUnit source, org.codehaus.groovy.ast.ClassNode classNode) throws org.codehaus.groovy.control.CompilationFailedException
Apply any customizations to the main class. This method will only be called ifmatches(org.codehaus.groovy.ast.ClassNode)returnstrue. This method is useful when a groovy file defines more than one class but customization only applies to the first class.- Parameters:
loader- the class loader being used during compilationconfiguration- the compiler configurationgeneratorContext- the current contextsource- the source unitclassNode- the main class- Throws:
org.codehaus.groovy.control.CompilationFailedException- if the customizations cannot be applied
apply
public void apply(groovy.lang.GroovyClassLoader loader, GroovyCompilerConfiguration configuration, org.codehaus.groovy.classgen.GeneratorContext generatorContext, org.codehaus.groovy.control.SourceUnit source, org.codehaus.groovy.ast.ClassNode classNode) throws org.codehaus.groovy.control.CompilationFailedException
Apply any additional configuration.- Parameters:
loader- the class loader being used during compilationconfiguration- the compiler configurationgeneratorContext- the current contextsource- the source unitclassNode- the class- Throws:
org.codehaus.groovy.control.CompilationFailedException- if the configuration cannot be applied