Class SpringCodegen
- java.lang.Object
-
- io.swagger.codegen.v3.generators.DefaultCodegenConfig
-
- io.swagger.codegen.v3.generators.java.AbstractJavaCodegen
-
- io.swagger.codegen.v3.generators.java.SpringCodegen
-
- All Implemented Interfaces:
io.swagger.codegen.v3.CodegenConfig
,BeanValidationFeatures
,OptionalFeatures
public class SpringCodegen extends AbstractJavaCodegen implements BeanValidationFeatures, OptionalFeatures
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean
async
static String
ASYNC
static String
BASE_PACKAGE
protected String
basePackage
static String
CONFIG_PACKAGE
protected String
configPackage
static String
DEFAULT_LIBRARY
static String
DELEGATE_PATTERN
protected boolean
delegateMethod
protected boolean
delegatePattern
static String
IMPLICIT_HEADERS
protected boolean
implicitHeaders
static String
INTERFACE_ONLY
protected boolean
interfaceOnly
static String
JAVA_8
protected boolean
java8
static String
RESPONSE_WRAPPER
protected String
responseWrapper
static String
SINGLE_CONTENT_TYPES
protected boolean
singleContentTypes
static String
SPRING_CLOUD_LIBRARY
static String
SPRING_MVC_LIBRARY
static String
SWAGGER_DOCKET_CONFIG
protected boolean
swaggerDocketConfig
protected String
title
static String
TITLE
static String
USE_TAGS
protected boolean
useBeanValidation
protected boolean
useOptional
protected boolean
useTags
-
Fields inherited from class io.swagger.codegen.v3.generators.java.AbstractJavaCodegen
apiDocPath, artifactDescription, artifactId, artifactUrl, artifactVersion, DATE_LIBRARY, dateLibrary, developerEmail, developerName, developerOrganization, developerOrganizationUrl, FULL_JAVA_UTIL, fullJavaUtil, groupId, invokerPackage, JAVA8_MODE, java8Mode, javaUtilPrefix, licenseName, licenseUrl, localVariablePrefix, modelDocPath, projectFolder, projectTestFolder, scmConnection, scmDeveloperConnection, scmUrl, serializableModel, serializeBigDecimalAsString, sourceFolder, SUPPORT_JAVA6, supportJava6, testFolder, WITH_XML, withXml
-
Fields inherited from class io.swagger.codegen.v3.generators.DefaultCodegenConfig
additionalProperties, allowUnicodeIdentifiers, apiDocTemplateFiles, apiPackage, apiTemplateFiles, apiTestTemplateFiles, cliOptions, commonTemplateDir, DEFAULT_CONTENT_TYPE, DEFAULT_TEMPLATE_DIR, defaultIncludes, embeddedTemplateDir, ensureUniqueParams, fileSuffix, gitRepoId, gitUserId, hideGenerationTimestamp, httpUserAgent, ignoreFilePathOverride, importMapping, inputSpec, inputURL, instantiationTypes, languageArguments, languageSpecificPrimitives, library, modelDocTemplateFiles, modelNamePrefix, modelNameSuffix, modelPackage, modelTemplateFiles, modelTestTemplateFiles, openAPIUtil, outputFolder, releaseNote, removeOperationIdPrefix, REQUEST_BODY_NAME, reservedWords, reservedWordsMappings, skipOverwrite, sortParamsByRequiredFlag, specialCharReplacements, supportedLibraries, supportingFiles, supportsInheritance, supportsMixins, templateDir, templateEngine, templateVersion, testPackage, typeAliases, typeMapping, useOas2, vendorExtensions
-
Fields inherited from interface io.swagger.codegen.v3.generators.features.BeanValidationFeatures
USE_BEANVALIDATION
-
Fields inherited from interface io.swagger.codegen.v3.generators.features.OptionalFeatures
USE_OPTIONAL
-
-
Constructor Summary
Constructors Constructor Description SpringCodegen()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addOperationToGroup(String tag, String resourcePath, io.swagger.v3.oas.models.Operation operation, io.swagger.codegen.v3.CodegenOperation co, Map<String,List<io.swagger.codegen.v3.CodegenOperation>> operations)
Add operation to groupString
getArgumentsLocation()
String
getDefaultTemplateDir()
String
getHelp()
String
getName()
io.swagger.codegen.v3.CodegenType
getTag()
void
postProcessModelProperty(io.swagger.codegen.v3.CodegenModel model, io.swagger.codegen.v3.CodegenProperty property)
Map<String,Object>
postProcessModelsEnum(Map<String,Object> objs)
post process enum defined in model's propertiesMap<String,Object>
postProcessOperations(Map<String,Object> objs)
Map<String,Object>
postProcessSupportingFileData(Map<String,Object> objs)
void
preprocessOpenAPI(io.swagger.v3.oas.models.OpenAPI openAPI)
void
processOpts()
void
setAsync(boolean async)
void
setBasePackage(String configPackage)
void
setConfigPackage(String configPackage)
void
setDelegatePattern(boolean delegatePattern)
void
setImplicitHeaders(boolean implicitHeaders)
void
setInterfaceOnly(boolean interfaceOnly)
void
setJava8(boolean java8)
void
setParameterExampleValue(io.swagger.codegen.v3.CodegenParameter p)
Return the example value of the parameter.void
setResponseWrapper(String responseWrapper)
void
setSingleContentTypes(boolean singleContentTypes)
void
setSwaggerDocketConfig(boolean swaggerDocketConfig)
void
setTitle(String title)
void
setUseBeanValidation(boolean useBeanValidation)
void
setUseOptional(boolean useOptional)
void
setUseTags(boolean useTags)
String
toApiName(String name)
Output the API (class) name (capitalized) ending with "Api" Return DefaultApi if name is emptyString
toApiTestFilename(String name)
Return the file name of the Api TestString
toBooleanGetter(String name)
Output the Getter name for boolean property, e.g.-
Methods inherited from class io.swagger.codegen.v3.generators.java.AbstractJavaCodegen
addHandlebarHelpers, apiDocFileFolder, apiFileFolder, apiTestFileFolder, camelizeVarName, convertPropertyToBoolean, escapeQuotationMark, escapeReservedWord, escapeUnsafeCharacters, fromModel, fromOperation, getAlias, getSchemaType, getTypeDeclaration, modelDocFileFolder, modelFileFolder, needToImport, postProcessModels, postProcessParameter, sanitizeTag, sanitizeVarName, setArtifactDescription, setArtifactId, setArtifactUrl, setArtifactVersion, setDateLibrary, setDeveloperEmail, setDeveloperName, setDeveloperOrganization, setDeveloperOrganizationUrl, setFullJavaUtil, setGroupId, setInvokerPackage, setJava8Mode, setLanguageArguments, setLicenseName, setLicenseUrl, setLocalVariablePrefix, setScmConnection, setScmDeveloperConnection, setScmUrl, setSerializableModel, setSerializeBigDecimalAsString, setSourceFolder, setSupportJava6, setTestFolder, setWithXml, toApiDocFilename, toApiFilename, toDefaultValue, toEnumName, toEnumValue, toEnumVarName, toExampleValue, toModelDocFilename, toModelFilename, toModelName, toOperationId, toParamName, toRegularExpression, toVarName, writePropertyBack
-
Methods inherited from class io.swagger.codegen.v3.generators.DefaultCodegenConfig
addAdditionPropertiesToCodeGenModel, addConsumesInfo, addImport, additionalProperties, addOption, addOption, addProducesInfo, addProperties, addRegularExpressionDelimiter, addSwitch, apiDocFilename, apiDocTemplateFiles, apiFilename, apiPackage, apiTemplateFiles, apiTestFilename, apiTestTemplateFiles, buildLibraryCliOption, camelize, camelize, cliOptions, configureDataForTestTemplate, configuresParameterForMediaType, convertPropertyToBooleanAndWriteBack, dashize, defaultIncludes, detectParent, embeddedTemplateDir, escapeText, fileSuffix, findCommonPrefixOfVars, findMethodResponse, fromModel, fromOperation, fromParameter, fromProperty, fromRequestBody, fromResponse, fromSecurity, generateExamplePath, getCollectionFormat, getCommonTemplateDir, getConsumesInfo, getContentType, getGitRepoId, getGitUserId, getHideGenerationTimestamp, getHttpUserAgent, getIgnoreFilePathOverride, getInnerEnumAllowableValues, getInputSpec, getInputURL, getLanguageArguments, getLibrary, getOrGenerateOperationId, getOutputDir, getParameterFromRef, getParentName, getProducesInfo, getReleaseNote, getSchemaFromBody, getSchemaFromResponse, getSortParamsByRequiredFlag, getSymbolName, getTemplateDir, getTemplateEngine, getTemplateVersion, getterAndSetterCapitalize, getTypeDeclaration, hasSchemaProperties, importMapping, initialCaps, instantiationTypes, isDataTypeBinary, isDataTypeFile, isPropertyInnerMostEnum, isRemoveOperationIdPrefix, isReservedWord, isSkipOverwrite, languageSpecificPrimitives, modelDocTemplateFiles, modelPackage, modelTemplateFiles, modelTestFileFolder, modelTestTemplateFiles, outputFolder, postProcessAllModels, postProcessOperationsWithModels, processCompiler, processModelEnums, processOpenAPI, readLanguageArguments, removeNonNameElementToCamelCase, removeNonNameElementToCamelCase, reservedWords, reservedWordsMappings, sanitizeName, setAllowUnicodeIdentifiers, setApiPackage, setCommonTemplateDir, setEnsureUniqueParams, setGitRepoId, setGitUserId, setHideGenerationTimestamp, setHttpUserAgent, setIgnoreFilePathOverride, setInputSpec, setInputURL, setLibrary, setModelNamePrefix, setModelNameSuffix, setModelPackage, setNonArrayMapProperty, setOutputDir, setParameterBooleanFlagWithCodegenProperty, setParameterNullable, setReleaseNote, setRemoveOperationIdPrefix, setReservedWordsLowerCase, setSkipOverwrite, setSortParamsByRequiredFlag, setTemplateDir, setTemplateEngine, setTemplateVersion, setUseOas2, shouldOverwrite, snakeCase, supportedLibraries, supportingFiles, templateDir, testPackage, toApiImport, toApiVarName, toDefaultValueWithParam, toEnumDefaultValue, toExamples, toGetter, toInstantiationType, toModelImport, toModelTestFilename, toSetter, typeMapping, underscore, updateCodegenPropertyEnum, updateDataTypeWithEnumForArray, updateDataTypeWithEnumForMap, updatePropertyForArray, updatePropertyForMap, vendorExtensions, writeOptional
-
-
-
-
Field Detail
-
DEFAULT_LIBRARY
public static final String DEFAULT_LIBRARY
- See Also:
- Constant Field Values
-
TITLE
public static final String TITLE
- See Also:
- Constant Field Values
-
CONFIG_PACKAGE
public static final String CONFIG_PACKAGE
- See Also:
- Constant Field Values
-
BASE_PACKAGE
public static final String BASE_PACKAGE
- See Also:
- Constant Field Values
-
INTERFACE_ONLY
public static final String INTERFACE_ONLY
- See Also:
- Constant Field Values
-
DELEGATE_PATTERN
public static final String DELEGATE_PATTERN
- See Also:
- Constant Field Values
-
SINGLE_CONTENT_TYPES
public static final String SINGLE_CONTENT_TYPES
- See Also:
- Constant Field Values
-
JAVA_8
public static final String JAVA_8
- See Also:
- Constant Field Values
-
ASYNC
public static final String ASYNC
- See Also:
- Constant Field Values
-
RESPONSE_WRAPPER
public static final String RESPONSE_WRAPPER
- See Also:
- Constant Field Values
-
USE_TAGS
public static final String USE_TAGS
- See Also:
- Constant Field Values
-
SPRING_MVC_LIBRARY
public static final String SPRING_MVC_LIBRARY
- See Also:
- Constant Field Values
-
SPRING_CLOUD_LIBRARY
public static final String SPRING_CLOUD_LIBRARY
- See Also:
- Constant Field Values
-
IMPLICIT_HEADERS
public static final String IMPLICIT_HEADERS
- See Also:
- Constant Field Values
-
SWAGGER_DOCKET_CONFIG
public static final String SWAGGER_DOCKET_CONFIG
- See Also:
- Constant Field Values
-
title
protected String title
-
configPackage
protected String configPackage
-
basePackage
protected String basePackage
-
interfaceOnly
protected boolean interfaceOnly
-
delegatePattern
protected boolean delegatePattern
-
delegateMethod
protected boolean delegateMethod
-
singleContentTypes
protected boolean singleContentTypes
-
java8
protected boolean java8
-
async
protected boolean async
-
responseWrapper
protected String responseWrapper
-
useTags
protected boolean useTags
-
useBeanValidation
protected boolean useBeanValidation
-
implicitHeaders
protected boolean implicitHeaders
-
swaggerDocketConfig
protected boolean swaggerDocketConfig
-
useOptional
protected boolean useOptional
-
-
Method Detail
-
getTag
public io.swagger.codegen.v3.CodegenType getTag()
- Specified by:
getTag
in interfaceio.swagger.codegen.v3.CodegenConfig
-
getName
public String getName()
- Specified by:
getName
in interfaceio.swagger.codegen.v3.CodegenConfig
-
getHelp
public String getHelp()
- Specified by:
getHelp
in interfaceio.swagger.codegen.v3.CodegenConfig
-
processOpts
public void processOpts()
- Specified by:
processOpts
in interfaceio.swagger.codegen.v3.CodegenConfig
- Overrides:
processOpts
in classAbstractJavaCodegen
-
addOperationToGroup
public void addOperationToGroup(String tag, String resourcePath, io.swagger.v3.oas.models.Operation operation, io.swagger.codegen.v3.CodegenOperation co, Map<String,List<io.swagger.codegen.v3.CodegenOperation>> operations)
Description copied from class:DefaultCodegenConfig
Add operation to group- Specified by:
addOperationToGroup
in interfaceio.swagger.codegen.v3.CodegenConfig
- Overrides:
addOperationToGroup
in classDefaultCodegenConfig
- Parameters:
tag
- name of the tagresourcePath
- path of the resourceoperation
- Swagger Operation objectco
- Codegen Operation objectoperations
- map of Codegen operations
-
getArgumentsLocation
public String getArgumentsLocation()
- Overrides:
getArgumentsLocation
in classDefaultCodegenConfig
-
getDefaultTemplateDir
public String getDefaultTemplateDir()
- Specified by:
getDefaultTemplateDir
in classDefaultCodegenConfig
-
preprocessOpenAPI
public void preprocessOpenAPI(io.swagger.v3.oas.models.OpenAPI openAPI)
- Specified by:
preprocessOpenAPI
in interfaceio.swagger.codegen.v3.CodegenConfig
- Overrides:
preprocessOpenAPI
in classAbstractJavaCodegen
-
postProcessOperations
public Map<String,Object> postProcessOperations(Map<String,Object> objs)
- Specified by:
postProcessOperations
in interfaceio.swagger.codegen.v3.CodegenConfig
- Overrides:
postProcessOperations
in classAbstractJavaCodegen
-
postProcessSupportingFileData
public Map<String,Object> postProcessSupportingFileData(Map<String,Object> objs)
- Specified by:
postProcessSupportingFileData
in interfaceio.swagger.codegen.v3.CodegenConfig
- Overrides:
postProcessSupportingFileData
in classDefaultCodegenConfig
-
toApiName
public String toApiName(String name)
Description copied from class:DefaultCodegenConfig
Output the API (class) name (capitalized) ending with "Api" Return DefaultApi if name is empty- Specified by:
toApiName
in interfaceio.swagger.codegen.v3.CodegenConfig
- Overrides:
toApiName
in classAbstractJavaCodegen
- Parameters:
name
- the name of the Api- Returns:
- capitalized Api name ending with "Api"
-
toApiTestFilename
public String toApiTestFilename(String name)
Description copied from class:DefaultCodegenConfig
Return the file name of the Api Test- Specified by:
toApiTestFilename
in interfaceio.swagger.codegen.v3.CodegenConfig
- Overrides:
toApiTestFilename
in classAbstractJavaCodegen
- Parameters:
name
- the file name of the Api- Returns:
- the file name of the Api
-
setParameterExampleValue
public void setParameterExampleValue(io.swagger.codegen.v3.CodegenParameter p)
Description copied from class:DefaultCodegenConfig
Return the example value of the parameter.- Overrides:
setParameterExampleValue
in classAbstractJavaCodegen
- Parameters:
p
- Swagger property object
-
toBooleanGetter
public String toBooleanGetter(String name)
Description copied from class:AbstractJavaCodegen
Output the Getter name for boolean property, e.g. isActive- Specified by:
toBooleanGetter
in interfaceio.swagger.codegen.v3.CodegenConfig
- Overrides:
toBooleanGetter
in classAbstractJavaCodegen
- Parameters:
name
- the name of the property- Returns:
- getter name based on naming convention
-
setTitle
public void setTitle(String title)
-
setConfigPackage
public void setConfigPackage(String configPackage)
-
setBasePackage
public void setBasePackage(String configPackage)
-
setInterfaceOnly
public void setInterfaceOnly(boolean interfaceOnly)
-
setDelegatePattern
public void setDelegatePattern(boolean delegatePattern)
-
setSingleContentTypes
public void setSingleContentTypes(boolean singleContentTypes)
-
setJava8
public void setJava8(boolean java8)
-
setAsync
public void setAsync(boolean async)
-
setResponseWrapper
public void setResponseWrapper(String responseWrapper)
-
setUseTags
public void setUseTags(boolean useTags)
-
setImplicitHeaders
public void setImplicitHeaders(boolean implicitHeaders)
-
setSwaggerDocketConfig
public void setSwaggerDocketConfig(boolean swaggerDocketConfig)
-
postProcessModelProperty
public void postProcessModelProperty(io.swagger.codegen.v3.CodegenModel model, io.swagger.codegen.v3.CodegenProperty property)
- Specified by:
postProcessModelProperty
in interfaceio.swagger.codegen.v3.CodegenConfig
- Overrides:
postProcessModelProperty
in classAbstractJavaCodegen
-
postProcessModelsEnum
public Map<String,Object> postProcessModelsEnum(Map<String,Object> objs)
Description copied from class:DefaultCodegenConfig
post process enum defined in model's properties- Overrides:
postProcessModelsEnum
in classDefaultCodegenConfig
- Parameters:
objs
- Map of models- Returns:
- maps of models with better enum support
-
setUseBeanValidation
public void setUseBeanValidation(boolean useBeanValidation)
- Specified by:
setUseBeanValidation
in interfaceBeanValidationFeatures
-
setUseOptional
public void setUseOptional(boolean useOptional)
- Specified by:
setUseOptional
in interfaceOptionalFeatures
-
-