dyspatch_client 3.0.0 → 6.0.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.
Files changed (109) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +3 -1
  3. data/README.md +45 -53
  4. data/Rakefile +2 -0
  5. data/docs/APIError.md +13 -2
  6. data/docs/CompiledRead.md +15 -0
  7. data/docs/Cursor.md +11 -1
  8. data/docs/DraftMetaRead.md +14 -1
  9. data/docs/DraftRead.md +17 -1
  10. data/docs/DraftsApi.md +140 -131
  11. data/docs/DraftsRead.md +12 -2
  12. data/docs/{Body.md → InlineObject.md} +10 -1
  13. data/docs/LocalizationKeyRead.md +10 -0
  14. data/docs/LocalizationMetaRead.md +15 -2
  15. data/docs/LocalizationRead.md +19 -1
  16. data/docs/LocalizationsApi.md +75 -13
  17. data/docs/TemplateMetaRead.md +16 -1
  18. data/docs/TemplateRead.md +17 -1
  19. data/docs/TemplatesApi.md +40 -36
  20. data/docs/TemplatesRead.md +11 -1
  21. data/dyspatch_client.gemspec +5 -11
  22. data/lib/dyspatch_client.rb +5 -20
  23. data/lib/dyspatch_client/api/drafts_api.rb +375 -234
  24. data/lib/dyspatch_client/api/localizations_api.rb +135 -31
  25. data/lib/dyspatch_client/api/templates_api.rb +99 -65
  26. data/lib/dyspatch_client/api_client.rb +46 -47
  27. data/lib/dyspatch_client/api_error.rb +23 -4
  28. data/lib/dyspatch_client/configuration.rb +48 -9
  29. data/lib/dyspatch_client/models/api_error.rb +46 -22
  30. data/lib/dyspatch_client/models/compiled_read.rb +56 -67
  31. data/lib/dyspatch_client/models/cursor.rb +43 -20
  32. data/lib/dyspatch_client/models/draft_meta_read.rb +49 -35
  33. data/lib/dyspatch_client/models/draft_read.rb +49 -25
  34. data/lib/dyspatch_client/models/drafts_read.rb +42 -19
  35. data/lib/dyspatch_client/models/{body.rb → inline_object.rb} +40 -17
  36. data/lib/dyspatch_client/models/localization_key_read.rb +41 -17
  37. data/lib/dyspatch_client/models/localization_meta_read.rb +62 -36
  38. data/lib/dyspatch_client/models/localization_read.rb +71 -35
  39. data/lib/dyspatch_client/models/template_meta_read.rb +48 -24
  40. data/lib/dyspatch_client/models/template_read.rb +49 -25
  41. data/lib/dyspatch_client/models/templates_read.rb +41 -17
  42. data/lib/dyspatch_client/version.rb +5 -5
  43. data/spec/api/drafts_api_spec.rb +61 -53
  44. data/spec/api/localizations_api_spec.rb +26 -10
  45. data/spec/api/templates_api_spec.rb +22 -20
  46. data/spec/api_client_spec.rb +5 -5
  47. data/spec/configuration_spec.rb +4 -4
  48. data/spec/spec_helper.rb +4 -4
  49. metadata +11 -219
  50. data/LICENSE +0 -202
  51. data/docs/Body1.md +0 -8
  52. data/docs/CreatedAt.md +0 -7
  53. data/docs/DraftDescription.md +0 -7
  54. data/docs/DraftId.md +0 -7
  55. data/docs/DraftName.md +0 -7
  56. data/docs/DraftUrl.md +0 -7
  57. data/docs/LanguageId.md +0 -7
  58. data/docs/LocalizationId.md +0 -7
  59. data/docs/LocalizationName.md +0 -7
  60. data/docs/LocalizationUrl.md +0 -7
  61. data/docs/TemplateDescription.md +0 -7
  62. data/docs/TemplateId.md +0 -7
  63. data/docs/TemplateName.md +0 -7
  64. data/docs/TemplateUrl.md +0 -7
  65. data/docs/UpdatedAt.md +0 -7
  66. data/git_push.sh +0 -55
  67. data/lib/dyspatch_client/models/body_1.rb +0 -183
  68. data/lib/dyspatch_client/models/created_at.rb +0 -175
  69. data/lib/dyspatch_client/models/draft_description.rb +0 -175
  70. data/lib/dyspatch_client/models/draft_id.rb +0 -175
  71. data/lib/dyspatch_client/models/draft_name.rb +0 -175
  72. data/lib/dyspatch_client/models/draft_url.rb +0 -175
  73. data/lib/dyspatch_client/models/language_id.rb +0 -175
  74. data/lib/dyspatch_client/models/localization_id.rb +0 -175
  75. data/lib/dyspatch_client/models/localization_name.rb +0 -175
  76. data/lib/dyspatch_client/models/localization_url.rb +0 -175
  77. data/lib/dyspatch_client/models/template_description.rb +0 -175
  78. data/lib/dyspatch_client/models/template_id.rb +0 -175
  79. data/lib/dyspatch_client/models/template_name.rb +0 -175
  80. data/lib/dyspatch_client/models/template_url.rb +0 -175
  81. data/lib/dyspatch_client/models/updated_at.rb +0 -175
  82. data/spec/models/api_error_spec.rb +0 -57
  83. data/spec/models/body_1_spec.rb +0 -41
  84. data/spec/models/body_spec.rb +0 -41
  85. data/spec/models/compiled_read_spec.rb +0 -65
  86. data/spec/models/created_at_spec.rb +0 -35
  87. data/spec/models/cursor_spec.rb +0 -47
  88. data/spec/models/draft_description_spec.rb +0 -35
  89. data/spec/models/draft_id_spec.rb +0 -35
  90. data/spec/models/draft_meta_read_spec.rb +0 -77
  91. data/spec/models/draft_name_spec.rb +0 -35
  92. data/spec/models/draft_read_spec.rb +0 -83
  93. data/spec/models/draft_url_spec.rb +0 -35
  94. data/spec/models/drafts_read_spec.rb +0 -47
  95. data/spec/models/language_id_spec.rb +0 -35
  96. data/spec/models/localization_id_spec.rb +0 -35
  97. data/spec/models/localization_key_read_spec.rb +0 -47
  98. data/spec/models/localization_meta_read_spec.rb +0 -65
  99. data/spec/models/localization_name_spec.rb +0 -35
  100. data/spec/models/localization_read_spec.rb +0 -83
  101. data/spec/models/localization_url_spec.rb +0 -35
  102. data/spec/models/template_description_spec.rb +0 -35
  103. data/spec/models/template_id_spec.rb +0 -35
  104. data/spec/models/template_meta_read_spec.rb +0 -77
  105. data/spec/models/template_name_spec.rb +0 -35
  106. data/spec/models/template_read_spec.rb +0 -83
  107. data/spec/models/template_url_spec.rb +0 -35
  108. data/spec/models/templates_read_spec.rb +0 -47
  109. data/spec/models/updated_at_spec.rb +0 -35
