Class Swift5Codegen
java.lang.Object
io.swagger.codegen.v3.generators.DefaultCodegenConfig
io.swagger.codegen.v3.generators.swift.Swift5Codegen
- All Implemented Interfaces:
io.swagger.codegen.v3.CodegenConfig
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringstatic final Stringprotected static final org.slf4j.Loggerstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringprotected Stringstatic final Stringprotected Stringstatic final Stringprotected booleanstatic final 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 TypeMethodDescriptionprotected voidaddAdditionPropertiesToCodeGenModel(io.swagger.codegen.v3.CodegenModel codegenModel, io.swagger.v3.oas.models.media.Schema swaggerModel) protected booleancopyFirstAllOfProperties(io.swagger.v3.oas.models.media.Schema allOfSchema) escapeQuotationMark(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 injectionio.swagger.codegen.v3.CodegenModelfromModel(String name, io.swagger.v3.oas.models.media.Schema model, Map<String, io.swagger.v3.oas.models.media.Schema> allDefinitions) Convert Swagger Model object to Codegen Model objectio.swagger.codegen.v3.CodegenOperationfromOperation(String path, String httpMethod, io.swagger.v3.oas.models.Operation operation, Map<String, io.swagger.v3.oas.models.media.Schema> definitions, io.swagger.v3.oas.models.OpenAPI openAPI) Convert Swagger Operation object to Codegen Operation objectgetHelp()getName()getSchemaType(io.swagger.v3.oas.models.media.Schema prop) returns the swagger type for the propertyio.swagger.codegen.v3.CodegenTypegetTag()getTypeDeclaration(io.swagger.v3.oas.models.media.Schema prop) Output the type declaration of the propertybooleanisDataTypeBinary(String dataType) booleanisDataTypeFile(String dataType) protected booleanisReservedWord(String word) voidpostProcessModelProperty(io.swagger.codegen.v3.CodegenModel model, io.swagger.codegen.v3.CodegenProperty property) postProcessModels(Map<String, Object> objs) voidvoidsetLenientTypeCast(boolean lenientTypeCast) voidsetObjcCompatible(boolean objcCompatible) voidsetProjectName(String projectName) voidsetResponseAs(String[] responseAs) voidsetSwiftUseApiNamespace(boolean swiftUseApiNamespace) voidsetUnwrapRequired(boolean unwrapRequired) Output the API (class) name (capitalized) ending with "Api" Return DefaultApi if name is emptytoDefaultValue(io.swagger.v3.oas.models.media.Schema prop) Return the default value of the propertytoEnumDefaultValue(String value, String datatype) Return the enum default value in the language specified formattoEnumName(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 name, String datatype) Return the sanitized variable name for enumtoInstantiationType(io.swagger.v3.oas.models.media.Schema prop) Return the instantiation type of the property, especially for map and arraytoModelFilename(String name) Return the capitalized file name of the model.toModelName(String name) Output the proper model name (capitalized).toOperationId(String operationId) Return the operation ID (method name)toParamName(String name) Return the parameter name by removing invalid characters and proper escaping if it's a reserved word.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
addCodegenContentParameters, addConsumesInfo, addHandlebarHelpers, addImport, additionalProperties, addOperationImports, addOperationToGroup, addOption, addOption, addParameters, addParentContainer, addProducesInfo, addProperties, addRegularExpressionDelimiter, addSwitch, addVars, apiDocFileFolder, apiDocFilename, apiDocTemplateFiles, apiFilename, apiPackage, apiTemplateFiles, apiTestFileFolder, apiTestFilename, apiTestTemplateFiles, buildLibraryCliOption, camelize, camelize, cliOptions, configFiles, configureDataForTestTemplate, configuresParameterForMediaType, convertPropertyToBoolean, convertPropertyToBooleanAndWriteBack, customTemplateDir, dashize, defaultIgnoreImportMappingOption, defaultIncludes, detectParent, embeddedTemplateDir, ensureUniqueParameters, escapeText, fileSuffix, findCommonPrefixOfVars, findMethodResponse, fixUpParentAndInterfaces, fromModel, fromOperation, fromParameter, fromProperty, fromRequestBody, fromResponse, fromSecurity, generateExamplePath, getAlias, getArgumentsLocation, getCollectionFormat, getCommonTemplateDir, getConsumesInfo, getContentType, 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, isFileTypeSchema, isObjectSchema, isPrimivite, isPropertyInnerMostEnum, isRemoveOperationIdPrefix, isSkipOverwrite, languageSpecificPrimitives, modelDocFileFolder, modelDocTemplateFiles, modelPackage, modelTemplateFiles, modelTestFileFolder, modelTestTemplateFiles, needsUnflattenedSpec, needToImport, outputFolder, postProcessAllCodegenModels, postProcessAllModels, 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, toApiTestFilename, toApiVarName, toBooleanGetter, toDefaultValueWithParam, toExamples, toExampleValue, toGetter, toModelDocFilename, toModelImport, toModelTestFilename, 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, getPriority, isPrivileged
-
Field Details
-
LOGGER
protected static final org.slf4j.Logger LOGGER -
PROJECT_NAME
- See Also:
-
RESPONSE_AS
- See Also:
-
UNWRAP_REQUIRED
- See Also:
-
OBJC_COMPATIBLE
- See Also:
-
POD_SOURCE
- See Also:
-
POD_AUTHORS
- See Also:
-
POD_SOCIAL_MEDIA_URL
- See Also:
-
POD_DOCSET_URL
- See Also:
-
POD_LICENSE
- See Also:
-
POD_HOMEPAGE
- See Also:
-
POD_SUMMARY
- See Also:
-
POD_DESCRIPTION
- See Also:
-
POD_SCREENSHOTS
- See Also:
-
POD_DOCUMENTATION_URL
- See Also:
-
SWIFT_USE_API_NAMESPACE
- See Also:
-
DEFAULT_POD_AUTHORS
- See Also:
-
LENIENT_TYPE_CAST
- See Also:
-
projectName
-
swiftUseApiNamespace
protected boolean swiftUseApiNamespace -
sourceFolder
-
-
Constructor Details
-
Swift5Codegen
public Swift5Codegen()Constructor for the swift5 language codegen module.
-
-
Method Details
-
getTag
public io.swagger.codegen.v3.CodegenType getTag() -
getName
-
getHelp
-
addAdditionPropertiesToCodeGenModel
protected void addAdditionPropertiesToCodeGenModel(io.swagger.codegen.v3.CodegenModel codegenModel, io.swagger.v3.oas.models.media.Schema swaggerModel) - Overrides:
addAdditionPropertiesToCodeGenModelin classDefaultCodegenConfig
-
processOpts
public void processOpts()- Specified by:
processOptsin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
processOptsin classDefaultCodegenConfig
-
isReservedWord
- Overrides:
isReservedWordin classDefaultCodegenConfig
-
getDefaultTemplateDir
- Specified by:
getDefaultTemplateDirin classDefaultCodegenConfig
-
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)
-
modelFileFolder
- Specified by:
modelFileFolderin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
modelFileFolderin classDefaultCodegenConfig
-
apiFileFolder
- Specified by:
apiFileFolderin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
apiFileFolderin classDefaultCodegenConfig
-
getTypeDeclaration
Description copied from class:DefaultCodegenConfigOutput the type declaration of the property- Specified by:
getTypeDeclarationin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
getTypeDeclarationin classDefaultCodegenConfig- Parameters:
prop- Schema Property object- Returns:
- a string presentation of the property type
-
getSchemaType
Description copied from class:DefaultCodegenConfigreturns the swagger type for the property- Overrides:
getSchemaTypein classDefaultCodegenConfig- Parameters:
prop- Schema property object- Returns:
- string presentation of the type
-
isDataTypeFile
- Overrides:
isDataTypeFilein classDefaultCodegenConfig
-
isDataTypeBinary
- Overrides:
isDataTypeBinaryin classDefaultCodegenConfig
-
toModelName
Output the proper model name (capitalized).- Specified by:
toModelNamein interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
toModelNamein classDefaultCodegenConfig- Parameters:
name- the name of the model- Returns:
- capitalized model name
-
toModelFilename
Return the capitalized file name of the model.- Specified by:
toModelFilenamein interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
toModelFilenamein classDefaultCodegenConfig- Parameters:
name- the model name- Returns:
- the file name of the model
-
toDefaultValue
Description copied from class:DefaultCodegenConfigReturn the default value of the property- Overrides:
toDefaultValuein classDefaultCodegenConfig- Parameters:
prop- Schema property object- Returns:
- string presentation of the default value of the property
-
toInstantiationType
Description copied from class:DefaultCodegenConfigReturn the instantiation type of the property, especially for map and array- Overrides:
toInstantiationTypein classDefaultCodegenConfig- Parameters:
prop- Swagger property object- Returns:
- string presentation of the instantiation type of the property
-
toApiName
Description copied from class:DefaultCodegenConfigOutput the API (class) name (capitalized) ending with "Api" Return DefaultApi if name is empty- Specified by:
toApiNamein interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
toApiNamein classDefaultCodegenConfig- Parameters:
name- the name of the Api- Returns:
- capitalized Api name ending with "Api"
-
toOperationId
Description copied from class:DefaultCodegenConfigReturn the operation ID (method name)- Overrides:
toOperationIdin classDefaultCodegenConfig- Parameters:
operationId- operation ID- Returns:
- the sanitized method 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
-
toParamName
Description copied from class:DefaultCodegenConfigReturn the parameter name by removing invalid characters and proper escaping if it's a reserved word.- Specified by:
toParamNamein interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
toParamNamein classDefaultCodegenConfig- Parameters:
name- Codegen property object- Returns:
- the sanitized parameter name
-
fromModel
public io.swagger.codegen.v3.CodegenModel fromModel(String name, io.swagger.v3.oas.models.media.Schema model, Map<String, io.swagger.v3.oas.models.media.Schema> allDefinitions) Description copied from class:DefaultCodegenConfigConvert Swagger Model object to Codegen Model object- Specified by:
fromModelin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
fromModelin classDefaultCodegenConfig- Parameters:
name- the name of the modelmodel- Swagger Model objectallDefinitions- a map of all Swagger models from the spec- Returns:
- Codegen Model object
-
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
-
fromOperation
public io.swagger.codegen.v3.CodegenOperation fromOperation(String path, String httpMethod, io.swagger.v3.oas.models.Operation operation, Map<String, io.swagger.v3.oas.models.media.Schema> definitions, io.swagger.v3.oas.models.OpenAPI openAPI) Description copied from class:DefaultCodegenConfigConvert Swagger Operation object to Codegen Operation object- Specified by:
fromOperationin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
fromOperationin classDefaultCodegenConfig- Parameters:
path- the path of the operationhttpMethod- HTTP methodoperation- Swagger operation objectdefinitions- a map of schemasopenAPI- a OpenAPI object representing the spec- Returns:
- Codegen Operation object
-
setProjectName
-
setUnwrapRequired
public void setUnwrapRequired(boolean unwrapRequired) -
setObjcCompatible
public void setObjcCompatible(boolean objcCompatible) -
setLenientTypeCast
public void setLenientTypeCast(boolean lenientTypeCast) -
setResponseAs
-
setSwiftUseApiNamespace
public void setSwiftUseApiNamespace(boolean swiftUseApiNamespace) -
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
-
toEnumDefaultValue
Description copied from class:DefaultCodegenConfigReturn the enum default value in the language specified format- Overrides:
toEnumDefaultValuein classDefaultCodegenConfig- Parameters:
value- enum variable namedatatype- data type- Returns:
- the default value for the enum
-
toEnumVarName
Description copied from class:DefaultCodegenConfigReturn the sanitized variable name for enum- Overrides:
toEnumVarNamein classDefaultCodegenConfig- Parameters:
name- enum variable namedatatype- data type- Returns:
- the sanitized variable name for enum
-
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
-
postProcessModels
- Specified by:
postProcessModelsin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
postProcessModelsin classDefaultCodegenConfig
-
postProcessModelProperty
public void postProcessModelProperty(io.swagger.codegen.v3.CodegenModel model, io.swagger.codegen.v3.CodegenProperty property) - Specified by:
postProcessModelPropertyin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
postProcessModelPropertyin 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
-
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
-
copyFirstAllOfProperties
protected boolean copyFirstAllOfProperties(io.swagger.v3.oas.models.media.Schema allOfSchema) - Overrides:
copyFirstAllOfPropertiesin classDefaultCodegenConfig
-