Class: CloudWaba::Models::Templates::Response

Inherits:
T::Struct
  • Object
show all
Extended by:
T::Helpers, T::Sig
Defined in:
lib/cloud_waba/models/templates/response.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.parse(template_hash:) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/cloud_waba/models/templates/response.rb', line 19

def self.parse(template_hash:)
  category = ::CloudWaba::Models::Enums::Templates::Category.try_deserialize(template_hash["category"])
  components = template_hash["components"].map{|component| ::CloudWaba::Models::Templates.parse(component_hash: component)}

  self.new(
    id: template_hash["id"],
    status: template_hash["status"],
    category: category,
    language: template_hash["language"],
    name: template_hash["name"],
    components: components
  )
end

Instance Method Details

#serializeObject



34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'lib/cloud_waba/models/templates/response.rb', line 34

def serialize
  result = {
    id: id,
    status: status,
    category: category&.serialize,
    language: language,
    name: name
  }
  
  if components
    result[:components] = components.map(&:serialize)
  end
  
  result
end