Sha256: ecda7a5abf0b0c2865e7d5029ed0d9a6e6896794f833170acb932ae41ff525e3
Contents?: true
Size: 651 Bytes
Versions: 3
Compression:
Stored size: 651 Bytes
Contents
# frozen_string_literal: true require "active_job/serializers/object_serializer" module AcidicJob module Serializers class NewRecordSerializer < ::ActiveJob::Serializers::ObjectSerializer def serialize(new_record) super( "class" => new_record.class.name, "attributes" => new_record.attributes ) end def deserialize(hash) new_record_class = hash["class"].constantize new_record_class.new(hash["attributes"]) end def serialize?(argument) defined?(::ActiveRecord) && argument.respond_to?(:new_record?) && argument.new_record? end end end end
Version data entries
3 entries across 3 versions & 1 rubygems