@@ -1,18 +1,19 @@
1
1
  =begin
2
2
  #Dyspatch API
3
3
 
4
- ## Introduction The Dyspatch API is based on the REST paradigm and features resource based URLs with standard HTTP response codes to indicate errors. We use standard HTTP authentication and request verbs and all responses are JSON formatted. See our [Implementation Guide](https://docs.dyspatch.io/development/implementing_dyspatch/) for more details on how to implement Dyspatch. ## API Client Libraries Dyspatch provides API Clients for the following languages and web frameworks: - [Java](https://github.com/getdyspatch/dyspatch-java) - [Javascript](https://github.com/getdyspatch/dyspatch-javascript) - [Python](https://github.com/getdyspatch/dyspatch-python) - [C#](https://github.com/getdyspatch/dyspatch-dotnet) - [Go](https://github.com/getdyspatch/dyspatch-golang) - [Ruby](https://github.com/getdyspatch/dyspatch-ruby)
4
+ ## Introduction The Dyspatch API is based on the REST paradigm, and features resource based URLs with standard HTTP response codes to indicate errors. We use standard HTTP authentication and request verbs, and all responses are JSON formatted. See our [Implementation Guide](https://docs.dyspatch.io/development/implementing_dyspatch/) for more details on how to implement Dyspatch. ## API Client Libraries Dyspatch provides API Clients for popular languages and web frameworks. - [Java](https://github.com/getdyspatch/dyspatch-java) - [Javascript](https://github.com/getdyspatch/dyspatch-javascript) - [Python](https://github.com/getdyspatch/dyspatch-python) - [C#](https://github.com/getdyspatch/dyspatch-dotnet) - [Go](https://github.com/getdyspatch/dyspatch-golang) - [Ruby](https://github.com/getdyspatch/dyspatch-ruby)
5
5
 
