Module: Klaviyo::Resource

Defined in:
lib/klaviyo/resource.rb

Defined Under Namespace

Classes: Folder, KlaviyoCollection, KlaviyoObject, List, Membership, Person

Class Method Summary collapse

Class Method Details

.build(params) ⇒ Object



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# File 'lib/klaviyo/resource.rb', line 40

def self.build(params)
  attrs = params.is_a?(String) ? MultiJson.load(params) : params
  object = attrs.delete('object')
  case object.to_s
  when 'person'
    Person.new(attrs)
  when 'list'
    List.new(attrs)
  when 'folder'
    Folder.new(attrs)
  when 'membership'
    Membership.new(attrs)
  else
    KlaviyoObject.new(attrs)
  end

end

.build_collection(data) ⇒ Object



58
59
60
# File 'lib/klaviyo/resource.rb', line 58

def self.build_collection(data)
  KlaviyoCollection.new(data)
end