Class MapperServiceProcessor

  • All Implemented Interfaces:
    ModelElementProcessor<Mapper,​Void>

    public class MapperServiceProcessor
    extends Object
    implements ModelElementProcessor<Mapper,​Void>
    A ModelElementProcessor which creates files in the META-INF/services hierarchy for classes with custom implementation class or package name. Service files will only be generated for mappers with the default component model unless force using the mapstruct.alwaysGenerateServicesFile option.
    Author:
    Christophe Labouisse on 12/07/2015.
    • Constructor Detail

      • MapperServiceProcessor

        public MapperServiceProcessor()
    • Method Detail

      • process

        public Void process​(ModelElementProcessor.ProcessorContext context,
                            TypeElement mapperTypeElement,
                            Mapper mapper)
        Description copied from interface: ModelElementProcessor
        Processes the given source element, representing a Java bean mapper in one form or another.
        Specified by:
        process in interface ModelElementProcessor<Mapper,​Void>
        Parameters:
        context - Context providing common infrastructure objects.
        mapperTypeElement - The original type element from which the given mapper object is derived.
        mapper - The current representation of the bean mapper. Never null (the very first processor receives the original type element).
        Returns:
        The resulting representation of the bean mapper; may be the same as the source representation, e.g. if a given implementation just performs some sort of validity check. Implementations must never return null except for the very last processor which generates the resulting Java source file.
      • getPriority

        public int getPriority()
        Description copied from interface: ModelElementProcessor
        Returns the priority value of this processor which must be between 1 (highest priority) and 10000 (lowest priority). Processors are invoked in order from highest to lowest priority, starting with the mapping method retrieval processor (priority 1) and finishing with the code generation processor (priority 10000). Processors working on the built Mapper model must have a priority > 1000.
        Specified by:
        getPriority in interface ModelElementProcessor<Mapper,​Void>
        Returns:
        The priority value of this processor.