6
- OpenAPI spec version: 2019.10
6
+ The version of the OpenAPI document: 2020.11
7
7
  Contact: support@dyspatch.io
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.9
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
14
 
15
15
  module DyspatchClient
16
+ # template draft metadata included latest draft revision
16
17
  class DraftRead
17
18
  # An opaque, unique identifier for a draft
18
19
  attr_accessor :id
@@ -52,7 +53,7 @@ module DyspatchClient
52
53
  end
53
54
 
54
55
  # Attribute type mapping.
55
- def self.swagger_types
56
+ def self.openapi_types
56
57
  {
57
58
  :'id' => :'String',
58
59
  :'template' => :'String',
@@ -65,43 +66,56 @@ module DyspatchClient
65
66
  }
66
67
  end
67
68
 
69
+ # List of attributes with nullable: true
70
+ def self.openapi_nullable
71
+ Set.new([
72
+ ])
73
+ end
74
+
68
75
  # Initializes the object
69
76
  # @param [Hash] attributes Model attributes in the form of hash
70
77
  def initialize(attributes = {})
71
- return unless attributes.is_a?(Hash)
78
+ if (!attributes.is_a?(Hash))
79
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DyspatchClient::DraftRead` initialize method"
80
+ end
72
81
 
73
- # convert string to symbol for hash key
74
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
82
+ # check to see if the attribute exists and convert string to symbol for hash key
83
+ attributes = attributes.each_with_object({}) { |(k, v), h|
84
+ if (!self.class.attribute_map.key?(k.to_sym))
85
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DyspatchClient::DraftRead`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
86
+ end
87
+ h[k.to_sym] = v
88
+ }
75
89
 
76
- if attributes.has_key?(:'id')
90
+ if attributes.key?(:'id')
77
91
  self.id = attributes[:'id']
78
92
  end
79
93
 
80
- if attributes.has_key?(:'template')
94
+ if attributes.key?(:'template')
81
95
  self.template = attributes[:'template']
82
96
  end
83
97
 
84
- if attributes.has_key?(:'name')
98
+ if attributes.key?(:'name')
85
99
  self.name = attributes[:'name']
86
100
  end
87
101
 
88
- if attributes.has_key?(:'url')
102
+ if attributes.key?(:'url')
89
103
  self.url = attributes[:'url']
90
104
  end
91
105
 
92
- if attributes.has_key?(:'compiled')
106
+ if attributes.key?(:'compiled')
93
107
  self.compiled = attributes[:'compiled']
94
108
  end
95
109
 
96
- if attributes.has_key?(:'createdAt')
97
- self.created_at = attributes[:'createdAt']
110
+ if attributes.key?(:'created_at')
111
+ self.created_at = attributes[:'created_at']
98
112
  end
99
113
 
100
- if attributes.has_key?(:'updatedAt')
101
- self.updated_at = attributes[:'updatedAt']
114
+ if attributes.key?(:'updated_at')
115
+ self.updated_at = attributes[:'updated_at']
102
116
  end
103
117
 
104
- if attributes.has_key?(:'localizations')
118
+ if attributes.key?(:'localizations')
105
119
  if (value = attributes[:'localizations']).is_a?(Array)
106
120
  self.localizations = value
107
121
  end
@@ -143,19 +157,26 @@ module DyspatchClient
143
157
  end
144
158
 
145
159
  # Calculates hash code according to all attributes.
