streetfoodr 0.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/lib/streetfoodr.rb +62 -0
- metadata +144 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 613a4aeff572ff4e20f6435a02400bff712a2d3b
|
4
|
+
data.tar.gz: 98b0b6cc7d2cc5d62016d987695ff73f535792b4
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 44389dc8e7be2aabaed21ee65d3610ef93abb7a7749f3aaf423482b54dcd42b06fac1b39bb18487a8ae0d0c73833cc826ef40bf37a29c125ec06220b05e0c102
|
7
|
+
data.tar.gz: b13918d4651f444763d7ce307e657959d4aa8a030d44f19675ba3166420b242aec0fc776367e329bd4ae00689f35f41ae9c8935855bb450bc958fcffb98dc2da
|
data/lib/streetfoodr.rb
ADDED
@@ -0,0 +1,62 @@
|
|
1
|
+
require 'rest-client'
|
2
|
+
|
3
|
+
class FoodTruck
|
4
|
+
API_ROOT_URL = 'http://data.streetfoodapp.com/1.1/'
|
5
|
+
|
6
|
+
def self.get_city_trucks(city)
|
7
|
+
response = RestClient.get(API_ROOT_URL + "schedule/" + city)
|
8
|
+
JSON.parse(response)
|
9
|
+
end
|
10
|
+
|
11
|
+
def self.get_city_trucks_identifiers(city)
|
12
|
+
raw_data = self.get_city_trucks(city)
|
13
|
+
|
14
|
+
identifier_name_pairs = Array.new
|
15
|
+
|
16
|
+
raw_data['vendors'].map do |truck|
|
17
|
+
truck_info = Hash[identifier: truck[0], name: truck[1]["name"]]
|
18
|
+
|
19
|
+
identifier_name_pairs << truck_info
|
20
|
+
end
|
21
|
+
|
22
|
+
return identifier_name_pairs
|
23
|
+
end
|
24
|
+
|
25
|
+
def self.get_api_identifier_by_name(name, city)
|
26
|
+
|
27
|
+
truck_info = self.get_city_trucks_identifiers(city)
|
28
|
+
.find { |truck_info| truck_info[:name] == name}
|
29
|
+
|
30
|
+
if truck_info == nil
|
31
|
+
raise ArgumentError, "A truck with that name in that city could not be found." +
|
32
|
+
" Keep in mind that the name must be exact."
|
33
|
+
end
|
34
|
+
|
35
|
+
return truck_info
|
36
|
+
end
|
37
|
+
|
38
|
+
def initialize(foodtruck_identifier, city)
|
39
|
+
@identifier = foodtruck_identifier
|
40
|
+
@city = city
|
41
|
+
end
|
42
|
+
|
43
|
+
def locations
|
44
|
+
response = RestClient.get(API_ROOT_URL + "locations/" + @identifier)
|
45
|
+
begin
|
46
|
+
JSON.parse(response)
|
47
|
+
rescue JSON::ParserError => ex
|
48
|
+
raise ArgumentError, "This food truck identifier does not exist"
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
def history(year, month)
|
53
|
+
response = RestClient.get(API_ROOT_URL + "history/" + @city + "/" +
|
54
|
+
year + "/" + month + "/" + @identifier)
|
55
|
+
begin
|
56
|
+
JSON.parse(response)
|
57
|
+
rescue JSON::ParserError => ex
|
58
|
+
raise ArgumentError, "Either this food truck identifier does not exist," +
|
59
|
+
" or there is no history for it available during the period you have chosen."
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
metadata
ADDED
@@ -0,0 +1,144 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: streetfoodr
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Alla Hoffman
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-01-11 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rest-client
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.7'
|
20
|
+
- - ">="
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 1.7.2
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
requirements:
|
27
|
+
- - "~>"
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '1.7'
|
30
|
+
- - ">="
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 1.7.2
|
33
|
+
- !ruby/object:Gem::Dependency
|
34
|
+
name: pry
|
35
|
+
requirement: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - "~>"
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '0.10'
|
40
|
+
- - ">="
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: 0.10.1
|
43
|
+
type: :development
|
44
|
+
prerelease: false
|
45
|
+
version_requirements: !ruby/object:Gem::Requirement
|
46
|
+
requirements:
|
47
|
+
- - "~>"
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: '0.10'
|
50
|
+
- - ">="
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: 0.10.1
|
53
|
+
- !ruby/object:Gem::Dependency
|
54
|
+
name: rspec
|
55
|
+
requirement: !ruby/object:Gem::Requirement
|
56
|
+
requirements:
|
57
|
+
- - "~>"
|
58
|
+
- !ruby/object:Gem::Version
|
59
|
+
version: '3.1'
|
60
|
+
- - ">="
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: 3.1.0
|
63
|
+
type: :development
|
64
|
+
prerelease: false
|
65
|
+
version_requirements: !ruby/object:Gem::Requirement
|
66
|
+
requirements:
|
67
|
+
- - "~>"
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '3.1'
|
70
|
+
- - ">="
|
71
|
+
- !ruby/object:Gem::Version
|
72
|
+
version: 3.1.0
|
73
|
+
- !ruby/object:Gem::Dependency
|
74
|
+
name: vcr
|
75
|
+
requirement: !ruby/object:Gem::Requirement
|
76
|
+
requirements:
|
77
|
+
- - "~>"
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
version: '2.9'
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 2.9.3
|
83
|
+
type: :development
|
84
|
+
prerelease: false
|
85
|
+
version_requirements: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '2.9'
|
90
|
+
- - ">="
|
91
|
+
- !ruby/object:Gem::Version
|
92
|
+
version: 2.9.3
|
93
|
+
- !ruby/object:Gem::Dependency
|
94
|
+
name: webmock
|
95
|
+
requirement: !ruby/object:Gem::Requirement
|
96
|
+
requirements:
|
97
|
+
- - "~>"
|
98
|
+
- !ruby/object:Gem::Version
|
99
|
+
version: '1.20'
|
100
|
+
- - ">="
|
101
|
+
- !ruby/object:Gem::Version
|
102
|
+
version: 1.20.4
|
103
|
+
type: :development
|
104
|
+
prerelease: false
|
105
|
+
version_requirements: !ruby/object:Gem::Requirement
|
106
|
+
requirements:
|
107
|
+
- - "~>"
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '1.20'
|
110
|
+
- - ">="
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
version: 1.20.4
|
113
|
+
description: Wrapped for the Street Food App API
|
114
|
+
email: sm1th303@gmail.com
|
115
|
+
executables: []
|
116
|
+
extensions: []
|
117
|
+
extra_rdoc_files: []
|
118
|
+
files:
|
119
|
+
- lib/streetfoodr.rb
|
120
|
+
homepage: http://rubygems.org/gems/streetfoodr
|
121
|
+
licenses:
|
122
|
+
- MIT
|
123
|
+
metadata: {}
|
124
|
+
post_install_message:
|
125
|
+
rdoc_options: []
|
126
|
+
require_paths:
|
127
|
+
- lib
|
128
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
129
|
+
requirements:
|
130
|
+
- - ">="
|
131
|
+
- !ruby/object:Gem::Version
|
132
|
+
version: '0'
|
133
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
134
|
+
requirements:
|
135
|
+
- - ">="
|
136
|
+
- !ruby/object:Gem::Version
|
137
|
+
version: '0'
|
138
|
+
requirements: []
|
139
|
+
rubyforge_project:
|
140
|
+
rubygems_version: 2.2.2
|
141
|
+
signing_key:
|
142
|
+
specification_version: 4
|
143
|
+
summary: Streetfoodapp API
|
144
|
+
test_files: []
|