Class: MotoRecall::Client::GeneralMotors
Class Method Summary
collapse
Instance Method Summary
collapse
#find, #initialize, #url
Class Method Details
.url(vin) ⇒ Object
6
7
8
|
# File 'lib/moto_recall/client/general_motors.rb', line 6
def self.url(vin)
"https://my.gm.com/services/#{vin}/recalls"
end
|
Instance Method Details
#fetch(vin) ⇒ Object
10
11
12
13
14
|
# File 'lib/moto_recall/client/general_motors.rb', line 10
def fetch(vin)
agent = Mechanize.new
response = agent.get(url(vin))
response.body
end
|
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
# File 'lib/moto_recall/client/general_motors.rb', line 25
def format(recall)
{
type: recall["recall_type"],
nhtsa_number: recall["nhtsa_recall_number"],
oem_number: recall["mfr_recall_number"],
date: recall["recall_date"],
title: recall["recall_title"],
description: recall["recall_description"],
safety_risk: recall["safety_risk_description"],
remedy: recall["remedy_description"],
status: recall["mfr_recall_status"],
notes: nil
}
end
|
#process(response) ⇒ Object
16
17
18
19
20
21
22
23
|
# File 'lib/moto_recall/client/general_motors.rb', line 16
def process(response)
parsed_response = JSON.parse(response)
if parsed_response["data"] && parsed_response["data"]["recalls"]
parsed_response["data"]["recalls"]
else
[]
end
end
|