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.TypeName abstractObjectMapper​(javax.lang.model.element.Element element)  
    protected java.lang.String enclosingName​(javax.lang.model.element.Element element, java.lang.String postfix)  
    void generate​(javax.lang.model.element.Element element)  
    protected void generateDeserializer​(javax.lang.model.type.TypeMirror beanType)
    Generate deserializer for given beanType and packageName
    protected void generateSerializer​(javax.lang.model.type.TypeMirror beanType)
    Generate serializer for given beanType and packageName
    protected static javax.lang.model.type.TypeMirror getElementType​(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.MethodSpec makeConstructor​(javax.lang.model.element.Name beanName)  
    protected com.squareup.javapoet.MethodSpec makeNewDeserializerMethod​(javax.lang.model.element.Element element, javax.lang.model.type.TypeMirror beanType)
    makeNewDeserializerMethod.
    protected com.squareup.javapoet.MethodSpec makeNewSerializerMethod​(javax.lang.model.type.TypeMirror beanType)
    makeNewSerializerMethod.
    protected static boolean useInterface​(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:
      generate in interface MapperGenerator
      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 Class object.
    • 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 - a Element object.
      type - a TypeMirror object.
      Returns:
      a Iterable object.
    • 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 -