Top Description Fields Constructors Methods
org.springframework.orm.jpa.support

pack-priv Class InjectionCodeGenerator

extends Object
Class Inheritance
Imports
java.lang.reflect.Field, .Member, .Method, org.springframework.aot.generate.AccessControl, org.springframework.aot.hint.ExecutableMode, .RuntimeHints, org.springframework.javapoet.ClassName, .CodeBlock, org.springframework.util.Assert, .ReflectionUtils

Internal code generator that can inject a value into a field or single-arg method.

Generates code in the form:

instance.age = value;
or
instance.setAge(value);

Will also generate reflection based injection and register hints if the member is not visible.

Author
Phillip Webb
Since
6.0

Field Summary

Modifier and TypeField and Description
private final RuntimeHints
private final ClassName

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
private CodeBlock
generateFieldInjectionCode(Field field, String instanceVariable, CodeBlock resourceToInject)

pack-priv CodeBlock
generateInjectionCode(Member member, String instanceVariable, CodeBlock resourceToInject)

private CodeBlock
generateMethodInjectionCode(Method method, String instanceVariable, CodeBlock resourceToInject)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

hintsback to summary
private final RuntimeHints hints
targetClassNameback to summary
private final ClassName targetClassName

Constructor Detail

InjectionCodeGeneratorback to summary
pack-priv InjectionCodeGenerator(ClassName targetClassName, RuntimeHints hints)

Method Detail

generateFieldInjectionCodeback to summary
private CodeBlock generateFieldInjectionCode(Field field, String instanceVariable, CodeBlock resourceToInject)
generateInjectionCodeback to summary
pack-priv CodeBlock generateInjectionCode(Member member, String instanceVariable, CodeBlock resourceToInject)
generateMethodInjectionCodeback to summary
private CodeBlock generateMethodInjectionCode(Method method, String instanceVariable, CodeBlock resourceToInject)