Class: Echelon::DisneyWorld::Park
- Defined in:
- lib/echelon/parks/disney_world.rb
Direct Known Subclasses
Instance Attribute Summary collapse
-
#json_data ⇒ Object
readonly
Returns the value of attribute json_data.
Instance Method Summary collapse
-
#initialize(access_token, park_id) ⇒ Park
constructor
A new instance of Park.
- #ride_list ⇒ Object
Methods inherited from Park
#find_by_id, #find_by_name, #rides
Constructor Details
#initialize(access_token, park_id) ⇒ Park
Returns a new instance of Park.
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/echelon/parks/disney_world.rb', line 48 def initialize(access_token, park_id) uri = URI.parse("https://api.wdpro.disney.go.com/facility-service/theme-parks/#{park_id};entityType=theme-park/wait-times") http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE headers = { 'Authorization' => "BEARER #{access_token}", 'Accept' => 'application/json;apiversion=1', 'X-Conversation-Id' => '~WDPRO-MOBILE.CLIENT-PROD' } resp = http.get(uri.request_uri, headers) @json_data = JSON.parse(resp.body) end |
Instance Attribute Details
#json_data ⇒ Object (readonly)
Returns the value of attribute json_data.
42 43 44 |
# File 'lib/echelon/parks/disney_world.rb', line 42 def json_data @json_data end |
Instance Method Details
#ride_list ⇒ Object
44 45 46 |
# File 'lib/echelon/parks/disney_world.rb', line 44 def ride_list json_data['entries'].inject({}) { |a, r| a[r['id'].split(';').first.to_i] = r['name']; a } end |