146
- # @return [Fixnum] Hash code
160
+ # @return [Integer] Hash code
147
161
  def hash
148
162
  [id, template, name, url, compiled, created_at, updated_at, localizations].hash
149
163
  end
150
164
 
165
+ # Builds the object from hash
166
+ # @param [Hash] attributes Model attributes in the form of hash
167
+ # @return [Object] Returns the model itself
168
+ def self.build_from_hash(attributes)
169
+ new.build_from_hash(attributes)
170
+ end
171
+
151
172
  # Builds the object from hash
152
173
  # @param [Hash] attributes Model attributes in the form of hash
153
174
  # @return [Object] Returns the model itself
154
175
  def build_from_hash(attributes)
155
176
  return nil unless attributes.is_a?(Hash)
156
- self.class.swagger_types.each_pair do |key, type|
177
+ self.class.openapi_types.each_pair do |key, type|
157
178
  if type =~ /\AArray<(.*)>/i
158
- # check to ensure the input is an array given that the the attribute
179
+ # check to ensure the input is an array given that the attribute
159
180
  # is documented as an array but the input is not
160
181
  if attributes[self.class.attribute_map[key]].is_a?(Array)
161
182
  self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
@@ -184,7 +205,7 @@ module DyspatchClient
184
205
  value.to_i
185
206
  when :Float
186
207
  value.to_f
187
- when :BOOLEAN
208
+ when :Boolean
188
209
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
189
210
  true
190
211
  else
@@ -205,8 +226,7 @@ module DyspatchClient
205
226
  end
206
227
  end
207
228
  else # model
208
- temp_model = DyspatchClient.const_get(type).new
209
- temp_model.build_from_hash(value)
229
+ DyspatchClient.const_get(type).build_from_hash(value)
210
230
  end
211
231
  end
212
232
 
@@ -228,7 +248,11 @@ module DyspatchClient
228
248
  hash = {}
229
249
  self.class.attribute_map.each_pair do |attr, param|
230
250
  value = self.send(attr)
231
- next if value.nil?
251
+ if value.nil?
252
+ is_nullable = self.class.openapi_nullable.include?(attr)
253
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
254
+ end
255
+
232
256
  hash[param] = _to_hash(value)
233
257
  end
234
258
  hash
@@ -1,20 +1,20 @@
1
1
  =begin
2
2
  #Dyspatch API
3
3
 
4
- ## Introduction The Dyspatch API is based on the REST paradigm and features resource based URLs with standard HTTP response codes to indicate errors. We use standard HTTP authentication and request verbs and all responses are JSON formatted. See our [Implementation Guide](https://docs.dyspatch.io/development/implementing_dyspatch/) for more details on how to implement Dyspatch. ## API Client Libraries Dyspatch provides API Clients for the following languages and web frameworks: - [Java](https://github.com/getdyspatch/dyspatch-java) - [Javascript](https://github.com/getdyspatch/dyspatch-javascript) - [Python](https://github.com/getdyspatch/dyspatch-python) - [C#](https://github.com/getdyspatch/dyspatch-dotnet) - [Go](https://github.com/getdyspatch/dyspatch-golang) - [Ruby](https://github.com/getdyspatch/dyspatch-ruby)
4
+ ## Introduction The Dyspatch API is based on the REST paradigm, and features resource based URLs with standard HTTP response codes to indicate errors. We use standard HTTP authentication and request verbs, and all responses are JSON formatted. See our [Implementation Guide](https://docs.dyspatch.io/development/implementing_dyspatch/) for more details on how to implement Dyspatch. ## API Client Libraries Dyspatch provides API Clients for popular languages and web frameworks. - [Java](https://github.com/getdyspatch/dyspatch-java) - [Javascript](https://github.com/getdyspatch/dyspatch-javascript) - [Python](https://github.com/getdyspatch/dyspatch-python) - [C#](https://github.com/getdyspatch/dyspatch-dotnet) - [Go](https://github.com/getdyspatch/dyspatch-golang) - [Ruby](https://github.com/getdyspatch/dyspatch-ruby)
5
5
 
