Class AbstractSQLOperationDataRepositoryMethodModelBuilder<A extends Annotation,​DMF extends io.rxmicro.annotation.processor.data.sql.model.SQLDataModelField,​DMC extends io.rxmicro.annotation.processor.data.sql.model.SQLDataObjectModelClass<DMF>>

    • Nested Class Summary

      • Nested classes/interfaces inherited from class io.rxmicro.annotation.processor.common.component.impl.AbstractProcessorComponent

        io.rxmicro.annotation.processor.common.component.impl.AbstractProcessorComponent.Level
    • Field Summary

      • Fields inherited from class io.rxmicro.annotation.processor.data.component.impl.AbstractDataRepositoryMethodModelBuilder

        methodBodyGenerator, supportedTypesProvider
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      protected abstract void addEntityConverter​(io.rxmicro.annotation.processor.common.model.method.MethodResult methodResult, io.rxmicro.annotation.processor.data.sql.model.SQLMethodDescriptor<DMF,​DMC> sqlMethodDescriptor, io.rxmicro.annotation.processor.data.model.DataGenerationContext<DMF,​DMC> dataGenerationContext, List<io.rxmicro.annotation.processor.data.model.Var> params, io.rxmicro.annotation.processor.data.sql.model.SQLStatement sqlStatement, Map<String,​Object> templateArguments)  
      protected io.rxmicro.annotation.processor.common.model.method.MethodBody buildBody​(io.rxmicro.annotation.processor.common.model.ClassHeader.Builder classHeaderBuilder, ExecutableElement method, io.rxmicro.annotation.processor.common.model.method.MethodResult methodResult, io.rxmicro.data.DataRepositoryGeneratorConfig dataRepositoryGeneratorConfig, io.rxmicro.annotation.processor.data.model.DataGenerationContext<DMF,​DMC> dataGenerationContext)  
      protected void customizeClassHeaderBuilder​(io.rxmicro.annotation.processor.common.model.ClassHeader.Builder classHeaderBuilder, io.rxmicro.annotation.processor.common.model.method.MethodResult methodResult, io.rxmicro.annotation.processor.data.model.DataGenerationContext<DMF,​DMC> dataGenerationContext, ExecutableElement method)  
      protected abstract String getTemplateName()  
      protected boolean isEntityResultReturn​(io.rxmicro.annotation.processor.data.model.DataGenerationContext<DMF,​DMC> dataGenerationContext, io.rxmicro.annotation.processor.common.model.method.MethodResult methodResult)  
      protected abstract io.rxmicro.annotation.processor.data.sql.model.ParsedSQL<A> parseSQL​(ExecutableElement method)  
      protected abstract void validateMethod​(io.rxmicro.annotation.processor.data.sql.model.ParsedSQL<A> parsedSQL, io.rxmicro.annotation.processor.common.model.method.MethodResult methodResult, io.rxmicro.annotation.processor.data.model.DataGenerationContext<DMF,​DMC> dataGenerationContext, ExecutableElement method, List<io.rxmicro.annotation.processor.data.model.Var> params)  
      • Methods inherited from class io.rxmicro.annotation.processor.data.sql.component.impl.AbstractSQLDataRepositoryMethodModelBuilder

        build, buildSQLMethodDescriptor, getTransactionMethodParameter, isEntityParam, parseSQL, validateThatEntityContainsPrimaryKeyIfCurrentParamIsEntity
      • Methods inherited from class io.rxmicro.annotation.processor.data.component.impl.AbstractDataRepositoryMethodModelBuilder

        addCommonImports, allowedPrimitives, build, equals, hashCode, putCommonArguments, toString, validateReactiveTypeWithExcluded, validateRequiredReturnType, validateRequiredSingleReturnType, validateReturnType, validateReturnType, validateReturnType, validateReturnType, validateReturnType, validateReturnType, validateSingleReturnType
      • Methods inherited from class io.rxmicro.annotation.processor.common.component.impl.AbstractProcessorComponent

        cantGenerateClass, cantGenerateDocument, cantGenerateMethodBody, debug, debug, debug, error, error, error, getBooleanOption, getIntOption, getStringOption, info, info, info, warn
      • Methods inherited from interface io.rxmicro.annotation.processor.data.component.DataRepositoryMethodModelBuilder

        build, isSupported, operationType
    • Constructor Detail

      • AbstractSQLOperationDataRepositoryMethodModelBuilder

        public AbstractSQLOperationDataRepositoryMethodModelBuilder()
    • Method Detail

      • isEntityResultReturn

        protected boolean isEntityResultReturn​(io.rxmicro.annotation.processor.data.model.DataGenerationContext<DMF,​DMC> dataGenerationContext,
                                               io.rxmicro.annotation.processor.common.model.method.MethodResult methodResult)
        Overrides:
        isEntityResultReturn in class io.rxmicro.annotation.processor.data.sql.component.impl.AbstractSQLDataRepositoryMethodModelBuilder<DMF extends io.rxmicro.annotation.processor.data.sql.model.SQLDataModelField,​DMC extends io.rxmicro.annotation.processor.data.sql.model.SQLDataObjectModelClass<DMF>>
      • buildBody

        protected io.rxmicro.annotation.processor.common.model.method.MethodBody buildBody​(io.rxmicro.annotation.processor.common.model.ClassHeader.Builder classHeaderBuilder,
                                                                                           ExecutableElement method,
                                                                                           io.rxmicro.annotation.processor.common.model.method.MethodResult methodResult,
                                                                                           io.rxmicro.data.DataRepositoryGeneratorConfig dataRepositoryGeneratorConfig,
                                                                                           io.rxmicro.annotation.processor.data.model.DataGenerationContext<DMF,​DMC> dataGenerationContext)
        Specified by:
        buildBody in class io.rxmicro.annotation.processor.data.component.impl.AbstractDataRepositoryMethodModelBuilder<DMF extends io.rxmicro.annotation.processor.data.sql.model.SQLDataModelField,​io.rxmicro.annotation.processor.data.sql.model.SQLDataRepositoryMethod,​DMC extends io.rxmicro.annotation.processor.data.sql.model.SQLDataObjectModelClass<DMF>>
      • customizeClassHeaderBuilder

        protected void customizeClassHeaderBuilder​(io.rxmicro.annotation.processor.common.model.ClassHeader.Builder classHeaderBuilder,
                                                   io.rxmicro.annotation.processor.common.model.method.MethodResult methodResult,
                                                   io.rxmicro.annotation.processor.data.model.DataGenerationContext<DMF,​DMC> dataGenerationContext,
                                                   ExecutableElement method)
      • validateMethod

        protected abstract void validateMethod​(io.rxmicro.annotation.processor.data.sql.model.ParsedSQL<A> parsedSQL,
                                               io.rxmicro.annotation.processor.common.model.method.MethodResult methodResult,
                                               io.rxmicro.annotation.processor.data.model.DataGenerationContext<DMF,​DMC> dataGenerationContext,
                                               ExecutableElement method,
                                               List<io.rxmicro.annotation.processor.data.model.Var> params)
      • parseSQL

        protected abstract io.rxmicro.annotation.processor.data.sql.model.ParsedSQL<A> parseSQL​(ExecutableElement method)
      • addEntityConverter

        protected abstract void addEntityConverter​(io.rxmicro.annotation.processor.common.model.method.MethodResult methodResult,
                                                   io.rxmicro.annotation.processor.data.sql.model.SQLMethodDescriptor<DMF,​DMC> sqlMethodDescriptor,
                                                   io.rxmicro.annotation.processor.data.model.DataGenerationContext<DMF,​DMC> dataGenerationContext,
                                                   List<io.rxmicro.annotation.processor.data.model.Var> params,
                                                   io.rxmicro.annotation.processor.data.sql.model.SQLStatement sqlStatement,
                                                   Map<String,​Object> templateArguments)
      • getTemplateName

        protected abstract String getTemplateName()