rail-locator-api 0.1.24 → 0.1.32

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 290c5d8b74fbc188890e90edae5bc52673ebd73663839f24077f947faf531c54
4
- data.tar.gz: eb9419b7a0be176f397c2b6277b5e2e9d803ee3955086d5c906a137c57d32875
3
+ metadata.gz: 010b8eebc008a19fb48adfe1ec30c3319b0617ae0d16a0dfa97e9c39260d0869
4
+ data.tar.gz: 47f584ea0d3f67d553d82975bd0f84b4768ae78cc2ed45629a7a6964407463ea
5
5
  SHA512:
6
- metadata.gz: dc3072113e79d02dcb84e6c58c39c8e4a8f80d42fc644df8b39bad886fa9ae79eca9cb6d531ae835d7218d5a4ece3f7348aec08e43d7b1370cdc32bf5b3f32fa
7
- data.tar.gz: b675718f4cee3bbe363e9f65eb018e513e480a9ff406843403e0b8e4892b1a7c5eb86943d54f4dcff1e46bdeccea8785d82f35ff31b4295b03e9776292b17893
6
+ metadata.gz: 68770511d3498591f8c630f5149da2cf97f27b97e2ab32bbd80e0c2f06e9fe26b31e96368b7c57efd7d3dbdb6dd7d1d59820aab29a9054aa0f7923374ad48c10
7
+ data.tar.gz: 5b7ef346980f0ebc01b7df58cc62c00c590744828595683f8f2ead25a69c321413f4a7a5fbbac3811468cb58e33af2a486b93cce5df397540ab42b519a00ff1c
@@ -8,7 +8,7 @@ RailLocatorApi.setup do |config|
8
8
  config::register k.underscore.to_sym, v
9
9
  end
10
10
 
11
- config::Request.api_key ||= ENV['API_KEY']
11
+ #config::Request.api_key ||= ENV['API_KEY']
12
12
 
13
13
  config::Request.api_user_email ||= ENV['API_USER_EMAIL']
14
14
  config::Request.api_user_password ||= ENV['API_USER_PASSWORD']
@@ -5,26 +5,34 @@ module RailLocatorApi
5
5
  @request_builder = builder
6
6
  end
7
7
 
8
- def post(params: nil, headers: nil, suffix: nil, body: {})
8
+ def post(params: nil, headers: nil, format: nil, body: {})
9
9
  validate_api_key
10
10
  begin
11
- response = self.rest_client(suffix).post do |request|
11
+ response = self.rest_client(format).post do |request|
12
12
  configure_request(request: request, params: params, headers: headers, body: body)
13
13
  end
14
- parse_response(response)
14
+ if [nil, 'json'].include?(format)
15
+ parse_response(response)
16
+ else
17
+ response
18
+ end
15
19
  rescue => e
16
20
  handle_error(e)
17
21
  end
18
22
  end
19
23
 
20
- def get(params: nil, headers: nil, body: {})
24
+ def get(params: nil, headers: nil, format: nil, body: {})
21
25
  validate_api_key
22
26
 
23
27
  begin
24
- response = self.rest_client.get do |request|
28
+ response = self.rest_client(format).get do |request|
25
29
  configure_request(request: request, params: params, headers: headers, body: body)
26
30
  end
27
- parse_response(response)
31
+ if [nil, 'json'].include?(format)
32
+ parse_response(response)
33
+ else
34
+ response
35
+ end
28
36
  rescue => e
29
37
  handle_error(e)
30
38
  end
@@ -162,8 +170,8 @@ module RailLocatorApi
162
170
  end
163
171
  end
164
172
 
