daytona_api_client 0.196.0 → 0.198.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 (81) hide show
  1. checksums.yaml +4 -4
  2. data/.openapi-generator/FILES +3 -68
  3. data/lib/daytona_api_client/api/admin_api.rb +70 -0
  4. data/lib/daytona_api_client/api/organizations_api.rb +131 -0
  5. data/lib/daytona_api_client/api/preview_api.rb +64 -0
  6. data/lib/daytona_api_client/api/sandbox_api.rb +70 -0
  7. data/lib/daytona_api_client/models/{computer_use_status_response.rb → available_sandbox_class.rb} +84 -24
  8. data/lib/daytona_api_client/models/create_sandbox.rb +11 -1
  9. data/lib/daytona_api_client/models/organization.rb +28 -1
  10. data/lib/daytona_api_client/models/{create_session_request.rb → organization_preview_warning.rb} +20 -20
  11. data/lib/daytona_api_client/models/{download_files.rb → preview_warning.rb} +20 -22
  12. data/lib/daytona_api_client/models/sandbox.rb +11 -1
  13. data/lib/daytona_api_client/models/sandbox_list_item.rb +11 -1
  14. data/lib/daytona_api_client/version.rb +1 -1
  15. data/lib/daytona_api_client.rb +3 -68
  16. metadata +4 -69
  17. data/lib/daytona_api_client/api/toolbox_api.rb +0 -5108
  18. data/lib/daytona_api_client/models/command.rb +0 -202
  19. data/lib/daytona_api_client/models/completion_context.rb +0 -173
  20. data/lib/daytona_api_client/models/completion_item.rb +0 -218
  21. data/lib/daytona_api_client/models/completion_list.rb +0 -192
  22. data/lib/daytona_api_client/models/compressed_screenshot_response.rb +0 -185
  23. data/lib/daytona_api_client/models/computer_use_start_response.rb +0 -192
  24. data/lib/daytona_api_client/models/computer_use_stop_response.rb +0 -192
  25. data/lib/daytona_api_client/models/display_info_response.rb +0 -167
  26. data/lib/daytona_api_client/models/execute_request.rb +0 -184
  27. data/lib/daytona_api_client/models/execute_response.rb +0 -192
  28. data/lib/daytona_api_client/models/file_info.rb +0 -346
  29. data/lib/daytona_api_client/models/file_status.rb +0 -242
  30. data/lib/daytona_api_client/models/git_add_request.rb +0 -193
  31. data/lib/daytona_api_client/models/git_branch_request.rb +0 -190
  32. data/lib/daytona_api_client/models/git_checkout_request.rb +0 -190
  33. data/lib/daytona_api_client/models/git_clone_request.rb +0 -226
  34. data/lib/daytona_api_client/models/git_commit_info.rb +0 -268
  35. data/lib/daytona_api_client/models/git_commit_request.rb +0 -254
  36. data/lib/daytona_api_client/models/git_commit_response.rb +0 -164
  37. data/lib/daytona_api_client/models/git_delete_branch_request.rb +0 -190
  38. data/lib/daytona_api_client/models/git_repo_request.rb +0 -182
  39. data/lib/daytona_api_client/models/git_status.rb +0 -219
  40. data/lib/daytona_api_client/models/keyboard_hotkey_request.rb +0 -165
  41. data/lib/daytona_api_client/models/keyboard_press_request.rb +0 -177
  42. data/lib/daytona_api_client/models/keyboard_type_request.rb +0 -175
  43. data/lib/daytona_api_client/models/list_branch_response.rb +0 -166
  44. data/lib/daytona_api_client/models/lsp_completion_params.rb +0 -254
  45. data/lib/daytona_api_client/models/lsp_document_request.rb +0 -219
  46. data/lib/daytona_api_client/models/lsp_location.rb +0 -190
  47. data/lib/daytona_api_client/models/lsp_server_request.rb +0 -192
  48. data/lib/daytona_api_client/models/lsp_symbol.rb +0 -216
  49. data/lib/daytona_api_client/models/match.rb +0 -216
  50. data/lib/daytona_api_client/models/mouse_click_request.rb +0 -212
  51. data/lib/daytona_api_client/models/mouse_click_response.rb +0 -192
  52. data/lib/daytona_api_client/models/mouse_drag_request.rb +0 -256
  53. data/lib/daytona_api_client/models/mouse_drag_response.rb +0 -192
  54. data/lib/daytona_api_client/models/mouse_move_request.rb +0 -192
  55. data/lib/daytona_api_client/models/mouse_move_response.rb +0 -192
  56. data/lib/daytona_api_client/models/mouse_position.rb +0 -192
  57. data/lib/daytona_api_client/models/mouse_scroll_request.rb +0 -229
  58. data/lib/daytona_api_client/models/mouse_scroll_response.rb +0 -165
  59. data/lib/daytona_api_client/models/position.rb +0 -190
  60. data/lib/daytona_api_client/models/process_errors_response.rb +0 -192
  61. data/lib/daytona_api_client/models/process_logs_response.rb +0 -192
  62. data/lib/daytona_api_client/models/process_restart_response.rb +0 -192
  63. data/lib/daytona_api_client/models/process_status_response.rb +0 -192
  64. data/lib/daytona_api_client/models/project_dir_response.rb +0 -147
  65. data/lib/daytona_api_client/models/pty_create_request.rb +0 -217
  66. data/lib/daytona_api_client/models/pty_create_response.rb +0 -165
  67. data/lib/daytona_api_client/models/pty_list_response.rb +0 -167
  68. data/lib/daytona_api_client/models/pty_resize_request.rb +0 -192
  69. data/lib/daytona_api_client/models/pty_session_info.rb +0 -354
  70. data/lib/daytona_api_client/models/range.rb +0 -190
  71. data/lib/daytona_api_client/models/region_screenshot_response.rb +0 -185
  72. data/lib/daytona_api_client/models/replace_request.rb +0 -218
  73. data/lib/daytona_api_client/models/replace_result.rb +0 -165
  74. data/lib/daytona_api_client/models/screenshot_response.rb +0 -185
  75. data/lib/daytona_api_client/models/search_files_response.rb +0 -166
  76. data/lib/daytona_api_client/models/session.rb +0 -180
  77. data/lib/daytona_api_client/models/session_execute_request.rb +0 -185
  78. data/lib/daytona_api_client/models/session_execute_response.rb +0 -168
  79. data/lib/daytona_api_client/models/user_home_dir_response.rb +0 -147
  80. data/lib/daytona_api_client/models/windows_response.rb +0 -194
  81. data/lib/daytona_api_client/models/work_dir_response.rb +0 -147
