Package io.swagger.codegen.languages
Class SpringCodegen
- java.lang.Object
-
- io.swagger.codegen.DefaultCodegen
-
- io.swagger.codegen.languages.AbstractJavaCodegen
-
- io.swagger.codegen.languages.SpringCodegen
-
- All Implemented Interfaces:
CodegenConfig
,BeanValidationFeatures
,IgnoreUnknownJacksonFeatures
,NotNullAnnotationFeatures
,OptionalFeatures
public class SpringCodegen extends AbstractJavaCodegen implements BeanValidationFeatures, OptionalFeatures, NotNullAnnotationFeatures, IgnoreUnknownJacksonFeatures
-
-
Field Summary
-
Fields inherited from class io.swagger.codegen.languages.AbstractJavaCodegen
ADDITIONAL_MODEL_TYPE_ANNOTATIONS, additionalModelTypeAnnotations, apiDocPath, artifactDescription, artifactId, artifactUrl, artifactVersion, CHECK_DUPLICATED_MODEL_NAME, DATE_LIBRARY, dateLibrary, developerEmail, developerName, developerOrganization, developerOrganizationUrl, DISABLE_HTML_ESCAPING, disableHtmlEscaping, ERROR_ON_UNKNOWN_ENUM, FULL_JAVA_UTIL, fullJavaUtil, groupId, invokerPackage, jakarta, JAKARTA, JAVA11_MODE, java11Mode, JAVA8_MODE, java8Mode, javaUtilPrefix, licenseName, licenseUrl, localVariablePrefix, modelDocPath, projectFolder, projectTestFolder, scmConnection, scmDeveloperConnection, scmUrl, serializableModel, serializeBigDecimalAsString, sourceFolder, SUPPORT_ASYNC, SUPPORT_JAVA6, supportAsync, supportJava6, testFolder, WITH_XML, withXml
-
Fields inherited from class io.swagger.codegen.DefaultCodegen
additionalProperties, allowUnicodeIdentifiers, apiDocTemplateFiles, apiPackage, apiTemplateFiles, apiTestTemplateFiles, cliOptions, commonTemplateDir, defaultIncludes, embeddedTemplateDir, ensureUniqueParams, fileSuffix, gitRepoBaseURL, gitRepoId, gitUserId, hideGenerationTimestamp, httpUserAgent, ignoreFilePathOverride, ignoreImportMapping, importMapping, inputSpec, instantiationTypes, languageSpecificPrimitives, library, modelDocTemplateFiles, modelNamePrefix, modelNameSuffix, modelPackage, modelTemplateFiles, modelTestTemplateFiles, outputFolder, releaseNote, removeOperationIdPrefix, reservedWords, reservedWordsMappings, skipAliasGeneration, skipOverwrite, sortParamsByRequiredFlag, specialCharReplacements, supportedLibraries, supportingFiles, supportsInheritance, supportsMixins, templateDir, testPackage, typeAliases, typeMapping, vendorExtensions
-
Fields inherited from interface io.swagger.codegen.languages.features.BeanValidationFeatures
USE_BEANVALIDATION
-
Fields inherited from interface io.swagger.codegen.languages.features.IgnoreUnknownJacksonFeatures
IGNORE_UNKNOWN_JACKSON_ANNOTATION
-
Fields inherited from interface io.swagger.codegen.languages.features.NotNullAnnotationFeatures
NOT_NULL_JACKSON_ANNOTATION
-
Fields inherited from interface io.swagger.codegen.languages.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.models.Operation operation, CodegenOperation co, Map<String,List<CodegenOperation>> operations)
Add operation to groupString
getHelp()
String
getName()
CodegenType
getTag()
boolean
isIgnoreUnknownJacksonAnnotation()
boolean
isNotNullJacksonAnnotation()
void
postProcessModelProperty(CodegenModel model, 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
preprocessSwagger(io.swagger.models.Swagger swagger)
void
processOpts()
void
setAsync(boolean async)
void
setBasePackage(String configPackage)
void
setConfigPackage(String configPackage)
void
setDefaultInterfaces(boolean defaultInterfaces)
void
setDelegatePattern(boolean delegatePattern)
void
setIgnoreUnknownJacksonAnnotation(boolean ignoreUnknownJacksonAnnotation)
void
setImplicitHeaders(boolean implicitHeaders)
void
setInterfaceOnly(boolean interfaceOnly)
void
setJava11(boolean java11)
void
setJava8(boolean java8)
void
setNotNullJacksonAnnotation(boolean notNullJacksonAnnotation)
void
setOpenFeign(boolean openFeign)
void
setParameterExampleValue(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 Test-
Methods inherited from class io.swagger.codegen.languages.AbstractJavaCodegen
apiDocFileFolder, apiFileFolder, apiTestFileFolder, checkDuplicatedModelNameIgnoringCase, convertPropertyToBoolean, escapeQuotationMark, escapeReservedWord, escapeUnsafeCharacters, fixUpParentAndInterfaces, fromModel, fromOperation, getAlias, getInvokerPackage, getSwaggerType, getTypeDeclaration, modelDocFileFolder, modelFileFolder, needToImport, postProcessAllModels, postProcessModels, postProcessParameter, replaceDuplicatedInModelProperties, replaceDuplicatedInPaths, sanitizeTag, setAdditionalModelTypeAnnotations, setArtifactDescription, setArtifactId, setArtifactUrl, setArtifactVersion, setDateLibrary, setDeveloperEmail, setDeveloperName, setDeveloperOrganization, setDeveloperOrganizationUrl, setDisableHtmlEscaping, setFullJavaUtil, setGroupId, setInvokerPackage, setJakarta, setJava11Mode, setJava8Mode, setLicenseName, setLicenseUrl, setLocalVariablePrefix, setScmConnection, setScmDeveloperConnection, setScmUrl, setSerializableModel, setSerializeBigDecimalAsString, setSourceFolder, setSupportAsync, setSupportJava6, setTestFolder, setWithXml, toApiDocFilename, toApiFilename, toBooleanGetter, toDefaultValue, toEnumName, toEnumValue, toEnumVarName, toExampleValue, toModelDocFilename, toModelFilename, toModelName, toOperationId, toParamName, toRegularExpression, toVarName, writePropertyBack
-
Methods inherited from class io.swagger.codegen.DefaultCodegen
addAdditionPropertiesToCodeGenModel, addImport, additionalProperties, addOption, addOption, addParentContainer, addProperties, addRegularExpressionDelimiter, addSwitch, apiDocFilename, apiDocTemplateFiles, apiFilename, apiPackage, apiTemplateFiles, apiTestFilename, apiTestTemplateFiles, buildLibraryCliOption, camelize, camelize, cliOptions, configureDataForTestTemplate, convertPropertyToBooleanAndWriteBack, dashize, defaultIgnoreImportMappingOption, defaultIncludes, embeddedTemplateDir, ensureUniqueName, escapeText, fileSuffix, findCommonPrefixOfVars, findMethodResponse, fromModel, fromOperation, fromParameter, fromProperty, fromResponse, fromSecurity, generateExamplePath, getAllAliases, getCommonTemplateDir, getExamples, getGitRepoBaseURL, getGitRepoId, getGitUserId, getHttpUserAgent, getIgnoreFilePathOverride, getIgnoreImportMapping, getInnerEnumAllowableValues, getInputSpec, getLibrary, getOrGenerateOperationId, getOutputDir, getParameterDataType, getReleaseNote, getSkipAliasGeneration, getSymbolName, getterAndSetterCapitalize, getTypeDeclaration, importMapping, initalizeSpecialCharacterMapping, initialCaps, instantiationTypes, isDataTypeBinary, isDataTypeFile, isHideGenerationTimestamp, isModelObject, isPrimivite, isPropertyInnerMostEnum, isRemoveOperationIdPrefix, isReservedWord, isSkipOverwrite, isUsingFlattenSpec, languageSpecificPrimitives, modelDocTemplateFiles, modelFilename, modelPackage, modelTemplateFiles, modelTestFileFolder, modelTestTemplateFiles, outputFolder, postProcessModelProperties, postProcessOperationsWithModels, processCompiler, processSwagger, readRefModelParameter, removeNonNameElementToCamelCase, removeNonNameElementToCamelCase, reservedWords, reservedWordsMappings, sanitizeName, setAllowUnicodeIdentifiers, setApiPackage, setCommonTemplateDir, setEnsureUniqueParams, setGitRepoBaseURL, setGitRepoId, setGitUserId, setHideGenerationTimestamp, setHttpUserAgent, setIgnoreFilePathOverride, setIgnoreImportMapping, setInputSpec, setLibrary, setModelNamePrefix, setModelNameSuffix, setModelPackage, setNonArrayMapProperty, setOutputDir, setParameterBooleanFlagWithCodegenProperty, setReleaseNote, setRemoveOperationIdPrefix, setReservedWordsLowerCase, setSkipAliasGeneration, setSkipOverwrite, setSortParamsByRequiredFlag, setTemplateDir, shouldOverwrite, snakeCase, supportedLibraries, supportingFiles, templateDir, testPackage, titleCase, toApiImport, toApiVarName, toDefaultValueWithParam, toEnumDefaultValue, toExamples, toGetter, toInstantiationType, toModelImport, toModelTestFilename, toSetter, typeMapping, underscore, updateCodegenPropertyEnum, updateDataTypeWithEnumForArray, updateDataTypeWithEnumForMap, updatePropertyForArray, updatePropertyForMap, vendorExtensions, writeOptional
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.swagger.codegen.CodegenConfig
additionalProperties, apiDocFilename, apiDocTemplateFiles, apiFilename, apiPackage, apiTemplateFiles, apiTestFilename, apiTestTemplateFiles, cliOptions, defaultIgnoreImportMappingOption, defaultIncludes, embeddedTemplateDir, escapeText, fileSuffix, fromModel, fromOperation, fromSecurity, generateExamplePath, getCodeName, getCommonTemplateDir, getGitRepoBaseURL, getGitRepoId, getGitUserId, getHttpUserAgent, getIgnoreFilePathOverride, getIgnoreImportMapping, getInputSpec, getLibrary, getOutputDir, getPriority, getReleaseNote, getSkipAliasGeneration, getTypeDeclaration, importMapping, instantiationTypes, isHideGenerationTimestamp, isPrivileged, isRemoveOperationIdPrefix, isSkipOverwrite, isUsingFlattenSpec, languageSpecificPrimitives, modelDocTemplateFiles, modelFilename, modelPackage, modelTemplateFiles, modelTestFileFolder, modelTestTemplateFiles, outputFolder, postProcessOperationsWithModels, processCompiler, processSwagger, reservedWords, reservedWordsMappings, sanitizeName, setGitRepoBaseURL, setGitRepoId, setGitUserId, setHideGenerationTimestamp, setHttpUserAgent, setIgnoreFilePathOverride, setIgnoreImportMapping, setInputSpec, setLibrary, setOutputDir, setReleaseNote, setRemoveOperationIdPrefix, setSkipAliasGeneration, setSkipOverwrite, shouldOverwrite, supportedLibraries, supportingFiles, templateDir, testPackage, toApiImport, toApiVarName, toGetter, toModelImport, toModelTestFilename, toSetter, typeMapping, vendorExtensions
-
-
-
-
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
-
JAVA_11
public static final String JAVA_11
- 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
-
TARGET_OPENFEIGN
public static final String TARGET_OPENFEIGN
- See Also:
- Constant Field Values
-
DEFAULT_INTERFACES
public static final String DEFAULT_INTERFACES
- See Also:
- Constant Field Values
-
DATE_PATTERN
public static final String DATE_PATTERN
- See Also:
- Constant Field Values
-
DATE_TIME_PATTERN
public static final String DATE_TIME_PATTERN
- 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
-
java11
protected boolean java11
-
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
-
openFeign
protected boolean openFeign
-
defaultInterfaces
protected boolean defaultInterfaces
-
-
Method Detail
-
getTag
public CodegenType getTag()
- Specified by:
getTag
in interfaceCodegenConfig
-
getName
public String getName()
- Specified by:
getName
in interfaceCodegenConfig
-
getHelp
public String getHelp()
- Specified by:
getHelp
in interfaceCodegenConfig
-
processOpts
public void processOpts()
- Specified by:
processOpts
in interfaceCodegenConfig
- Overrides:
processOpts
in classAbstractJavaCodegen
-
addOperationToGroup
public void addOperationToGroup(String tag, String resourcePath, io.swagger.models.Operation operation, CodegenOperation co, Map<String,List<CodegenOperation>> operations)
Description copied from class:DefaultCodegen
Add operation to group- Specified by:
addOperationToGroup
in interfaceCodegenConfig
- Overrides:
addOperationToGroup
in classDefaultCodegen
- Parameters:
tag
- name of the tagresourcePath
- path of the resourceoperation
- Swagger Operation objectco
- Codegen Operation objectoperations
- map of Codegen operations
-
preprocessSwagger
public void preprocessSwagger(io.swagger.models.Swagger swagger)
- Specified by:
preprocessSwagger
in interfaceCodegenConfig
- Overrides:
preprocessSwagger
in classAbstractJavaCodegen
-
postProcessOperations
public Map<String,Object> postProcessOperations(Map<String,Object> objs)
- Specified by:
postProcessOperations
in interfaceCodegenConfig
- Overrides:
postProcessOperations
in classAbstractJavaCodegen
-
setNotNullJacksonAnnotation
public void setNotNullJacksonAnnotation(boolean notNullJacksonAnnotation)
- Specified by:
setNotNullJacksonAnnotation
in interfaceNotNullAnnotationFeatures
-
isNotNullJacksonAnnotation
public boolean isNotNullJacksonAnnotation()
- Specified by:
isNotNullJacksonAnnotation
in interfaceNotNullAnnotationFeatures
-
setIgnoreUnknownJacksonAnnotation
public void setIgnoreUnknownJacksonAnnotation(boolean ignoreUnknownJacksonAnnotation)
- Specified by:
setIgnoreUnknownJacksonAnnotation
in interfaceIgnoreUnknownJacksonFeatures
-
isIgnoreUnknownJacksonAnnotation
public boolean isIgnoreUnknownJacksonAnnotation()
- Specified by:
isIgnoreUnknownJacksonAnnotation
in interfaceIgnoreUnknownJacksonFeatures
-
postProcessSupportingFileData
public Map<String,Object> postProcessSupportingFileData(Map<String,Object> objs)
- Specified by:
postProcessSupportingFileData
in interfaceCodegenConfig
- Overrides:
postProcessSupportingFileData
in classDefaultCodegen
-
toApiName
public String toApiName(String name)
Description copied from class:DefaultCodegen
Output the API (class) name (capitalized) ending with "Api" Return DefaultApi if name is empty- Specified by:
toApiName
in interfaceCodegenConfig
- 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:DefaultCodegen
Return the file name of the Api Test- Specified by:
toApiTestFilename
in interfaceCodegenConfig
- Overrides:
toApiTestFilename
in classAbstractJavaCodegen
- Parameters:
name
- the file name of the Api- Returns:
- the file name of the Api
-
setParameterExampleValue
public void setParameterExampleValue(CodegenParameter p)
Description copied from class:DefaultCodegen
Return the example value of the parameter.- Overrides:
setParameterExampleValue
in classAbstractJavaCodegen
- Parameters:
p
- Swagger property object
-
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)
-
setJava11
public void setJava11(boolean java11)
-
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(CodegenModel model, CodegenProperty property)
- Specified by:
postProcessModelProperty
in interfaceCodegenConfig
- Overrides:
postProcessModelProperty
in classAbstractJavaCodegen
-
postProcessModelsEnum
public Map<String,Object> postProcessModelsEnum(Map<String,Object> objs)
Description copied from class:DefaultCodegen
post process enum defined in model's properties- Overrides:
postProcessModelsEnum
in classDefaultCodegen
- 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
-
setOpenFeign
public void setOpenFeign(boolean openFeign)
-
setDefaultInterfaces
public void setDefaultInterfaces(boolean defaultInterfaces)
-
-