Module: ResqueSafe::ConvertFromHash

Included in:
ResqueSafe
Defined in:
lib/resque_safe/convert_from_hash.rb

Instance Method Summary collapse

Instance Method Details

#args_to_instance_vars(args) ⇒ Object



22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/resque_safe/convert_from_hash.rb', line 22

def args_to_instance_vars(args)
  #take each key, if a model, make it an @#{model} = model.find(value)
  #else make it a @#{name}=#{value}

  args.each do |klass_name,value|
    klass_name, value = klass_name.to_s, value.to_s
    klassified_klass = klass_name.classify

    if Object.const_defined?(klassified_klass) &&
      known_models.include?(klassified_klass.constantize)

      set_instance_for_active_record(klassified_klass, value)
    else
      set_instance_for_other(klass_name, value)
    end
  end
end

#to_objects(inbound_hash) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/resque_safe/convert_from_hash.rb', line 3

def to_objects(inbound_hash)
  objects = {}
  inbound_hash.each do |klass_name,value|
    klass_name, value = klass_name.to_s, value.to_s
    klassified_klass = klass_name.classify
    symbolized_klass = klass_name.to_sym

    if Object.const_defined?(klassified_klass) &&
      known_models.include?(klassified_klass.constantize)

      objects[symbolized_klass] = return_active_record(klassified_klass, value)
    else
      objects[symbolized_klass] = return_other_object(klass_name, value)
    end
  end

  objects
end