diff options
author | Evgenii Pecherkin <e.pecherkin@gmail.com> | 2017-10-17 16:05:05 +0400 |
---|---|---|
committer | Rafael Mendonça França <rafaelmfranca@gmail.com> | 2018-02-14 13:10:07 -0500 |
commit | e360ac12315ed6b9eadca5bcc0d95dc766ba8523 (patch) | |
tree | caa6f2a49d3d235448f204c7f1eae18d79685d2a /activejob/lib/active_job/serializers/array_serializer.rb | |
parent | 2e87ea6d7081d8be0f4bf28ac436a9a9dac48c7a (diff) | |
download | rails-e360ac12315ed6b9eadca5bcc0d95dc766ba8523.tar.gz rails-e360ac12315ed6b9eadca5bcc0d95dc766ba8523.tar.bz2 rails-e360ac12315ed6b9eadca5bcc0d95dc766ba8523.zip |
Introduce serializers to ActiveJob
Diffstat (limited to 'activejob/lib/active_job/serializers/array_serializer.rb')
-rw-r--r-- | activejob/lib/active_job/serializers/array_serializer.rb | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/activejob/lib/active_job/serializers/array_serializer.rb b/activejob/lib/active_job/serializers/array_serializer.rb new file mode 100644 index 0000000000..f0254f4488 --- /dev/null +++ b/activejob/lib/active_job/serializers/array_serializer.rb @@ -0,0 +1,26 @@ +# frozen_string_literal: true + +module ActiveJob + module Serializers + # Provides methods to serialize and deserialize `Array` + class ArraySerializer < BaseSerializer + class << self + alias_method :deserialize?, :serialize? + + def serialize(array) + array.map { |arg| ::ActiveJob::Serializers.serialize(arg) } + end + + def deserialize(array) + array.map { |arg| ::ActiveJob::Serializers.deserialize(arg) } + end + + private + + def klass + ::Array + end + end + end + end +end |