diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/RubyClientCodegen.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/RubyClientCodegen.java index 0ea0be21a787..5aa30a1c9fd3 100644 --- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/RubyClientCodegen.java +++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/RubyClientCodegen.java @@ -55,7 +55,7 @@ public class RubyClientCodegen extends DefaultCodegen implements CodegenConfig { typeMapping.put("float", "Float"); typeMapping.put("double", "Float"); typeMapping.put("number", "Float"); - typeMapping.put("date", "DateTime"); + typeMapping.put("date", "Date"); typeMapping.put("DateTime", "DateTime"); typeMapping.put("boolean", "BOOLEAN"); typeMapping.put("array", "Array"); diff --git a/modules/swagger-codegen/src/main/resources/ruby/base_object.mustache b/modules/swagger-codegen/src/main/resources/ruby/base_object.mustache index eda92028f789..77b320d07f43 100644 --- a/modules/swagger-codegen/src/main/resources/ruby/base_object.mustache +++ b/modules/swagger-codegen/src/main/resources/ruby/base_object.mustache @@ -1,3 +1,5 @@ +require 'date' + module {{moduleName}} # base class containing fundamental method such as to_hash, build_from_hash and more class BaseObject @@ -26,6 +28,8 @@ module {{moduleName}} case type.to_sym when :DateTime DateTime.parse(value) + when :Date + Date.parse(value) when :String value.to_s when :Integer diff --git a/modules/swagger-codegen/src/main/resources/ruby/swagger/response.mustache b/modules/swagger-codegen/src/main/resources/ruby/swagger/response.mustache index 575bc5d0ae02..8e5b654011f0 100644 --- a/modules/swagger-codegen/src/main/resources/ruby/swagger/response.mustache +++ b/modules/swagger-codegen/src/main/resources/ruby/swagger/response.mustache @@ -62,6 +62,9 @@ module {{moduleName}} when 'DateTime' # parse date time (expecting ISO 8601 format) DateTime.parse data + when 'Date' + # parse date time (expecting ISO 8601 format) + Date.parse data when 'Object' # generic object, return directly data diff --git a/samples/client/petstore/ruby/lib/petstore/models/base_object.rb b/samples/client/petstore/ruby/lib/petstore/models/base_object.rb index 8223b2e844d8..f17eef349e2c 100644 --- a/samples/client/petstore/ruby/lib/petstore/models/base_object.rb +++ b/samples/client/petstore/ruby/lib/petstore/models/base_object.rb @@ -1,3 +1,5 @@ +require 'date' + module Petstore # base class containing fundamental method such as to_hash, build_from_hash and more class BaseObject @@ -26,6 +28,8 @@ module Petstore case type.to_sym when :DateTime DateTime.parse(value) + when :Date + Date.parse(value) when :String value.to_s when :Integer diff --git a/samples/client/petstore/ruby/lib/petstore/swagger/response.rb b/samples/client/petstore/ruby/lib/petstore/swagger/response.rb index 770f04f6e2cb..0f72705f967d 100644 --- a/samples/client/petstore/ruby/lib/petstore/swagger/response.rb +++ b/samples/client/petstore/ruby/lib/petstore/swagger/response.rb @@ -62,6 +62,9 @@ module Petstore when 'DateTime' # parse date time (expecting ISO 8601 format) DateTime.parse data + when 'Date' + # parse date time (expecting ISO 8601 format) + Date.parse data when 'Object' # generic object, return directly data