6
- OpenAPI spec version: 2019.10
6
+ The version of the OpenAPI document: 2020.11
7
7
  Contact: support@dyspatch.io
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.9
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
14
 
15
15
  module DyspatchClient
16
+ # list of draft metadata
16
17
  class DraftsRead
17
- # Information about paginated results
18
18
  attr_accessor :cursor
19
19
 
20
20
  # A list of draft metadata objects
@@ -29,26 +29,39 @@ module DyspatchClient
29
29
  end
30
30
 
31
31
  # Attribute type mapping.
32
- def self.swagger_types
32
+ def self.openapi_types
33
33
  {
34
- :'cursor' => :'Object',
34
+ :'cursor' => :'Cursor',
35
35
  :'data' => :'Array<DraftMetaRead>'
36
36
  }
37
37
  end
38
38
 
39
+ # List of attributes with nullable: true
40
+ def self.openapi_nullable
41
+ Set.new([
42
+ ])
43
+ end
44
+
39
45
  # Initializes the object
40
46
  # @param [Hash] attributes Model attributes in the form of hash
41
47
  def initialize(attributes = {})
42
- return unless attributes.is_a?(Hash)
48
+ if (!attributes.is_a?(Hash))
49
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DyspatchClient::DraftsRead` initialize method"
50
+ end
43
51
 
44
- # convert string to symbol for hash key
45
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
52
+ # check to see if the attribute exists and convert string to symbol for hash key
53
+ attributes = attributes.each_with_object({}) { |(k, v), h|
54
+ if (!self.class.attribute_map.key?(k.to_sym))
55
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DyspatchClient::DraftsRead`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
56
+ end
57
+ h[k.to_sym] = v
58
+ }
46
59
 
47
- if attributes.has_key?(:'cursor')
60
+ if attributes.key?(:'cursor')
48
61
  self.cursor = attributes[:'cursor']
49
62
  end
50
63
 
51
- if attributes.has_key?(:'data')
64
+ if attributes.key?(:'data')
52
65
  if (value = attributes[:'data']).is_a?(Array)
53
66
  self.data = value
54
67
  end
@@ -84,19 +97,26 @@ module DyspatchClient
84
97
  end
85
98
 
86
99
  # Calculates hash code according to all attributes.
87
- # @return [Fixnum] Hash code
100
+ # @return [Integer] Hash code
88
101
  def hash
89
102
  [cursor, data].hash
90
103
  end
91
104
 
105
+ # Builds the object from hash
106
+ # @param [Hash] attributes Model attributes in the form of hash
107
+ # @return [Object] Returns the model itself
108
+ def self.build_from_hash(attributes)
109
+ new.build_from_hash(attributes)
110
+ end
111
+
92
112
  # Builds the object from hash
93
113
  # @param [Hash] attributes Model attributes in the form of hash
94
114
  # @return [Object] Returns the model itself
95
115
  def build_from_hash(attributes)
96
116
  return nil unless attributes.is_a?(Hash)
97
- self.class.swagger_types.each_pair do |key, type|
117
+ self.class.openapi_types.each_pair do |key, type|
98
118
  if type =~ /\AArray<(.*)>/i
99
- # check to ensure the input is an array given that the the attribute
119
+ # check to ensure the input is an array given that the attribute
100
120
  # is documented as an array but the input is not
101
121
  if attributes[self.class.attribute_map[key]].is_a?(Array)
102
122
  self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
@@ -125,7 +145,7 @@ module DyspatchClient
125
145
  value.to_i
126
146
  when :Float
127
147
  value.to_f
128
- when :BOOLEAN
148
+ when :Boolean
129
149
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
130
150
  true
131
151
  else
@@ -146,8 +166,7 @@ module DyspatchClient
146
166
  end
147
167
  end
148
168
  else # model
149
- temp_model = DyspatchClient.const_get(type).new
150
- temp_model.build_from_hash(value)
169
+ DyspatchClient.const_get(type).build_from_hash(value)
151
170
  end
152
171
  end
153
172
 
@@ -169,7 +188,11 @@ module DyspatchClient
169
188
  hash = {}
170
189
  self.class.attribute_map.each_pair do |attr, param|
