apimatic_core 0.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 +7 -0
- data/LICENSE +26 -0
- data/README.md +101 -0
- data/lib/apimatic-core/api_call.rb +103 -0
- data/lib/apimatic-core/authentication/header_auth.rb +21 -0
- data/lib/apimatic-core/authentication/multiple/and_auth_group.rb +28 -0
- data/lib/apimatic-core/authentication/multiple/auth_group.rb +45 -0
- data/lib/apimatic-core/authentication/multiple/or_auth_group.rb +29 -0
- data/lib/apimatic-core/authentication/multiple/single_auth.rb +48 -0
- data/lib/apimatic-core/authentication/query_auth.rb +21 -0
- data/lib/apimatic-core/configurations/global_configuration.rb +149 -0
- data/lib/apimatic-core/exceptions/invalid_auth_credential.rb +5 -0
- data/lib/apimatic-core/factories/http_response_factory.rb +14 -0
- data/lib/apimatic-core/http/configurations/http_client_configuration.rb +32 -0
- data/lib/apimatic-core/http/request/http_request.rb +50 -0
- data/lib/apimatic-core/http/response/api_response.rb +35 -0
- data/lib/apimatic-core/http/response/http_response.rb +24 -0
- data/lib/apimatic-core/logger/endpoint_logger.rb +28 -0
- data/lib/apimatic-core/request_builder.rb +361 -0
- data/lib/apimatic-core/response_handler.rb +269 -0
- data/lib/apimatic-core/types/error_case.rb +37 -0
- data/lib/apimatic-core/types/parameter.rb +116 -0
- data/lib/apimatic-core/types/sdk/api_exception.rb +15 -0
- data/lib/apimatic-core/types/sdk/base_model.rb +22 -0
- data/lib/apimatic-core/types/sdk/file_wrapper.rb +11 -0
- data/lib/apimatic-core/types/sdk/validation_exception.rb +10 -0
- data/lib/apimatic-core/types/xml_attributes.rb +37 -0
- data/lib/apimatic-core/utilities/api_helper.rb +551 -0
- data/lib/apimatic-core/utilities/auth_helper.rb +49 -0
- data/lib/apimatic-core/utilities/comparison_helper.rb +77 -0
- data/lib/apimatic-core/utilities/date_time_helper.rb +126 -0
- data/lib/apimatic-core/utilities/file_helper.rb +21 -0
- data/lib/apimatic-core/utilities/xml_helper.rb +215 -0
- data/lib/apimatic_core.rb +44 -0
- metadata +215 -0
@@ -0,0 +1,126 @@
|
|
1
|
+
module CoreLibrary
|
2
|
+
# A utility that supports dateTime conversion to different formats.
|
3
|
+
class DateTimeHelper
|
4
|
+
# Safely converts a DateTime object into a rfc1123 format string.
|
5
|
+
# @param [DateTime] date_time The DateTime object.
|
6
|
+
# @return [String] The rfc1123 formatted datetime string.
|
7
|
+
def self.to_rfc1123(date_time)
|
8
|
+
date_time&.httpdate
|
9
|
+
end
|
10
|
+
|
11
|
+
# Safely converts a map of DateTime objects into a map of rfc1123 format string.
|
12
|
+
# @param [hash] date_time A map of DateTime objects.
|
13
|
+
# @return [hash] A map of rfc1123 formatted datetime string.
|
14
|
+
def self.to_rfc1123_map(date_time, hash, key)
|
15
|
+
return if date_time.nil?
|
16
|
+
|
17
|
+
hash[key] = {}
|
18
|
+
date_time.each do |k, v|
|
19
|
+
hash[key][k] =
|
20
|
+
v.is_a?(DateTime) ? DateTimeHelper.to_rfc1123(v) : v
|
21
|
+
end
|
22
|
+
hash[key]
|
23
|
+
end
|
24
|
+
|
25
|
+
# Safely converts an array of DateTime objects into an array of rfc1123 format string.
|
26
|
+
# @param [Array] date_time An array of DateTime objects.
|
27
|
+
# @return [Array] An array of rfc1123 formatted datetime string.
|
28
|
+
def self.to_rfc1123_array(date_time, hash, key)
|
29
|
+
return if date_time.nil?
|
30
|
+
|
31
|
+
hash[key] = date_time.map do |v|
|
32
|
+
v.is_a?(DateTime) ? DateTimeHelper.to_rfc1123(v) : v
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
# Safely converts a DateTime object into a unix format string.
|
37
|
+
# @param [DateTime] date_time The DateTime object.
|
38
|
+
# @return [String] The unix formatted datetime string.
|
39
|
+
def self.to_unix(date_time)
|
40
|
+
date_time.to_time.utc.to_i unless date_time.nil?
|
41
|
+
end
|
42
|
+
|
43
|
+
# Safely converts a map of DateTime objects into a map of unix format string.
|
44
|
+
# @param [hash] date_time A map of DateTime objects.
|
45
|
+
# @return [hash] A map of unix formatted datetime string.
|
46
|
+
def self.to_unix_map(date_time, hash, key)
|
47
|
+
return if date_time.nil?
|
48
|
+
|
49
|
+
hash[key] = {}
|
50
|
+
date_time.each do |k, v|
|
51
|
+
hash[key][k] =
|
52
|
+
v.is_a?(DateTime) ? DateTimeHelper.to_unix(v) : v
|
53
|
+
end
|
54
|
+
hash[key]
|
55
|
+
end
|
56
|
+
|
57
|
+
# Safely converts an array of DateTime objects into a map of unix format string.
|
58
|
+
# @param [hash] date_time An array of DateTime objects.
|
59
|
+
# @return [hash] An array of unix formatted datetime string.
|
60
|
+
def self.to_unix_array(date_time, hash, key)
|
61
|
+
return if date_time.nil?
|
62
|
+
|
63
|
+
hash[key] = date_time.map do |v|
|
64
|
+
v.is_a?(DateTime) ? DateTimeHelper.to_unix(v) : v
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
# Safely converts a DateTime object into a rfc3339 format string.
|
69
|
+
# @param [DateTime] date_time The DateTime object.
|
70
|
+
# @return [String] The rfc3339 formatted datetime string.
|
71
|
+
def self.to_rfc3339(date_time)
|
72
|
+
date_time&.rfc3339
|
73
|
+
end
|
74
|
+
|
75
|
+
# Safely converts a map of DateTime objects into a map of rfc1123 format string.
|
76
|
+
# @param [hash] date_time A map of DateTime objects.
|
77
|
+
# @return [hash] A map of rfc1123 formatted datetime string.
|
78
|
+
def self.to_rfc3339_map(date_time, hash, key)
|
79
|
+
return if date_time.nil?
|
80
|
+
|
81
|
+
hash[key] = {}
|
82
|
+
date_time.each do |k, v|
|
83
|
+
hash[key][k] =
|
84
|
+
v.is_a?(DateTime) ? DateTimeHelper.to_rfc3339(v) : v
|
85
|
+
end
|
86
|
+
hash[key]
|
87
|
+
end
|
88
|
+
|
89
|
+
# Safely converts an array of DateTime objects into an array of rfc1123 format string.
|
90
|
+
# @param [Array] date_time An array of DateTime objects.
|
91
|
+
# @return [Array] An array of rfc1123 formatted datetime string.
|
92
|
+
def self.to_rfc3339_array(date_time, hash, key)
|
93
|
+
return if date_time.nil?
|
94
|
+
|
95
|
+
hash[key] = date_time.map do |v|
|
96
|
+
v.is_a?(DateTime) ? DateTimeHelper.to_rfc3339(v) : v
|
97
|
+
end
|
98
|
+
end
|
99
|
+
|
100
|
+
# Safely converts a rfc1123 format string into a DateTime object.
|
101
|
+
# @param [String] date_time The rfc1123 formatted datetime string.
|
102
|
+
# @return [DateTime] A DateTime object.
|
103
|
+
def self.from_rfc1123(date_time)
|
104
|
+
DateTime.httpdate(date_time)
|
105
|
+
end
|
106
|
+
|
107
|
+
# Safely converts a unix format string into a DateTime object.
|
108
|
+
# @param [String] date_time The unix formatted datetime string.
|
109
|
+
# @return [DateTime] A DateTime object.
|
110
|
+
def self.from_unix(date_time)
|
111
|
+
Time.at(date_time.to_i).utc.to_datetime
|
112
|
+
end
|
113
|
+
|
114
|
+
# Safely converts a rfc3339 format string into a DateTime object.
|
115
|
+
# @param [String] date_time The rfc3339 formatted datetime string.
|
116
|
+
# @return [DateTime] A DateTime object.
|
117
|
+
def self.from_rfc3339(date_time)
|
118
|
+
# missing timezone information
|
119
|
+
if date_time.end_with?('Z') || date_time.index('+')
|
120
|
+
DateTime.rfc3339(date_time)
|
121
|
+
else
|
122
|
+
DateTime.rfc3339("#{date_time}Z")
|
123
|
+
end
|
124
|
+
end
|
125
|
+
end
|
126
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require 'tempfile'
|
2
|
+
require 'open-uri'
|
3
|
+
module CoreLibrary
|
4
|
+
# A utility for file specific operations.
|
5
|
+
class FileHelper
|
6
|
+
@cache = {}
|
7
|
+
|
8
|
+
# Class method which takes a URL, downloads the file (if not already downloaded.
|
9
|
+
# for this test session) and returns the path of the file.
|
10
|
+
# @param [String] url The URL of the required file.
|
11
|
+
def self.get_file(url)
|
12
|
+
unless @cache.keys.include? url
|
13
|
+
@cache[url] = Tempfile.new('APIMatic')
|
14
|
+
@cache[url].binmode
|
15
|
+
@cache[url].write(URI.parse(url).open({ ssl_ca_cert: Certifi.where }).read)
|
16
|
+
end
|
17
|
+
@cache[url].rewind
|
18
|
+
@cache[url].path
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,215 @@
|
|
1
|
+
require 'nokogiri'
|
2
|
+
|
3
|
+
module CoreLibrary
|
4
|
+
# A utility class for handling xml parsing.
|
5
|
+
class XmlHelper
|
6
|
+
class << self
|
7
|
+
# Serialized the provided value to XML.
|
8
|
+
# @param root_element_name Root element for the XML provided.
|
9
|
+
# @param value Value to convert to XML.
|
10
|
+
def serialize_to_xml(root_element_name, value, datetime_format: nil)
|
11
|
+
doc = Nokogiri::XML::Document.new
|
12
|
+
add_as_subelement(doc, doc, root_element_name, value,
|
13
|
+
datetime_format: datetime_format)
|
14
|
+
doc.to_xml
|
15
|
+
end
|
16
|
+
|
17
|
+
# Serialized the provided array value to XML.
|
18
|
+
# @param root_element_name Root element for the xml provided.
|
19
|
+
# @param item_name Item name for XML.
|
20
|
+
# @param value Value to convert to XML.
|
21
|
+
def serialize_array_to_xml(root_element_name, item_name, value,
|
22
|
+
datetime_format: nil)
|
23
|
+
doc = Nokogiri::XML::Document.new
|
24
|
+
add_array_as_subelement(doc, doc, item_name, value,
|
25
|
+
wrapping_element_name: root_element_name,
|
26
|
+
datetime_format: datetime_format)
|
27
|
+
doc.to_xml
|
28
|
+
end
|
29
|
+
|
30
|
+
# Serialized the provided hash to XML.
|
31
|
+
# @param root_element_name Root element for the XML provided.
|
32
|
+
def serialize_hash_to_xml(root_element_name, entries,
|
33
|
+
datetime_format: nil)
|
34
|
+
doc = Nokogiri::XML::Document.new
|
35
|
+
add_hash_as_subelement(doc, doc, root_element_name, entries,
|
36
|
+
datetime_format: datetime_format)
|
37
|
+
doc.to_xml
|
38
|
+
end
|
39
|
+
|
40
|
+
# Adds the value as an attribute.
|
41
|
+
def add_as_attribute(root, name, value, datetime_format: nil)
|
42
|
+
return if value.nil?
|
43
|
+
|
44
|
+
value = datetime_to_s(value, datetime_format) if value.instance_of?(DateTime)
|
45
|
+
|
46
|
+
root[name] = value
|
47
|
+
end
|
48
|
+
|
49
|
+
# Adds hash as a sub-element.
|
50
|
+
def add_hash_as_subelement(doc, root, name, entries,
|
51
|
+
datetime_format: nil)
|
52
|
+
return if entries.nil?
|
53
|
+
|
54
|
+
parent = doc.create_element(name)
|
55
|
+
root.add_child(parent)
|
56
|
+
|
57
|
+
entries.each do |key, value|
|
58
|
+
add_as_subelement(doc, parent, key, value,
|
59
|
+
datetime_format: datetime_format)
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
# Adds array as a sub-element.
|
64
|
+
def add_array_as_subelement(doc, root, item_name, items,
|
65
|
+
wrapping_element_name: nil,
|
66
|
+
datetime_format: nil)
|
67
|
+
return if items.nil?
|
68
|
+
|
69
|
+
if wrapping_element_name.nil?
|
70
|
+
parent = root
|
71
|
+
else
|
72
|
+
parent = doc.create_element(wrapping_element_name)
|
73
|
+
root.add_child(parent)
|
74
|
+
end
|
75
|
+
|
76
|
+
items.each do |item|
|
77
|
+
add_as_subelement(doc, parent, item_name, item,
|
78
|
+
datetime_format: datetime_format)
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
82
|
+
# Adds as a sub-element.
|
83
|
+
def add_as_subelement(doc, root, name, value, datetime_format: nil)
|
84
|
+
return if value.nil?
|
85
|
+
|
86
|
+
value = datetime_to_s(value, datetime_format) if value.instance_of?(DateTime)
|
87
|
+
|
88
|
+
element = if value.respond_to? :to_xml_element
|
89
|
+
value.to_xml_element(doc, name)
|
90
|
+
else
|
91
|
+
doc.create_element(name, value)
|
92
|
+
end
|
93
|
+
|
94
|
+
root.add_child(element)
|
95
|
+
end
|
96
|
+
|
97
|
+
# Converts datetime to string of a specific format.
|
98
|
+
# @param value Value to convert to string.
|
99
|
+
# @param datetime_format Datetime format for the converted string.
|
100
|
+
def datetime_to_s(value, datetime_format)
|
101
|
+
case datetime_format
|
102
|
+
when 'UnixDateTime'
|
103
|
+
value.to_time.to_i
|
104
|
+
when 'HttpDateTime'
|
105
|
+
value.httpdate
|
106
|
+
else
|
107
|
+
value
|
108
|
+
end
|
109
|
+
end
|
110
|
+
|
111
|
+
# Deserializes XML to a specific class.
|
112
|
+
# @param xml The XML value to deserialize.
|
113
|
+
# @param root_element_name Root element name for the XML provided.
|
114
|
+
# @param clazz The class to convert the XML into.
|
115
|
+
def deserialize_xml(xml, root_element_name, clazz, datetime_format = nil)
|
116
|
+
doc = Nokogiri::XML::Document.parse xml
|
117
|
+
from_element(doc, root_element_name, clazz,
|
118
|
+
datetime_format: datetime_format)
|
119
|
+
end
|
120
|
+
|
121
|
+
# Deserializes XML to an array of a specific class.
|
122
|
+
# @param xml The XML value to deserialize.
|
123
|
+
# @param root_element_name Root element name for the XML provided.
|
124
|
+
# @param item_name Item name for XML.
|
125
|
+
# @param clazz The class to convert the XML into.
|
126
|
+
def deserialize_xml_to_array(xml, root_element_name, item_name, clazz,
|
127
|
+
datetime_format = nil)
|
128
|
+
doc = Nokogiri::XML::Document.parse xml
|
129
|
+
from_element_to_array(doc, item_name, clazz,
|
130
|
+
wrapping_element_name: root_element_name,
|
131
|
+
datetime_format: datetime_format)
|
132
|
+
end
|
133
|
+
|
134
|
+
# Deserializes XML to an array of a specific class.
|
135
|
+
# @param xml The XML value to deserialize.
|
136
|
+
# @param root_element_name Root element name for the XML provided.
|
137
|
+
def deserialize_xml_to_hash(xml, root_element_name, clazz,
|
138
|
+
datetime_format = nil)
|
139
|
+
doc = Nokogiri::XML::Document.parse xml
|
140
|
+
from_element_to_hash(doc, root_element_name, clazz,
|
141
|
+
datetime_format: datetime_format)
|
142
|
+
end
|
143
|
+
|
144
|
+
# Converts attribute to a specific class.
|
145
|
+
def from_attribute(parent, name, clazz, datetime_format: nil)
|
146
|
+
attribute = parent[name]
|
147
|
+
return nil if attribute.nil?
|
148
|
+
|
149
|
+
convert(attribute, clazz, datetime_format)
|
150
|
+
end
|
151
|
+
|
152
|
+
# Converts element to a specific class.
|
153
|
+
def from_element(parent, name, clazz, datetime_format: nil)
|
154
|
+
element = parent.at_xpath(name)
|
155
|
+
return nil if element.nil?
|
156
|
+
return clazz.from_element element if clazz.respond_to? :from_element
|
157
|
+
|
158
|
+
convert(element.text, clazz, datetime_format)
|
159
|
+
end
|
160
|
+
|
161
|
+
# Converts element to an array.
|
162
|
+
def from_element_to_array(parent, item_name, clazz,
|
163
|
+
wrapping_element_name: nil,
|
164
|
+
datetime_format: nil)
|
165
|
+
elements = if wrapping_element_name.nil?
|
166
|
+
parent.xpath(item_name)
|
167
|
+
elsif parent.at_xpath(wrapping_element_name).nil?
|
168
|
+
nil
|
169
|
+
else
|
170
|
+
parent.at_xpath(wrapping_element_name).xpath(item_name)
|
171
|
+
end
|
172
|
+
|
173
|
+
return nil if elements.nil?
|
174
|
+
|
175
|
+
if clazz.respond_to? :from_element
|
176
|
+
elements.map { |element| clazz.from_element element }
|
177
|
+
else
|
178
|
+
elements.map do |element|
|
179
|
+
convert(element.text, clazz, datetime_format)
|
180
|
+
end
|
181
|
+
end
|
182
|
+
end
|
183
|
+
|
184
|
+
# Converts element to hash.
|
185
|
+
def from_element_to_hash(parent, name, clazz,
|
186
|
+
datetime_format: nil)
|
187
|
+
entries = parent.at_xpath(name)
|
188
|
+
return nil if entries.nil? || entries.children.nil?
|
189
|
+
|
190
|
+
hash = {}
|
191
|
+
|
192
|
+
entries.element_children.each do |element|
|
193
|
+
hash[element.name] = convert(element.text, clazz, datetime_format)
|
194
|
+
end
|
195
|
+
|
196
|
+
hash
|
197
|
+
end
|
198
|
+
|
199
|
+
# Basic convert method.
|
200
|
+
def convert(value, clazz, datetime_format)
|
201
|
+
if clazz == DateTime
|
202
|
+
return DateTime.rfc3339(value) if datetime_format == 'RFC3339DateTime'
|
203
|
+
return DateTime.httpdate(value) if datetime_format == 'HttpDateTime'
|
204
|
+
return DateTime.strptime(value, '%s') if datetime_format == 'UnixDateTime'
|
205
|
+
end
|
206
|
+
|
207
|
+
return value.to_f if clazz == Float
|
208
|
+
return value.to_i if clazz == Integer
|
209
|
+
return value.casecmp('true').zero? if clazz == TrueClass
|
210
|
+
|
211
|
+
value
|
212
|
+
end
|
213
|
+
end
|
214
|
+
end
|
215
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
require 'date'
|
2
|
+
require 'json'
|
3
|
+
require 'certifi'
|
4
|
+
require 'apimatic_core_interfaces'
|
5
|
+
require 'cgi'
|
6
|
+
|
7
|
+
require_relative 'apimatic-core/request_builder'
|
8
|
+
require_relative 'apimatic-core/response_handler'
|
9
|
+
require_relative 'apimatic-core/api_call'
|
10
|
+
|
11
|
+
require_relative 'apimatic-core/factories/http_response_factory'
|
12
|
+
|
13
|
+
require_relative 'apimatic-core/configurations/global_configuration'
|
14
|
+
|
15
|
+
require_relative 'apimatic-core/exceptions/invalid_auth_credential'
|
16
|
+
|
17
|
+
require_relative 'apimatic-core/logger/endpoint_logger'
|
18
|
+
|
19
|
+
require_relative 'apimatic-core/http/configurations/http_client_configuration'
|
20
|
+
require_relative 'apimatic-core/http/request/http_request'
|
21
|
+
require_relative 'apimatic-core/http/response/http_response'
|
22
|
+
require_relative 'apimatic-core/http/response/api_response'
|
23
|
+
|
24
|
+
require_relative 'apimatic-core/types/parameter'
|
25
|
+
require_relative 'apimatic-core/types/error_case'
|
26
|
+
require_relative 'apimatic-core/types/sdk/base_model'
|
27
|
+
require_relative 'apimatic-core/types/sdk/file_wrapper'
|
28
|
+
require_relative 'apimatic-core/types/sdk/validation_exception'
|
29
|
+
require_relative 'apimatic-core/types/sdk/api_exception'
|
30
|
+
require_relative 'apimatic-core/types/xml_attributes'
|
31
|
+
|
32
|
+
require_relative 'apimatic-core/utilities/api_helper'
|
33
|
+
require_relative 'apimatic-core/utilities/date_time_helper'
|
34
|
+
require_relative 'apimatic-core/utilities/comparison_helper'
|
35
|
+
require_relative 'apimatic-core/utilities/file_helper'
|
36
|
+
require_relative 'apimatic-core/utilities/xml_helper'
|
37
|
+
require_relative 'apimatic-core/utilities/auth_helper'
|
38
|
+
|
39
|
+
require_relative 'apimatic-core/authentication/header_auth'
|
40
|
+
require_relative 'apimatic-core/authentication/query_auth'
|
41
|
+
require_relative 'apimatic-core/authentication/multiple/auth_group'
|
42
|
+
require_relative 'apimatic-core/authentication/multiple/and_auth_group'
|
43
|
+
require_relative 'apimatic-core/authentication/multiple/or_auth_group'
|
44
|
+
require_relative 'apimatic-core/authentication/multiple/single_auth'
|
metadata
ADDED
@@ -0,0 +1,215 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: apimatic_core
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- APIMatic Ltd.
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2022-12-28 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: apimatic_core_interfaces
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 0.1.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.1.0
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: nokogiri
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '1.10'
|
34
|
+
- - ">="
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: 1.10.10
|
37
|
+
type: :runtime
|
38
|
+
prerelease: false
|
39
|
+
version_requirements: !ruby/object:Gem::Requirement
|
40
|
+
requirements:
|
41
|
+
- - "~>"
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '1.10'
|
44
|
+
- - ">="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: 1.10.10
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: certifi
|
49
|
+
requirement: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - "~>"
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '2018.1'
|
54
|
+
- - ">="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: 2018.01.18
|
57
|
+
type: :runtime
|
58
|
+
prerelease: false
|
59
|
+
version_requirements: !ruby/object:Gem::Requirement
|
60
|
+
requirements:
|
61
|
+
- - "~>"
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: '2018.1'
|
64
|
+
- - ">="
|
65
|
+
- !ruby/object:Gem::Version
|
66
|
+
version: 2018.01.18
|
67
|
+
- !ruby/object:Gem::Dependency
|
68
|
+
name: faraday-multipart
|
69
|
+
requirement: !ruby/object:Gem::Requirement
|
70
|
+
requirements:
|
71
|
+
- - "~>"
|
72
|
+
- !ruby/object:Gem::Version
|
73
|
+
version: '1.0'
|
74
|
+
type: :runtime
|
75
|
+
prerelease: false
|
76
|
+
version_requirements: !ruby/object:Gem::Requirement
|
77
|
+
requirements:
|
78
|
+
- - "~>"
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: '1.0'
|
81
|
+
- !ruby/object:Gem::Dependency
|
82
|
+
name: faraday
|
83
|
+
requirement: !ruby/object:Gem::Requirement
|
84
|
+
requirements:
|
85
|
+
- - "~>"
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '2.0'
|
88
|
+
- - ">="
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
version: 2.0.1
|
91
|
+
type: :development
|
92
|
+
prerelease: false
|
93
|
+
version_requirements: !ruby/object:Gem::Requirement
|
94
|
+
requirements:
|
95
|
+
- - "~>"
|
96
|
+
- !ruby/object:Gem::Version
|
97
|
+
version: '2.0'
|
98
|
+
- - ">="
|
99
|
+
- !ruby/object:Gem::Version
|
100
|
+
version: 2.0.1
|
101
|
+
- !ruby/object:Gem::Dependency
|
102
|
+
name: minitest
|
103
|
+
requirement: !ruby/object:Gem::Requirement
|
104
|
+
requirements:
|
105
|
+
- - "~>"
|
106
|
+
- !ruby/object:Gem::Version
|
107
|
+
version: '5.14'
|
108
|
+
- - ">="
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 5.14.1
|
111
|
+
type: :development
|
112
|
+
prerelease: false
|
113
|
+
version_requirements: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - "~>"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '5.14'
|
118
|
+
- - ">="
|
119
|
+
- !ruby/object:Gem::Version
|
120
|
+
version: 5.14.1
|
121
|
+
- !ruby/object:Gem::Dependency
|
122
|
+
name: minitest-proveit
|
123
|
+
requirement: !ruby/object:Gem::Requirement
|
124
|
+
requirements:
|
125
|
+
- - "~>"
|
126
|
+
- !ruby/object:Gem::Version
|
127
|
+
version: '1.0'
|
128
|
+
type: :development
|
129
|
+
prerelease: false
|
130
|
+
version_requirements: !ruby/object:Gem::Requirement
|
131
|
+
requirements:
|
132
|
+
- - "~>"
|
133
|
+
- !ruby/object:Gem::Version
|
134
|
+
version: '1.0'
|
135
|
+
- !ruby/object:Gem::Dependency
|
136
|
+
name: simplecov
|
137
|
+
requirement: !ruby/object:Gem::Requirement
|
138
|
+
requirements:
|
139
|
+
- - "~>"
|
140
|
+
- !ruby/object:Gem::Version
|
141
|
+
version: 0.21.2
|
142
|
+
type: :development
|
143
|
+
prerelease: false
|
144
|
+
version_requirements: !ruby/object:Gem::Requirement
|
145
|
+
requirements:
|
146
|
+
- - "~>"
|
147
|
+
- !ruby/object:Gem::Version
|
148
|
+
version: 0.21.2
|
149
|
+
description: The APIMatic Core libraries provide a stable runtime that powers all
|
150
|
+
the functionality of SDKs. This includes functionality like the ability to create
|
151
|
+
HTTP requests, handle responses, apply authentication schemes, convert API responses
|
152
|
+
back to object instances, and validate user and server data.
|
153
|
+
email: support@apimatic.io
|
154
|
+
executables: []
|
155
|
+
extensions: []
|
156
|
+
extra_rdoc_files: []
|
157
|
+
files:
|
158
|
+
- LICENSE
|
159
|
+
- README.md
|
160
|
+
- lib/apimatic-core/api_call.rb
|
161
|
+
- lib/apimatic-core/authentication/header_auth.rb
|
162
|
+
- lib/apimatic-core/authentication/multiple/and_auth_group.rb
|
163
|
+
- lib/apimatic-core/authentication/multiple/auth_group.rb
|
164
|
+
- lib/apimatic-core/authentication/multiple/or_auth_group.rb
|
165
|
+
- lib/apimatic-core/authentication/multiple/single_auth.rb
|
166
|
+
- lib/apimatic-core/authentication/query_auth.rb
|
167
|
+
- lib/apimatic-core/configurations/global_configuration.rb
|
168
|
+
- lib/apimatic-core/exceptions/invalid_auth_credential.rb
|
169
|
+
- lib/apimatic-core/factories/http_response_factory.rb
|
170
|
+
- lib/apimatic-core/http/configurations/http_client_configuration.rb
|
171
|
+
- lib/apimatic-core/http/request/http_request.rb
|
172
|
+
- lib/apimatic-core/http/response/api_response.rb
|
173
|
+
- lib/apimatic-core/http/response/http_response.rb
|
174
|
+
- lib/apimatic-core/logger/endpoint_logger.rb
|
175
|
+
- lib/apimatic-core/request_builder.rb
|
176
|
+
- lib/apimatic-core/response_handler.rb
|
177
|
+
- lib/apimatic-core/types/error_case.rb
|
178
|
+
- lib/apimatic-core/types/parameter.rb
|
179
|
+
- lib/apimatic-core/types/sdk/api_exception.rb
|
180
|
+
- lib/apimatic-core/types/sdk/base_model.rb
|
181
|
+
- lib/apimatic-core/types/sdk/file_wrapper.rb
|
182
|
+
- lib/apimatic-core/types/sdk/validation_exception.rb
|
183
|
+
- lib/apimatic-core/types/xml_attributes.rb
|
184
|
+
- lib/apimatic-core/utilities/api_helper.rb
|
185
|
+
- lib/apimatic-core/utilities/auth_helper.rb
|
186
|
+
- lib/apimatic-core/utilities/comparison_helper.rb
|
187
|
+
- lib/apimatic-core/utilities/date_time_helper.rb
|
188
|
+
- lib/apimatic-core/utilities/file_helper.rb
|
189
|
+
- lib/apimatic-core/utilities/xml_helper.rb
|
190
|
+
- lib/apimatic_core.rb
|
191
|
+
homepage: https://apimatic.io
|
192
|
+
licenses:
|
193
|
+
- APIMATIC REFERENCE SOURCE LICENSE
|
194
|
+
metadata: {}
|
195
|
+
post_install_message:
|
196
|
+
rdoc_options: []
|
197
|
+
require_paths:
|
198
|
+
- lib
|
199
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
200
|
+
requirements:
|
201
|
+
- - ">="
|
202
|
+
- !ruby/object:Gem::Version
|
203
|
+
version: '2.6'
|
204
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
205
|
+
requirements:
|
206
|
+
- - ">="
|
207
|
+
- !ruby/object:Gem::Version
|
208
|
+
version: '0'
|
209
|
+
requirements: []
|
210
|
+
rubygems_version: 3.4.1
|
211
|
+
signing_key:
|
212
|
+
specification_version: 4
|
213
|
+
summary: A library that contains apimatic-apimatic-core logic and utilities for consuming
|
214
|
+
REST APIs using Python SDKs generated by APIMatic.
|
215
|
+
test_files: []
|