aboutsummaryrefslogtreecommitdiffstats
path: root/activejob/lib/active_job/serializers/duration_serializer.rb
diff options
context:
space:
mode:
authorRafael Mendonça França <rafaelmfranca@gmail.com>2018-02-09 16:32:35 -0500
committerRafael Mendonça França <rafaelmfranca@gmail.com>2018-02-14 13:10:08 -0500
commitd2d98d69468bf34a39794496beb8f9f7b69088c4 (patch)
tree1712b44eb7082efabc7dedeb8e7058c3de9bc8bf /activejob/lib/active_job/serializers/duration_serializer.rb
parentb098584f63521d214c1107e6eaa24f292b8e4df8 (diff)
downloadrails-d2d98d69468bf34a39794496beb8f9f7b69088c4.tar.gz
rails-d2d98d69468bf34a39794496beb8f9f7b69088c4.tar.bz2
rails-d2d98d69468bf34a39794496beb8f9f7b69088c4.zip
Allow serializers to be used either as classes or objects
Diffstat (limited to 'activejob/lib/active_job/serializers/duration_serializer.rb')
-rw-r--r--activejob/lib/active_job/serializers/duration_serializer.rb22
1 files changed, 10 insertions, 12 deletions
diff --git a/activejob/lib/active_job/serializers/duration_serializer.rb b/activejob/lib/active_job/serializers/duration_serializer.rb
index 46543cc30d..94b0d0407a 100644
--- a/activejob/lib/active_job/serializers/duration_serializer.rb
+++ b/activejob/lib/active_job/serializers/duration_serializer.rb
@@ -1,24 +1,22 @@
module ActiveJob
module Serializers
- class DurationSerializer < ObjectSerializer
- class << self
- def serialize(duration)
- super("value" => duration.value, "parts" => Serializers.serialize(duration.parts))
- end
+ class DurationSerializer < ObjectSerializer # :nodoc:
+ def serialize(duration)
+ super("value" => duration.value, "parts" => Serializers.serialize(duration.parts))
+ end
- def deserialize(hash)
- value = hash["value"]
- parts = Serializers.deserialize(hash["parts"])
+ def deserialize(hash)
+ value = hash["value"]
+ parts = Serializers.deserialize(hash["parts"])
- klass.new(value, parts)
- end
+ klass.new(value, parts)
+ end
- private
+ private
def klass
ActiveSupport::Duration
end
- end
end
end
end