Class CompilerAutoConfiguration
java.lang.Object
org.springframework.boot.cli.compiler.CompilerAutoConfiguration
- Direct Known Subclasses:
CachingCompilerAutoConfiguration,GroovyTemplatesCompilerAutoConfiguration,JdbcCompilerAutoConfiguration,JmsCompilerAutoConfiguration,RabbitCompilerAutoConfiguration,SpringBatchCompilerAutoConfiguration,SpringBootCompilerAutoConfiguration,SpringIntegrationCompilerAutoConfiguration,SpringMvcCompilerAutoConfiguration,SpringRetryCompilerAutoConfiguration,SpringSecurityCompilerAutoConfiguration,SpringTestCompilerAutoConfiguration,SpringWebsocketCompilerAutoConfiguration,TransactionManagementCompilerAutoConfiguration
Strategy that can be used to apply some auto-configuration during the
CompilePhase.CONVERSION Groovy compile phase.- Since:
- 1.0.0
- Author:
- Phillip Webb
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidapply(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 Details
-
CompilerAutoConfiguration
public CompilerAutoConfiguration()
-
-
Method Details
-
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
-