zaikio-procurement 2.0.2 → 2.1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3988031a3de9df926e698e7c6edde38c3ccaf786d000065bc975fe73968331f2
4
- data.tar.gz: c274278cb47f38b6f1da852c858a875a3bf071094d9174b39e8cdfed8a973662
3
+ metadata.gz: f514551c75276723f89ef84fe2888072c00dcb6f44d0237d54cc11821517507c
4
+ data.tar.gz: 3c3db09e362d8573b187a2e1821adacc0cb720415e09575dd4c27ffad22553c7
5
5
  SHA512:
6
- metadata.gz: aa0198402afb6ac9bac3e2597c31b59faa7af3bf0eae63be272e70469cb1cbf6065dac500c9e4463e595896819be49db9c725f17a7a8dd73db87beaee6358598
7
- data.tar.gz: 39a24cc39d1153664bdba7b8918a90b4dabf80490b898b271184bd52ce1fe77ed3219733dbe095695b09f5de6d9d9748b98b3a0a21d7c72acf308e99364aa1c6
6
+ metadata.gz: 4982b2fcf2cdf1ef0bb2c3d13d82636935eb455419f5252b8e49183f8bb57aef751af61ee6bb49d836b917c1763ec41829beb751d1303c9afcc946cb8f3593a4
7
+ data.tar.gz: 62eb46093fde1d29b43ebb3573882df0df1ab914968f44c693d113525c32ba114d43313e3e2f5739db19605841faa1a6db8c11a8e79d274be613e16ccab6146e
@@ -2,38 +2,15 @@ require "logger"
2
2
 
3
3
  module Zaikio
4
4
  module Procurement
5
- class Configuration
6
- HOSTS = {
7
- development: "https://procurement.zaikio.test/api/v2/",
8
- test: "https://procurement.zaikio.test/api/v2/",
9
- staging: "https://procurement.staging.zaikio.com/api/v2/",
10
- sandbox: "https://procurement.sandbox.zaikio.com/api/v2/",
11
- production: "https://procurement.zaikio.com/api/v2/"
12
- }.freeze
13
-
14
- attr_accessor :host
15
- attr_reader :environment
16
- attr_writer :logger
17
-
18
- def initialize
19
- @environment = :sandbox
20
- end
21
-
22
- def logger
23
- @logger ||= Logger.new($stdout)
24
- end
25
-
26
- def environment=(env)
27
- @environment = env.to_sym
28
- @host = host_for(environment)
29
- end
30
-
31
- private
32
-
33
- def host_for(environment)
34
- HOSTS.fetch(environment) do
35
- raise StandardError.new, "Invalid Zaikio::Procurement environment '#{environment}'"
36
- end
5
+ class Configuration < Zaikio::Client::Helpers::Configuration
6
+ def self.hosts
7
+ {
8
+ development: "https://procurement.zaikio.test/api/v2/",
9
+ test: "https://procurement.zaikio.test/api/v2/",
10
+ staging: "https://procurement.staging.zaikio.com/api/v2/",
11
+ sandbox: "https://procurement.sandbox.zaikio.com/api/v2/",
12
+ production: "https://procurement.zaikio.com/api/v2/"
13
+ }.freeze
37
14
  end
38
15
  end
39
16
  end
@@ -1,5 +1,5 @@
1
1
  module Zaikio
2
2
  module Procurement
3
- VERSION = "2.0.2".freeze
3
+ VERSION = "2.1.0".freeze
4
4
  end
5
5
  end
@@ -2,7 +2,6 @@ require "faraday"
2
2
  require "spyke"
3
3
  require "zaikio-client-helpers"
4
4
  require "zaikio/procurement/configuration"
5
- require "zaikio/procurement/authorization_middleware"
6
5
 
7
6
  # Models
8
7
  require "zaikio/procurement/base"
@@ -40,24 +39,12 @@ module Zaikio
40
39
  Base.connection = create_connection
41
40
  end
