rose-nielsen-sdk 0.0.2 → 0.0.3
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 +60 -18
- data/lib/{cypress_test_api → swagger_petstore}/api_helper.rb +2 -2
- data/lib/swagger_petstore/client.rb +84 -0
- data/lib/{cypress_test_api → swagger_petstore}/configuration.rb +41 -17
- data/lib/{cypress_test_api → swagger_petstore}/controllers/base_controller.rb +2 -2
- data/lib/swagger_petstore/controllers/pet_controller.rb +206 -0
- data/lib/swagger_petstore/controllers/store_controller.rb +94 -0
- data/lib/swagger_petstore/controllers/user_controller.rb +165 -0
- data/lib/{cypress_test_api → swagger_petstore}/exceptions/api_exception.rb +2 -2
- data/lib/swagger_petstore/exceptions/o_auth_provider_exception.rb +64 -0
- data/lib/swagger_petstore/http/auth/api_key.rb +42 -0
- data/lib/swagger_petstore/http/auth/http_basic.rb +50 -0
- data/lib/swagger_petstore/http/auth/petstore_auth.rb +98 -0
- data/lib/{cypress_test_api → swagger_petstore}/http/http_call_back.rb +2 -2
- data/lib/{cypress_test_api → swagger_petstore}/http/http_method_enum.rb +2 -2
- data/lib/{cypress_test_api → swagger_petstore}/http/http_request.rb +2 -2
- data/lib/{cypress_test_api → swagger_petstore}/http/http_response.rb +2 -2
- data/lib/{cypress_test_api → swagger_petstore}/http/proxy_settings.rb +2 -2
- data/lib/{cypress_test_api/models/message2.rb → swagger_petstore/models/api_response.rb} +24 -14
- data/lib/{cypress_test_api → swagger_petstore}/models/base_model.rb +2 -2
- data/lib/{cypress_test_api/models/item_response.rb → swagger_petstore/models/category.rb} +10 -19
- data/lib/{cypress_test_api/models/deer.rb → swagger_petstore/models/category2.rb} +21 -18
- data/lib/swagger_petstore/models/content_type_enum.rb +20 -0
- data/lib/swagger_petstore/models/o_auth_provider_error_enum.rb +45 -0
- data/lib/swagger_petstore/models/o_auth_scope_petstore_auth_enum.rb +23 -0
- data/lib/swagger_petstore/models/o_auth_token.rb +96 -0
- data/lib/swagger_petstore/models/order.rb +120 -0
- data/lib/swagger_petstore/models/pet.rb +117 -0
- data/lib/swagger_petstore/models/pet_request.rb +117 -0
- data/lib/swagger_petstore/models/status1_enum.rb +26 -0
- data/lib/swagger_petstore/models/status2_enum.rb +26 -0
- data/lib/{cypress_test_api → swagger_petstore}/models/status_enum.rb +9 -9
- data/lib/swagger_petstore/models/store_order_request.rb +120 -0
- data/lib/{cypress_test_api/models/response_http404.rb → swagger_petstore/models/tag.rb} +18 -9
- data/lib/swagger_petstore/models/user.rb +132 -0
- data/lib/swagger_petstore/models/user_request.rb +132 -0
- data/lib/{cypress_test_api → swagger_petstore}/utilities/date_time_helper.rb +2 -2
- data/lib/{cypress_test_api → swagger_petstore}/utilities/file_wrapper.rb +2 -2
- data/lib/swagger_petstore.rb +62 -0
- data/test/controllers/controller_test_base.rb +13 -5
- data/test/controllers/test_store_controller.rb +31 -0
- data/test/http_response_catcher.rb +2 -2
- metadata +40 -33
- data/lib/cypress_test_api/client.rb +0 -47
- data/lib/cypress_test_api/controllers/api_controller.rb +0 -102
- data/lib/cypress_test_api/models/custom_enum.rb +0 -26
- data/lib/cypress_test_api/models/item.rb +0 -166
- data/lib/cypress_test_api/models/lion.rb +0 -68
- data/lib/cypress_test_api/models/message.rb +0 -68
- data/lib/cypress_test_api/models/multiple_arrays_request.rb +0 -70
- data/lib/cypress_test_api/models/nac_tag.rb +0 -265
- data/lib/cypress_test_api/models/o_auth_scope_o_auth_acg_enum.rb +0 -29
- data/lib/cypress_test_api/models/response_http400.rb +0 -62
- data/lib/cypress_test_api/models/status11_enum.rb +0 -26
- data/lib/cypress_test_api/models/status1_enum.rb +0 -26
- data/lib/cypress_test_api/models/tokens_request.rb +0 -60
- data/lib/cypress_test_api.rb +0 -55
- data/test/controllers/test_api_controller.rb +0 -40
@@ -0,0 +1,94 @@
|
|
1
|
+
# swagger_petstore
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v3.0
|
4
|
+
# ( https://www.apimatic.io ).
|
5
|
+
|
6
|
+
module SwaggerPetstore
|
7
|
+
# StoreController
|
8
|
+
class StoreController < BaseController
|
9
|
+
# For valid response try integer IDs with value >= 1 and <= 10. Other values
|
10
|
+
# will generated exceptions
|
11
|
+
# @param [Integer] order_id Required parameter: ID of pet that needs to be
|
12
|
+
# fetched
|
13
|
+
# @return [Order] Response from the API call.
|
14
|
+
def get_order_by_id(order_id)
|
15
|
+
@api_call
|
16
|
+
.request(new_request_builder(HttpMethodEnum::GET,
|
17
|
+
'/store/order/{orderId}',
|
18
|
+
Server::DEFAULT)
|
19
|
+
.template_param(new_parameter(order_id, key: 'orderId')
|
20
|
+
.should_encode(true))
|
21
|
+
.header_param(new_parameter('application/json', key: 'accept')))
|
22
|
+
.response(new_response_handler
|
23
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
24
|
+
.deserialize_into(Order.method(:from_hash))
|
25
|
+
.local_error('400',
|
26
|
+
'Invalid ID supplied',
|
27
|
+
APIException)
|
28
|
+
.local_error('404',
|
29
|
+
'Order not found',
|
30
|
+
APIException))
|
31
|
+
.execute
|
32
|
+
end
|
33
|
+
|
34
|
+
# For valid response try integer IDs with positive integer value. Negative
|
35
|
+
# or non-integer values will generate API errors
|
36
|
+
# @param [Integer] order_id Required parameter: ID of the order that needs
|
37
|
+
# to be deleted
|
38
|
+
# @return [void] Response from the API call.
|
39
|
+
def delete_order(order_id)
|
40
|
+
@api_call
|
41
|
+
.request(new_request_builder(HttpMethodEnum::DELETE,
|
42
|
+
'/store/order/{orderId}',
|
43
|
+
Server::DEFAULT)
|
44
|
+
.template_param(new_parameter(order_id, key: 'orderId')
|
45
|
+
.should_encode(true)))
|
46
|
+
.response(new_response_handler
|
47
|
+
.is_response_void(true)
|
48
|
+
.local_error('400',
|
49
|
+
'Invalid ID supplied',
|
50
|
+
APIException)
|
51
|
+
.local_error('404',
|
52
|
+
'Order not found',
|
53
|
+
APIException))
|
54
|
+
.execute
|
55
|
+
end
|
56
|
+
|
57
|
+
# Returns a map of status codes to quantities
|
58
|
+
# @return [Hash[String, Integer]] Response from the API call.
|
59
|
+
def get_inventory
|
60
|
+
@api_call
|
61
|
+
.request(new_request_builder(HttpMethodEnum::GET,
|
62
|
+
'/store/inventory',
|
63
|
+
Server::DEFAULT)
|
64
|
+
.auth(Single.new('api_key')))
|
65
|
+
.response(new_response_handler
|
66
|
+
.deserializer(APIHelper.method(:deserialize_primitive_types))
|
67
|
+
.deserialize_into(proc do |response| response&.to_i end)
|
68
|
+
.is_primitive_response(true))
|
69
|
+
.execute
|
70
|
+
end
|
71
|
+
|
72
|
+
# Place an order for a pet
|
73
|
+
# @param [StoreOrderRequest] body Required parameter: order placed for
|
74
|
+
# purchasing the pet
|
75
|
+
# @return [Order] Response from the API call.
|
76
|
+
def place_order(body)
|
77
|
+
@api_call
|
78
|
+
.request(new_request_builder(HttpMethodEnum::POST,
|
79
|
+
'/store/order',
|
80
|
+
Server::DEFAULT)
|
81
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
82
|
+
.body_param(new_parameter(body))
|
83
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
84
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end))
|
85
|
+
.response(new_response_handler
|
86
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
87
|
+
.deserialize_into(Order.method(:from_hash))
|
88
|
+
.local_error('400',
|
89
|
+
'Invalid Order',
|
90
|
+
APIException))
|
91
|
+
.execute
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
@@ -0,0 +1,165 @@
|
|
1
|
+
# swagger_petstore
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v3.0
|
4
|
+
# ( https://www.apimatic.io ).
|
5
|
+
|
6
|
+
module SwaggerPetstore
|
7
|
+
# UserController
|
8
|
+
class UserController < BaseController
|
9
|
+
# Creates list of users with given input array
|
10
|
+
# @param [Array[User]] body Required parameter: List of user object
|
11
|
+
# @return [void] Response from the API call.
|
12
|
+
def create_users_with_list_input(body)
|
13
|
+
@api_call
|
14
|
+
.request(new_request_builder(HttpMethodEnum::POST,
|
15
|
+
'/user/createWithList',
|
16
|
+
Server::DEFAULT)
|
17
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
18
|
+
.body_param(new_parameter(body))
|
19
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end))
|
20
|
+
.response(new_response_handler
|
21
|
+
.is_response_void(true))
|
22
|
+
.execute
|
23
|
+
end
|
24
|
+
|
25
|
+
# Get user by user name
|
26
|
+
# @param [String] username Required parameter: The name that needs to be
|
27
|
+
# fetched. Use user1 for testing.
|
28
|
+
# @return [User] Response from the API call.
|
29
|
+
def get_user_by_name(username)
|
30
|
+
@api_call
|
31
|
+
.request(new_request_builder(HttpMethodEnum::GET,
|
32
|
+
'/user/{username}',
|
33
|
+
Server::DEFAULT)
|
34
|
+
.template_param(new_parameter(username, key: 'username')
|
35
|
+
.should_encode(true))
|
36
|
+
.header_param(new_parameter('application/json', key: 'accept')))
|
37
|
+
.response(new_response_handler
|
38
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
39
|
+
.deserialize_into(User.method(:from_hash))
|
40
|
+
.local_error('400',
|
41
|
+
'Invalid username supplied',
|
42
|
+
APIException)
|
43
|
+
.local_error('404',
|
44
|
+
'User not found',
|
45
|
+
APIException))
|
46
|
+
.execute
|
47
|
+
end
|
48
|
+
|
49
|
+
# This can only be done by the logged in user.
|
50
|
+
# @param [String] username Required parameter: name that need to be
|
51
|
+
# updated
|
52
|
+
# @param [UserRequest] body Required parameter: Updated user object
|
53
|
+
# @return [void] Response from the API call.
|
54
|
+
def update_user(username,
|
55
|
+
body)
|
56
|
+
@api_call
|
57
|
+
.request(new_request_builder(HttpMethodEnum::PUT,
|
58
|
+
'/user/{username}',
|
59
|
+
Server::DEFAULT)
|
60
|
+
.template_param(new_parameter(username, key: 'username')
|
61
|
+
.should_encode(true))
|
62
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
63
|
+
.body_param(new_parameter(body))
|
64
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end))
|
65
|
+
.response(new_response_handler
|
66
|
+
.is_response_void(true)
|
67
|
+
.local_error('400',
|
68
|
+
'Invalid user supplied',
|
69
|
+
APIException)
|
70
|
+
.local_error('404',
|
71
|
+
'User not found',
|
72
|
+
APIException))
|
73
|
+
.execute
|
74
|
+
end
|
75
|
+
|
76
|
+
# This can only be done by the logged in user.
|
77
|
+
# @param [String] username Required parameter: The name that needs to be
|
78
|
+
# deleted
|
79
|
+
# @return [void] Response from the API call.
|
80
|
+
def delete_user(username)
|
81
|
+
@api_call
|
82
|
+
.request(new_request_builder(HttpMethodEnum::DELETE,
|
83
|
+
'/user/{username}',
|
84
|
+
Server::DEFAULT)
|
85
|
+
.template_param(new_parameter(username, key: 'username')
|
86
|
+
.should_encode(true)))
|
87
|
+
.response(new_response_handler
|
88
|
+
.is_response_void(true)
|
89
|
+
.local_error('400',
|
90
|
+
'Invalid username supplied',
|
91
|
+
APIException)
|
92
|
+
.local_error('404',
|
93
|
+
'User not found',
|
94
|
+
APIException))
|
95
|
+
.execute
|
96
|
+
end
|
97
|
+
|
98
|
+
# Logs out current logged in user session
|
99
|
+
# @return [void] Response from the API call.
|
100
|
+
def logout_user
|
101
|
+
@api_call
|
102
|
+
.request(new_request_builder(HttpMethodEnum::GET,
|
103
|
+
'/user/logout',
|
104
|
+
Server::DEFAULT))
|
105
|
+
.response(new_response_handler
|
106
|
+
.is_response_void(true))
|
107
|
+
.execute
|
108
|
+
end
|
109
|
+
|
110
|
+
# This can only be done by the logged in user.
|
111
|
+
# @param [UserRequest] body Required parameter: Created user object
|
112
|
+
# @return [void] Response from the API call.
|
113
|
+
def create_user(body)
|
114
|
+
@api_call
|
115
|
+
.request(new_request_builder(HttpMethodEnum::POST,
|
116
|
+
'/user',
|
117
|
+
Server::DEFAULT)
|
118
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
119
|
+
.body_param(new_parameter(body))
|
120
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end))
|
121
|
+
.response(new_response_handler
|
122
|
+
.is_response_void(true))
|
123
|
+
.execute
|
124
|
+
end
|
125
|
+
|
126
|
+
# Creates list of users with given input array
|
127
|
+
# @param [Array[User]] body Required parameter: List of user object
|
128
|
+
# @return [void] Response from the API call.
|
129
|
+
def create_users_with_array_input(body)
|
130
|
+
@api_call
|
131
|
+
.request(new_request_builder(HttpMethodEnum::POST,
|
132
|
+
'/user/createWithArray',
|
133
|
+
Server::DEFAULT)
|
134
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
135
|
+
.body_param(new_parameter(body))
|
136
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end))
|
137
|
+
.response(new_response_handler
|
138
|
+
.is_response_void(true))
|
139
|
+
.execute
|
140
|
+
end
|
141
|
+
|
142
|
+
# Logs user into the system
|
143
|
+
# @param [String] username Required parameter: The user name for login
|
144
|
+
# @param [String] password Required parameter: The password for login in
|
145
|
+
# clear text
|
146
|
+
# @return [String] Response from the API call.
|
147
|
+
def login_user(username,
|
148
|
+
password)
|
149
|
+
@api_call
|
150
|
+
.request(new_request_builder(HttpMethodEnum::GET,
|
151
|
+
'/user/login',
|
152
|
+
Server::DEFAULT)
|
153
|
+
.query_param(new_parameter(username, key: 'username'))
|
154
|
+
.query_param(new_parameter(password, key: 'password')))
|
155
|
+
.response(new_response_handler
|
156
|
+
.deserializer(APIHelper.method(:deserialize_primitive_types))
|
157
|
+
.deserialize_into(proc do |response| response&.to_s end)
|
158
|
+
.is_primitive_response(true)
|
159
|
+
.local_error('400',
|
160
|
+
'Invalid username/password supplied',
|
161
|
+
APIException))
|
162
|
+
.execute
|
163
|
+
end
|
164
|
+
end
|
165
|
+
end
|
@@ -1,9 +1,9 @@
|
|
1
|
-
#
|
1
|
+
# swagger_petstore
|
2
2
|
#
|
3
3
|
# This file was automatically generated by APIMATIC v3.0
|
4
4
|
# ( https://www.apimatic.io ).
|
5
5
|
|
6
|
-
module
|
6
|
+
module SwaggerPetstore
|
7
7
|
# Class for exceptions when there is a network error, status code error, etc.
|
8
8
|
class APIException < CoreLibrary::ApiException
|
9
9
|
# Provides a human-readable string representation of the object.
|
@@ -0,0 +1,64 @@
|
|
1
|
+
# swagger_petstore
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v3.0
|
4
|
+
# ( https://www.apimatic.io ).
|
5
|
+
|
6
|
+
module SwaggerPetstore
|
7
|
+
# OAuth 2 Authorization endpoint exception.
|
8
|
+
class OAuthProviderException < APIException
|
9
|
+
SKIP = Object.new
|
10
|
+
private_constant :SKIP
|
11
|
+
|
12
|
+
# Gets or sets error code.
|
13
|
+
# @return [OAuthProviderErrorEnum]
|
14
|
+
attr_accessor :error
|
15
|
+
|
16
|
+
# Gets or sets human-readable text providing additional information on
|
17
|
+
# error.
|
18
|
+
# Used to assist the client developer in understanding the error that
|
19
|
+
# occurred.
|
20
|
+
# @return [String]
|
21
|
+
attr_accessor :error_description
|
22
|
+
|
23
|
+
# Gets or sets a URI identifying a human-readable web page with information
|
24
|
+
# about the error, used to provide the client developer with additional
|
25
|
+
# information about the error.
|
26
|
+
# @return [String]
|
27
|
+
attr_accessor :error_uri
|
28
|
+
|
29
|
+
# The constructor.
|
30
|
+
# @param [String] reason The reason for raising an exception.
|
31
|
+
# @param [HttpResponse] response The HttpReponse of the API call.
|
32
|
+
def initialize(reason, response)
|
33
|
+
super(reason, response)
|
34
|
+
hash = APIHelper.json_deserialize(@response.raw_body)
|
35
|
+
unbox(hash)
|
36
|
+
end
|
37
|
+
|
38
|
+
# Populates this object by extracting properties from a hash.
|
39
|
+
# @param [Hash] hash The deserialized response sent by the server in the
|
40
|
+
# response body.
|
41
|
+
def unbox(hash)
|
42
|
+
return nil unless hash
|
43
|
+
|
44
|
+
@error = hash.key?('error') ? hash['error'] : nil
|
45
|
+
@error_description =
|
46
|
+
hash.key?('error_description') ? hash['error_description'] : SKIP
|
47
|
+
@error_uri = hash.key?('error_uri') ? hash['error_uri'] : SKIP
|
48
|
+
end
|
49
|
+
|
50
|
+
# Provides a human-readable string representation of the object.
|
51
|
+
def to_s
|
52
|
+
class_name = self.class.name.split('::').last
|
53
|
+
"<#{class_name} error: #{@error}, error_description: #{@error_description}, error_uri:"\
|
54
|
+
" #{@error_uri}>"
|
55
|
+
end
|
56
|
+
|
57
|
+
# Provides a debugging-friendly string with detailed object information.
|
58
|
+
def inspect
|
59
|
+
class_name = self.class.name.split('::').last
|
60
|
+
"<#{class_name} error: #{@error.inspect}, error_description: #{@error_description.inspect},"\
|
61
|
+
" error_uri: #{@error_uri.inspect}>"
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
# swagger_petstore
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v3.0
|
4
|
+
# ( https://www.apimatic.io ).
|
5
|
+
|
6
|
+
module SwaggerPetstore
|
7
|
+
# Utility class for custom header authorization.
|
8
|
+
class ApiKey < CoreLibrary::HeaderAuth
|
9
|
+
# Display error message on occurrence of authentication failure.
|
10
|
+
# @returns [String] The oAuth error message.
|
11
|
+
def error_message
|
12
|
+
'ApiKey: api_key is undefined.'
|
13
|
+
end
|
14
|
+
|
15
|
+
# Initialization constructor.
|
16
|
+
def initialize(api_key_credentials)
|
17
|
+
auth_params = {}
|
18
|
+
auth_params['api_key'] = api_key_credentials.api_key unless
|
19
|
+
api_key_credentials.nil? || api_key_credentials.api_key.nil?
|
20
|
+
|
21
|
+
super auth_params
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
# Data class for ApiKeyCredentials.
|
26
|
+
# Data class for ApiKeyCredentials.
|
27
|
+
class ApiKeyCredentials
|
28
|
+
attr_reader :api_key
|
29
|
+
|
30
|
+
def initialize(api_key:)
|
31
|
+
raise ArgumentError, 'api_key cannot be nil' if api_key.nil?
|
32
|
+
|
33
|
+
@api_key = api_key
|
34
|
+
end
|
35
|
+
|
36
|
+
def clone_with(api_key: nil)
|
37
|
+
api_key ||= self.api_key
|
38
|
+
|
39
|
+
ApiKeyCredentials.new(api_key: api_key)
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
@@ -0,0 +1,50 @@
|
|
1
|
+
# swagger_petstore
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v3.0
|
4
|
+
# ( https://www.apimatic.io ).
|
5
|
+
|
6
|
+
module SwaggerPetstore
|
7
|
+
# Utility class for basic authorization.
|
8
|
+
class HttpBasic < CoreLibrary::HeaderAuth
|
9
|
+
include CoreLibrary
|
10
|
+
# Display error message on occurrence of authentication failure.
|
11
|
+
# @returns [String] The oAuth error message.
|
12
|
+
def error_message
|
13
|
+
'HttpBasic: username or passwprd is undefined.'
|
14
|
+
end
|
15
|
+
|
16
|
+
# Initialization constructor.
|
17
|
+
def initialize(http_basic_credentials)
|
18
|
+
auth_params = {}
|
19
|
+
unless http_basic_credentials.nil? ||
|
20
|
+
http_basic_credentials.username.nil? ||
|
21
|
+
http_basic_credentials.passwprd.nil?
|
22
|
+
auth_params['Authorization'] =
|
23
|
+
"Basic #{AuthHelper.get_base64_encoded_value(http_basic_credentials.username,
|
24
|
+
http_basic_credentials.passwprd)}"
|
25
|
+
end
|
26
|
+
|
27
|
+
super auth_params
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
# Data class for HttpBasicCredentials.
|
32
|
+
class HttpBasicCredentials
|
33
|
+
attr_reader :username, :passwprd
|
34
|
+
|
35
|
+
def initialize(username:, passwprd:)
|
36
|
+
raise ArgumentError, 'username cannot be nil' if username.nil?
|
37
|
+
raise ArgumentError, 'passwprd cannot be nil' if passwprd.nil?
|
38
|
+
|
39
|
+
@username = username
|
40
|
+
@passwprd = passwprd
|
41
|
+
end
|
42
|
+
|
43
|
+
def clone_with(username: nil, passwprd: nil)
|
44
|
+
username ||= self.username
|
45
|
+
passwprd ||= self.passwprd
|
46
|
+
|
47
|
+
HttpBasicCredentials.new(username: username, passwprd: passwprd)
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
@@ -0,0 +1,98 @@
|
|
1
|
+
# swagger_petstore
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v3.0
|
4
|
+
# ( https://www.apimatic.io ).
|
5
|
+
|
6
|
+
module SwaggerPetstore
|
7
|
+
# Utility class for OAuth 2 authorization and token management.
|
8
|
+
class PetstoreAuth < CoreLibrary::HeaderAuth
|
9
|
+
include CoreLibrary
|
10
|
+
# Display error message on occurrence of authentication failure.
|
11
|
+
# @returns [String] The oAuth error message.
|
12
|
+
def error_message
|
13
|
+
'PetstoreAuth: OAuthToken is undefined or expired.'
|
14
|
+
end
|
15
|
+
|
16
|
+
# Initialization constructor.
|
17
|
+
def initialize(petstore_auth_credentials, config)
|
18
|
+
auth_params = {}
|
19
|
+
@_o_auth_client_id = petstore_auth_credentials.o_auth_client_id unless
|
20
|
+
petstore_auth_credentials.nil? || petstore_auth_credentials.o_auth_client_id.nil?
|
21
|
+
@_o_auth_redirect_uri = petstore_auth_credentials.o_auth_redirect_uri unless
|
22
|
+
petstore_auth_credentials.nil? || petstore_auth_credentials.o_auth_redirect_uri.nil?
|
23
|
+
@_o_auth_token = petstore_auth_credentials.o_auth_token unless
|
24
|
+
petstore_auth_credentials.nil? || petstore_auth_credentials.o_auth_token.nil?
|
25
|
+
@_o_auth_scopes = petstore_auth_credentials.o_auth_scopes unless
|
26
|
+
petstore_auth_credentials.nil? || petstore_auth_credentials.o_auth_scopes.nil?
|
27
|
+
@_o_auth_api = OAuthAuthorizationController.new(config)
|
28
|
+
auth_params[:Authorization] = "Bearer #{@_o_auth_token.access_token}" unless @_o_auth_token.nil?
|
29
|
+
|
30
|
+
super auth_params
|
31
|
+
end
|
32
|
+
|
33
|
+
# Validates the oAuth token.
|
34
|
+
# @return [Boolean] true if the token is present and not expired.
|
35
|
+
def valid
|
36
|
+
!@_o_auth_token.nil? && !token_expired?(@_o_auth_token)
|
37
|
+
end
|
38
|
+
|
39
|
+
# Builds and returns an authorization URL.
|
40
|
+
# The user is expected to obtain an authorization code from this URL and then call the
|
41
|
+
# fetch token function with that authorization code.
|
42
|
+
# @param [String] state An opaque state string.
|
43
|
+
# @param [Hash] additional_params Any additional query parameters to be added to the URL.
|
44
|
+
# @return [String] The authorization URL.
|
45
|
+
def get_authorization_url(state: nil, additional_params: nil)
|
46
|
+
auth_url = @_config.get_base_uri_executor.call(Server::DEFAULT)
|
47
|
+
auth_url += '/authorize'
|
48
|
+
query_params = {
|
49
|
+
'response_type' => 'code',
|
50
|
+
'client_id' => @_o_auth_client_id,
|
51
|
+
'redirect_uri' => @_o_auth_redirect_uri
|
52
|
+
}
|
53
|
+
query_params['scope'] = Array(@_o_auth_scopes).compact.join(' ') if @_o_auth_scopes
|
54
|
+
query_params['state'] = state if state
|
55
|
+
query_params.merge!(additional_params) if additional_params
|
56
|
+
auth_url = APIHelper.append_url_with_query_parameters(auth_url,
|
57
|
+
query_params)
|
58
|
+
APIHelper.clean_url(auth_url)
|
59
|
+
end
|
60
|
+
|
61
|
+
# Checks if OAuth token has expired.
|
62
|
+
# @param [OAuthToken] token The oAuth token instance.
|
63
|
+
# @return [Boolean] true if the token is present and not expired.
|
64
|
+
def token_expired?(token)
|
65
|
+
token.respond_to?('expiry') && AuthHelper.token_expired?(token.expiry)
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
# Data class for PetstoreAuthCredentials.
|
70
|
+
class PetstoreAuthCredentials
|
71
|
+
attr_reader :o_auth_client_id, :o_auth_redirect_uri, :o_auth_token,
|
72
|
+
:o_auth_scopes
|
73
|
+
|
74
|
+
def initialize(o_auth_client_id:, o_auth_redirect_uri:, o_auth_token: nil,
|
75
|
+
o_auth_scopes: nil)
|
76
|
+
raise ArgumentError, 'o_auth_client_id cannot be nil' if o_auth_client_id.nil?
|
77
|
+
raise ArgumentError, 'o_auth_redirect_uri cannot be nil' if o_auth_redirect_uri.nil?
|
78
|
+
|
79
|
+
@o_auth_client_id = o_auth_client_id
|
80
|
+
@o_auth_redirect_uri = o_auth_redirect_uri
|
81
|
+
@o_auth_token = o_auth_token
|
82
|
+
@o_auth_scopes = o_auth_scopes
|
83
|
+
end
|
84
|
+
|
85
|
+
def clone_with(o_auth_client_id: nil, o_auth_redirect_uri: nil,
|
86
|
+
o_auth_token: nil, o_auth_scopes: nil)
|
87
|
+
o_auth_client_id ||= self.o_auth_client_id
|
88
|
+
o_auth_redirect_uri ||= self.o_auth_redirect_uri
|
89
|
+
o_auth_token ||= self.o_auth_token
|
90
|
+
o_auth_scopes ||= self.o_auth_scopes
|
91
|
+
|
92
|
+
PetstoreAuthCredentials.new(o_auth_client_id: o_auth_client_id,
|
93
|
+
o_auth_redirect_uri: o_auth_redirect_uri,
|
94
|
+
o_auth_token: o_auth_token,
|
95
|
+
o_auth_scopes: o_auth_scopes)
|
96
|
+
end
|
97
|
+
end
|
98
|
+
end
|
@@ -1,9 +1,9 @@
|
|
1
|
-
#
|
1
|
+
# swagger_petstore
|
2
2
|
#
|
3
3
|
# This file was automatically generated by APIMATIC v3.0
|
4
4
|
# ( https://www.apimatic.io ).
|
5
5
|
|
6
|
-
module
|
6
|
+
module SwaggerPetstore
|
7
7
|
# HttpCallBack allows defining callables for pre and post API calls.
|
8
8
|
class HttpCallBack < CoreLibrary::HttpCallback
|
9
9
|
end
|
@@ -1,9 +1,9 @@
|
|
1
|
-
#
|
1
|
+
# swagger_petstore
|
2
2
|
#
|
3
3
|
# This file was automatically generated by APIMATIC v3.0
|
4
4
|
# ( https://www.apimatic.io ).
|
5
5
|
|
6
|
-
module
|
6
|
+
module SwaggerPetstore
|
7
7
|
# HTTP Methods Enumeration.
|
8
8
|
class HttpMethodEnum < CoreLibrary::HttpMethod
|
9
9
|
end
|
@@ -1,9 +1,9 @@
|
|
1
|
-
#
|
1
|
+
# swagger_petstore
|
2
2
|
#
|
3
3
|
# This file was automatically generated by APIMATIC v3.0
|
4
4
|
# ( https://www.apimatic.io ).
|
5
5
|
|
6
|
-
module
|
6
|
+
module SwaggerPetstore
|
7
7
|
# Represents a single Http Request.
|
8
8
|
class HttpRequest < CoreLibrary::HttpRequest
|
9
9
|
end
|
@@ -1,9 +1,9 @@
|
|
1
|
-
#
|
1
|
+
# swagger_petstore
|
2
2
|
#
|
3
3
|
# This file was automatically generated by APIMATIC v3.0
|
4
4
|
# ( https://www.apimatic.io ).
|
5
5
|
|
6
|
-
module
|
6
|
+
module SwaggerPetstore
|
7
7
|
# Http response received.
|
8
8
|
class HttpResponse < CoreLibrary::HttpResponse
|
9
9
|
end
|
@@ -1,9 +1,9 @@
|
|
1
|
-
#
|
1
|
+
# swagger_petstore
|
2
2
|
#
|
3
3
|
# This file was automatically generated by APIMATIC v3.0
|
4
4
|
# ( https://www.apimatic.io ).
|
5
5
|
|
6
|
-
module
|
6
|
+
module SwaggerPetstore
|
7
7
|
##
|
8
8
|
# ProxySettings encapsulates HTTP proxy configuration for Faraday,
|
9
9
|
# including optional basic authentication.
|