public class DefaultCodegen extends Object implements CodegenConfig
Constructor and Description |
---|
DefaultCodegen()
Default constructor.
|
Modifier and Type | Method and Description |
---|---|
protected void |
addAdditionPropertiesToCodeGenModel(CodegenModel codegenModel,
io.swagger.v3.oas.models.media.Schema schema) |
protected void |
addConsumesInfo(io.swagger.v3.oas.models.Operation operation,
CodegenOperation codegenOperation) |
void |
addHandlebarHelpers(com.github.jknack.handlebars.Handlebars handlebars) |
protected void |
addImport(CodegenModel m,
String type) |
Map<String,Object> |
additionalProperties() |
void |
addOperationToGroup(String tag,
String resourcePath,
io.swagger.v3.oas.models.Operation operation,
CodegenOperation co,
Map<String,List<CodegenOperation>> operations)
Add operation to group
|
protected void |
addProducesInfo(io.swagger.v3.oas.models.responses.ApiResponse response,
CodegenOperation codegenOperation) |
protected void |
addProperties(Map<String,io.swagger.v3.oas.models.media.Schema> properties,
List<String> required,
io.swagger.v3.oas.models.media.Schema schema,
Map<String,io.swagger.v3.oas.models.media.Schema> allSchemas) |
String |
addRegularExpressionDelimiter(String pattern)
If the pattern misses the delimiter, add "/" to the beginning and end
Otherwise, return the original pattern
|
String |
apiDocFileFolder() |
String |
apiDocFilename(String templateName,
String tag)
Return the full path and API documentation file
|
Map<String,String> |
apiDocTemplateFiles() |
String |
apiFileFolder() |
String |
apiFilename(String templateName,
String tag) |
String |
apiPackage() |
Map<String,String> |
apiTemplateFiles() |
String |
apiTestFileFolder() |
String |
apiTestFilename(String templateName,
String tag)
Return the full path and API test file
|
Map<String,String> |
apiTestTemplateFiles() |
protected CliOption |
buildLibraryCliOption(Map<String,String> supportedLibraries) |
static String |
camelize(String word)
Camelize name (parameter, property, method, etc) with upper case for first letter
copied from Twitter elephant bird
https://github.com/twitter/elephant-bird/blob/master/core/src/main/java/com/twitter/elephantbird/util/Strings.java
|
static String |
camelize(String word,
boolean lowercaseFirstLetter)
Camelize name (parameter, property, method, etc)
|
List<CliOption> |
cliOptions() |
boolean |
convertPropertyToBoolean(String propertyKey) |
boolean |
convertPropertyToBooleanAndWriteBack(String propertyKey)
reads propertyKey from additionalProperties, converts it to a boolean and
writes it back to additionalProperties to be usable as a boolean in
mustache files.
|
protected String |
dashize(String word)
Dashize the given word.
|
Set<String> |
defaultIncludes() |
protected io.swagger.v3.oas.models.media.Schema |
detectParent(io.swagger.v3.oas.models.media.ComposedSchema composedSchema,
Map<String,io.swagger.v3.oas.models.media.Schema> allSchemas) |
String |
embeddedTemplateDir() |
String |
escapeQuotationMark(String input)
Escape single and/or double quote to avoid code injection
|
String |
escapeReservedWord(String name)
Return the escaped name of the reserved word
|
String |
escapeText(String input) |
String |
escapeUnsafeCharacters(String input)
override with any special text escaping logic to handle unsafe
characters so as to avoid code injection
|
String |
fileSuffix() |
protected io.swagger.v3.oas.models.responses.ApiResponse |
findMethodResponse(io.swagger.v3.oas.models.responses.ApiResponses responses)
Override with any special handling of response codes
|
CodegenModel |
fromModel(String name,
io.swagger.v3.oas.models.media.Schema schema)
Convert Swagger Model object to Codegen Model object without providing all model definitions
|
CodegenModel |
fromModel(String name,
io.swagger.v3.oas.models.media.Schema schema,
Map<String,io.swagger.v3.oas.models.media.Schema> allDefinitions)
Convert Swagger Model object to Codegen Model object
|
CodegenOperation |
fromOperation(String path,
String httpMethod,
io.swagger.v3.oas.models.Operation operation,
Map<String,io.swagger.v3.oas.models.media.Schema> schemas)
Convert Swagger Operation object to Codegen Operation object (without providing a Swagger object)
|
CodegenOperation |
fromOperation(String path,
String httpMethod,
io.swagger.v3.oas.models.Operation operation,
Map<String,io.swagger.v3.oas.models.media.Schema> schemas,
io.swagger.v3.oas.models.OpenAPI openAPI)
Convert Swagger Operation object to Codegen Operation object
|
CodegenParameter |
fromParameter(io.swagger.v3.oas.models.parameters.Parameter parameter,
Set<String> imports)
Convert Swagger Parameter object to Codegen Parameter object
|
CodegenProperty |
fromProperty(String name,
io.swagger.v3.oas.models.media.Schema propertySchema)
Convert Swagger Property object to Codegen Property object
|
CodegenParameter |
fromRequestBody(io.swagger.v3.oas.models.parameters.RequestBody body,
Map<String,io.swagger.v3.oas.models.media.Schema> schemas,
Set<String> imports) |
CodegenResponse |
fromResponse(String responseCode,
io.swagger.v3.oas.models.responses.ApiResponse response)
Convert Swagger Response object to Codegen Response object
|
List<CodegenSecurity> |
fromSecurity(Map<String,io.swagger.v3.oas.models.security.SecurityScheme> securitySchemeMap)
Convert map of Swagger SecurityScheme objects to a list of Codegen Security objects
|
String |
generateExamplePath(String path,
io.swagger.v3.oas.models.Operation operation)
Return the example path
|
String |
getAlias(String name)
Determine the type alias for the given type if it exists.
|
protected String |
getCollectionFormat(io.swagger.v3.oas.models.parameters.Parameter parameter) |
String |
getCommonTemplateDir() |
static Set<String> |
getConsumesInfo(io.swagger.v3.oas.models.Operation operation) |
protected String |
getContentType(io.swagger.v3.oas.models.parameters.RequestBody requestBody) |
String |
getGitRepoId()
Git repo ID
|
String |
getGitUserId()
Git user ID
|
String |
getHelp() |
String |
getHttpUserAgent()
HTTP user agent
|
String |
getIgnoreFilePathOverride()
Provides an override location, if any is specified, for the .swagger-codegen-ignore.
|
protected Map<String,Object> |
getInnerEnumAllowableValues(CodegenProperty property) |
String |
getInputSpec() |
String |
getLibrary()
Library template (sub-template).
|
String |
getName() |
protected String |
getOrGenerateOperationId(io.swagger.v3.oas.models.Operation operation,
String path,
String httpMethod)
Get operationId from the operation object, and if it's blank, generate a new one from the given parameters.
|
String |
getOutputDir() |
protected io.swagger.v3.oas.models.parameters.Parameter |
getParameterFromRef(String ref,
io.swagger.v3.oas.models.OpenAPI openAPI) |
protected String |
getParentName(io.swagger.v3.oas.models.media.ComposedSchema composedSchema,
Map<String,io.swagger.v3.oas.models.media.Schema> allSchemas) |
static Set<String> |
getProducesInfo(io.swagger.v3.oas.models.Operation operation) |
String |
getReleaseNote()
Release note
|
protected io.swagger.v3.oas.models.media.Schema |
getSchemaFromBody(io.swagger.v3.oas.models.parameters.RequestBody requestBody) |
protected io.swagger.v3.oas.models.media.Schema |
getSchemaFromResponse(io.swagger.v3.oas.models.responses.ApiResponse response) |
String |
getSchemaType(io.swagger.v3.oas.models.media.Schema property)
returns the swagger type for the property
|
protected String |
getSimpleRef(String ref) |
protected String |
getSymbolName(String input)
Return the symbol name of a symbol
|
CodegenType |
getTag() |
String |
getterAndSetterCapitalize(String name)
Camelize the method name of the getter and setter
|
String |
getTypeDeclaration(io.swagger.v3.oas.models.media.Schema schema)
Output the type declaration of the property
|
String |
getTypeDeclaration(String name)
Output the type declaration of a given name
|
protected static boolean |
hasSchemaProperties(io.swagger.v3.oas.models.media.Schema schema) |
Map<String,String> |
importMapping() |
String |
initialCaps(String name)
Capitalize the string
|
Map<String,String> |
instantiationTypes() |
boolean |
isDataTypeBinary(String dataType) |
boolean |
isDataTypeFile(String dataType) |
protected Boolean |
isPropertyInnerMostEnum(CodegenProperty property)
Update property for map container
|
boolean |
isRemoveOperationIdPrefix() |
protected boolean |
isReservedWord(String word) |
boolean |
isSkipOverwrite() |
Set<String> |
languageSpecificPrimitives() |
String |
modelDocFileFolder() |
Map<String,String> |
modelDocTemplateFiles() |
String |
modelFileFolder() |
String |
modelPackage() |
Map<String,String> |
modelTemplateFiles() |
String |
modelTestFileFolder() |
Map<String,String> |
modelTestTemplateFiles() |
protected boolean |
needToImport(String type)
Check the type to see if it needs import the library/module/package
|
String |
outputFolder() |
Map<String,Object> |
postProcessAllModels(Map<String,Object> processedModels) |
void |
postProcessModelProperty(CodegenModel model,
CodegenProperty property) |
Map<String,Object> |
postProcessModels(Map<String,Object> objs) |
Map<String,Object> |
postProcessModelsEnum(Map<String,Object> objs)
post process enum defined in model's properties
|
Map<String,Object> |
postProcessOperations(Map<String,Object> objs) |
Map<String,Object> |
postProcessOperationsWithModels(Map<String,Object> objs,
List<Object> allModels) |
void |
postProcessParameter(CodegenParameter parameter) |
Map<String,Object> |
postProcessSupportingFileData(Map<String,Object> objs) |
void |
preprocessOpenAPI(io.swagger.v3.oas.models.OpenAPI openAPI) |
com.samskivert.mustache.Mustache.Compiler |
processCompiler(com.samskivert.mustache.Mustache.Compiler compiler) |
void |
processOpenAPI(io.swagger.v3.oas.models.OpenAPI openAPI) |
void |
processOpts() |
String |
removeNonNameElementToCamelCase(String name)
Remove characters not suitable for variable or method name from the input and camelize it
|
protected String |
removeNonNameElementToCamelCase(String name,
String nonNameElementPattern)
Remove characters that is not good to be included in method name from the input and camelize it
|
Set<String> |
reservedWords() |
Map<String,String> |
reservedWordsMappings() |
String |
sanitizeName(String name)
Sanitize name (parameter, property, method, etc)
|
String |
sanitizeTag(String tag)
Sanitize tag
|
void |
setAllowUnicodeIdentifiers(Boolean allowUnicodeIdentifiers) |
void |
setApiPackage(String apiPackage) |
void |
setCommonTemplateDir(String commonTemplateDir) |
void |
setEnsureUniqueParams(Boolean ensureUniqueParams) |
void |
setGitRepoId(String gitRepoId)
Set Git repo ID.
|
void |
setGitUserId(String gitUserId)
Set Git user ID.
|
void |
setHttpUserAgent(String httpUserAgent)
Set HTTP user agent.
|
void |
setIgnoreFilePathOverride(String ignoreFileOverride)
Sets an override location for the .swagger-codegen.ignore location for the first code generation.
|
void |
setInputSpec(String inputSpec) |
void |
setLibrary(String library)
Set library template (sub-template).
|
void |
setModelNamePrefix(String modelNamePrefix) |
void |
setModelNameSuffix(String modelNameSuffix) |
void |
setModelPackage(String modelPackage) |
protected void |
setNonArrayMapProperty(CodegenProperty property,
String type) |
void |
setOutputDir(String dir) |
void |
setParameterBooleanFlagWithCodegenProperty(CodegenParameter parameter,
CodegenProperty property)
Set CodegenParameter boolean flag using CodegenProperty.
|
void |
setParameterExampleValue(CodegenParameter p)
Return the example value of the parameter.
|
void |
setReleaseNote(String releaseNote)
Set release note.
|
void |
setRemoveOperationIdPrefix(boolean removeOperationIdPrefix) |
protected void |
setReservedWordsLowerCase(List<String> words) |
void |
setSkipOverwrite(boolean skipOverwrite) |
void |
setSortParamsByRequiredFlag(Boolean sortParamsByRequiredFlag) |
void |
setTemplateDir(String templateDir) |
boolean |
shouldOverwrite(String filename) |
String |
snakeCase(String name)
Return the snake-case of the string
|
Map<String,String> |
supportedLibraries()
All library templates supported.
|
List<SupportingFile> |
supportingFiles() |
String |
templateDir() |
String |
testPackage() |
String |
toApiDocFilename(String name)
Return the file name of the Api Documentation
|
String |
toApiFilename(String name)
Return the file name of the Api Test
|
String |
toApiImport(String name)
Return the fully-qualified "Api" name for import
|
String |
toApiName(String name)
Output the API (class) name (capitalized) ending with "Api"
Return DefaultApi if name is empty
|
String |
toApiTestFilename(String name)
Return the file name of the Api Test
|
String |
toApiVarName(String name)
Return the variable name in the Api
|
String |
toBooleanGetter(String name)
Output the Getter name for boolean property, e.g.
|
String |
toDefaultValue(io.swagger.v3.oas.models.media.Schema property)
Return the default value of the property
|
String |
toDefaultValueWithParam(String name,
io.swagger.v3.oas.models.media.Schema property)
Return the property initialized from a data object
Useful for initialization with a plain object in Javascript
|
String |
toEnumDefaultValue(String value,
String datatype)
Return the enum default value in the language specified format
|
String |
toEnumName(CodegenProperty property)
Return the Enum name (e.g.
|
String |
toEnumValue(String value,
String datatype)
Return the enum value in the language specified format
e.g.
|
String |
toEnumVarName(String value,
String datatype)
Return the sanitized variable name for enum
|
protected List<Map<String,Object>> |
toExamples(Map<String,Object> examples) |
String |
toExampleValue(io.swagger.v3.oas.models.media.Schema property)
Return the example value of the property
|
String |
toGetter(String name)
Output the Getter name, e.g.
|
String |
toInstantiationType(io.swagger.v3.oas.models.media.Schema property)
Return the instantiation type of the property, especially for map and array
|
String |
toModelDocFilename(String name)
Return the capitalized file name of the model documentation
|
String |
toModelFilename(String name)
Return the capitalized file name of the model
|
String |
toModelImport(String name)
Return the fully-qualified "Model" name for import
|
String |
toModelName(String name)
Output the proper model name (capitalized).
|
String |
toModelTestFilename(String name)
Return the capitalized file name of the model test
|
String |
toOperationId(String operationId)
Return the operation ID (method name)
|
String |
toParamName(String name)
Return the parameter name by removing invalid characters and proper escaping if
it's a reserved word.
|
String |
toRegularExpression(String pattern)
Return the regular expression/JSON schema pattern (http://json-schema.org/latest/json-schema-validation.html#anchor33)
|
String |
toSetter(String name)
Output the Getter name, e.g.
|
String |
toVarName(String name)
Return the variable name by removing invalid characters and proper escaping if
it's a reserved word.
|
Map<String,String> |
typeMapping() |
static String |
underscore(String word)
Underscore the given word.
|
protected void |
updateDataTypeWithEnumForArray(CodegenProperty property)
Update datatypeWithEnum for array container
|
protected void |
updateDataTypeWithEnumForMap(CodegenProperty property)
Update datatypeWithEnum for map container
|
protected void |
updatePropertyForArray(CodegenProperty property,
CodegenProperty innerProperty)
Update property for array(list) container
|
protected void |
updatePropertyForMap(CodegenProperty property,
CodegenProperty innerProperty)
Update property for map container
|
Map<String,Object> |
vendorExtensions() |
void |
writeOptional(String outputFolder,
SupportingFile supportingFile)
Only write if the file doesn't exist
|
void |
writePropertyBack(String propertyKey,
boolean value) |
protected static final org.slf4j.Logger LOGGER
public static final String DEFAULT_CONTENT_TYPE
public static final String REQUEST_BODY_NAME
protected String inputSpec
protected String outputFolder
protected String modelPackage
protected String apiPackage
protected String fileSuffix
protected String modelNamePrefix
protected String modelNameSuffix
protected String testPackage
protected String templateDir
protected String embeddedTemplateDir
protected String commonTemplateDir
protected List<SupportingFile> supportingFiles
protected boolean skipOverwrite
protected boolean removeOperationIdPrefix
protected boolean supportsInheritance
protected boolean supportsMixins
protected String library
protected Boolean sortParamsByRequiredFlag
protected Boolean ensureUniqueParams
protected Boolean allowUnicodeIdentifiers
protected String gitUserId
protected String gitRepoId
protected String releaseNote
protected String httpUserAgent
protected Boolean hideGenerationTimestamp
protected String ignoreFilePathOverride
public DefaultCodegen()
public List<CliOption> cliOptions()
cliOptions
in interface CodegenConfig
public void processOpts()
processOpts
in interface CodegenConfig
public Map<String,Object> postProcessAllModels(Map<String,Object> processedModels)
postProcessAllModels
in interface CodegenConfig
public Map<String,Object> postProcessModels(Map<String,Object> objs)
postProcessModels
in interface CodegenConfig
public Map<String,Object> postProcessModelsEnum(Map<String,Object> objs)
objs
- Map of modelspublic String toEnumDefaultValue(String value, String datatype)
value
- enum variable namedatatype
- data typepublic String toEnumValue(String value, String datatype)
value
- enum variable namedatatype
- data typepublic String toEnumVarName(String value, String datatype)
value
- enum variable namedatatype
- data typepublic Map<String,Object> postProcessOperations(Map<String,Object> objs)
postProcessOperations
in interface CodegenConfig
public Map<String,Object> postProcessOperationsWithModels(Map<String,Object> objs, List<Object> allModels)
postProcessOperationsWithModels
in interface CodegenConfig
public Map<String,Object> postProcessSupportingFileData(Map<String,Object> objs)
postProcessSupportingFileData
in interface CodegenConfig
public void postProcessModelProperty(CodegenModel model, CodegenProperty property)
postProcessModelProperty
in interface CodegenConfig
public void postProcessParameter(CodegenParameter parameter)
postProcessParameter
in interface CodegenConfig
public void preprocessOpenAPI(io.swagger.v3.oas.models.OpenAPI openAPI)
preprocessOpenAPI
in interface CodegenConfig
public void processOpenAPI(io.swagger.v3.oas.models.OpenAPI openAPI)
processOpenAPI
in interface CodegenConfig
public com.samskivert.mustache.Mustache.Compiler processCompiler(com.samskivert.mustache.Mustache.Compiler compiler)
processCompiler
in interface CodegenConfig
public String escapeText(String input)
escapeText
in interface CodegenConfig
public String escapeUnsafeCharacters(String input)
escapeUnsafeCharacters
in interface CodegenConfig
input
- String to be cleaned uppublic String escapeQuotationMark(String input)
escapeQuotationMark
in interface CodegenConfig
input
- String to be cleaned uppublic Set<String> defaultIncludes()
defaultIncludes
in interface CodegenConfig
public Map<String,String> typeMapping()
typeMapping
in interface CodegenConfig
public Map<String,String> instantiationTypes()
instantiationTypes
in interface CodegenConfig
public Set<String> reservedWords()
reservedWords
in interface CodegenConfig
public Set<String> languageSpecificPrimitives()
languageSpecificPrimitives
in interface CodegenConfig
public Map<String,String> importMapping()
importMapping
in interface CodegenConfig
public String testPackage()
testPackage
in interface CodegenConfig
public String modelPackage()
modelPackage
in interface CodegenConfig
public String apiPackage()
apiPackage
in interface CodegenConfig
public String fileSuffix()
fileSuffix
in interface CodegenConfig
public String templateDir()
templateDir
in interface CodegenConfig
public String embeddedTemplateDir()
embeddedTemplateDir
in interface CodegenConfig
public String getCommonTemplateDir()
getCommonTemplateDir
in interface CodegenConfig
public void setCommonTemplateDir(String commonTemplateDir)
public Map<String,String> apiDocTemplateFiles()
apiDocTemplateFiles
in interface CodegenConfig
public Map<String,String> modelDocTemplateFiles()
modelDocTemplateFiles
in interface CodegenConfig
public Map<String,String> reservedWordsMappings()
reservedWordsMappings
in interface CodegenConfig
public Map<String,String> apiTestTemplateFiles()
apiTestTemplateFiles
in interface CodegenConfig
public Map<String,String> modelTestTemplateFiles()
modelTestTemplateFiles
in interface CodegenConfig
public Map<String,String> apiTemplateFiles()
apiTemplateFiles
in interface CodegenConfig
public Map<String,String> modelTemplateFiles()
modelTemplateFiles
in interface CodegenConfig
public String apiFileFolder()
apiFileFolder
in interface CodegenConfig
public String modelFileFolder()
modelFileFolder
in interface CodegenConfig
public String apiTestFileFolder()
apiTestFileFolder
in interface CodegenConfig
public String modelTestFileFolder()
modelTestFileFolder
in interface CodegenConfig
public String apiDocFileFolder()
apiDocFileFolder
in interface CodegenConfig
public String modelDocFileFolder()
modelDocFileFolder
in interface CodegenConfig
public Map<String,Object> additionalProperties()
additionalProperties
in interface CodegenConfig
public Map<String,Object> vendorExtensions()
vendorExtensions
in interface CodegenConfig
public List<SupportingFile> supportingFiles()
supportingFiles
in interface CodegenConfig
public String outputFolder()
outputFolder
in interface CodegenConfig
public void setOutputDir(String dir)
setOutputDir
in interface CodegenConfig
public String getOutputDir()
getOutputDir
in interface CodegenConfig
public String getInputSpec()
getInputSpec
in interface CodegenConfig
public void setInputSpec(String inputSpec)
setInputSpec
in interface CodegenConfig
public void setTemplateDir(String templateDir)
public void setModelPackage(String modelPackage)
public void setModelNamePrefix(String modelNamePrefix)
public void setModelNameSuffix(String modelNameSuffix)
public void setApiPackage(String apiPackage)
public void setSortParamsByRequiredFlag(Boolean sortParamsByRequiredFlag)
public void setEnsureUniqueParams(Boolean ensureUniqueParams)
public void setAllowUnicodeIdentifiers(Boolean allowUnicodeIdentifiers)
public String toRegularExpression(String pattern)
pattern
- the pattern (regular expression)public String toApiFilename(String name)
toApiFilename
in interface CodegenConfig
name
- the file name of the Apipublic String toApiDocFilename(String name)
toApiDocFilename
in interface CodegenConfig
name
- the file name of the Apipublic String toApiTestFilename(String name)
toApiTestFilename
in interface CodegenConfig
name
- the file name of the Apipublic String toApiVarName(String name)
toApiVarName
in interface CodegenConfig
name
- the varible name of the Apipublic String toModelFilename(String name)
toModelFilename
in interface CodegenConfig
name
- the model namepublic String toModelTestFilename(String name)
toModelTestFilename
in interface CodegenConfig
name
- the model namepublic String toModelDocFilename(String name)
toModelDocFilename
in interface CodegenConfig
name
- the model namepublic String toOperationId(String operationId)
operationId
- operation IDpublic String toVarName(String name)
name
- the variable namepublic String toParamName(String name)
toParamName
in interface CodegenConfig
name
- Codegen property objectpublic String toEnumName(CodegenProperty property)
property
- Codegen propertypublic String escapeReservedWord(String name)
escapeReservedWord
in interface CodegenConfig
name
- the name to be escapedpublic String toModelImport(String name)
toModelImport
in interface CodegenConfig
name
- the name of the "Model"public String toApiImport(String name)
toApiImport
in interface CodegenConfig
name
- the name of the "Api"protected String getSymbolName(String input)
input
- Symbol (e.g. $)public String generateExamplePath(String path, io.swagger.v3.oas.models.Operation operation)
generateExamplePath
in interface CodegenConfig
path
- the path of the operationoperation
- Swagger operation objectpublic String toInstantiationType(io.swagger.v3.oas.models.media.Schema property)
property
- Swagger property objectpublic void setParameterExampleValue(CodegenParameter p)
p
- Swagger property objectpublic String toExampleValue(io.swagger.v3.oas.models.media.Schema property)
property
- Schema property objectpublic String toDefaultValue(io.swagger.v3.oas.models.media.Schema property)
property
- Schema property objectpublic String toDefaultValueWithParam(String name, io.swagger.v3.oas.models.media.Schema property)
name
- Name of the property objectproperty
- openAPI schema objectpublic String getSchemaType(io.swagger.v3.oas.models.media.Schema property)
property
- Schema property objectpublic String snakeCase(String name)
name
- string to be snake-casedpublic String initialCaps(String name)
name
- string to be capitalizedpublic String getTypeDeclaration(String name)
getTypeDeclaration
in interface CodegenConfig
name
- namepublic String getTypeDeclaration(io.swagger.v3.oas.models.media.Schema schema)
getTypeDeclaration
in interface CodegenConfig
schema
- Schema Property objectpublic String getAlias(String name)
name
- The type name.public String toBooleanGetter(String name)
toBooleanGetter
in interface CodegenConfig
name
- the name of the propertypublic String toGetter(String name)
toGetter
in interface CodegenConfig
name
- the name of the propertypublic String toSetter(String name)
toSetter
in interface CodegenConfig
name
- the name of the propertypublic String toApiName(String name)
toApiName
in interface CodegenConfig
name
- the name of the Apipublic String toModelName(String name)
toModelName
in interface CodegenConfig
name
- the name of the modelpublic CodegenModel fromModel(String name, io.swagger.v3.oas.models.media.Schema schema)
fromModel
in interface CodegenConfig
name
- the name of the modelschema
- Schema objectpublic CodegenModel fromModel(String name, io.swagger.v3.oas.models.media.Schema schema, Map<String,io.swagger.v3.oas.models.media.Schema> allDefinitions)
fromModel
in interface CodegenConfig
name
- the name of the modelschema
- Swagger Model objectallDefinitions
- a map of all Swagger models from the specprotected void addAdditionPropertiesToCodeGenModel(CodegenModel codegenModel, io.swagger.v3.oas.models.media.Schema schema)
protected void addProperties(Map<String,io.swagger.v3.oas.models.media.Schema> properties, List<String> required, io.swagger.v3.oas.models.media.Schema schema, Map<String,io.swagger.v3.oas.models.media.Schema> allSchemas)
public String getterAndSetterCapitalize(String name)
name
- string to be camelizedpublic CodegenProperty fromProperty(String name, io.swagger.v3.oas.models.media.Schema propertySchema)
name
- name of the propertypropertySchema
- Schema objectprotected void updatePropertyForArray(CodegenProperty property, CodegenProperty innerProperty)
property
- Codegen propertyinnerProperty
- Codegen inner property of map or listprotected void updatePropertyForMap(CodegenProperty property, CodegenProperty innerProperty)
property
- Codegen propertyinnerProperty
- Codegen inner property of map or listprotected Boolean isPropertyInnerMostEnum(CodegenProperty property)
property
- Codegen propertyprotected Map<String,Object> getInnerEnumAllowableValues(CodegenProperty property)
protected void updateDataTypeWithEnumForArray(CodegenProperty property)
property
- Codegen propertyprotected void updateDataTypeWithEnumForMap(CodegenProperty property)
property
- Codegen propertyprotected void setNonArrayMapProperty(CodegenProperty property, String type)
protected io.swagger.v3.oas.models.responses.ApiResponse findMethodResponse(io.swagger.v3.oas.models.responses.ApiResponses responses)
responses
- Swagger Operation's responsespublic CodegenOperation fromOperation(String path, String httpMethod, io.swagger.v3.oas.models.Operation operation, Map<String,io.swagger.v3.oas.models.media.Schema> schemas)
fromOperation
in interface CodegenConfig
path
- the path of the operationhttpMethod
- HTTP methodoperation
- Swagger operation objectschemas
- a map of Swagger modelspublic CodegenOperation fromOperation(String path, String httpMethod, io.swagger.v3.oas.models.Operation operation, Map<String,io.swagger.v3.oas.models.media.Schema> schemas, io.swagger.v3.oas.models.OpenAPI openAPI)
fromOperation
in interface CodegenConfig
path
- the path of the operationhttpMethod
- HTTP methodoperation
- Swagger operation objectschemas
- a map of schemasopenAPI
- a OpenAPI object representing the specpublic CodegenResponse fromResponse(String responseCode, io.swagger.v3.oas.models.responses.ApiResponse response)
responseCode
- HTTP response coderesponse
- Swagger Response objectpublic CodegenParameter fromParameter(io.swagger.v3.oas.models.parameters.Parameter parameter, Set<String> imports)
parameter
- Swagger parameter objectimports
- set of imports for library/package/modulepublic CodegenParameter fromRequestBody(io.swagger.v3.oas.models.parameters.RequestBody body, Map<String,io.swagger.v3.oas.models.media.Schema> schemas, Set<String> imports)
public boolean isDataTypeBinary(String dataType)
public boolean isDataTypeFile(String dataType)
public List<CodegenSecurity> fromSecurity(Map<String,io.swagger.v3.oas.models.security.SecurityScheme> securitySchemeMap)
fromSecurity
in interface CodegenConfig
securitySchemeMap
- a map of Swagger SecuritySchemeDefinition objectprotected boolean isReservedWord(String word)
protected String getOrGenerateOperationId(io.swagger.v3.oas.models.Operation operation, String path, String httpMethod)
operation
- the operation objectpath
- the path of the operationhttpMethod
- the HTTP method of the operationprotected boolean needToImport(String type)
type
- name of the typepublic void addOperationToGroup(String tag, String resourcePath, io.swagger.v3.oas.models.Operation operation, CodegenOperation co, Map<String,List<CodegenOperation>> operations)
addOperationToGroup
in interface CodegenConfig
tag
- name of the tagresourcePath
- path of the resourceoperation
- Swagger Operation objectco
- Codegen Operation objectoperations
- map of Codegen operationspublic static String underscore(String word)
word
- The wordprotected String dashize(String word)
word
- The wordprotected void addImport(CodegenModel m, String type)
public String removeNonNameElementToCamelCase(String name)
name
- string to be camelizeprotected String removeNonNameElementToCamelCase(String name, String nonNameElementPattern)
name
- string to be camelizenonNameElementPattern
- a regex pattern of the characters that is not good to be included in namepublic static String camelize(String word)
word
- string to be camelizepublic static String camelize(String word, boolean lowercaseFirstLetter)
word
- string to be camelizelowercaseFirstLetter
- lower case for first letter if set to truepublic String apiFilename(String templateName, String tag)
apiFilename
in interface CodegenConfig
public String apiDocFilename(String templateName, String tag)
apiDocFilename
in interface CodegenConfig
templateName
- template nametag
- tagpublic String apiTestFilename(String templateName, String tag)
apiTestFilename
in interface CodegenConfig
templateName
- template nametag
- tagpublic boolean shouldOverwrite(String filename)
shouldOverwrite
in interface CodegenConfig
public boolean isSkipOverwrite()
isSkipOverwrite
in interface CodegenConfig
public void setSkipOverwrite(boolean skipOverwrite)
setSkipOverwrite
in interface CodegenConfig
public boolean isRemoveOperationIdPrefix()
isRemoveOperationIdPrefix
in interface CodegenConfig
public void setRemoveOperationIdPrefix(boolean removeOperationIdPrefix)
setRemoveOperationIdPrefix
in interface CodegenConfig
public Map<String,String> supportedLibraries()
supportedLibraries
in interface CodegenConfig
public void setLibrary(String library)
setLibrary
in interface CodegenConfig
library
- Library templatepublic String getLibrary()
getLibrary
in interface CodegenConfig
public void setGitUserId(String gitUserId)
setGitUserId
in interface CodegenConfig
gitUserId
- Git user IDpublic String getGitUserId()
getGitUserId
in interface CodegenConfig
public void setGitRepoId(String gitRepoId)
setGitRepoId
in interface CodegenConfig
gitRepoId
- Git repo IDpublic String getGitRepoId()
getGitRepoId
in interface CodegenConfig
public void setReleaseNote(String releaseNote)
setReleaseNote
in interface CodegenConfig
releaseNote
- Release notepublic String getReleaseNote()
getReleaseNote
in interface CodegenConfig
public void setHttpUserAgent(String httpUserAgent)
setHttpUserAgent
in interface CodegenConfig
httpUserAgent
- HTTP user agentpublic String getHttpUserAgent()
getHttpUserAgent
in interface CodegenConfig
protected CliOption buildLibraryCliOption(Map<String,String> supportedLibraries)
public String sanitizeName(String name)
name
- string to be sanitizepublic String sanitizeTag(String tag)
sanitizeTag
in interface CodegenConfig
tag
- Tagpublic void addHandlebarHelpers(com.github.jknack.handlebars.Handlebars handlebars)
addHandlebarHelpers
in interface CodegenConfig
public void writeOptional(String outputFolder, SupportingFile supportingFile)
outputFolder
- Output foldersupportingFile
- Supporting filepublic void setParameterBooleanFlagWithCodegenProperty(CodegenParameter parameter, CodegenProperty property)
parameter
- Codegen Parameterproperty
- Codegen propertypublic String addRegularExpressionDelimiter(String pattern)
pattern
- the pattern (regular expression)public boolean convertPropertyToBooleanAndWriteBack(String propertyKey)
propertyKey
- property keypublic String getIgnoreFilePathOverride()
getIgnoreFilePathOverride
in interface CodegenConfig
public void setIgnoreFilePathOverride(String ignoreFileOverride)
setIgnoreFilePathOverride
in interface CodegenConfig
ignoreFileOverride
- The full path to an ignore filepublic boolean convertPropertyToBoolean(String propertyKey)
public void writePropertyBack(String propertyKey, boolean value)
protected String getContentType(io.swagger.v3.oas.models.parameters.RequestBody requestBody)
protected io.swagger.v3.oas.models.media.Schema getSchemaFromBody(io.swagger.v3.oas.models.parameters.RequestBody requestBody)
protected io.swagger.v3.oas.models.media.Schema getSchemaFromResponse(io.swagger.v3.oas.models.responses.ApiResponse response)
protected io.swagger.v3.oas.models.parameters.Parameter getParameterFromRef(String ref, io.swagger.v3.oas.models.OpenAPI openAPI)
protected void addConsumesInfo(io.swagger.v3.oas.models.Operation operation, CodegenOperation codegenOperation)
public static Set<String> getConsumesInfo(io.swagger.v3.oas.models.Operation operation)
protected void addProducesInfo(io.swagger.v3.oas.models.responses.ApiResponse response, CodegenOperation codegenOperation)
public static Set<String> getProducesInfo(io.swagger.v3.oas.models.Operation operation)
protected io.swagger.v3.oas.models.media.Schema detectParent(io.swagger.v3.oas.models.media.ComposedSchema composedSchema, Map<String,io.swagger.v3.oas.models.media.Schema> allSchemas)
protected String getParentName(io.swagger.v3.oas.models.media.ComposedSchema composedSchema, Map<String,io.swagger.v3.oas.models.media.Schema> allSchemas)
protected String getCollectionFormat(io.swagger.v3.oas.models.parameters.Parameter parameter)
protected static boolean hasSchemaProperties(io.swagger.v3.oas.models.media.Schema schema)
public CodegenType getTag()
getTag
in interface CodegenConfig
public String getName()
getName
in interface CodegenConfig
public String getHelp()
getHelp
in interface CodegenConfig
Copyright © 2018. All rights reserved.