Class AbstractMapperGenerator
java.lang.Object
org.dominokit.jacksonapt.processor.AbstractMapperGenerator
- All Implemented Interfaces:
MapperGenerator
- Direct Known Subclasses:
BeanMapperGenerator,BeanReaderGenerator,BeanWriterGenerator
public abstract class AbstractMapperGenerator extends java.lang.Object implements MapperGenerator
-
Constructor Summary
Constructors Constructor Description AbstractMapperGenerator() -
Method Summary
Modifier and Type Method Description protected com.squareup.javapoet.TypeNameabstractObjectMapper(javax.lang.model.element.Element element)protected java.lang.StringenclosingName(javax.lang.model.element.Element element, java.lang.String postfix)voidgenerate(javax.lang.model.element.Element element)protected voidgenerateDeserializer(javax.lang.model.type.TypeMirror beanType)Generate deserializer for given beanType and packageNameprotected voidgenerateSerializer(javax.lang.model.type.TypeMirror beanType)Generate serializer for given beanType and packageNameprotected static javax.lang.model.type.TypeMirrorgetElementType(javax.lang.model.element.Element element)protected abstract java.lang.Iterable<com.squareup.javapoet.MethodSpec>getMapperMethods(javax.lang.model.element.Element element, javax.lang.model.type.TypeMirror type)getMapperMethods.protected abstract java.lang.Class<?>getSuperClass()getSuperClass.protected com.squareup.javapoet.MethodSpecmakeConstructor(javax.lang.model.element.Name beanName)protected com.squareup.javapoet.MethodSpecmakeNewDeserializerMethod(javax.lang.model.element.Element element, javax.lang.model.type.TypeMirror beanType)makeNewDeserializerMethod.protected com.squareup.javapoet.MethodSpecmakeNewSerializerMethod(javax.lang.model.type.TypeMirror beanType)makeNewSerializerMethod.protected static booleanuseInterface(javax.lang.model.element.Element element)Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
AbstractMapperGenerator
public AbstractMapperGenerator()
-
-
Method Details
-
generate
public void generate(javax.lang.model.element.Element element) throws java.io.IOException- Specified by:
generatein interfaceMapperGenerator- Throws:
java.io.IOException
-
getElementType
protected static javax.lang.model.type.TypeMirror getElementType(javax.lang.model.element.Element element) -
useInterface
protected static boolean useInterface(javax.lang.model.element.Element element) -
enclosingName
protected java.lang.String enclosingName(javax.lang.model.element.Element element, java.lang.String postfix) -
abstractObjectMapper
protected com.squareup.javapoet.TypeName abstractObjectMapper(javax.lang.model.element.Element element) -
makeConstructor
protected com.squareup.javapoet.MethodSpec makeConstructor(javax.lang.model.element.Name beanName) -
makeNewDeserializerMethod
protected com.squareup.javapoet.MethodSpec makeNewDeserializerMethod(javax.lang.model.element.Element element, javax.lang.model.type.TypeMirror beanType)makeNewDeserializerMethod.
Creates method for build corresponding deserializer for given beanType. If beanType is basic type, generated code utilize existing deserializers. Otherwise, it creates instances of newly generated ones.
- Parameters:
element-beanType-- Returns:
-
makeNewSerializerMethod
protected com.squareup.javapoet.MethodSpec makeNewSerializerMethod(javax.lang.model.type.TypeMirror beanType)makeNewSerializerMethod.
Creates method for build corresponding serializer for given beanType. If beanType is basic type, generated code utilize existing serializers. Otherwise, it creates instances of newly generated ones.
- Parameters:
beanType-- Returns:
-
getSuperClass
protected abstract java.lang.Class<?> getSuperClass()getSuperClass.
- Returns:
- a
Classobject.
-
getMapperMethods
protected abstract java.lang.Iterable<com.squareup.javapoet.MethodSpec> getMapperMethods(javax.lang.model.element.Element element, javax.lang.model.type.TypeMirror type)getMapperMethods.
- Parameters:
element- aElementobject.type- aTypeMirrorobject.- Returns:
- a
Iterableobject.
-
generateSerializer
protected void generateSerializer(javax.lang.model.type.TypeMirror beanType)Generate serializer for given beanType and packageName- Parameters:
beanType-
-
generateDeserializer
protected void generateDeserializer(javax.lang.model.type.TypeMirror beanType)Generate deserializer for given beanType and packageName- Parameters:
beanType-
-