machineshop 0.0.3 → 0.0.4
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/README.md +253 -57
- data/Readme_old.bkmMd +782 -0
- data/lib/machineshop/version.rb +1 -1
- data/lib/machineshop.rb +149 -148
- data/spec/lib/api_calls_spec.rb +0 -4
- data/spec/lib/customer_spec.rb +0 -3
- data/spec/lib/device_instances.rb +0 -4
- data/spec/lib/device_spec.rb +0 -3
- data/spec/lib/mapping_spec.rb +7 -6
- data/spec/lib/meter_spec.rb +7 -7
- data/spec/lib/report_spec.rb +3 -3
- data/spec/lib/rule_spec.rb +0 -4
- data/spec/lib/user_spec.rb +0 -4
- data/spec/spec_helper.rb +1 -0
- metadata +3 -3
- data/lib/machineshop/models/people.rb +0 -11
data/lib/machineshop/version.rb
CHANGED
data/lib/machineshop.rb
CHANGED
@@ -50,185 +50,186 @@ module MachineShop
|
|
50
50
|
class << self
|
51
51
|
# @@api_base_url = 'http://api.machineshop.io/api/v0'
|
52
52
|
@@api_base_url = 'http://stage.services.machineshop.io/api/v0'
|
53
|
+
# @@api_base_url = 'https://services.machineshop.io/api/v0'
|
53
54
|
|
54
|
-
#configs starts
|
55
|
-
attr_writer :configuration
|
55
|
+
#configs starts
|
56
|
+
attr_writer :configuration
|
56
57
|
|
57
|
-
def configuration
|
58
|
-
|
59
|
-
end
|
58
|
+
def configuration
|
59
|
+
@configuration ||= Configuration.new
|
60
|
+
end
|
60
61
|
|
61
|
-
def configure
|
62
|
-
|
63
|
-
end
|
62
|
+
def configure
|
63
|
+
yield(configuration)
|
64
|
+
end
|
64
65
|
|
65
|
-
#reset the config object
|
66
|
-
def reset
|
67
|
-
|
68
|
-
end
|
66
|
+
#reset the config object
|
67
|
+
def reset
|
68
|
+
Configuration.new
|
69
|
+
end
|
69
70
|
|
70
|
-
#configs ends
|
71
|
+
#configs ends
|
71
72
|
|
72
|
-
def api_base_url=(api_base_url)
|
73
|
-
|
74
|
-
end
|
73
|
+
def api_base_url=(api_base_url)
|
74
|
+
@@api_base_url = api_base_url
|
75
|
+
end
|
75
76
|
|
76
|
-
def api_base_url
|
77
|
-
|
78
|
-
end
|
77
|
+
def api_base_url
|
78
|
+
@@api_base_url
|
79
|
+
end
|
79
80
|
|
80
|
-
def get(url, auth_token, body_hash=nil)
|
81
|
-
|
82
|
-
end
|
81
|
+
def get(url, auth_token, body_hash=nil)
|
82
|
+
platform_request(url, auth_token, body_hash)
|
83
|
+
end
|
83
84
|
|
84
|
-
def post(url, auth_token, body_hash)
|
85
|
-
|
86
|
-
end
|
85
|
+
def post(url, auth_token, body_hash)
|
86
|
+
platform_request(url, auth_token, body_hash, :post)
|
87
|
+
end
|
87
88
|
|
88
|
-
def delete(url, auth_token, body_hash)
|
89
|
-
|
90
|
-
end
|
89
|
+
def delete(url, auth_token, body_hash)
|
90
|
+
platform_request(url, auth_token, body_hash, :delete)
|
91
|
+
end
|
91
92
|
|
92
|
-
def put(url, auth_token, body_hash)
|
93
|
-
|
94
|
-
end
|
93
|
+
def put(url, auth_token, body_hash)
|
94
|
+
platform_request(url, auth_token, body_hash, :put)
|
95
|
+
end
|
95
96
|
|
96
|
-
def headers(auth_token)
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
97
|
+
def headers(auth_token)
|
98
|
+
header ={:content_type => :json,
|
99
|
+
:accept => :json}
|
100
|
+
header.merge!({ authorization: "Basic " + Base64.encode64(auth_token + ':X') }) if auth_token
|
101
|
+
header
|
102
|
+
end
|
102
103
|
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
104
|
+
def platform_request(url, auth_token, body_hash=nil, http_verb=:get )
|
105
|
+
puts "body_hash: #{body_hash}"
|
106
|
+
opts = nil
|
107
|
+
api_uri = api_base_url + url
|
108
|
+
headers = self.headers(auth_token)
|
109
|
+
if http_verb == :get
|
110
|
+
if (body_hash && !body_hash.empty?)
|
111
|
+
uri = Addressable::URI.new
|
112
|
+
uri.query_values = body_hash
|
113
|
+
api_uri += "?" + uri.query
|
114
|
+
end
|
115
|
+
|
116
|
+
opts = {
|
117
|
+
:method => :get,
|
118
|
+
:url => api_uri,
|
119
|
+
:headers => headers,
|
120
|
+
:open_timeout => 30,
|
121
|
+
:timeout => 80
|
122
|
+
}
|
114
123
|
|
115
|
-
opts = {
|
116
|
-
:method => :get,
|
117
|
-
:url => api_uri,
|
118
|
-
:headers => headers,
|
119
|
-
:open_timeout => 30,
|
120
|
-
:timeout => 80
|
121
|
-
}
|
122
|
-
|
123
|
-
else
|
124
|
-
opts = {
|
125
|
-
:method => http_verb,
|
126
|
-
:url => api_uri,
|
127
|
-
:headers => headers,
|
128
|
-
:open_timeout => 30,
|
129
|
-
:payload => MachineShop::JSON.dump(body_hash),
|
130
|
-
:timeout => 80
|
131
|
-
}
|
132
|
-
|
133
|
-
end
|
134
|
-
|
135
|
-
puts "request params: #{opts} "
|
136
|
-
|
137
|
-
begin
|
138
|
-
response = execute_request(opts)
|
139
|
-
rescue SocketError => e
|
140
|
-
self.handle_restclient_error(e)
|
141
|
-
rescue NoMethodError => e
|
142
|
-
# Work around RestClient bug
|
143
|
-
if e.message =~ /\WRequestFailed\W/
|
144
|
-
e = APIConnectionError.new('Unexpected HTTP response code')
|
145
|
-
self.handle_restclient_error(e)
|
146
124
|
else
|
147
|
-
|
125
|
+
opts = {
|
126
|
+
:method => http_verb,
|
127
|
+
:url => api_uri,
|
128
|
+
:headers => headers,
|
129
|
+
:open_timeout => 30,
|
130
|
+
:payload => MachineShop::JSON.dump(body_hash),
|
131
|
+
:timeout => 80
|
132
|
+
}
|
133
|
+
|
148
134
|
end
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
135
|
+
|
136
|
+
puts "request params: #{opts} "
|
137
|
+
|
138
|
+
begin
|
139
|
+
response = execute_request(opts)
|
140
|
+
rescue SocketError => e
|
141
|
+
self.handle_restclient_error(e)
|
142
|
+
rescue NoMethodError => e
|
143
|
+
# Work around RestClient bug
|
144
|
+
if e.message =~ /\WRequestFailed\W/
|
145
|
+
e = APIConnectionError.new('Unexpected HTTP response code')
|
146
|
+
self.handle_restclient_error(e)
|
147
|
+
else
|
148
|
+
raise
|
149
|
+
end
|
150
|
+
rescue RestClient::ExceptionWithResponse => e
|
151
|
+
if rcode = e.http_code and rbody = e.http_body
|
152
|
+
self.handle_api_error(rcode, rbody)
|
153
|
+
else
|
154
|
+
self.handle_restclient_error(e)
|
155
|
+
end
|
156
|
+
rescue RestClient::Exception, Errno::ECONNREFUSED => e
|
153
157
|
self.handle_restclient_error(e)
|
154
158
|
end
|
155
|
-
rescue RestClient::Exception, Errno::ECONNREFUSED => e
|
156
|
-
self.handle_restclient_error(e)
|
157
|
-
end
|
158
159
|
|
159
|
-
|
160
|
-
|
160
|
+
rbody = response.body
|
161
|
+
rcode = response.code
|
162
|
+
|
163
|
+
begin
|
164
|
+
# Would use :symbolize_names => true, but apparently there is
|
165
|
+
# some library out there that makes symbolize_names not work.
|
166
|
+
resp = MachineShop::JSON.load(rbody)
|
167
|
+
resp ||= {}
|
168
|
+
resp = Util.symbolize_names(resp)
|
161
169
|
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
resp = Util.symbolize_names(resp)
|
170
|
+
resp.merge!({:http_code => rcode}) if resp.is_a?(Hash)
|
171
|
+
return resp
|
172
|
+
rescue MultiJson::DecodeError
|
173
|
+
raise APIError.new("Invalid response object from API: #{rbody.inspect} (HTTP response code was #{rcode})", rcode, rbody)
|
174
|
+
end
|
168
175
|
|
169
|
-
|
170
|
-
return resp
|
171
|
-
rescue MultiJson::DecodeError
|
172
|
-
raise APIError.new("Invalid response object from API: #{rbody.inspect} (HTTP response code was #{rcode})", rcode, rbody)
|
173
|
-
end
|
176
|
+
end
|
174
177
|
|
175
|
-
end
|
176
178
|
|
179
|
+
def execute_request(opts)
|
180
|
+
RestClient::Request.execute(opts)
|
181
|
+
end
|
177
182
|
|
178
|
-
|
179
|
-
|
180
|
-
|
183
|
+
def handle_api_error(rcode, rbody)
|
184
|
+
begin
|
185
|
+
error_obj = MachineShop::JSON.load(rbody)
|
186
|
+
error_obj = Util.symbolize_names(error_obj)
|
187
|
+
error = error_obj[:error] or raise MachineShopError.new # escape from parsing
|
188
|
+
rescue MultiJson::DecodeError, MachineShopError
|
189
|
+
raise APIError.new("Invalid response object from API: #{rbody.inspect} (HTTP response code was #{rcode})", rcode, rbody)
|
190
|
+
end
|
181
191
|
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
192
|
+
case rcode
|
193
|
+
when 400, 404 then
|
194
|
+
raise invalid_request_error(error, rcode, rbody, error_obj)
|
195
|
+
when 401
|
196
|
+
raise authentication_error(error, rcode, rbody, error_obj)
|
197
|
+
when 402
|
198
|
+
# TODO Come up with errors
|
199
|
+
else
|
200
|
+
raise api_error(error, rcode, rbody, error_obj)
|
201
|
+
end
|
189
202
|
end
|
190
203
|
|
191
|
-
|
192
|
-
|
193
|
-
raise invalid_request_error(error, rcode, rbody, error_obj)
|
194
|
-
when 401
|
195
|
-
raise authentication_error(error, rcode, rbody, error_obj)
|
196
|
-
when 402
|
197
|
-
# TODO Come up with errors
|
198
|
-
else
|
199
|
-
raise api_error(error, rcode, rbody, error_obj)
|
204
|
+
def invalid_request_error(error, rcode, rbody, error_obj)
|
205
|
+
InvalidRequestError.new(error, error, rcode, rbody, error_obj)
|
200
206
|
end
|
201
|
-
end
|
202
207
|
|
203
|
-
|
204
|
-
|
205
|
-
|
208
|
+
def authentication_error(error, rcode, rbody, error_obj)
|
209
|
+
AuthenticationError.new(error, rcode, rbody, error_obj)
|
210
|
+
end
|
206
211
|
|
207
|
-
|
208
|
-
|
209
|
-
|
212
|
+
def api_error(error, rcode, rbody, error_obj)
|
213
|
+
APIError.new(error, rcode, rbody, error_obj)
|
214
|
+
end
|
210
215
|
|
211
|
-
|
212
|
-
|
213
|
-
|
216
|
+
def handle_restclient_error(e)
|
217
|
+
case e
|
218
|
+
when RestClient::ServerBrokeConnection, RestClient::RequestTimeout
|
219
|
+
message = "Could not connect to MachineShop (#{@@api_base_url}). Please check your internet connection and try again. If this problem persists, you should check MachineShop's service status."
|
220
|
+
when RestClient::SSLCertificateNotVerified
|
221
|
+
message = "Could not verify MachineShops's SSL certificate. Please make sure that your network is not intercepting certificates."
|
222
|
+
when SocketError
|
223
|
+
message = "Unexpected error communicating when trying to connect to MachineShop (#{@@api_base_url}). HINT: You may be seeing this message because your DNS is not working."
|
224
|
+
else
|
225
|
+
message = "Unexpected error communicating with MachineShop"
|
226
|
+
end
|
227
|
+
message += "\n\n(Network error: #{e.message})"
|
228
|
+
# puts "error message string : #{message}"
|
229
|
+
raise APIConnectionError.new(message)
|
230
|
+
end
|
214
231
|
|
215
|
-
def handle_restclient_error(e)
|
216
|
-
case e
|
217
|
-
when RestClient::ServerBrokeConnection, RestClient::RequestTimeout
|
218
|
-
message = "Could not connect to MachineShop (#{@@api_base_url}). Please check your internet connection and try again. If this problem persists, you should check MachineShop's service status."
|
219
|
-
when RestClient::SSLCertificateNotVerified
|
220
|
-
message = "Could not verify MachineShops's SSL certificate. Please make sure that your network is not intercepting certificates."
|
221
|
-
when SocketError
|
222
|
-
message = "Unexpected error communicating when trying to connect to MachineShop (#{@@api_base_url}). HINT: You may be seeing this message because your DNS is not working."
|
223
|
-
else
|
224
|
-
message = "Unexpected error communicating with MachineShop"
|
225
|
-
end
|
226
|
-
message += "\n\n(Network error: #{e.message})"
|
227
|
-
# puts "error message string : #{message}"
|
228
|
-
raise APIConnectionError.new(message)
|
229
|
-
end
|
230
232
|
|
231
|
-
|
232
|
-
|
233
|
-
end
|
233
|
+
|
234
|
+
end
|
234
235
|
end
|
data/spec/lib/api_calls_spec.rb
CHANGED
@@ -1,9 +1,5 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
|
-
#MachineShop.api_base_url= 'http://machineshop.dev:3000/api/v0'
|
4
|
-
MachineShop.api_base_url= 'http://stage.services.machineshop.io/api/v0'
|
5
|
-
|
6
|
-
#publisher_username = 'publisher@machineshop.com'
|
7
3
|
publisher_username = 'publisher@csr.com'
|
8
4
|
publisher_password = 'password'
|
9
5
|
|
data/spec/lib/customer_spec.rb
CHANGED
@@ -1,9 +1,6 @@
|
|
1
1
|
require_relative '../spec_helper'
|
2
2
|
|
3
3
|
|
4
|
-
#MachineShop.api_base_url= 'http://machineshop.dev:3000/api/v0'
|
5
|
-
MachineShop.api_base_url= 'http://stage.services.machineshop.io/api/v0'
|
6
|
-
|
7
4
|
#publisher_username = 'publisher@machineshop.com'
|
8
5
|
publisher_username = 'admin@csr.com'
|
9
6
|
publisher_password = 'password'
|
@@ -1,9 +1,5 @@
|
|
1
1
|
require_relative '../spec_helper'
|
2
2
|
|
3
|
-
#MachineShop.api_base_url= 'http://machineshop.dev:3000/api/v0'
|
4
|
-
MachineShop.api_base_url= 'http://stage.services.machineshop.io/api/v0'
|
5
|
-
|
6
|
-
#publisher_username = 'publisher@machineshop.com'
|
7
3
|
publisher_username = 'admin@csr.com'
|
8
4
|
publisher_password = 'password'
|
9
5
|
|
data/spec/lib/device_spec.rb
CHANGED
@@ -1,8 +1,5 @@
|
|
1
1
|
require_relative '../spec_helper'
|
2
2
|
|
3
|
-
#MachineShop.api_base_url= 'http://machineshop.dev:3000/api/v0'
|
4
|
-
MachineShop.api_base_url= 'http://stage.services.machineshop.io/api/v0'
|
5
|
-
|
6
3
|
#publisher_username = 'publisher@machineshop.com'
|
7
4
|
publisher_username = 'admin@csr.com'
|
8
5
|
publisher_password = 'password'
|
data/spec/lib/mapping_spec.rb
CHANGED
@@ -1,10 +1,7 @@
|
|
1
1
|
require_relative '../spec_helper'
|
2
2
|
|
3
|
-
#MachineShop.api_base_url= 'http://machineshop.dev:3000/api/v0'
|
4
|
-
MachineShop.api_base_url= 'http://stage.services.machineshop.io/api/v0'
|
5
|
-
|
6
3
|
#publisher_username = 'publisher@machineshop.com'
|
7
|
-
publisher_username = '
|
4
|
+
publisher_username = 'admin@csr.com'
|
8
5
|
publisher_password = 'password'
|
9
6
|
|
10
7
|
|
@@ -16,6 +13,7 @@ publisher_password = 'password'
|
|
16
13
|
describe MachineShop::Mapping do
|
17
14
|
|
18
15
|
it "should get a geocoded address" do
|
16
|
+
ap "geocoding address"
|
19
17
|
element_data = MachineShop::Mapping.geocode(
|
20
18
|
{
|
21
19
|
:address => "1600 Amphitheatre Parkway, Mountain View, CA",
|
@@ -23,6 +21,7 @@ describe MachineShop::Mapping do
|
|
23
21
|
},
|
24
22
|
auth_token)
|
25
23
|
|
24
|
+
ap element_data.as_json
|
26
25
|
#puts "GEO: #{element_data}"
|
27
26
|
|
28
27
|
element_data.should_not be_nil
|
@@ -30,6 +29,7 @@ describe MachineShop::Mapping do
|
|
30
29
|
end
|
31
30
|
|
32
31
|
it "should get directions" do
|
32
|
+
ap "getting directions"
|
33
33
|
element_data = MachineShop::Mapping.directions(
|
34
34
|
{
|
35
35
|
:origin => "Denver",
|
@@ -37,7 +37,7 @@ describe MachineShop::Mapping do
|
|
37
37
|
:sensor => "false"
|
38
38
|
},
|
39
39
|
auth_token)
|
40
|
-
|
40
|
+
# ap element_data.as_json
|
41
41
|
#puts "GEO: #{element_data}"
|
42
42
|
|
43
43
|
element_data.should_not be_nil
|
@@ -45,6 +45,7 @@ describe MachineShop::Mapping do
|
|
45
45
|
end
|
46
46
|
|
47
47
|
it "should get distance" do
|
48
|
+
ap "getting distance "
|
48
49
|
element_data = MachineShop::Mapping.distance(
|
49
50
|
{
|
50
51
|
:origins => "Vancouver BC",
|
@@ -54,7 +55,7 @@ describe MachineShop::Mapping do
|
|
54
55
|
:sensor => "false"
|
55
56
|
},
|
56
57
|
auth_token)
|
57
|
-
|
58
|
+
ap element_data.as_json
|
58
59
|
#puts "GEO: #{element_data}"
|
59
60
|
|
60
61
|
element_data.should_not be_nil
|
data/spec/lib/meter_spec.rb
CHANGED
@@ -1,10 +1,7 @@
|
|
1
1
|
require_relative '../spec_helper'
|
2
2
|
|
3
|
-
#MachineShop.api_base_url= 'http://machineshop.dev:3000/api/v0'
|
4
|
-
MachineShop.api_base_url= 'http://stage.services.machineshop.io/api/v0'
|
5
|
-
|
6
3
|
#publisher_username = 'publisher@machineshop.com'
|
7
|
-
publisher_username = '
|
4
|
+
publisher_username = 'admin@csr.com'
|
8
5
|
publisher_password = 'password'
|
9
6
|
|
10
7
|
|
@@ -19,7 +16,7 @@ describe MachineShop::Meter do
|
|
19
16
|
it "should get all meter data" do
|
20
17
|
element_data = MachineShop::Meter.all({}, auth_token)
|
21
18
|
|
22
|
-
|
19
|
+
puts "element_data from all: #{element_data}"
|
23
20
|
|
24
21
|
element_data.should_not be_nil
|
25
22
|
element_data.should_not be_empty
|
@@ -28,17 +25,20 @@ describe MachineShop::Meter do
|
|
28
25
|
it "should get meter by id " do
|
29
26
|
|
30
27
|
meter_id = element_data[0].id
|
28
|
+
ap "retrieving meter for id #{meter_id}"
|
31
29
|
|
32
30
|
# element_data = MachineShop::Meter.retrieve(meter_id, auth_token)
|
33
|
-
element_data = MachineShop::Meter.retrieve(
|
31
|
+
element_data = MachineShop::Meter.retrieve(meter_id, auth_token)
|
34
32
|
puts "meter by id : #{element_data}"
|
35
33
|
element_data.should_not be_nil
|
36
34
|
end
|
37
35
|
|
38
36
|
it "should get meters via a user" do
|
37
|
+
|
38
|
+
ap "meters by user "
|
39
39
|
element_data = user.meters
|
40
40
|
|
41
|
-
|
41
|
+
puts "meters via user: #{element_data}"
|
42
42
|
element_data.should_not be_nil
|
43
43
|
element_data.should_not be_empty
|
44
44
|
end
|
data/spec/lib/report_spec.rb
CHANGED
@@ -1,7 +1,5 @@
|
|
1
1
|
require_relative '../spec_helper'
|
2
2
|
|
3
|
-
#MachineShop.api_base_url= 'http://machineshop.dev:3000/api/v0'
|
4
|
-
MachineShop.api_base_url= 'http://stage.services.machineshop.io/api/v0'
|
5
3
|
|
6
4
|
#publisher_username = 'publisher@machineshop.com'
|
7
5
|
publisher_username = 'publisher@csr.com'
|
@@ -19,7 +17,9 @@ describe MachineShop::Report do
|
|
19
17
|
it "should get all report data" do
|
20
18
|
element_data = MachineShop::Report.all({}, auth_token)
|
21
19
|
reports=element_data
|
22
|
-
|
20
|
+
|
21
|
+
puts "yaaaaaaaaaaaaaaaaaaaaa"
|
22
|
+
puts "element_data: #{element_data}"
|
23
23
|
|
24
24
|
element_data.should_not be_nil
|
25
25
|
element_data.should_not be_empty
|
data/spec/lib/rule_spec.rb
CHANGED
@@ -1,9 +1,5 @@
|
|
1
1
|
require_relative '../spec_helper'
|
2
2
|
|
3
|
-
#MachineShop.api_base_url= 'http://machineshop.dev:3000/api/v0'
|
4
|
-
MachineShop.api_base_url= 'http://stage.services.machineshop.io/api/v0'
|
5
|
-
|
6
|
-
#publisher_username = 'publisher@machineshop.com'
|
7
3
|
publisher_username = 'admin@csr.com'
|
8
4
|
publisher_password = 'password'
|
9
5
|
|
data/spec/lib/user_spec.rb
CHANGED
@@ -1,10 +1,6 @@
|
|
1
1
|
require_relative '../spec_helper'
|
2
2
|
|
3
3
|
|
4
|
-
#MachineShop.api_base_url= 'http://machineshop.dev:3000/api/v0'
|
5
|
-
MachineShop.api_base_url= 'http://stage.services.machineshop.io/api/v0'
|
6
|
-
|
7
|
-
#publisher_username = 'publisher@machineshop.com'
|
8
4
|
publisher_username = 'admin@csr.com'
|
9
5
|
publisher_password = 'password'
|
10
6
|
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: machineshop
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- machineshop
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-07-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -110,6 +110,7 @@ files:
|
|
110
110
|
- LICENSE
|
111
111
|
- README.md
|
112
112
|
- Rakefile
|
113
|
+
- Readme_old.bkmMd
|
113
114
|
- doc.txt
|
114
115
|
- lib/machineshop.rb
|
115
116
|
- lib/machineshop/api_operations/create.rb
|
@@ -133,7 +134,6 @@ files:
|
|
133
134
|
- lib/machineshop/machineshop_object.rb
|
134
135
|
- lib/machineshop/mapping.rb
|
135
136
|
- lib/machineshop/meter.rb
|
136
|
-
- lib/machineshop/models/people.rb
|
137
137
|
- lib/machineshop/report.rb
|
138
138
|
- lib/machineshop/rule.rb
|
139
139
|
- lib/machineshop/user.rb
|