@AutoService(value=com.google.auto.value.extension.AutoValueExtension.class)
public class AutoValueGsonExtension
extends com.google.auto.value.extension.AutoValueExtension
| Modifier and Type | Class and Description |
|---|---|
static class |
AutoValueGsonExtension.Property |
| Constructor and Description |
|---|
AutoValueGsonExtension() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
applicable(com.google.auto.value.extension.AutoValueExtension.Context context)
Determines whether this Extension applies to the given context.
|
com.squareup.javapoet.MethodSpec |
createReadMethod(com.squareup.javapoet.ClassName className,
com.squareup.javapoet.TypeName autoValueClassName,
com.google.common.collect.ImmutableMap<AutoValueGsonExtension.Property,com.squareup.javapoet.FieldSpec> adapters) |
com.squareup.javapoet.TypeSpec |
createTypeAdapter(com.squareup.javapoet.ClassName className,
com.squareup.javapoet.ClassName autoValueClassName,
java.util.List<AutoValueGsonExtension.Property> properties,
java.util.List<com.squareup.javapoet.TypeVariableName> typeParams) |
com.squareup.javapoet.MethodSpec |
createWriteMethod(com.squareup.javapoet.TypeName autoValueClassName,
com.google.common.collect.ImmutableMap<AutoValueGsonExtension.Property,com.squareup.javapoet.FieldSpec> adapters) |
java.lang.String |
generateClass(com.google.auto.value.extension.AutoValueExtension.Context context,
java.lang.String className,
java.lang.String classToExtend,
boolean isFinal)
Generates the source code of the class named
className to extend
classToExtend. |
java.util.List<AutoValueGsonExtension.Property> |
readProperties(java.util.Map<java.lang.String,javax.lang.model.element.ExecutableElement> properties) |
public boolean applicable(com.google.auto.value.extension.AutoValueExtension.Context context)
com.google.auto.value.extension.AutoValueExtensionapplicable in class com.google.auto.value.extension.AutoValueExtensioncontext - The Context of the code generation for this class.public java.lang.String generateClass(com.google.auto.value.extension.AutoValueExtension.Context context,
java.lang.String className,
java.lang.String classToExtend,
boolean isFinal)
com.google.auto.value.extension.AutoValueExtensionclassName to extend
classToExtend. The generated class should be final if isFinal
is true; otherwise it should be abstract. The returned string should be a complete
Java class definition of the class className in the package
context.packageName().generateClass in class com.google.auto.value.extension.AutoValueExtensioncontext - The AutoValueExtension.Context of the code generation for this class.className - The simple name of the resulting class. The returned code will be written to a
file named accordingly.classToExtend - The direct parent of the generated class. This could be the AutoValue
generated class, or a class generated as the result of another Extension.isFinal - True if this class is the last class in the chain, meaning it should be
marked as final. Otherwise it should be marked as abstract.public java.util.List<AutoValueGsonExtension.Property> readProperties(java.util.Map<java.lang.String,javax.lang.model.element.ExecutableElement> properties)
public com.squareup.javapoet.TypeSpec createTypeAdapter(com.squareup.javapoet.ClassName className,
com.squareup.javapoet.ClassName autoValueClassName,
java.util.List<AutoValueGsonExtension.Property> properties,
java.util.List<com.squareup.javapoet.TypeVariableName> typeParams)
public com.squareup.javapoet.MethodSpec createWriteMethod(com.squareup.javapoet.TypeName autoValueClassName,
com.google.common.collect.ImmutableMap<AutoValueGsonExtension.Property,com.squareup.javapoet.FieldSpec> adapters)
public com.squareup.javapoet.MethodSpec createReadMethod(com.squareup.javapoet.ClassName className,
com.squareup.javapoet.TypeName autoValueClassName,
com.google.common.collect.ImmutableMap<AutoValueGsonExtension.Property,com.squareup.javapoet.FieldSpec> adapters)