171
190
  value = self.send(attr)
172
- next if value.nil?
191
+ if value.nil?
192
+ is_nullable = self.class.openapi_nullable.include?(attr)
193
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
194
+ end
195
+
173
196
  hash[param] = _to_hash(value)
174
197
  end
175
198
  hash
@@ -1,19 +1,19 @@
1
1
  =begin
2
2
  #Dyspatch API
3
3
 
4
- ## Introduction The Dyspatch API is based on the REST paradigm and features resource based URLs with standard HTTP response codes to indicate errors. We use standard HTTP authentication and request verbs and all responses are JSON formatted. See our [Implementation Guide](https://docs.dyspatch.io/development/implementing_dyspatch/) for more details on how to implement Dyspatch. ## API Client Libraries Dyspatch provides API Clients for the following languages and web frameworks: - [Java](https://github.com/getdyspatch/dyspatch-java) - [Javascript](https://github.com/getdyspatch/dyspatch-javascript) - [Python](https://github.com/getdyspatch/dyspatch-python) - [C#](https://github.com/getdyspatch/dyspatch-dotnet) - [Go](https://github.com/getdyspatch/dyspatch-golang) - [Ruby](https://github.com/getdyspatch/dyspatch-ruby)
4
+ ## Introduction The Dyspatch API is based on the REST paradigm, and features resource based URLs with standard HTTP response codes to indicate errors. We use standard HTTP authentication and request verbs, and all responses are JSON formatted. See our [Implementation Guide](https://docs.dyspatch.io/development/implementing_dyspatch/) for more details on how to implement Dyspatch. ## API Client Libraries Dyspatch provides API Clients for popular languages and web frameworks. - [Java](https://github.com/getdyspatch/dyspatch-java) - [Javascript](https://github.com/getdyspatch/dyspatch-javascript) - [Python](https://github.com/getdyspatch/dyspatch-python) - [C#](https://github.com/getdyspatch/dyspatch-dotnet) - [Go](https://github.com/getdyspatch/dyspatch-golang) - [Ruby](https://github.com/getdyspatch/dyspatch-ruby)
5
5
 
6
- OpenAPI spec version: 2019.10
6
+ The version of the OpenAPI document: 2020.11
7
7
  Contact: support@dyspatch.io
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.9
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
14
 
15
15
  module DyspatchClient
16
- class Body
16
+ class InlineObject
17
17
  attr_accessor :name
18
18
 
19
19
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -24,21 +24,34 @@ module DyspatchClient
24
24
  end
25
25
 
26
26
  # Attribute type mapping.
27
- def self.swagger_types
27
+ def self.openapi_types
28
28
  {
29
29
  :'name' => :'String'
30
30
  }
31
31
  end
32
32
 
33
+ # List of attributes with nullable: true
34
+ def self.openapi_nullable
35
+ Set.new([
36
+ ])
37
+ end
38
+
33
39
  # Initializes the object
34
40
  # @param [Hash] attributes Model attributes in the form of hash
35
41
  def initialize(attributes = {})
36
- return unless attributes.is_a?(Hash)
42
+ if (!attributes.is_a?(Hash))
43
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DyspatchClient::InlineObject` initialize method"
44
+ end
37
45
 
38
- # convert string to symbol for hash key
39
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
46
+ # check to see if the attribute exists and convert string to symbol for hash key
47
+ attributes = attributes.each_with_object({}) { |(k, v), h|
48
+ if (!self.class.attribute_map.key?(k.to_sym))
49
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DyspatchClient::InlineObject`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
50
+ end
51
+ h[k.to_sym] = v
52
+ }
40
53
 
41
- if attributes.has_key?(:'name')
54
+ if attributes.key?(:'name')
42
55
  self.name = attributes[:'name']
43
56
  end
44
57
  end
@@ -71,19 +84,26 @@ module DyspatchClient
71
84
  end
72
85
 
73
86
  # Calculates hash code according to all attributes.
74
- # @return [Fixnum] Hash code
87
+ # @return [Integer] Hash code
75
88
  def hash
76
89
  [name].hash
77
90
  end
