Class: ActiveJob::Parameters

Inherits:
Object
  • Object
show all
Defined in:
lib/active_job/parameters.rb

Constant Summary collapse

TYPE_WHITELIST =
[NilClass, Fixnum, Float, String, TrueClass, FalseClass, Hash, Array, Bignum]

Class Method Summary collapse

Class Method Details

.deserialize(params) ⇒ Object



15
16
17
# File 'lib/active_job/parameters.rb', line 15

def self.deserialize(params)
  params.collect { |param| ActiveModel::GlobalLocator.locate(param) || param }
end

.serialize(params) ⇒ Object



8
9
10
11
12
13
# File 'lib/active_job/parameters.rb', line 8

def self.serialize(params)
  params.collect do |param|
    raise "Unsupported parameter type: #{param.class.name}" unless param.respond_to?(:global_id) || TYPE_WHITELIST.include?(param.class)
    param.try(:global_id) || param
  end
end