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

public class Swift5Codegen extends DefaultCodegenConfig
  • Field Details

  • Constructor Details

    • Swift5Codegen

      public Swift5Codegen()
      Constructor for the swift5 language codegen module.
  • Method Details

    • getTag

      public io.swagger.codegen.v3.CodegenType getTag()
    • getName

      public String getName()
    • getHelp

      public String getHelp()
    • addAdditionPropertiesToCodeGenModel

      protected void addAdditionPropertiesToCodeGenModel(io.swagger.codegen.v3.CodegenModel codegenModel, io.swagger.v3.oas.models.media.Schema swaggerModel)
      Overrides:
      addAdditionPropertiesToCodeGenModel in class DefaultCodegenConfig
    • processOpts

      public void processOpts()
      Specified by:
      processOpts in interface io.swagger.codegen.v3.CodegenConfig
      Overrides:
      processOpts in class DefaultCodegenConfig
    • isReservedWord

      protected boolean isReservedWord(String word)
      Overrides:
      isReservedWord in class DefaultCodegenConfig
    • getDefaultTemplateDir

      public String getDefaultTemplateDir()
      Specified by:
      getDefaultTemplateDir in class DefaultCodegenConfig
    • escapeReservedWord

      public String escapeReservedWord(String name)
      Description copied from class: DefaultCodegenConfig
      Return the escaped name of the reserved word
      Specified by:
      escapeReservedWord in interface io.swagger.codegen.v3.CodegenConfig
      Overrides:
      escapeReservedWord in class DefaultCodegenConfig
      Parameters:
      name - the name to be escaped
      Returns:
      the escaped reserved word throws Runtime exception as reserved word is not allowed (default behavior)
    • modelFileFolder

      public String modelFileFolder()
      Specified by:
      modelFileFolder in interface io.swagger.codegen.v3.CodegenConfig
      Overrides:
      modelFileFolder in class DefaultCodegenConfig
    • apiFileFolder

      public String apiFileFolder()
      Specified by:
      apiFileFolder in interface io.swagger.codegen.v3.CodegenConfig
      Overrides:
      apiFileFolder in class DefaultCodegenConfig
    • getTypeDeclaration

      public String getTypeDeclaration(io.swagger.v3.oas.models.media.Schema prop)
      Description copied from class: DefaultCodegenConfig
      Output the type declaration of the property
      Specified by:
      getTypeDeclaration in interface io.swagger.codegen.v3.CodegenConfig
      Overrides:
      getTypeDeclaration in class DefaultCodegenConfig
      Parameters:
      prop - Schema Property object
      Returns:
      a string presentation of the property type
    • getSchemaType

      public String getSchemaType(io.swagger.v3.oas.models.media.Schema prop)
      Description copied from class: DefaultCodegenConfig
      returns the swagger type for the property
      Overrides:
      getSchemaType in class DefaultCodegenConfig
      Parameters:
      prop - Schema property object
      Returns:
      string presentation of the type
    • isDataTypeFile

      public boolean isDataTypeFile(String dataType)
      Overrides:
      isDataTypeFile in class DefaultCodegenConfig
    • isDataTypeBinary

      public boolean isDataTypeBinary(String dataType)
      Overrides:
      isDataTypeBinary in class DefaultCodegenConfig
    • toModelName

      public String toModelName(String name)
      Output the proper model name (capitalized).
      Specified by:
      toModelName in interface io.swagger.codegen.v3.CodegenConfig
      Overrides:
      toModelName in class DefaultCodegenConfig
      Parameters:
      name - the name of the model
      Returns:
      capitalized model name
    • toModelFilename

      public String toModelFilename(String name)
      Return the capitalized file name of the model.
      Specified by:
      toModelFilename in interface io.swagger.codegen.v3.CodegenConfig
      Overrides:
      toModelFilename in class DefaultCodegenConfig
      Parameters:
      name - the model name
      Returns:
      the file name of the model
    • toDefaultValue

      public String toDefaultValue(io.swagger.v3.oas.models.media.Schema prop)
      Description copied from class: DefaultCodegenConfig
      Return the default value of the property
      Overrides:
      toDefaultValue in class DefaultCodegenConfig
      Parameters:
      prop - Schema property object
      Returns:
      string presentation of the default value of the property
    • toInstantiationType

      public String toInstantiationType(io.swagger.v3.oas.models.media.Schema prop)
      Description copied from class: DefaultCodegenConfig
      Return the instantiation type of the property, especially for map and array
      Overrides:
      toInstantiationType in class DefaultCodegenConfig
      Parameters:
      prop - Swagger property object
      Returns:
      string presentation of the instantiation type of the property
    • toApiName

      public String toApiName(String name)
      Description copied from class: DefaultCodegenConfig
      Output the API (class) name (capitalized) ending with "Api" Return DefaultApi if name is empty
      Specified by:
      toApiName in interface io.swagger.codegen.v3.CodegenConfig
      Overrides:
      toApiName in class DefaultCodegenConfig
      Parameters:
      name - the name of the Api
      Returns:
      capitalized Api name ending with "Api"
    • toOperationId

      public String toOperationId(String operationId)
      Description copied from class: DefaultCodegenConfig
      Return the operation ID (method name)
      Overrides:
      toOperationId in class DefaultCodegenConfig
      Parameters:
      operationId - operation ID
      Returns:
      the sanitized method name
    • toVarName

      public String toVarName(String name)
      Description copied from class: DefaultCodegenConfig
      Return the variable name by removing invalid characters and proper escaping if it's a reserved word.
      Overrides:
      toVarName in class DefaultCodegenConfig
      Parameters:
      name - the variable name
      Returns:
      the sanitized variable name
    • toParamName

      public String toParamName(String name)
      Description copied from class: DefaultCodegenConfig
      Return the parameter name by removing invalid characters and proper escaping if it's a reserved word.
      Specified by:
      toParamName in interface io.swagger.codegen.v3.CodegenConfig
      Overrides:
      toParamName in class DefaultCodegenConfig
      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: DefaultCodegenConfig
      Convert Swagger Model object to Codegen Model object
      Specified by:
      fromModel in interface io.swagger.codegen.v3.CodegenConfig
      Overrides:
      fromModel in class DefaultCodegenConfig
      Parameters:
      name - the name of the model
      model - Swagger Model object
      allDefinitions - 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: DefaultCodegenConfig
      update codegen property enum with proper naming convention and handling of numbers, special characters
      Overrides:
      updateCodegenModelEnumVars in class DefaultCodegenConfig
    • 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: DefaultCodegenConfig
      Convert Swagger Operation object to Codegen Operation object
      Specified by:
      fromOperation in interface io.swagger.codegen.v3.CodegenConfig
      Overrides:
      fromOperation in class DefaultCodegenConfig
      Parameters:
      path - the path of the operation
      httpMethod - HTTP method
      operation - Swagger operation object
      definitions - a map of schemas
      openAPI - a OpenAPI object representing the spec
      Returns:
      Codegen Operation object
    • setProjectName

      public void setProjectName(String projectName)
    • setUnwrapRequired

      public void setUnwrapRequired(boolean unwrapRequired)
    • setObjcCompatible

      public void setObjcCompatible(boolean objcCompatible)
    • setLenientTypeCast

      public void setLenientTypeCast(boolean lenientTypeCast)
    • setResponseAs

      public void setResponseAs(String[] responseAs)
    • setSwiftUseApiNamespace

      public void setSwiftUseApiNamespace(boolean swiftUseApiNamespace)
    • toEnumValue

      public String toEnumValue(String value, String datatype)
      Description copied from class: DefaultCodegenConfig
      Return the enum value in the language specified format e.g. status becomes "status"
      Overrides:
      toEnumValue in class DefaultCodegenConfig
      Parameters:
      value - enum variable name
      datatype - data type
      Returns:
      the sanitized value for enum
    • toEnumDefaultValue

      public String toEnumDefaultValue(String value, String datatype)
      Description copied from class: DefaultCodegenConfig
      Return the enum default value in the language specified format
      Overrides:
      toEnumDefaultValue in class DefaultCodegenConfig
      Parameters:
      value - enum variable name
      datatype - data type
      Returns:
      the default value for the enum
    • toEnumVarName

      public String toEnumVarName(String name, String datatype)
      Description copied from class: DefaultCodegenConfig
      Return the sanitized variable name for enum
      Overrides:
      toEnumVarName in class DefaultCodegenConfig
      Parameters:
      name - enum variable name
      datatype - data type
      Returns:
      the sanitized variable name for enum
    • toEnumName

      public String toEnumName(io.swagger.codegen.v3.CodegenProperty property)
      Description copied from class: DefaultCodegenConfig
      Return the Enum name (e.g. StatusEnum given 'status')
      Overrides:
      toEnumName in class DefaultCodegenConfig
      Parameters:
      property - Codegen property
      Returns:
      the Enum name
    • postProcessModels

      public Map<String,Object> postProcessModels(Map<String,Object> objs)
      Specified by:
      postProcessModels in interface io.swagger.codegen.v3.CodegenConfig
      Overrides:
      postProcessModels in class DefaultCodegenConfig
    • postProcessModelProperty

      public void postProcessModelProperty(io.swagger.codegen.v3.CodegenModel model, io.swagger.codegen.v3.CodegenProperty property)
      Specified by:
      postProcessModelProperty in interface io.swagger.codegen.v3.CodegenConfig
      Overrides:
      postProcessModelProperty in class DefaultCodegenConfig
    • escapeQuotationMark

      public String escapeQuotationMark(String input)
      Description copied from class: DefaultCodegenConfig
      Escape single and/or double quote to avoid code injection
      Specified by:
      escapeQuotationMark in interface io.swagger.codegen.v3.CodegenConfig
      Overrides:
      escapeQuotationMark in class DefaultCodegenConfig
      Parameters:
      input - String to be cleaned up
      Returns:
      string with quotation mark removed or escaped
    • escapeUnsafeCharacters

      public String escapeUnsafeCharacters(String input)
      Description copied from class: DefaultCodegenConfig
      override with any special text escaping logic to handle unsafe characters so as to avoid code injection
      Specified by:
      escapeUnsafeCharacters in interface io.swagger.codegen.v3.CodegenConfig
      Overrides:
      escapeUnsafeCharacters in class DefaultCodegenConfig
      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:
      copyFirstAllOfProperties in class DefaultCodegenConfig