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 |
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 |
addOption(String key,
String description,
String defaultValue) |
protected void |
addProperties(Map<String,io.swagger.v3.oas.models.media.Schema> properties,
List<String> required,
io.swagger.v3.oas.models.media.Schema schema)
Add schema's properties to "properties" and "required" list
|
String |
addRegularExpressionDelimiter(String pattern)
If the pattern misses the delimiter, add "/" to the beginning and end
Otherwise, return the original pattern
|
protected void |
addSwitch(String key,
String description,
Boolean defaultValue) |
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) |
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.
|
Set<String> |
defaultIncludes() |
String |
embeddedTemplateDir() |
String |
encodePath(String input) |
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 |
escapeTextWhileAllowingNewLines(String input)
Escape characters while allowing new lines
|
String |
escapeUnsafeCharacters(String input)
override with any special text escaping logic to handle unsafe
characters so as to avoid code injection
|
String |
fileSuffix() |
String |
findCommonPrefixOfVars(List<Object> vars)
Returns the common prefix of variables for enum naming if
two or more variables are present
|
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
|
CodegenCallback |
fromCallback(String name,
io.swagger.v3.oas.models.callbacks.Callback callback,
List<io.swagger.v3.oas.models.servers.Server> servers)
Convert OAS Callback object to Codegen Callback object
|
CodegenParameter |
fromFormProperty(String name,
io.swagger.v3.oas.models.media.Schema propertySchema,
Set<String> imports) |
CodegenModel |
fromModel(String name,
io.swagger.v3.oas.models.media.Schema schema)
Convert OAS Model object to Codegen Model object
|
CodegenOperation |
fromOperation(String path,
String httpMethod,
io.swagger.v3.oas.models.Operation operation,
List<io.swagger.v3.oas.models.servers.Server> servers)
Convert OAS Operation object to Codegen Operation object
|
CodegenParameter |
fromParameter(io.swagger.v3.oas.models.parameters.Parameter parameter,
Set<String> imports)
Convert OAS Parameter object to Codegen Parameter object
|
CodegenProperty |
fromProperty(String name,
io.swagger.v3.oas.models.media.Schema p)
Convert OAS Property object to Codegen Property object
|
CodegenParameter |
fromRequestBody(io.swagger.v3.oas.models.parameters.RequestBody body,
Set<String> imports,
String bodyParameterName) |
List<CodegenParameter> |
fromRequestBodyToFormParameters(io.swagger.v3.oas.models.parameters.RequestBody body,
Set<String> imports) |
CodegenResponse |
fromResponse(String responseCode,
io.swagger.v3.oas.models.responses.ApiResponse response)
Convert OAS Response object to Codegen Response object
|
List<CodegenSecurity> |
fromSecurity(Map<String,io.swagger.v3.oas.models.security.SecurityScheme> securitySchemeMap)
Convert map of OAS SecurityScheme objects to a list of Codegen Security objects
|
List<CodegenServer> |
fromServers(List<io.swagger.v3.oas.models.servers.Server> servers) |
List<CodegenServerVariable> |
fromServerVariables(Map<String,io.swagger.v3.oas.models.servers.ServerVariable> variables) |
String |
generateExamplePath(String path,
io.swagger.v3.oas.models.Operation operation)
Return the example path
|
void |
generateJSONSpecFile(Map<String,Object> objs)
generates OpenAPI specification file in JSON format
|
void |
generateYAMLSpecFile(Map<String,Object> objs)
generates OpenAPI specification file in YAML format
|
String |
getAlias(String name)
Determine the type alias for the given type if it exists.
|
Boolean |
getAllowUnicodeIdentifiers() |
protected String |
getCollectionFormat(io.swagger.v3.oas.models.parameters.Parameter parameter) |
String |
getCommonTemplateDir() |
static Set<String> |
getConsumesInfo(io.swagger.v3.oas.models.OpenAPI openAPI,
io.swagger.v3.oas.models.Operation operation) |
protected String |
getContentType(io.swagger.v3.oas.models.parameters.RequestBody requestBody) |
String |
getDocExtension()
Documentation files extension
|
Boolean |
getEnsureUniqueParams() |
GeneratorMetadata |
getGeneratorMetadata()
Returns metadata about the generator.
|
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 .openapi-generator-ignore.
|
protected Map<String,Object> |
getInnerEnumAllowableValues(CodegenProperty property) |
String |
getInputSpec() |
String |
getLibrary()
Library template (sub-template).
|
String |
getModelNamePrefix() |
String |
getModelNameSuffix() |
protected CodegenProperty |
getMostInnerItems(CodegenProperty property) |
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 String |
getParameterDataType(io.swagger.v3.oas.models.parameters.Parameter parameter,
io.swagger.v3.oas.models.media.Schema schema)
Returns the data type of a parameter.
|
Boolean |
getPrependFormOrBodyParameters() |
static Set<String> |
getProducesInfo(io.swagger.v3.oas.models.OpenAPI openAPI,
io.swagger.v3.oas.models.Operation operation)
returns the list of MIME types the APIs can produce
|
String |
getReleaseNote()
Release note
|
String |
getSchemaType(io.swagger.v3.oas.models.media.Schema schema)
returns the OpenAPI type for the property.
|
Boolean |
getSortParamsByRequiredFlag() |
protected String |
getSymbolName(String input)
Return the symbol name of a symbol
|
CodegenType |
getTag() |
TemplatingEngineAdapter |
getTemplatingEngine() |
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
|
boolean |
hasBodyParameter(io.swagger.v3.oas.models.OpenAPI openAPI,
io.swagger.v3.oas.models.Operation operation) |
boolean |
hasFormParameter(io.swagger.v3.oas.models.OpenAPI openAPI,
io.swagger.v3.oas.models.Operation operation) |
Map<String,String> |
importMapping() |
protected void |
initalizeSpecialCharacterMapping()
Initialize special character mapping
|
Map<String,String> |
instantiationTypes() |
boolean |
isDataTypeBinary(String dataType) |
boolean |
isDataTypeFile(String dataType) |
boolean |
isDataTypeString(String dataType)
checks if the data should be classified as "string" in enum
e.g.
|
boolean |
isEnableMinimalUpdate()
Get the boolean value indicating the state of the option for updating only changed files
|
boolean |
isEnablePostProcessFile()
Boolean value indicating the state of the option for post-processing file using envirionment variables.
|
boolean |
isHideGenerationTimestamp() |
boolean |
isParameterNameUnique(CodegenParameter p,
List<CodegenParameter> parameters) |
protected Boolean |
isPropertyInnerMostEnum(CodegenProperty property)
Update property for map container
|
boolean |
isRemoveOperationIdPrefix() |
protected boolean |
isReservedWord(String word) |
boolean |
isSkipOverwrite() |
boolean |
isStrictSpecBehavior()
Indicates whether the codegen configuration should treat documents as strictly defined by the OpenAPI specification.
|
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> objs) |
void |
postProcessFile(File file,
String fileType)
Post-process the auto-generated file, e.g.
|
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> |
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() |
TemplatingEngineAdapter |
processTemplatingEngine(TemplatingEngineAdapter templatingEngine) |
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 |
sanitizeName(String name,
String removeCharRegEx)
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 |
setDocExtension(String userDocExtension)
Set Documentation files extension
|
void |
setEnableMinimalUpdate(boolean enableMinimalUpdate)
Set the boolean value indicating the state of the option for updating only changed files
|
void |
setEnablePostProcessFile(boolean enablePostProcessFile)
Set the boolean value indicating the state of the option for post-processing file using envirionment variables.
|
void |
setEnsureUniqueParams(Boolean ensureUniqueParams) |
void |
setGitRepoId(String gitRepoId)
Set Git repo ID.
|
void |
setGitUserId(String gitUserId)
Set Git user ID.
|
void |
setHideGenerationTimestamp(boolean hideGenerationTimestamp) |
void |
setHttpUserAgent(String httpUserAgent)
Set HTTP user agent.
|
void |
setIgnoreFilePathOverride(String ignoreFileOverride)
Sets an override location for the '.openapi-generator-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 |
setOpenAPI(io.swagger.v3.oas.models.OpenAPI openAPI)
Set the OpenAPI instance.
|
void |
setOutputDir(String dir) |
void |
setParameterBooleanFlagWithCodegenProperty(CodegenParameter parameter,
CodegenProperty property)
Set CodegenParameter boolean flag using CodegenProperty.
|
void |
setParameterExampleValue(CodegenParameter codegenParameter)
Return the example value of the parameter.
|
void |
setParameterExampleValue(CodegenParameter codegenParameter,
io.swagger.v3.oas.models.parameters.Parameter parameter)
Return the example value of the parameter.
|
void |
setParameterExampleValue(CodegenParameter codegenParameter,
io.swagger.v3.oas.models.parameters.RequestBody requestBody)
Return the example value of the parameter.
|
void |
setPrependFormOrBodyParameters(Boolean prependFormOrBodyParameters) |
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 |
setStrictSpecBehavior(boolean strictSpecBehavior)
Sets the boolean valid indicating whether generation will work strictly against the specification, potentially making
minor changes to the input document.
|
void |
setTemplateDir(String templateDir) |
void |
setTemplatingEngine(TemplatingEngineAdapter templatingEngine) |
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 |
toAllOfName(List<String> names,
io.swagger.v3.oas.models.media.ComposedSchema composedSchema)
Return the name of the allOf schema
|
String |
toAnyOfName(List<String> names,
io.swagger.v3.oas.models.media.ComposedSchema composedSchema)
Return the name of the anyOf schema
|
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 |
toArrayModelParamName(String name)
Return the parameter name of array of model
|
String |
toBooleanGetter(String name)
Output the Getter name for boolean property, e.g.
|
String |
toDefaultValue(io.swagger.v3.oas.models.media.Schema schema)
Return the default value of the property
|
String |
toDefaultValueWithParam(String name,
io.swagger.v3.oas.models.media.Schema schema)
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 schema)
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 schema)
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 |
toOneOfName(List<String> names,
io.swagger.v3.oas.models.media.ComposedSchema composedSchema)
Return the name of the oneOf schema
|
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 Setter 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() |
Map<String,Object> |
updateAllModels(Map<String,Object> objs)
Loop through all models to update different flags (e.g.
|
void |
updateCodegenPropertyEnum(CodegenProperty var)
Update codegen property's enum by adding "enumVars" (with name and value)
|
protected void |
updateDataTypeWithEnumForArray(CodegenProperty property)
Update datatypeWithEnum for array container
|
protected void |
updateDataTypeWithEnumForMap(CodegenProperty property)
Update datatypeWithEnum for map container
|
protected void |
updateOption(String key,
String defaultValue) |
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 GeneratorMetadata generatorMetadata
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 supportsMultipleInheritance
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 Boolean prependFormOrBodyParameters
protected String docExtension
protected String ignoreFilePathOverride
protected boolean enablePostProcessFile
protected boolean enableMinimalUpdate
protected boolean strictSpecBehavior
protected io.swagger.v3.oas.models.OpenAPI openAPI
public DefaultCodegen()
public List<CliOption> cliOptions()
cliOptions in interface CodegenConfigpublic void processOpts()
processOpts in interface CodegenConfigpublic Map<String,Object> postProcessAllModels(Map<String,Object> objs)
postProcessAllModels in interface CodegenConfigpublic Map<String,Object> updateAllModels(Map<String,Object> objs)
updateAllModels in interface CodegenConfigobjs - Map of modelspublic Map<String,Object> postProcessModels(Map<String,Object> objs)
postProcessModels in interface CodegenConfigpublic Map<String,Object> postProcessModelsEnum(Map<String,Object> objs)
objs - Map of modelspublic String findCommonPrefixOfVars(List<Object> vars)
vars - List of variable namespublic 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 void setOpenAPI(io.swagger.v3.oas.models.OpenAPI openAPI)
CodegenConfigsetOpenAPI in interface CodegenConfigopenAPI - specification being generatedpublic Map<String,Object> postProcessOperationsWithModels(Map<String,Object> objs, List<Object> allModels)
postProcessOperationsWithModels in interface CodegenConfigpublic Map<String,Object> postProcessSupportingFileData(Map<String,Object> objs)
postProcessSupportingFileData in interface CodegenConfigpublic void postProcessModelProperty(CodegenModel model, CodegenProperty property)
postProcessModelProperty in interface CodegenConfigpublic void postProcessParameter(CodegenParameter parameter)
postProcessParameter in interface CodegenConfigpublic void preprocessOpenAPI(io.swagger.v3.oas.models.OpenAPI openAPI)
preprocessOpenAPI in interface CodegenConfigpublic void processOpenAPI(io.swagger.v3.oas.models.OpenAPI openAPI)
processOpenAPI in interface CodegenConfigpublic com.samskivert.mustache.Mustache.Compiler processCompiler(com.samskivert.mustache.Mustache.Compiler compiler)
processCompiler in interface CodegenConfigpublic TemplatingEngineAdapter processTemplatingEngine(TemplatingEngineAdapter templatingEngine)
processTemplatingEngine in interface CodegenConfigpublic String escapeText(String input)
escapeText in interface CodegenConfigpublic String escapeTextWhileAllowingNewLines(String input)
escapeTextWhileAllowingNewLines in interface CodegenConfiginput - String to be escapedpublic String encodePath(String input)
encodePath in interface CodegenConfigpublic String escapeUnsafeCharacters(String input)
escapeUnsafeCharacters in interface CodegenConfiginput - String to be cleaned uppublic String escapeQuotationMark(String input)
escapeQuotationMark in interface CodegenConfiginput - String to be cleaned uppublic Set<String> defaultIncludes()
defaultIncludes in interface CodegenConfigpublic Map<String,String> typeMapping()
typeMapping in interface CodegenConfigpublic Map<String,String> instantiationTypes()
instantiationTypes in interface CodegenConfigpublic Set<String> reservedWords()
reservedWords in interface CodegenConfigpublic Set<String> languageSpecificPrimitives()
languageSpecificPrimitives in interface CodegenConfigpublic Map<String,String> importMapping()
importMapping in interface CodegenConfigpublic String testPackage()
testPackage in interface CodegenConfigpublic String modelPackage()
modelPackage in interface CodegenConfigpublic String apiPackage()
apiPackage in interface CodegenConfigpublic String fileSuffix()
fileSuffix in interface CodegenConfigpublic String templateDir()
templateDir in interface CodegenConfigpublic String embeddedTemplateDir()
embeddedTemplateDir in interface CodegenConfigpublic String getCommonTemplateDir()
getCommonTemplateDir in interface CodegenConfigpublic void setCommonTemplateDir(String commonTemplateDir)
public Map<String,String> apiDocTemplateFiles()
apiDocTemplateFiles in interface CodegenConfigpublic Map<String,String> modelDocTemplateFiles()
modelDocTemplateFiles in interface CodegenConfigpublic Map<String,String> reservedWordsMappings()
reservedWordsMappings in interface CodegenConfigpublic Map<String,String> apiTestTemplateFiles()
apiTestTemplateFiles in interface CodegenConfigpublic Map<String,String> modelTestTemplateFiles()
modelTestTemplateFiles in interface CodegenConfigpublic Map<String,String> apiTemplateFiles()
apiTemplateFiles in interface CodegenConfigpublic Map<String,String> modelTemplateFiles()
modelTemplateFiles in interface CodegenConfigpublic String apiFileFolder()
apiFileFolder in interface CodegenConfigpublic String modelFileFolder()
modelFileFolder in interface CodegenConfigpublic String apiTestFileFolder()
apiTestFileFolder in interface CodegenConfigpublic String modelTestFileFolder()
modelTestFileFolder in interface CodegenConfigpublic String apiDocFileFolder()
apiDocFileFolder in interface CodegenConfigpublic String modelDocFileFolder()
modelDocFileFolder in interface CodegenConfigpublic Map<String,Object> additionalProperties()
additionalProperties in interface CodegenConfigpublic Map<String,Object> vendorExtensions()
vendorExtensions in interface CodegenConfigpublic List<SupportingFile> supportingFiles()
supportingFiles in interface CodegenConfigpublic String outputFolder()
outputFolder in interface CodegenConfigpublic void setOutputDir(String dir)
setOutputDir in interface CodegenConfigpublic String getOutputDir()
getOutputDir in interface CodegenConfigpublic String getInputSpec()
getInputSpec in interface CodegenConfigpublic void setInputSpec(String inputSpec)
setInputSpec in interface CodegenConfigpublic void setTemplateDir(String templateDir)
public void setModelPackage(String modelPackage)
public String getModelNamePrefix()
public void setModelNamePrefix(String modelNamePrefix)
public String getModelNameSuffix()
public void setModelNameSuffix(String modelNameSuffix)
public void setApiPackage(String apiPackage)
public Boolean getSortParamsByRequiredFlag()
public void setSortParamsByRequiredFlag(Boolean sortParamsByRequiredFlag)
public Boolean getPrependFormOrBodyParameters()
public void setPrependFormOrBodyParameters(Boolean prependFormOrBodyParameters)
public Boolean getEnsureUniqueParams()
public void setEnsureUniqueParams(Boolean ensureUniqueParams)
public Boolean getAllowUnicodeIdentifiers()
public void setAllowUnicodeIdentifiers(Boolean allowUnicodeIdentifiers)
public String toRegularExpression(String pattern)
pattern - the pattern (regular expression)public String toApiFilename(String name)
toApiFilename in interface CodegenConfigname - the file name of the Apipublic String toApiDocFilename(String name)
toApiDocFilename in interface CodegenConfigname - the file name of the Apipublic String toApiTestFilename(String name)
toApiTestFilename in interface CodegenConfigname - the file name of the Apipublic String toApiVarName(String name)
toApiVarName in interface CodegenConfigname - the varible name of the Apipublic String toModelFilename(String name)
toModelFilename in interface CodegenConfigname - the model namepublic String toModelTestFilename(String name)
toModelTestFilename in interface CodegenConfigname - the model namepublic String toModelDocFilename(String name)
toModelDocFilename in interface CodegenConfigname - the model namepublic GeneratorMetadata getGeneratorMetadata()
getGeneratorMetadata in interface CodegenConfigGeneratorMetadata instancepublic String toOperationId(String operationId)
operationId - operation IDpublic String toVarName(String name)
name - the variable namepublic String toParamName(String name)
toParamName in interface CodegenConfigname - Codegen property objectpublic String toArrayModelParamName(String name)
name - name of the array modelpublic String toEnumName(CodegenProperty property)
property - Codegen propertypublic String escapeReservedWord(String name)
escapeReservedWord in interface CodegenConfigname - the name to be escapedthrows Runtime exception as reserved word is not allowed (default behavior)
public String toModelImport(String name)
toModelImport in interface CodegenConfigname - the name of the "Model"public String toApiImport(String name)
toApiImport in interface CodegenConfigname - the name of the "Api"protected void initalizeSpecialCharacterMapping()
protected String getSymbolName(String input)
input - Symbol (e.g. $)public String generateExamplePath(String path, io.swagger.v3.oas.models.Operation operation)
generateExamplePath in interface CodegenConfigpath - the path of the operationoperation - OAS operation objectpublic String toInstantiationType(io.swagger.v3.oas.models.media.Schema schema)
schema - property schemapublic void setParameterExampleValue(CodegenParameter codegenParameter)
codegenParameter - Codegen parameterpublic void setParameterExampleValue(CodegenParameter codegenParameter, io.swagger.v3.oas.models.parameters.Parameter parameter)
codegenParameter - Codegen parameterparameter - Parameterpublic void setParameterExampleValue(CodegenParameter codegenParameter, io.swagger.v3.oas.models.parameters.RequestBody requestBody)
codegenParameter - Codegen parameterrequestBody - Request bodypublic String toExampleValue(io.swagger.v3.oas.models.media.Schema schema)
schema - Property schemapublic String toDefaultValue(io.swagger.v3.oas.models.media.Schema schema)
schema - Property schemapublic String toDefaultValueWithParam(String name, io.swagger.v3.oas.models.media.Schema schema)
name - Name of the property objectschema - Property schemapublic String getSchemaType(io.swagger.v3.oas.models.media.Schema schema)
schema - property schemapublic String toAllOfName(List<String> names, io.swagger.v3.oas.models.media.ComposedSchema composedSchema)
names - List of namescomposedSchema - composed schemapublic String toAnyOfName(List<String> names, io.swagger.v3.oas.models.media.ComposedSchema composedSchema)
names - List of namescomposedSchema - composed schemapublic String toOneOfName(List<String> names, io.swagger.v3.oas.models.media.ComposedSchema composedSchema)
names - List of namescomposedSchema - composed schemapublic String snakeCase(String name)
name - string to be snake-casedpublic String getTypeDeclaration(String name)
getTypeDeclaration in interface CodegenConfigname - namepublic String getTypeDeclaration(io.swagger.v3.oas.models.media.Schema schema)
getTypeDeclaration in interface CodegenConfigschema - property schemapublic String getAlias(String name)
name - The type name.public String toBooleanGetter(String name)
toBooleanGetter in interface CodegenConfigname - the name of the propertypublic String toGetter(String name)
toGetter in interface CodegenConfigname - the name of the propertypublic String toSetter(String name)
toSetter in interface CodegenConfigname - the name of the propertypublic String toApiName(String name)
toApiName in interface CodegenConfigname - the name of the Apipublic String toModelName(String name)
toModelName in interface CodegenConfigname - the name of the modelpublic CodegenModel fromModel(String name, io.swagger.v3.oas.models.media.Schema schema)
fromModel in interface CodegenConfigname - the name of the modelschema - OAS Model objectprotected 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)
properties - all propertiesrequired - required property onlyschema - schema in which the properties will be added to the listspublic String getterAndSetterCapitalize(String name)
name - string to be camelizedpublic CodegenProperty fromProperty(String name, io.swagger.v3.oas.models.media.Schema p)
name - name of the propertyp - OAS property 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 CodegenProperty getMostInnerItems(CodegenProperty property)
protected 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 - OAS Operation's responsesnull if not foundpublic CodegenOperation fromOperation(String path, String httpMethod, io.swagger.v3.oas.models.Operation operation, List<io.swagger.v3.oas.models.servers.Server> servers)
fromOperation in interface CodegenConfighttpMethod - HTTP methodoperation - OAS operation objectpath - the path of the operationservers - list of serverspublic boolean isParameterNameUnique(CodegenParameter p, List<CodegenParameter> parameters)
public CodegenResponse fromResponse(String responseCode, io.swagger.v3.oas.models.responses.ApiResponse response)
responseCode - HTTP response coderesponse - OAS Response objectpublic CodegenCallback fromCallback(String name, io.swagger.v3.oas.models.callbacks.Callback callback, List<io.swagger.v3.oas.models.servers.Server> servers)
name - callback namecallback - OAS Callback objectservers - list of serverspublic CodegenParameter fromParameter(io.swagger.v3.oas.models.parameters.Parameter parameter, Set<String> imports)
parameter - OAS parameter objectimports - set of imports for library/package/moduleprotected String getParameterDataType(io.swagger.v3.oas.models.parameters.Parameter parameter, io.swagger.v3.oas.models.media.Schema schema)
parameter - Parameterschema - Schemapublic 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 CodegenConfigsecuritySchemeMap - a map of OAS 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 CodegenConfigtag - name of the tagresourcePath - path of the resourceoperation - OAS Operation objectco - Codegen Operation objectoperations - map of Codegen operationsprotected 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 String apiFilename(String templateName, String tag)
apiFilename in interface CodegenConfigpublic String apiDocFilename(String templateName, String tag)
apiDocFilename in interface CodegenConfigtemplateName - template nametag - tagpublic String apiTestFilename(String templateName, String tag)
apiTestFilename in interface CodegenConfigtemplateName - template nametag - tagpublic boolean shouldOverwrite(String filename)
shouldOverwrite in interface CodegenConfigpublic boolean isSkipOverwrite()
isSkipOverwrite in interface CodegenConfigpublic void setSkipOverwrite(boolean skipOverwrite)
setSkipOverwrite in interface CodegenConfigpublic boolean isRemoveOperationIdPrefix()
isRemoveOperationIdPrefix in interface CodegenConfigpublic void setRemoveOperationIdPrefix(boolean removeOperationIdPrefix)
setRemoveOperationIdPrefix in interface CodegenConfigpublic boolean isHideGenerationTimestamp()
isHideGenerationTimestamp in interface CodegenConfigpublic void setHideGenerationTimestamp(boolean hideGenerationTimestamp)
setHideGenerationTimestamp in interface CodegenConfigpublic Map<String,String> supportedLibraries()
supportedLibraries in interface CodegenConfigpublic void setLibrary(String library)
setLibrary in interface CodegenConfiglibrary - Library templatepublic String getLibrary()
getLibrary in interface CodegenConfigpublic void setGitUserId(String gitUserId)
setGitUserId in interface CodegenConfiggitUserId - Git user IDpublic String getGitUserId()
getGitUserId in interface CodegenConfigpublic void setGitRepoId(String gitRepoId)
setGitRepoId in interface CodegenConfiggitRepoId - Git repo IDpublic String getGitRepoId()
getGitRepoId in interface CodegenConfigpublic void setReleaseNote(String releaseNote)
setReleaseNote in interface CodegenConfigreleaseNote - Release notepublic String getReleaseNote()
getReleaseNote in interface CodegenConfigpublic String getDocExtension()
getDocExtension in interface CodegenConfigpublic void setDocExtension(String userDocExtension)
setDocExtension in interface CodegenConfiguserDocExtension - documentation files extensionpublic void setHttpUserAgent(String httpUserAgent)
setHttpUserAgent in interface CodegenConfighttpUserAgent - HTTP user agentpublic String getHttpUserAgent()
getHttpUserAgent in interface CodegenConfigprotected CliOption buildLibraryCliOption(Map<String,String> supportedLibraries)
public String sanitizeName(String name)
sanitizeName in interface CodegenConfigname - string to be sanitizepublic void setTemplatingEngine(TemplatingEngineAdapter templatingEngine)
setTemplatingEngine in interface CodegenConfigpublic TemplatingEngineAdapter getTemplatingEngine()
getTemplatingEngine in interface CodegenConfigpublic String sanitizeName(String name, String removeCharRegEx)
name - string to be sanitizeremoveCharRegEx - a regex containing all char that will be removedpublic String sanitizeTag(String tag)
sanitizeTag in interface CodegenConfigtag - Tagpublic void writeOptional(String outputFolder, SupportingFile supportingFile)
outputFolder - Output foldersupportingFile - Supporting filepublic void setParameterBooleanFlagWithCodegenProperty(CodegenParameter parameter, CodegenProperty property)
parameter - Codegen Parameterproperty - Codegen propertypublic void updateCodegenPropertyEnum(CodegenProperty var)
var - list of CodegenPropertypublic String addRegularExpressionDelimiter(String pattern)
pattern - the pattern (regular expression)public boolean convertPropertyToBooleanAndWriteBack(String propertyKey)
propertyKey - property keypublic String getIgnoreFilePathOverride()
This is originally intended for the first generation only.
getIgnoreFilePathOverride in interface CodegenConfigpublic void setIgnoreFilePathOverride(String ignoreFileOverride)
setIgnoreFilePathOverride in interface CodegenConfigignoreFileOverride - 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)
public static Set<String> getConsumesInfo(io.swagger.v3.oas.models.OpenAPI openAPI, io.swagger.v3.oas.models.Operation operation)
public boolean hasFormParameter(io.swagger.v3.oas.models.OpenAPI openAPI,
io.swagger.v3.oas.models.Operation operation)
public boolean hasBodyParameter(io.swagger.v3.oas.models.OpenAPI openAPI,
io.swagger.v3.oas.models.Operation operation)
public static Set<String> getProducesInfo(io.swagger.v3.oas.models.OpenAPI openAPI, io.swagger.v3.oas.models.Operation operation)
openAPI - current specification instanceoperation - Operationprotected String getCollectionFormat(io.swagger.v3.oas.models.parameters.Parameter parameter)
public CodegenType getTag()
getTag in interface CodegenConfigpublic String getName()
getName in interface CodegenConfigpublic String getHelp()
getHelp in interface CodegenConfigpublic List<CodegenParameter> fromRequestBodyToFormParameters(io.swagger.v3.oas.models.parameters.RequestBody body, Set<String> imports)
public CodegenParameter fromFormProperty(String name, io.swagger.v3.oas.models.media.Schema propertySchema, Set<String> imports)
public CodegenParameter fromRequestBody(io.swagger.v3.oas.models.parameters.RequestBody body, Set<String> imports, String bodyParameterName)
public void generateJSONSpecFile(Map<String,Object> objs)
objs - map of objectpublic void generateYAMLSpecFile(Map<String,Object> objs)
objs - map of objectpublic boolean isDataTypeString(String dataType)
dataType - data typepublic List<CodegenServer> fromServers(List<io.swagger.v3.oas.models.servers.Server> servers)
fromServers in interface CodegenConfigpublic List<CodegenServerVariable> fromServerVariables(Map<String,io.swagger.v3.oas.models.servers.ServerVariable> variables)
fromServerVariables in interface CodegenConfigpublic void postProcessFile(File file, String fileType)
TODO: store these values in enum instead
postProcessFile in interface CodegenConfigfile - file to be processedfileType - file typepublic boolean isEnablePostProcessFile()
isEnablePostProcessFile in interface CodegenConfigpublic void setEnablePostProcessFile(boolean enablePostProcessFile)
setEnablePostProcessFile in interface CodegenConfigenablePostProcessFile - true to enable post-processing filepublic boolean isEnableMinimalUpdate()
isEnableMinimalUpdate in interface CodegenConfigpublic void setEnableMinimalUpdate(boolean enableMinimalUpdate)
setEnableMinimalUpdate in interface CodegenConfigenableMinimalUpdate - true to enable minimal updatepublic boolean isStrictSpecBehavior()
isStrictSpecBehavior in interface CodegenConfigpublic void setStrictSpecBehavior(boolean strictSpecBehavior)
setStrictSpecBehavior in interface CodegenConfigstrictSpecBehavior - true if we will behave strictly, false to allow specification documents which pass validation to be loosely interpreted against the spec.Copyright © 2019. All rights reserved.