class NasaApi::ResponseHandler::Epic

Attributes

attitude_quaternions[RW]
caption[RW]
centroid_coordinates[RW]
coords[RW]
date[RW]
dscovr_j2000_position[RW]
identifier[RW]
image[RW]
image_url[RW]
lunar_j2000_position[RW]
response[RW]
sun_j2000_position[RW]
version[RW]

Public Class Methods

new(response = {}) click to toggle source
# File lib/nasa_api/response_handler.rb, line 101
def initialize(response = {})
  @response = response
  response.each do |values|
    (@identifier ||= []) << values['identifier']
    (@caption ||= []) << values['caption']
    (@image ||= []) << values['image']
    (@version ||= []) << values['version']
    (@centroid_coordinates ||= []) << values['centroid_coordinates']
    (@dscovr_j2000_position ||= []) << values['dscovr_j2000_position']
    (@lunar_j2000_position ||= []) << values['lunar_j2000_position']
    (@sun_j2000_position ||= []) << values['sun_j2000_position']
    (@attitude_quaternions ||= []) << values['attitude_quaternions']
    (@date ||= []) << values['date']
    (@coords ||= []) << values['coords']

    # Images are stored in an archive by YYYY/DD/MM url
    # Requires a little extra logic to retrieve image_url
    date_parsed = @date[-1].split(' ')[0]
    parts = date_parsed.split('-')
    (@image_url ||= []) << "https://epic.gsfc.nasa.gov/archive/natural/#{parts[0]}/#{parts[1]}/#{parts[2]}/png/#{@image[-1].to_s}.png"
  end
end