@@ -1,242 +0,0 @@
1
- =begin
2
- #Daytona
3
-
4
- #Daytona AI platform API Docs
5
-
6
- The version of the OpenAPI document: 1.0
7
- Contact: support@daytona.com
8
- Generated by: https://openapi-generator.tech
9
- Generator version: 7.21.0
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module DaytonaApiClient
17
- class FileStatus < ApiModelBase
18
- attr_accessor :name
19
-
20
- attr_accessor :staging
21
-
22
- attr_accessor :worktree
23
-
24
- attr_accessor :extra
25
-
26
- # Attribute mapping from ruby-style variable name to JSON key.
27
- def self.attribute_map
28
- {
29
- :'name' => :'name',
30
- :'staging' => :'staging',
31
- :'worktree' => :'worktree',
32
- :'extra' => :'extra'
33
- }
34
- end
35
-
36
- # Returns attribute mapping this model knows about
37
- def self.acceptable_attribute_map
38
- attribute_map
39
- end
40
-
41
- # Returns all the JSON keys this model knows about
42
- def self.acceptable_attributes
43
- acceptable_attribute_map.values
44
- end
45
-
46
- # Attribute type mapping.
47
- def self.openapi_types
48
- {
49
- :'name' => :'String',
50
- :'staging' => :'String',
51
- :'worktree' => :'String',
52
- :'extra' => :'String'
53
- }
54
- end
55
-
56
- # List of attributes with nullable: true
57
- def self.openapi_nullable
58
- Set.new([
59
- ])
60
- end
61
-
62
- # Initializes the object
63
- # @param [Hash] attributes Model attributes in the form of hash
64
- def initialize(attributes = {})
65
- if (!attributes.is_a?(Hash))
66
- fail ArgumentError, "The input argument (attributes) must be a hash in `DaytonaApiClient::FileStatus` initialize method"
67
- end
68
-
69
- # check to see if the attribute exists and convert string to symbol for hash key
70
- acceptable_attribute_map = self.class.acceptable_attribute_map
71
- attributes = attributes.each_with_object({}) { |(k, v), h|
72
- if (!acceptable_attribute_map.key?(k.to_sym))
73
- fail ArgumentError, "`#{k}` is not a valid attribute in `DaytonaApiClient::FileStatus`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
74
- end
75
- h[k.to_sym] = v
76
- }
77
-
78
- if attributes.key?(:'name')
79
- self.name = attributes[:'name']
80
- else
81
- self.name = nil
82
- end
83
-
84
- if attributes.key?(:'staging')
85
- self.staging = attributes[:'staging']
86
- else
87
- self.staging = nil
88
- end
89
-
90
- if attributes.key?(:'worktree')
91
- self.worktree = attributes[:'worktree']
92
- else
93
- self.worktree = nil
94
- end
95
-
96
- if attributes.key?(:'extra')
97
- self.extra = attributes[:'extra']
98
- else
99
- self.extra = nil
100
- end
101
- end
102
-
103
- # Show invalid properties with the reasons. Usually used together with valid?
104
- # @return Array for valid properties with the reasons
105
- def list_invalid_properties
106
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
107
- invalid_properties = Array.new
108
- if @name.nil?
109
- invalid_properties.push('invalid value for "name", name cannot be nil.')
110
- end
111
-
112
- if @staging.nil?
113
- invalid_properties.push('invalid value for "staging", staging cannot be nil.')
114
- end
115
-
116
- if @worktree.nil?
117
- invalid_properties.push('invalid value for "worktree", worktree cannot be nil.')
118
- end
119
-
120
- if @extra.nil?
121
- invalid_properties.push('invalid value for "extra", extra cannot be nil.')
122
- end
123
-
124
- invalid_properties
125
- end
126
-
127
- # Check to see if the all the properties in the model are valid
128
- # @return true if the model is valid
129
- def valid?
130
- warn '[DEPRECATED] the `valid?` method is obsolete'
131
- return false if @name.nil?
132
- return false if @staging.nil?
133
- return false if @worktree.nil?
134
- return false if @extra.nil?
135
- true
136
- end
137
-
138
- # Custom attribute writer method with validation
139
- # @param [Object] name Value to be assigned
140
- def name=(name)
141
- if name.nil?
142
- fail ArgumentError, 'name cannot be nil'
143
- end
144
-
145
- @name = name
146
- end
147
-
148
- # Custom attribute writer method with validation
149
- # @param [Object] staging Value to be assigned
150
- def staging=(staging)
151
- if staging.nil?
152
- fail ArgumentError, 'staging cannot be nil'
153
- end
154
-
155
- @staging = staging
156
- end
157
-
158
- # Custom attribute writer method with validation
159
- # @param [Object] worktree Value to be assigned
160
- def worktree=(worktree)
161
- if worktree.nil?
162
- fail ArgumentError, 'worktree cannot be nil'
163
- end
164
-
165
- @worktree = worktree
166
- end
167
-
168
- # Custom attribute writer method with validation
169
- # @param [Object] extra Value to be assigned
170
- def extra=(extra)
171
- if extra.nil?
172
- fail ArgumentError, 'extra cannot be nil'
173
- end
174
-
175
- @extra = extra
176
- end
177
-
178
- # Checks equality by comparing each attribute.
179
- # @param [Object] Object to be compared
180
- def ==(o)
181
- return true if self.equal?(o)
182
- self.class == o.class &&
183
- name == o.name &&
184
- staging == o.staging &&
185
- worktree == o.worktree &&
186
- extra == o.extra
187
- end
188
-
189
- # @see the `==` method
190
- # @param [Object] Object to be compared
191
- def eql?(o)
192
- self == o
193
- end
194
-
195
- # Calculates hash code according to all attributes.
196
- # @return [Integer] Hash code
197
- def hash
198
- [name, staging, worktree, extra].hash
199
- end
200
-
201
- # Builds the object from hash
202
- # @param [Hash] attributes Model attributes in the form of hash
203
- # @return [Object] Returns the model itself
204
- def self.build_from_hash(attributes)
205
- return nil unless attributes.is_a?(Hash)
206
- attributes = attributes.transform_keys(&:to_sym)
207
- transformed_hash = {}
208
- openapi_types.each_pair do |key, type|
209
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
210
- transformed_hash["#{key}"] = nil
211
- elsif type =~ /\AArray<(.*)>/i
212
- # check to ensure the input is an array given that the attribute
213
- # is documented as an array but the input is not
214
- if attributes[attribute_map[key]].is_a?(Array)
215
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
216
- end
217
- elsif !attributes[attribute_map[key]].nil?
218
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
219
- end
220
- end
221
- new(transformed_hash)
222
- end
223
-
224
- # Returns the object in the form of hash
225
- # @return [Hash] Returns the object in the form of hash
226
- def to_hash
227
- hash = {}
228
- self.class.attribute_map.each_pair do |attr, param|
229
- value = self.send(attr)
230
- if value.nil?
231
- is_nullable = self.class.openapi_nullable.include?(attr)
232
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
233
- end
234
-
235
- hash[param] = _to_hash(value)
236
- end
237
- hash
238
- end
239
-
240
- end
241
-
242
- end
@@ -1,193 +0,0 @@
1
- =begin
2
- #Daytona
3
-
4
- #Daytona AI platform API Docs
5
-
6
- The version of the OpenAPI document: 1.0
7
- Contact: support@daytona.com
8
- Generated by: https://openapi-generator.tech
9
- Generator version: 7.21.0
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module DaytonaApiClient
17
- class GitAddRequest < ApiModelBase
18
- attr_accessor :path
19
-
20
- # files to add (use . for all files)
21
- attr_accessor :files
22
-
23
- # Attribute mapping from ruby-style variable name to JSON key.
24
- def self.attribute_map
25
- {
26
- :'path' => :'path',
27
- :'files' => :'files'
28
- }
29
- end
30
-
31
- # Returns attribute mapping this model knows about
32
- def self.acceptable_attribute_map
33
- attribute_map
34
- end
35
-
36
- # Returns all the JSON keys this model knows about
37
- def self.acceptable_attributes
38
- acceptable_attribute_map.values
39
- end
40
-
41
- # Attribute type mapping.
42
- def self.openapi_types
43
- {
44
- :'path' => :'String',
45
- :'files' => :'Array<String>'
46
- }
47
- end
48
-
49
- # List of attributes with nullable: true
50
- def self.openapi_nullable
51
- Set.new([
52
- ])
53
- end
54
-
55
- # Initializes the object
56
- # @param [Hash] attributes Model attributes in the form of hash
57
- def initialize(attributes = {})
58
- if (!attributes.is_a?(Hash))
59
- fail ArgumentError, "The input argument (attributes) must be a hash in `DaytonaApiClient::GitAddRequest` initialize method"
60
- end
61
-
62
- # check to see if the attribute exists and convert string to symbol for hash key
63
- acceptable_attribute_map = self.class.acceptable_attribute_map
64
- attributes = attributes.each_with_object({}) { |(k, v), h|
65
- if (!acceptable_attribute_map.key?(k.to_sym))
66
- fail ArgumentError, "`#{k}` is not a valid attribute in `DaytonaApiClient::GitAddRequest`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
67
- end
68
- h[k.to_sym] = v
69
- }
70
-
71
- if attributes.key?(:'path')
72
- self.path = attributes[:'path']
73
- else
74
- self.path = nil
75
- end
76
-
77
- if attributes.key?(:'files')
78
- if (value = attributes[:'files']).is_a?(Array)
79
- self.files = value
80
- end
81
- else
82
- self.files = nil
83
- end
84
- end
85
-
86
- # Show invalid properties with the reasons. Usually used together with valid?
87
- # @return Array for valid properties with the reasons
88
- def list_invalid_properties
89
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
90
- invalid_properties = Array.new
91
- if @path.nil?
92
- invalid_properties.push('invalid value for "path", path cannot be nil.')
93
- end
94
-
95
- if @files.nil?
96
- invalid_properties.push('invalid value for "files", files cannot be nil.')
97
- end
98
-
99
- invalid_properties
100
- end
101
-
102
- # Check to see if the all the properties in the model are valid
103
- # @return true if the model is valid
104
- def valid?
105
- warn '[DEPRECATED] the `valid?` method is obsolete'
106
- return false if @path.nil?
107
- return false if @files.nil?
108
- true
109
- end
110
-
111
- # Custom attribute writer method with validation
112
- # @param [Object] path Value to be assigned
113
- def path=(path)
114
- if path.nil?
115
- fail ArgumentError, 'path cannot be nil'
116
- end
117
-
118
- @path = path
119
- end
120
-
121
- # Custom attribute writer method with validation
122
- # @param [Object] files Value to be assigned
123
- def files=(files)
124
- if files.nil?
125
- fail ArgumentError, 'files cannot be nil'
126
- end
127
-
128
- @files = files
129
- end
130
-
131
- # Checks equality by comparing each attribute.
132
- # @param [Object] Object to be compared
133
- def ==(o)
134
- return true if self.equal?(o)
135
- self.class == o.class &&
136
- path == o.path &&
137
- files == o.files
138
- end
139
-
140
- # @see the `==` method
141
- # @param [Object] Object to be compared
142
- def eql?(o)
143
- self == o
144
- end
145
-
146
- # Calculates hash code according to all attributes.
147
- # @return [Integer] Hash code
148
- def hash
149
- [path, files].hash
150
- end
151
-
152
- # Builds the object from hash
153
- # @param [Hash] attributes Model attributes in the form of hash
154
- # @return [Object] Returns the model itself
155
- def self.build_from_hash(attributes)
156
- return nil unless attributes.is_a?(Hash)
157
- attributes = attributes.transform_keys(&:to_sym)
158
- transformed_hash = {}
159
- openapi_types.each_pair do |key, type|
160
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
161
- transformed_hash["#{key}"] = nil
162
- elsif type =~ /\AArray<(.*)>/i
163
- # check to ensure the input is an array given that the attribute
164
- # is documented as an array but the input is not
165
- if attributes[attribute_map[key]].is_a?(Array)
166
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
167
- end
168
- elsif !attributes[attribute_map[key]].nil?
169
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
170
- end
171
- end
172
- new(transformed_hash)
173
- end
174
-
175
- # Returns the object in the form of hash
176
- # @return [Hash] Returns the object in the form of hash
177
- def to_hash
178
- hash = {}
179
- self.class.attribute_map.each_pair do |attr, param|
180
- value = self.send(attr)
181
- if value.nil?
182
- is_nullable = self.class.openapi_nullable.include?(attr)
183
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
184
- end
185
-
186
- hash[param] = _to_hash(value)
187
- end
188
- hash
189
- end
190
-
191
- end
192
-
193
- end
@@ -1,190 +0,0 @@
1
- =begin
2
- #Daytona
3
-
4
- #Daytona AI platform API Docs
5
-
6
- The version of the OpenAPI document: 1.0
7
- Contact: support@daytona.com
8
- Generated by: https://openapi-generator.tech
9
- Generator version: 7.21.0
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module DaytonaApiClient
17
- class GitBranchRequest < ApiModelBase
18
- attr_accessor :path
19
-
20
- attr_accessor :name
21
-
22
- # Attribute mapping from ruby-style variable name to JSON key.
23
- def self.attribute_map
24
- {
25
- :'path' => :'path',
26
- :'name' => :'name'
27
- }
28
- end
29
-
30
- # Returns attribute mapping this model knows about
31
- def self.acceptable_attribute_map
32
- attribute_map
33
- end
34
-
35
- # Returns all the JSON keys this model knows about
36
- def self.acceptable_attributes
37
- acceptable_attribute_map.values
38
- end
39
-
40
- # Attribute type mapping.
41
- def self.openapi_types
42
- {
43
- :'path' => :'String',
44
- :'name' => :'String'
45
- }
46
- end
47
-
48
- # List of attributes with nullable: true
49
- def self.openapi_nullable
50
- Set.new([
51
- ])
52
- end
53
-
54
- # Initializes the object
55
- # @param [Hash] attributes Model attributes in the form of hash
56
- def initialize(attributes = {})
57
- if (!attributes.is_a?(Hash))
58
- fail ArgumentError, "The input argument (attributes) must be a hash in `DaytonaApiClient::GitBranchRequest` initialize method"
59
- end
60
-
61
- # check to see if the attribute exists and convert string to symbol for hash key
62
- acceptable_attribute_map = self.class.acceptable_attribute_map
63
- attributes = attributes.each_with_object({}) { |(k, v), h|
64
- if (!acceptable_attribute_map.key?(k.to_sym))
65
- fail ArgumentError, "`#{k}` is not a valid attribute in `DaytonaApiClient::GitBranchRequest`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
66
- end
67
- h[k.to_sym] = v
68
- }
69
-
70
- if attributes.key?(:'path')
71
- self.path = attributes[:'path']
72
- else
73
- self.path = nil
74
- end
75
-
76
- if attributes.key?(:'name')
77
- self.name = attributes[:'name']
78
- else
79
- self.name = nil
80
- end
81
- end
82
-
83
- # Show invalid properties with the reasons. Usually used together with valid?
84
- # @return Array for valid properties with the reasons
85
- def list_invalid_properties
86
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
87
- invalid_properties = Array.new
88
- if @path.nil?
89
- invalid_properties.push('invalid value for "path", path cannot be nil.')
90
- end
91
-
92
- if @name.nil?
93
- invalid_properties.push('invalid value for "name", name cannot be nil.')
94
- end
95
-
96
- invalid_properties
97
- end
98
-
99
- # Check to see if the all the properties in the model are valid
100
- # @return true if the model is valid
101
- def valid?
102
- warn '[DEPRECATED] the `valid?` method is obsolete'
103
- return false if @path.nil?
104
- return false if @name.nil?
105
- true
106
- end
107
-
108
- # Custom attribute writer method with validation
109
- # @param [Object] path Value to be assigned
110
- def path=(path)
111
- if path.nil?
112
- fail ArgumentError, 'path cannot be nil'
113
- end
114
-
115
- @path = path
116
- end
117
-
118
- # Custom attribute writer method with validation
119
- # @param [Object] name Value to be assigned
120
- def name=(name)
121
- if name.nil?
122
- fail ArgumentError, 'name cannot be nil'
123
- end
124
-
125
- @name = name
126
- end
127
-
128
- # Checks equality by comparing each attribute.
129
- # @param [Object] Object to be compared
130
- def ==(o)
131
- return true if self.equal?(o)
132
- self.class == o.class &&
133
- path == o.path &&
134
- name == o.name
135
- end
136
-
137
- # @see the `==` method
138
- # @param [Object] Object to be compared
139
- def eql?(o)
140
- self == o
141
- end
142
-
143
- # Calculates hash code according to all attributes.
144
- # @return [Integer] Hash code
145
- def hash
146
- [path, name].hash
147
- end
148
-
149
- # Builds the object from hash
150
- # @param [Hash] attributes Model attributes in the form of hash
151
- # @return [Object] Returns the model itself
152
- def self.build_from_hash(attributes)
153
- return nil unless attributes.is_a?(Hash)
154
- attributes = attributes.transform_keys(&:to_sym)
155
- transformed_hash = {}
156
- openapi_types.each_pair do |key, type|
157
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
158
- transformed_hash["#{key}"] = nil
159
- elsif type =~ /\AArray<(.*)>/i
160
- # check to ensure the input is an array given that the attribute
161
- # is documented as an array but the input is not
162
- if attributes[attribute_map[key]].is_a?(Array)
163
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
164
- end
165
- elsif !attributes[attribute_map[key]].nil?
166
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
167
- end
168
- end
169
- new(transformed_hash)
170
- end
171
-
172
- # Returns the object in the form of hash
173
- # @return [Hash] Returns the object in the form of hash
174
- def to_hash
175
- hash = {}
176
- self.class.attribute_map.each_pair do |attr, param|
177
- value = self.send(attr)
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
-
183
- hash[param] = _to_hash(value)
184
- end
185
- hash
186
- end
187
-
188
- end
189
-
190
- end