Class AbstractKotlinCodegen
java.lang.Object
io.swagger.codegen.v3.generators.DefaultCodegenConfig
io.swagger.codegen.v3.generators.kotlin.AbstractKotlinCodegen
- All Implemented Interfaces:
io.swagger.codegen.v3.CodegenConfig
- Direct Known Subclasses:
KotlinClientCodegen,KotlinServerCodegen
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Stringprotected Stringprotected Stringprotected Stringprotected Stringprotected Stringprotected StringFields inherited from class io.swagger.codegen.v3.generators.DefaultCodegenConfig
additionalProperties, allowUnicodeIdentifiers, apiDocTemplateFiles, apiPackage, apiTemplateFiles, apiTestTemplateFiles, cliOptions, commonTemplateDir, configFiles, customTemplateDir, DEFAULT_CONTENT_TYPE, DEFAULT_TEMPLATE_DIR, defaultIncludes, embeddedTemplateDir, ensureUniqueParams, fileSuffix, gitRepoBaseURL, gitRepoId, gitUserId, hideGenerationTimestamp, httpUserAgent, ignoreFilePathOverride, ignoreImportMapping, importMapping, inputSpec, inputURL, instantiationTypes, IS_NULLABLE_FALSE, IS_NULLABLE_TRUE, languageArguments, languageSpecificPrimitives, library, modelDocTemplateFiles, modelNamePrefix, modelNameSuffix, modelPackage, modelTemplateFiles, modelTestTemplateFiles, openAPI, outputFolder, releaseNote, removeOperationIdPrefix, REQUEST_BODY_NAME, reservedWords, reservedWordsMappings, skipOverwrite, sortParamsByRequiredFlag, specialCharReplacements, supportedLibraries, supportingFiles, supportsInheritance, supportsMixins, templateDir, templateEngine, templateVersion, testPackage, typeAliases, typeMapping, unflattenedOpenAPI, useOas2, vendorExtensions -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddHandlebarHelpers(com.github.jknack.handlebars.Handlebars handlebars) protected voidprotected voidprotected voidescapeQuotationMark(String input) Escape single and/or double quote to avoid code injectionescapeReservedWord(String name) Return the escaped name of the reserved wordescapeUnsafeCharacters(String input) override with any special text escaping logic to handle unsafe characters so as to avoid code injectionDetermine the type alias for the given type if it exists.getSchemaType(io.swagger.v3.oas.models.media.Schema schema) returns the swagger type for the propertygetTypeDeclaration(io.swagger.v3.oas.models.media.Schema propertySchema) Output the type declaration of the propertybooleanisPrimivite(String datatype) protected booleanisReservedWord(String word) protected booleanneedToImport(String type) Check the type to see if it needs import the library/module/packagepostProcessModels(Map<String, Object> objs) voidvoidsetArtifactId(String artifactId) voidsetArtifactVersion(String artifactVersion) voidsetGroupId(String groupId) voidsetPackageName(String packageName) voidsetSourceFolder(String sourceFolder) toEnumName(io.swagger.codegen.v3.CodegenProperty property) Return the Enum name (e.g.toEnumValue(String value, String datatype) Return the enum value in the language specified format e.g.toEnumVarName(String value, String datatype) Return the sanitized variable name for enumtoInstantiationType(io.swagger.v3.oas.models.media.Schema p) Return the instantiation type of the property, especially for map and arraytoModelImport(String name) Return the fully-qualified "Model" name for importtoModelName(String name) Output the proper model name (capitalized).Return the variable name by removing invalid characters and proper escaping if it's a reserved word.protected voidupdateCodegenModelEnumVars(io.swagger.codegen.v3.CodegenModel codegenModel) update codegen property enum with proper naming convention and handling of numbers, special charactersMethods inherited from class io.swagger.codegen.v3.generators.DefaultCodegenConfig
addAdditionPropertiesToCodeGenModel, addCodegenContentParameters, addConsumesInfo, addImport, additionalProperties, addOperationImports, addOperationToGroup, addParameters, addParentContainer, addProducesInfo, addProperties, addRegularExpressionDelimiter, addVars, apiDocFilename, apiDocTemplateFiles, apiFilename, apiPackage, apiTemplateFiles, apiTestFileFolder, apiTestFilename, apiTestTemplateFiles, buildLibraryCliOption, camelize, camelize, cliOptions, configFiles, configureDataForTestTemplate, configuresParameterForMediaType, convertPropertyToBoolean, convertPropertyToBooleanAndWriteBack, copyFirstAllOfProperties, customTemplateDir, dashize, defaultIgnoreImportMappingOption, defaultIncludes, detectParent, embeddedTemplateDir, ensureUniqueParameters, escapeText, fileSuffix, findCommonPrefixOfVars, findMethodResponse, fixUpParentAndInterfaces, fromModel, fromModel, fromOperation, fromOperation, fromParameter, fromProperty, fromRequestBody, fromResponse, fromSecurity, generateExamplePath, getCollectionFormat, getCommonTemplateDir, getConsumesInfo, getContentType, getDefaultTemplateDir, getGitRepoBaseURL, getGitRepoId, getGitUserId, getHideGenerationTimestamp, getHttpUserAgent, getIgnoreFilePathOverride, getIgnoreImportMapping, getInnerEnumAllowableValues, getInputSpec, getInputURL, getLanguageArguments, getLibrary, getOpenAPI, getOptionValue, getOrGenerateOperationId, getOutputDir, getParameterFromRef, getParentName, getProducesInfo, getReleaseNote, getSchemaFromBody, getSchemaFromParameter, getSchemaFromResponse, getSchemaHandler, getSortParamsByRequiredFlag, getSymbolName, getTemplateDir, getTemplateEngine, getTemplateVersion, getterAndSetterCapitalize, getTypeDeclaration, hasSchemaProperties, hasTrueAdditionalProperties, importMapping, initialCaps, instantiationTypes, isDataTypeBinary, isDataTypeFile, isFileTypeSchema, isObjectSchema, isPropertyInnerMostEnum, isRemoveOperationIdPrefix, isSkipOverwrite, languageSpecificPrimitives, modelDocTemplateFiles, modelPackage, modelTemplateFiles, modelTestFileFolder, modelTestTemplateFiles, needsUnflattenedSpec, outputFolder, postProcessAllCodegenModels, postProcessAllModels, postProcessModelProperty, postProcessModelsEnum, postProcessOperations, postProcessOperationsWithModels, postProcessParameter, postProcessSupportingFileData, preprocessOpenAPI, processCompiler, processMapSchema, processModelEnums, processOpenAPI, processPropertySchemaContainerTypes, processPropertySchemaTypes, readLanguageArguments, removeNonNameElementToCamelCase, removeNonNameElementToCamelCase, reservedWords, reservedWordsMappings, sanitizeName, sanitizeTag, setAllowUnicodeIdentifiers, setApiPackage, setCommonTemplateDir, setEnsureUniqueParams, setGitRepoBaseURL, setGitRepoId, setGitUserId, setHideGenerationTimestamp, setHttpUserAgent, setIgnoreFilePathOverride, setIgnoreImportMapping, setInputSpec, setInputURL, setLanguageArguments, setLibrary, setModelNamePrefix, setModelNameSuffix, setModelPackage, setNonArrayMapProperty, setOutputDir, setParameterBooleanFlagWithCodegenProperty, setParameterExampleValue, setParameterJson, setParameterNullable, setReleaseNote, setRemoveOperationIdPrefix, setReservedWords, setReservedWordsLowerCase, setSchemaProperties, setSkipOverwrite, setSortParamsByRequiredFlag, setTemplateDir, setTemplateEngine, setTemplateVersion, setUnflattenedOpenAPI, setUseOas2, shouldOverwrite, snakeCase, supportedLibraries, supportingFiles, templateDir, testPackage, toApiDocFilename, toApiFilename, toApiImport, toApiName, toApiTestFilename, toApiVarName, toBooleanGetter, toDefaultValue, toDefaultValueWithParam, toEnumDefaultValue, toExamples, toExampleValue, toGetter, toModelDocFilename, toModelFilename, toModelTestFilename, toOperationId, toParamName, toRegularExpression, toSetter, typeMapping, underscore, updateCodegenPropertyEnum, updateDataTypeWithEnumForArray, updateDataTypeWithEnumForMap, updatePropertyForArray, updatePropertyForMap, vendorExtensions, writeOptional, writeOptional, writePropertyBackMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.swagger.codegen.v3.CodegenConfig
checkAliasModel, getCodeName, getHelp, getName, getPriority, getTag, isPrivileged
-
Field Details
-
artifactId
-
artifactVersion
-
groupId
-
packageName
-
sourceFolder
-
apiDocPath
-
modelDocPath
-
-
Constructor Details
-
AbstractKotlinCodegen
public AbstractKotlinCodegen()
-
-
Method Details
-
addOption
- Overrides:
addOptionin classDefaultCodegenConfig
-
addOption
- Overrides:
addOptionin classDefaultCodegenConfig
-
addSwitch
- Overrides:
addSwitchin classDefaultCodegenConfig
-
getArgumentsLocation
- Overrides:
getArgumentsLocationin classDefaultCodegenConfig
-
apiDocFileFolder
- Specified by:
apiDocFileFolderin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
apiDocFileFolderin classDefaultCodegenConfig
-
apiFileFolder
- Specified by:
apiFileFolderin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
apiFileFolderin classDefaultCodegenConfig
-
escapeQuotationMark
Description copied from class:DefaultCodegenConfigEscape single and/or double quote to avoid code injection- Specified by:
escapeQuotationMarkin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
escapeQuotationMarkin classDefaultCodegenConfig- Parameters:
input- String to be cleaned up- Returns:
- string with quotation mark removed or escaped
-
escapeReservedWord
Description copied from class:DefaultCodegenConfigReturn the escaped name of the reserved word- Specified by:
escapeReservedWordin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
escapeReservedWordin classDefaultCodegenConfig- Parameters:
name- the name to be escaped- Returns:
- the escaped reserved word throws Runtime exception as reserved word is not allowed (default behavior)
-
escapeUnsafeCharacters
Description copied from class:DefaultCodegenConfigoverride with any special text escaping logic to handle unsafe characters so as to avoid code injection- Specified by:
escapeUnsafeCharactersin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
escapeUnsafeCharactersin classDefaultCodegenConfig- Parameters:
input- String to be cleaned up- Returns:
- string with unsafe characters removed or escaped
-
updateCodegenModelEnumVars
protected void updateCodegenModelEnumVars(io.swagger.codegen.v3.CodegenModel codegenModel) Description copied from class:DefaultCodegenConfigupdate codegen property enum with proper naming convention and handling of numbers, special characters- Overrides:
updateCodegenModelEnumVarsin classDefaultCodegenConfig
-
getTypeDeclaration
Output the type declaration of the property- Specified by:
getTypeDeclarationin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
getTypeDeclarationin classDefaultCodegenConfig- Parameters:
propertySchema- Swagger Property object- Returns:
- a string presentation of the property type
-
getAlias
Description copied from class:DefaultCodegenConfigDetermine the type alias for the given type if it exists. This feature is only used for Java, because the language does not have a aliasing mechanism of its own.- Overrides:
getAliasin classDefaultCodegenConfig- Parameters:
name- The type name.- Returns:
- The alias of the given type, if it exists. If there is no alias for this type, then returns the input type name.
-
getSchemaType
Description copied from class:DefaultCodegenConfigreturns the swagger type for the property- Overrides:
getSchemaTypein classDefaultCodegenConfig- Parameters:
schema- Schema property object- Returns:
- string presentation of the type
-
modelDocFileFolder
- Specified by:
modelDocFileFolderin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
modelDocFileFolderin classDefaultCodegenConfig
-
modelFileFolder
- Specified by:
modelFileFolderin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
modelFileFolderin classDefaultCodegenConfig
-
postProcessModels
- Specified by:
postProcessModelsin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
postProcessModelsin classDefaultCodegenConfig
-
processOpts
public void processOpts()- Specified by:
processOptsin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
processOptsin classDefaultCodegenConfig
-
setArtifactId
-
setArtifactVersion
-
setGroupId
-
setPackageName
-
setSourceFolder
-
toEnumVarName
Return the sanitized variable name for enum- Overrides:
toEnumVarNamein classDefaultCodegenConfig- Parameters:
value- enum variable namedatatype- data type- Returns:
- the sanitized variable name for enum
-
toEnumValue
Description copied from class:DefaultCodegenConfigReturn the enum value in the language specified format e.g. status becomes "status"- Overrides:
toEnumValuein classDefaultCodegenConfig- Parameters:
value- enum variable namedatatype- data type- Returns:
- the sanitized value for enum
-
isPrimivite
- Overrides:
isPrimivitein classDefaultCodegenConfig
-
toInstantiationType
Description copied from class:DefaultCodegenConfigReturn the instantiation type of the property, especially for map and array- Overrides:
toInstantiationTypein classDefaultCodegenConfig- Parameters:
p- Swagger property object- Returns:
- string presentation of the instantiation type of the property
-
toModelImport
Return the fully-qualified "Model" name for import- Specified by:
toModelImportin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
toModelImportin classDefaultCodegenConfig- Parameters:
name- the name of the "Model"- Returns:
- the fully-qualified "Model" name for import
-
toModelName
Output the proper model name (capitalized). In case the name belongs to the TypeSystem it won't be renamed.- Specified by:
toModelNamein interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
toModelNamein classDefaultCodegenConfig- Parameters:
name- the name of the model- Returns:
- capitalized model name
-
toVarName
Description copied from class:DefaultCodegenConfigReturn the variable name by removing invalid characters and proper escaping if it's a reserved word.- Overrides:
toVarNamein classDefaultCodegenConfig- Parameters:
name- the variable name- Returns:
- the sanitized variable name
-
toEnumName
Description copied from class:DefaultCodegenConfigReturn the Enum name (e.g. StatusEnum given 'status')- Overrides:
toEnumNamein classDefaultCodegenConfig- Parameters:
property- Codegen property- Returns:
- the Enum name
-
addHandlebarHelpers
public void addHandlebarHelpers(com.github.jknack.handlebars.Handlebars handlebars) - Specified by:
addHandlebarHelpersin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
addHandlebarHelpersin classDefaultCodegenConfig
-
isReservedWord
- Overrides:
isReservedWordin classDefaultCodegenConfig
-
needToImport
Check the type to see if it needs import the library/module/package- Overrides:
needToImportin classDefaultCodegenConfig- Parameters:
type- name of the type- Returns:
- true if the library/module/package of the corresponding type needs to be imported
-