Class AbstractJsonMapperGenerator
java.lang.Object
org.dominokit.jacksonapt.processor.AbstractJsonMapperGenerator
- Direct Known Subclasses:
AptDeserializerBuilder,AptSerializerBuilder
public abstract class AbstractJsonMapperGenerator
extends java.lang.Object
Abstract AbstractJsonMapperGenerator class.
- Version:
- $Id: $Id
- Author:
- vegegoku
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classAbstractJsonMapperGenerator.AccessorInfo -
Field Summary
Fields Modifier and Type Field Description protected javax.lang.model.type.TypeMirrorbeanTypeprotected java.lang.StringpackageNameprotected SubTypesInfosubTypesInfo -
Constructor Summary
Constructors Constructor Description AbstractJsonMapperGenerator(java.lang.String packageName, javax.lang.model.type.TypeMirror beanType, javax.annotation.processing.Filer filer)Constructor for AbstractJsonMapperGenerator. -
Method Summary
Modifier and Type Method Description protected voidgenerate()generate.protected com.squareup.javapoet.CodeBlockgenerateTypeInfo()Build the code to initialize aTypeSerializationInfoorTypeDeserializationInfo.protected abstract java.lang.Class<?>getMapperType()protected abstract java.util.Optional<com.squareup.javapoet.MethodSpec>initMethod()initMethod.protected abstract com.squareup.javapoet.MethodSpecinitSubtypesMethod()initMethod.booleanisAbstract(javax.lang.model.type.TypeMirror beanType)protected booleanisEligibleForSerializationDeserialization(javax.lang.model.element.Element field)protected booleanisIgnored(javax.lang.model.element.Element field)isIgnoredprotected booleanisNotStatic(javax.lang.model.element.Element field)isNotStaticprotected java.util.Set<com.squareup.javapoet.MethodSpec>moreMethods()moreMethods.protected abstract java.lang.StringnamePostfix()namePostfix.protected java.util.Map<javax.lang.model.element.Element,javax.lang.model.type.TypeMirror>orderedFields()orderedFields.protected abstract com.squareup.javapoet.TypeNamesuperClass()superClass.protected abstract java.lang.StringtargetTypeMethodName()targetTypeMethodName.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
beanType
protected final javax.lang.model.type.TypeMirror beanType -
subTypesInfo
-
packageName
protected final java.lang.String packageName
-
-
Constructor Details
-
AbstractJsonMapperGenerator
public AbstractJsonMapperGenerator(java.lang.String packageName, javax.lang.model.type.TypeMirror beanType, javax.annotation.processing.Filer filer)Constructor for AbstractJsonMapperGenerator.
- Parameters:
beanType- aTypeMirrorobject.packageName- aStringobject.filer- aFilerobject.
-
-
Method Details
-
generate
protected void generate() throws java.io.IOExceptiongenerate.
- Throws:
java.io.IOException- if any.
-
superClass
protected abstract com.squareup.javapoet.TypeName superClass()superClass.
- Returns:
- a
TypeNameobject.
-
namePostfix
protected abstract java.lang.String namePostfix()namePostfix.
- Returns:
- a
Stringobject.
-
targetTypeMethodName
protected abstract java.lang.String targetTypeMethodName()targetTypeMethodName.
- Returns:
- a
Stringobject.
-
moreMethods
protected java.util.Set<com.squareup.javapoet.MethodSpec> moreMethods()moreMethods.
- Returns:
- a
Setobject.
-
initMethod
protected abstract java.util.Optional<com.squareup.javapoet.MethodSpec> initMethod()initMethod.
- Returns:
- a
MethodSpecobject.
-
initSubtypesMethod
protected abstract com.squareup.javapoet.MethodSpec initSubtypesMethod()initMethod.
- Returns:
- a
MethodSpecobject.
-
orderedFields
protected java.util.Map<javax.lang.model.element.Element,javax.lang.model.type.TypeMirror> orderedFields()orderedFields.
- Returns:
- a
Listobject.
-
isNotStatic
protected boolean isNotStatic(javax.lang.model.element.Element field)isNotStatic
Check if given field has static modifier
- Parameters:
field-Elementobject- Returns:
- boolean true if the field is not static
-
isIgnored
protected boolean isIgnored(javax.lang.model.element.Element field)isIgnored
Check if given field has been annotated with
JsonIgnorepresent and its value is true- Parameters:
field-Elementobject- Returns:
- boolean true only if
JsonIgnorepresent and its value is true
-
isEligibleForSerializationDeserialization
protected boolean isEligibleForSerializationDeserialization(javax.lang.model.element.Element field) -
isAbstract
public boolean isAbstract(javax.lang.model.type.TypeMirror beanType) -
getMapperType
protected abstract java.lang.Class<?> getMapperType() -
generateTypeInfo
protected final com.squareup.javapoet.CodeBlock generateTypeInfo()Build the code to initialize aTypeSerializationInfoorTypeDeserializationInfo.- Returns:
- the code built
-