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>>
- java.lang.Object
-
- io.rxmicro.annotation.processor.common.component.impl.AbstractProcessorComponent
-
- io.rxmicro.annotation.processor.data.component.impl.AbstractDataRepositoryMethodModelBuilder<DMF,io.rxmicro.annotation.processor.data.sql.model.SQLDataRepositoryMethod,DMC>
-
- io.rxmicro.annotation.processor.data.sql.component.impl.AbstractSQLDataRepositoryMethodModelBuilder<DMF,DMC>
-
- io.rxmicro.annotation.processor.data.sql.r2dbc.component.impl.AbstractSQLOperationDataRepositoryMethodModelBuilder<A,DMF,DMC>
-
- All Implemented Interfaces:
io.rxmicro.annotation.processor.data.component.DataRepositoryMethodModelBuilder<DMF,io.rxmicro.annotation.processor.data.sql.model.SQLDataRepositoryMethod,DMC>,io.rxmicro.annotation.processor.data.sql.component.SQLRepositoryMethodModelBuilder<DMF,DMC>
- Direct Known Subclasses:
AbstractSQLModificationOperationDataRepositoryMethodModelBuilder,AbstractSQLModificationOperationReturningResultDataRepositoryMethodModelBuilder,SelectSQLRepositoryMethodModelBuilder
public abstract 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>> extends io.rxmicro.annotation.processor.data.sql.component.impl.AbstractSQLDataRepositoryMethodModelBuilder<DMF,DMC>- Author:
- nedis
-
-
Constructor Summary
Constructors Constructor Description AbstractSQLOperationDataRepositoryMethodModelBuilder()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract voidaddEntityConverter(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.MethodBodybuildBody(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 voidcustomizeClassHeaderBuilder(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 StringgetTemplateName()protected booleanisEntityResultReturn(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 voidvalidateMethod(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
-
-
-
-
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:
isEntityResultReturnin classio.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:
buildBodyin classio.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()
-
-