78
91
 
92
+ # Builds the object from hash
93
+ # @param [Hash] attributes Model attributes in the form of hash
94
+ # @return [Object] Returns the model itself
95
+ def self.build_from_hash(attributes)
96
+ new.build_from_hash(attributes)
97
+ end
98
+
79
99
  # Builds the object from hash
80
100
  # @param [Hash] attributes Model attributes in the form of hash
81
101
  # @return [Object] Returns the model itself
82
102
  def build_from_hash(attributes)
83
103
  return nil unless attributes.is_a?(Hash)
84
- self.class.swagger_types.each_pair do |key, type|
104
+ self.class.openapi_types.each_pair do |key, type|
85
105
  if type =~ /\AArray<(.*)>/i
86
- # check to ensure the input is an array given that the the attribute
106
+ # check to ensure the input is an array given that the attribute
87
107
  # is documented as an array but the input is not
88
108
  if attributes[self.class.attribute_map[key]].is_a?(Array)
89
109
  self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
@@ -112,7 +132,7 @@ module DyspatchClient
112
132
  value.to_i
113
133
  when :Float
114
134
  value.to_f
115
- when :BOOLEAN
135
+ when :Boolean
116
136
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
117
137
  true
118
138
  else
@@ -133,8 +153,7 @@ module DyspatchClient
133
153
  end
134
154
  end
135
155
  else # model
136
- temp_model = DyspatchClient.const_get(type).new
137
- temp_model.build_from_hash(value)
156
+ DyspatchClient.const_get(type).build_from_hash(value)
138
157
  end
139
158
  end
140
159
 
@@ -156,7 +175,11 @@ module DyspatchClient
156
175
  hash = {}
157
176
  self.class.attribute_map.each_pair do |attr, param|
158
177
  value = self.send(attr)
159
- next if value.nil?
178
+ if value.nil?
179
+ is_nullable = self.class.openapi_nullable.include?(attr)
180
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
181
+ end
182
+
160
183
  hash[param] = _to_hash(value)
161
184
  end
162
185
  hash
@@ -1,18 +1,19 @@
1
1
  =begin
2
2
  #Dyspatch API
3
3
 
4
- ## Introduction The Dyspatch API is based on the REST paradigm and features resource based URLs with standard HTTP response codes to indicate errors. We use standard HTTP authentication and request verbs and all responses are JSON formatted. See our [Implementation Guide](https://docs.dyspatch.io/development/implementing_dyspatch/) for more details on how to implement Dyspatch. ## API Client Libraries Dyspatch provides API Clients for the following languages and web frameworks: - [Java](https://github.com/getdyspatch/dyspatch-java) - [Javascript](https://github.com/getdyspatch/dyspatch-javascript) - [Python](https://github.com/getdyspatch/dyspatch-python) - [C#](https://github.com/getdyspatch/dyspatch-dotnet) - [Go](https://github.com/getdyspatch/dyspatch-golang) - [Ruby](https://github.com/getdyspatch/dyspatch-ruby)
4
+ ## Introduction The Dyspatch API is based on the REST paradigm, and features resource based URLs with standard HTTP response codes to indicate errors. We use standard HTTP authentication and request verbs, and all responses are JSON formatted. See our [Implementation Guide](https://docs.dyspatch.io/development/implementing_dyspatch/) for more details on how to implement Dyspatch. ## API Client Libraries Dyspatch provides API Clients for popular languages and web frameworks. - [Java](https://github.com/getdyspatch/dyspatch-java) - [Javascript](https://github.com/getdyspatch/dyspatch-javascript) - [Python](https://github.com/getdyspatch/dyspatch-python) - [C#](https://github.com/getdyspatch/dyspatch-dotnet) - [Go](https://github.com/getdyspatch/dyspatch-golang) - [Ruby](https://github.com/getdyspatch/dyspatch-ruby)
5
5
 
6
- OpenAPI spec version: 2019.10
6
+ The version of the OpenAPI document: 2020.11
7
7
  Contact: support@dyspatch.io
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.9
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
14
 
15
15
  module DyspatchClient
16
+ # localization key
16
17
  class LocalizationKeyRead
