Class: Jumbotron::Deserializers::Clients::Espn::Event

Inherits:
Object
  • Object
show all
Defined in:
app/deserializers/jumbotron/deserializers/clients/espn/event.rb

Defined Under Namespace

Classes: Result

Class Method Summary collapse

Class Method Details

.call(payload) ⇒ Object



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'app/deserializers/jumbotron/deserializers/clients/espn/event.rb', line 20

def self.call(payload)
  Support.ensure_hash!(payload, label: "event")

  Result.build!(
    id: coerce_id(Support.payload.fetch(payload, "id")),
    uid: Support.payload.fetch(payload, "uid"),
    date: Support.payload.fetch(payload, "date"),
    name: Support.payload.fetch(payload, "name"),
    short_name: Support.payload.fetch(payload, "shortName"),
    season: Support.nest("season", Support.payload.fetch(payload, "season")) { |raw| Season.call(raw) },
    week: Support.nest("week", Support.payload.fetch(payload, "week")) { |raw| Week.call(raw) },
    status: Support.nest("status", Support.payload.fetch(payload, "status")) { |raw| Status.call(raw) },
    competitions: map_competitions(Support.payload.fetch(payload, "competitions"))
  )
end