Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • O openapi-generator
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 3,476
    • Issues 3,476
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 402
    • Merge requests 402
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • OpenAPI Tools
  • openapi-generator
  • Issues
  • #982
Closed
Open
Issue created Sep 06, 2018 by Administrator@rootContributor

[SWIFT4] CodableHelper's encode() does not use dateFormatter property

Created by: manhhavu

Description

The current Swift4's CodeableHelper's encode() method does not into account the class' property dateFormatter. The consequence is that we are unable to customize the encoding format for date.

openapi-generator version

3.2.3

Suggest a fix/enhancement

Take into account the property dateFormatter, which is already the case for decode() method. For example:

if let df = self.dateformatter {
    encoder.dateEncodingStrategy = .formatted(df)
} else {
    encoder.dataEncodingStrategy = .base64
    let formatter = DateFormatter()
    formatter.calendar = Calendar(identifier: .iso8601)
    formatter.locale = Locale(identifier: "en_US_POSIX")
    formatter.timeZone = TimeZone(secondsFromGMT: 0)
    formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSXXXXX"
    encoder.dateEncodingStrategy = .formatted(formatter)
}

I'm happy to create a PR if you'd like 😁

Assignee
Assign to
Time tracking