17
18
  attr_accessor :key
18
19
 
@@ -27,26 +28,39 @@ module DyspatchClient
27
28
  end
28
29
 
29
30
  # Attribute type mapping.
30
- def self.swagger_types
31
+ def self.openapi_types
31
32
  {
32
33
  :'key' => :'String',
33
34
  :'comment' => :'String'
34
35
  }
35
36
  end
36
37
 
38
+ # List of attributes with nullable: true
39
+ def self.openapi_nullable
40
+ Set.new([
41
+ ])
42
+ end
43
+
37
44
  # Initializes the object
38
45
  # @param [Hash] attributes Model attributes in the form of hash
39
46
  def initialize(attributes = {})
40
- return unless attributes.is_a?(Hash)
47
+ if (!attributes.is_a?(Hash))
48
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DyspatchClient::LocalizationKeyRead` initialize method"
49
+ end
41
50
 
42
- # convert string to symbol for hash key
43
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
51
+ # check to see if the attribute exists and convert string to symbol for hash key
52
+ attributes = attributes.each_with_object({}) { |(k, v), h|
53
+ if (!self.class.attribute_map.key?(k.to_sym))
54
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DyspatchClient::LocalizationKeyRead`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
55
+ end
56
+ h[k.to_sym] = v
57
+ }
44
58
 
45
- if attributes.has_key?(:'key')
59
+ if attributes.key?(:'key')
46
60
  self.key = attributes[:'key']
47
61
  end
48
62
 
49
- if attributes.has_key?(:'comment')
63
+ if attributes.key?(:'comment')
50
64
  self.comment = attributes[:'comment']
51
65
  end
52
66
  end
@@ -80,19 +94,26 @@ module DyspatchClient
80
94
  end
81
95
 
82
96
  # Calculates hash code according to all attributes.
83
- # @return [Fixnum] Hash code
97
+ # @return [Integer] Hash code
84
98
  def hash
85
99
  [key, comment].hash
86
100
  end
87
101
 
102
+ # Builds the object from hash
103
+ # @param [Hash] attributes Model attributes in the form of hash
104
+ # @return [Object] Returns the model itself
105
+ def self.build_from_hash(attributes)
106
+ new.build_from_hash(attributes)
107
+ end
108
+
88
109
  # Builds the object from hash
89
110
  # @param [Hash] attributes Model attributes in the form of hash
90
111
  # @return [Object] Returns the model itself
91
112
  def build_from_hash(attributes)
92
113
  return nil unless attributes.is_a?(Hash)
93
- self.class.swagger_types.each_pair do |key, type|
114
+ self.class.openapi_types.each_pair do |key, type|
94
115
  if type =~ /\AArray<(.*)>/i
95
- # check to ensure the input is an array given that the the attribute
116
+ # check to ensure the input is an array given that the attribute
96
117
  # is documented as an array but the input is not
97
118
  if attributes[self.class.attribute_map[key]].is_a?(Array)
98
119
  self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
@@ -121,7 +142,7 @@ module DyspatchClient
121
142
  value.to_i
122
143
  when :Float
123
144
  value.to_f
124
- when :BOOLEAN
145
+ when :Boolean
125
146
  if value.to_s =~ /\A(true|t|yes|y|1)\z/i
126
147
  true
127
148
  else
@@ -142,8 +163,7 @@ module DyspatchClient
142
163
  end
143
164
  end
144
165
  else # model
145
- temp_model = DyspatchClient.const_get(type).new
146
- temp_model.build_from_hash(value)
166
+ DyspatchClient.const_get(type).build_from_hash(value)
147
167
  end
148
168
  end
149
169
 
@@ -165,7 +185,11 @@ module DyspatchClient
165
185
  hash = {}
166
186
  self.class.attribute_map.each_pair do |attr, param|
167
187
  value = self.send(attr)
168
- next if value.nil?
188
+ if value.nil?
189
+ is_nullable = self.class.openapi_nullable.include?(attr)
190
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
191
+ end
192
+
169
193
  hash[param] = _to_hash(value)
170
194
  end
171
195
  hash