42
41
 
43
- def with_token(token)
44
- original_token = AuthorizationMiddleware.token
45
- AuthorizationMiddleware.token = token
46
- yield
47
- ensure
48
- AuthorizationMiddleware.token = original_token
42
+ def with_token(token, &block)
43
+ Zaikio::Client.with_token(token, &block)
49
44
  end
50
45
 
51
46
  def create_connection
52
- self.connection = Faraday.new(url: configuration.host,
53
- ssl: { verify: configuration.environment != :test }) do |c|
54
- c.request :json
55
- c.response :logger, configuration&.logger, headers: false
56
- c.use Zaikio::Client::Helpers::Pagination::FaradayMiddleware
57
- c.use Zaikio::Client::Helpers::JSONParser
58
- c.use AuthorizationMiddleware
59
- c.adapter Faraday.default_adapter
60
- end
47
+ self.connection = Zaikio::Client.create_connection(configuration)
61
48
  end
62
49
  end
63
50
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zaikio-procurement
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.2
4
+ version: 2.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Zaikio GmbH
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2022-08-05 00:00:00.000000000 Z
12
+ date: 2022-08-15 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: concurrent-ruby
@@ -25,20 +25,6 @@ dependencies:
25
25
  - - ">="
26
26
  - !ruby/object:Gem::Version
27
27
  version: '0'
28
- - !ruby/object:Gem::Dependency
29
- name: jwt
30
- requirement: !ruby/object:Gem::Requirement
31
- requirements:
32
- - - ">="
33
- - !ruby/object:Gem::Version
34
- version: '0'
35
- type: :runtime
36
- prerelease: false
37
- version_requirements: !ruby/object:Gem::Requirement
38
- requirements:
39
- - - ">="
40
- - !ruby/object:Gem::Version
41
- version: '0'
42
28
  - !ruby/object:Gem::Dependency
43
29
  name: multi_json
44
30
  requirement: !ruby/object:Gem::Requirement
@@ -87,14 +73,14 @@ dependencies:
87
73
  requirements:
88
74
  - - "~>"
89
75
  - !ruby/object:Gem::Version
90
- version: '0.2'
76
+ version: '0.3'
91
77
  type: :runtime
92
78
  prerelease: false
93
79
  version_requirements: !ruby/object:Gem::Requirement
94
80
  requirements:
95
81
  - - "~>"
96
82
  - !ruby/object:Gem::Version
97
- version: '0.2'
83
+ version: '0.3'
98
84
  description: Ruby API Client for Zaikio's Procurement Platform
99
85
  email:
100
86
  - sw@zaikio.com
@@ -108,7 +94,6 @@ files:
108
94
  - lib/zaikio/procurement.rb
109
95
  - lib/zaikio/procurement/address.rb
110
96
  - lib/zaikio/procurement/article.rb
111
- - lib/zaikio/procurement/authorization_middleware.rb
112
97
  - lib/zaikio/procurement/availability.rb
113
98
  - lib/zaikio/procurement/base.rb
114
99
  - lib/zaikio/procurement/configuration.rb
@@ -1,30 +0,0 @@
1
- require "faraday"
2
- require "jwt"
3
- require "concurrent"
4
-
5
- module Zaikio
6
- module Procurement
7
- class AuthorizationMiddleware < Faraday::Middleware
8
- def self.token
9
- @token ||= Concurrent::ThreadLocalVar.new { nil }
10
- @token.value
11
- end
12
-
13
- def self.token=(value)
14
- @token ||= Concurrent::ThreadLocalVar.new { nil }
15
- @token.value = value
16
- end
17
-
18
- def self.reset_token
19
- self.token = nil
20
- end
21
-
22
- def call(request_env)
23
- request_env[:request_headers]["Authorization"] = "Bearer #{self.class.token}" if self.class.token
24
-
25
- @app.call(request_env).on_complete do |response_env|
26
- end
27
- end
28
- end
29
- end
30
- end