165
- def rest_client(suffix=nil)
166
- client = Faraday.new("#{self.api_url}#{suffix.present? ? "/#{suffix}": ""}", proxy: self.proxy,
173
+ def rest_client(format=nil)
174
+ client = Faraday.new("#{self.api_url}#{format.present? ? ".#{format}": ""}", proxy: self.proxy,
167
175
  ssl: self.ssl_options) do |faraday|
168
176
  faraday.request :gzip
169
177
  faraday.response :raise_error
@@ -213,11 +221,26 @@ module RailLocatorApi
213
221
  end
214
222
 
215
223
  def api_url
216
- base_api_url + @request_builder.path
224
+ case @request_builder.path_parts.first
225
+ when "lk"
226
+ lk_api_url
227
+ when "app"
228
+ app_api_url
229
+ else
230
+ base_api_url
231
+ end + @request_builder.path
217
232
  end
218
233
 
219
234
  def base_api_url
220
235
  "#{RailLocatorApi.api_endpoint}/api/v2.0/"
221
236
  end
237
+
238
+ def lk_api_url
239
+ "https://rail-locator.com/"
240
+ end
241
+
242
+ def app_api_url
243
+ "http://192.168.1.129:1488/"
244
+ end
222
245
  end
223
246
  end
@@ -20,16 +20,21 @@ module RailLocatorApi
20
20
 
21
21
  @api_user_id = api_user_id
22
22
 
23
- @access_token = access_token || self.class.access_token || RailLocatorApi.generate_access_token.try(:dig, "access_token")
24
- @access_token = @access_token.strip if @access_token
25
- @refresh_token = refresh_token || self.class.refresh_token
26
- @refresh_token = @refresh_token.strip if @refresh_token
23
+ if @api_key == :keycloak
24
+ @access_token = access_token || self.class.access_token || RailLocatorApi.generate_access_token.try(:dig, "access_token")
25
+ @access_token = @access_token.strip if @access_token
26
+ @refresh_token = refresh_token || self.class.refresh_token
27
+ @refresh_token = @refresh_token.strip if @refresh_token
28
+ else
29
+ @access_token = ""
30
+ @refresh_token = ""
31
+ end
27
32
 
28
33
  @api_user_email = api_user_email || ENV['API_USER_EMAIL'] || ""
29
34
  @api_user_password = api_user_password || ENV['API_USER_PASSWORD'] || ""
30
35
  @api_endpoint = api_endpoint || self.class.api_endpoint
31
36
  @api_endpoint = RailLocatorApi::api_endpoint if @api_endpoint.nil?
32
- @api_auth_method = api_auth_method || DEFAULT_AUTH_METHOD
37
+ @api_auth_method = api_auth_method || RailLocatorApi::api_auth_method || DEFAULT_AUTH_METHOD
33
38
  @timeout = timeout || self.class.timeout || DEFAULT_TIMEOUT
34
39
  @open_timeout = open_timeout || self.class.open_timeout || DEFAULT_OPEN_TIMEOUT
35
40
  @proxy = proxy || self.class.proxy || ENV['RAIL_LOCATOR_API_PROXY']
@@ -62,24 +67,28 @@ module RailLocatorApi
62
67
  end
63
68
  end
64
69
 
70
+ def path_parts
71
+ @path_parts
72
+ end
73
+
65
74
  def path
66
75
  @path_parts.join('/')
67
76
  end
68
77
 
69
- def create(params: nil, headers: nil, body: {})
70
- APIRequest.new(builder: self).post(params: params, headers: headers, body: body)
78
+ def create(params: nil, headers: nil, body: {}, format: nil)
79
+ APIRequest.new(builder: self).post(params: params, headers: headers, body: body, format: format)
71
80
  ensure
72
81
  reset
73
82
  end
74
83
 
75
- def update(params: nil, headers: nil, body: {})
76
- APIRequest.new(builder: self).post(params: params, headers: headers, body: body)
84
+ def update(params: nil, headers: nil, body: {}, format: nil)
85
+ APIRequest.new(builder: self).post(params: params, headers: headers, body: body, format: format)
77
86
  ensure
78
87
  reset
79
88
  end
80
89
 
81
- def retrieve(params: nil, headers: nil, body: {})
82
- APIRequest.new(builder: self).get(params: params, headers: headers, body: body)
90
+ def retrieve(params: nil, headers: nil, body: {}, format: nil)
91
+ APIRequest.new(builder: self).get(params: params, headers: headers, body: body, format: format)
83
92
  ensure
84
93
  reset
85
94
  end
@@ -1,3 +1,3 @@
1
1
  module RailLocatorApi
2
- VERSION = "0.1.24"
2
+ VERSION = "0.1.32"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rail-locator-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.24
4
+ version: 0.1.32
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pavel Osetrov