sw_info 1.0.0 → 1.0.5
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 +4 -4
- data/lib/sw_info.rb +128 -143
- metadata +20 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '02294e279b52f73fae4494e9482ff5c485384d5c843736af44107bbec137c6d9'
|
4
|
+
data.tar.gz: 822e498bc58cff445c87de2467cf978e45594bc18f0ed54409fbe29de431de40
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ef1690dfcd6ab8c0264736730ef684e0bfc496a48363e26762e4c07c2b0dc09954f2707d4b1b58bbded1baaa87addda063001d900009ff0d885b80385c3880b7
|
7
|
+
data.tar.gz: 4f6306d8e041b4bc7117f6a54a89b6865c8cdafe1ab43dd1b58008e5f53dfbe2bce2d44a784a8dc7fd1a07c6c539c5bb8c984433443d1d82bf1d3e4f9a4984a9
|
data/lib/sw_info.rb
CHANGED
@@ -11,194 +11,179 @@ require 'debug'
|
|
11
11
|
|
12
12
|
# https://github.com/ruby/debug
|
13
13
|
|
14
|
-
#Cargo toda la data de swapi en la variable JSONDATA como hash
|
15
|
-
=begin JSONDATA = JSON.load_file('./swapi.json').each_with_object({}) do |(key, value), hash|
|
16
|
-
hash[key] = value
|
17
|
-
end
|
18
|
-
=end
|
14
|
+
# Cargo toda la data de swapi en la variable JSONDATA como hash
|
19
15
|
|
20
16
|
JSONDATA = File.expand_path('swapi.json', __dir__)
|
21
17
|
|
22
18
|
DATA = JSON.load_file(JSONDATA)
|
23
19
|
|
24
20
|
class Pal
|
25
|
-
|
26
|
-
|
27
|
-
def to_s
|
28
|
-
name
|
29
|
-
end
|
30
|
-
|
31
|
-
def id
|
32
|
-
@data['id']
|
33
|
-
end
|
21
|
+
attr_accessor :data
|
34
22
|
|
35
|
-
|
36
|
-
|
37
|
-
|
23
|
+
def to_s
|
24
|
+
name
|
25
|
+
end
|
38
26
|
|
39
|
-
|
40
|
-
|
41
|
-
|
27
|
+
def id
|
28
|
+
@data['id']
|
29
|
+
end
|
42
30
|
|
43
|
-
|
44
|
-
|
45
|
-
|
31
|
+
def name
|
32
|
+
@data['name']
|
33
|
+
end
|
46
34
|
|
47
|
-
|
48
|
-
variable = DATA[key].map {|p| new(p)}
|
49
|
-
return variable
|
50
|
-
end
|
35
|
+
def self.find(id); end
|
51
36
|
|
52
|
-
|
53
|
-
variable = DATA[key].find do |p|
|
54
|
-
p["id"] == id
|
55
|
-
end
|
56
|
-
return new(variable)
|
57
|
-
end
|
37
|
+
def self.all; end
|
58
38
|
|
59
|
-
|
60
|
-
|
61
|
-
|
39
|
+
def self.search_for_all(key)
|
40
|
+
DATA[key].map { |j| new(j) }
|
41
|
+
end
|
62
42
|
|
43
|
+
def self.search_for_id(key, id)
|
44
|
+
variable = DATA[key].find { |j| j['id'] == id }
|
45
|
+
new(variable)
|
46
|
+
end
|
63
47
|
|
48
|
+
def initialize(data)
|
49
|
+
@data = data
|
50
|
+
end
|
64
51
|
end
|
65
52
|
|
66
|
-
#En esta clase voy a querer acceder a esa data dependiendo de la key que me pase
|
53
|
+
# En esta clase voy a querer acceder a esa data dependiendo de la key que me pase
|
67
54
|
# y mostrar el atributo que se pida según el método llamado
|
68
55
|
class Person < Pal
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
56
|
+
attr_accessor :data, :alias
|
57
|
+
|
58
|
+
def birth_year
|
59
|
+
@data['birth_year']
|
60
|
+
end
|
61
|
+
|
62
|
+
def eye_color
|
63
|
+
@data['eye_color']
|
64
|
+
end
|
65
|
+
|
66
|
+
def hair_color
|
67
|
+
@data['hair_color']
|
68
|
+
end
|
69
|
+
|
70
|
+
def skin_color
|
71
|
+
@data['skin_color']
|
72
|
+
end
|
73
|
+
|
74
|
+
def height
|
75
|
+
@data['height']
|
76
|
+
end
|
77
|
+
|
78
|
+
def mass
|
79
|
+
@data['mass']
|
80
|
+
end
|
81
|
+
|
82
|
+
def gender
|
83
|
+
@data['gender']
|
84
|
+
end
|
98
85
|
end
|
99
86
|
|
100
87
|
class Starship < Pal
|
101
|
-
|
88
|
+
attr_accessor :data
|
102
89
|
|
103
|
-
|
104
|
-
|
105
|
-
|
90
|
+
def starships
|
91
|
+
@data['starships']
|
92
|
+
end
|
106
93
|
|
107
|
-
|
108
|
-
|
109
|
-
|
94
|
+
def model
|
95
|
+
@data['model']
|
96
|
+
end
|
110
97
|
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
def cost_in_credits
|
116
|
-
@data['cost_in_credits']
|
117
|
-
end
|
98
|
+
def manufacturer
|
99
|
+
@data['manufacturer']
|
100
|
+
end
|
118
101
|
|
119
|
-
|
120
|
-
|
121
|
-
|
102
|
+
def cost_in_credits
|
103
|
+
@data['cost_in_credits']
|
104
|
+
end
|
122
105
|
|
123
|
-
|
124
|
-
|
125
|
-
|
106
|
+
def length
|
107
|
+
@data['length']
|
108
|
+
end
|
126
109
|
|
127
|
-
|
128
|
-
|
129
|
-
|
110
|
+
def max_atmosphering_speed
|
111
|
+
@data['max_atmosphering_speed']
|
112
|
+
end
|
130
113
|
|
131
|
-
|
132
|
-
|
133
|
-
|
114
|
+
def crew
|
115
|
+
@data['crew']
|
116
|
+
end
|
134
117
|
|
135
|
-
|
136
|
-
|
137
|
-
|
118
|
+
def passengers
|
119
|
+
@data['passengers']
|
120
|
+
end
|
138
121
|
|
139
|
-
|
140
|
-
|
141
|
-
|
122
|
+
def cargo_capacity
|
123
|
+
@data['cargo_capacity']
|
124
|
+
end
|
142
125
|
|
143
|
-
|
144
|
-
|
145
|
-
|
126
|
+
def consumables
|
127
|
+
@data['consumables']
|
128
|
+
end
|
146
129
|
|
147
|
-
|
148
|
-
|
149
|
-
|
130
|
+
def hyperdrive_rating
|
131
|
+
@data['hyperdrive_rating']
|
132
|
+
end
|
150
133
|
|
151
|
-
|
152
|
-
|
153
|
-
|
134
|
+
def MGLT
|
135
|
+
@data['MGLT']
|
136
|
+
end
|
154
137
|
|
138
|
+
def starship_class
|
139
|
+
@data['starship_class']
|
140
|
+
end
|
155
141
|
end
|
156
142
|
|
157
143
|
class Vehicle < Pal
|
158
|
-
|
144
|
+
attr_accessor :data
|
159
145
|
|
160
|
-
|
161
|
-
|
162
|
-
|
146
|
+
def vehicles
|
147
|
+
@data['vehicles']
|
148
|
+
end
|
163
149
|
|
164
|
-
|
165
|
-
|
166
|
-
|
150
|
+
def model
|
151
|
+
@data['model']
|
152
|
+
end
|
167
153
|
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
def cost_in_credits
|
173
|
-
@data['cost_in_credits']
|
174
|
-
end
|
154
|
+
def manufacturer
|
155
|
+
@data['manufacturer']
|
156
|
+
end
|
175
157
|
|
176
|
-
|
177
|
-
|
178
|
-
|
158
|
+
def cost_in_credits
|
159
|
+
@data['cost_in_credits']
|
160
|
+
end
|
179
161
|
|
180
|
-
|
181
|
-
|
182
|
-
|
162
|
+
def length
|
163
|
+
@data['length']
|
164
|
+
end
|
183
165
|
|
184
|
-
|
185
|
-
|
186
|
-
|
166
|
+
def max_atmosphering_speed
|
167
|
+
@data['max_atmosphering_speed']
|
168
|
+
end
|
187
169
|
|
188
|
-
|
189
|
-
|
190
|
-
|
170
|
+
def crew
|
171
|
+
@data['crew']
|
172
|
+
end
|
191
173
|
|
192
|
-
|
193
|
-
|
194
|
-
|
174
|
+
def passengers
|
175
|
+
@data['passengers']
|
176
|
+
end
|
195
177
|
|
196
|
-
|
197
|
-
|
198
|
-
|
178
|
+
def cargo_capacity
|
179
|
+
@data['cargo_capacity']
|
180
|
+
end
|
199
181
|
|
200
|
-
|
201
|
-
|
202
|
-
|
182
|
+
def consumables
|
183
|
+
@data['consumables']
|
184
|
+
end
|
203
185
|
|
204
|
-
|
186
|
+
def vehicle_class
|
187
|
+
@data['vehicle_class']
|
188
|
+
end
|
189
|
+
end
|
metadata
CHANGED
@@ -1,16 +1,30 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sw_info
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- EmilioD
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-01-
|
12
|
-
dependencies:
|
13
|
-
|
11
|
+
date: 2022-01-23 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: debug
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
description: A simple gem that display Star Wars characters info
|
14
28
|
email: emilio@daniel.fake
|
15
29
|
executables: []
|
16
30
|
extensions: []
|
@@ -32,7 +46,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
32
46
|
requirements:
|
33
47
|
- - ">="
|
34
48
|
- !ruby/object:Gem::Version
|
35
|
-
version:
|
49
|
+
version: 3.0.3
|
36
50
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
37
51
|
requirements:
|
38
52
|
- - ">="
|
@@ -42,5 +56,5 @@ requirements: []
|
|
42
56
|
rubygems_version: 3.2.32
|
43
57
|
signing_key:
|
44
58
|
specification_version: 4
|
45
|
-
summary:
|
59
|
+
summary: Star Wars API
|
46
60
|
test_files: []
|