daytona_api_client 0.167.0 → 1.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 (210) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +9 -0
  3. data/Gemfile.lock +101 -0
  4. data/daytona_api_client.gemspec +2 -2
  5. data/lib/daytona_api_client/api/api_keys_api.rb +1 -1
  6. data/lib/daytona_api_client/api/audit_api.rb +139 -9
  7. data/lib/daytona_api_client/api/docker_registry_api.rb +66 -5
  8. data/lib/daytona_api_client/api/health_api.rb +2 -53
  9. data/lib/daytona_api_client/api/organizations_api.rb +162 -953
  10. data/lib/daytona_api_client/api/preview_api.rb +7 -76
  11. data/lib/daytona_api_client/api/runners_api.rb +21 -408
  12. data/lib/daytona_api_client/api/sandbox_api.rb +214 -1462
  13. data/lib/daytona_api_client/api/snapshots_api.rb +110 -36
  14. data/lib/daytona_api_client/api/toolbox_api.rb +740 -740
  15. data/lib/daytona_api_client/api/users_api.rb +238 -1
  16. data/lib/daytona_api_client/api/volumes_api.rb +1 -1
  17. data/lib/daytona_api_client/api/webhooks_api.rb +267 -4
  18. data/lib/daytona_api_client/api/workspace_api.rb +5 -5
  19. data/lib/daytona_api_client/api_client.rb +1 -1
  20. data/lib/daytona_api_client/configuration.rb +1 -4
  21. data/lib/daytona_api_client/models/account_provider.rb +0 -2
  22. data/lib/daytona_api_client/models/announcement.rb +0 -2
  23. data/lib/daytona_api_client/models/api_key_list.rb +0 -2
  24. data/lib/daytona_api_client/models/api_key_response.rb +0 -2
  25. data/lib/daytona_api_client/models/audit_log.rb +1 -21
  26. data/lib/daytona_api_client/models/build_info.rb +4 -33
  27. data/lib/daytona_api_client/models/command.rb +0 -2
  28. data/lib/daytona_api_client/models/completion_context.rb +0 -2
  29. data/lib/daytona_api_client/models/completion_item.rb +0 -2
  30. data/lib/daytona_api_client/models/completion_list.rb +0 -2
  31. data/lib/daytona_api_client/models/compressed_screenshot_response.rb +0 -2
  32. data/lib/daytona_api_client/models/computer_use_start_response.rb +0 -2
  33. data/lib/daytona_api_client/models/computer_use_status_response.rb +0 -2
  34. data/lib/daytona_api_client/models/computer_use_stop_response.rb +0 -2
  35. data/lib/daytona_api_client/models/create_api_key.rb +1 -3
  36. data/lib/daytona_api_client/models/{job.rb → create_audit_log.rb} +79 -168
  37. data/lib/daytona_api_client/models/create_build_info.rb +0 -2
  38. data/lib/daytona_api_client/models/create_docker_registry.rb +65 -6
  39. data/lib/daytona_api_client/models/create_linked_account.rb +0 -2
  40. data/lib/daytona_api_client/models/create_organization.rb +4 -33
  41. data/lib/daytona_api_client/models/create_organization_invitation.rb +0 -2
  42. data/lib/daytona_api_client/models/create_organization_quota.rb +0 -2
  43. data/lib/daytona_api_client/models/create_organization_role.rb +0 -2
  44. data/lib/daytona_api_client/models/create_runner.rb +315 -33
  45. data/lib/daytona_api_client/models/create_sandbox.rb +1 -13
  46. data/lib/daytona_api_client/models/create_session_request.rb +0 -2
  47. data/lib/daytona_api_client/models/create_snapshot.rb +14 -16
  48. data/lib/daytona_api_client/models/create_user.rb +1 -12
  49. data/lib/daytona_api_client/models/create_volume.rb +0 -2
  50. data/lib/daytona_api_client/models/create_workspace.rb +0 -2
  51. data/lib/daytona_api_client/models/daytona_configuration.rb +4 -53
  52. data/lib/daytona_api_client/models/display_info_response.rb +0 -2
  53. data/lib/daytona_api_client/models/docker_registry.rb +0 -2
  54. data/lib/daytona_api_client/models/download_files.rb +0 -2
  55. data/lib/daytona_api_client/models/execute_request.rb +0 -2
  56. data/lib/daytona_api_client/models/execute_response.rb +0 -2
  57. data/lib/daytona_api_client/models/file_info.rb +0 -2
  58. data/lib/daytona_api_client/models/file_status.rb +0 -2
  59. data/lib/daytona_api_client/models/git_add_request.rb +0 -2
  60. data/lib/daytona_api_client/models/git_branch_request.rb +0 -2
  61. data/lib/daytona_api_client/models/git_checkout_request.rb +0 -2
  62. data/lib/daytona_api_client/models/git_clone_request.rb +0 -2
  63. data/lib/daytona_api_client/models/git_commit_info.rb +0 -2
  64. data/lib/daytona_api_client/models/git_commit_request.rb +0 -2
  65. data/lib/daytona_api_client/models/git_commit_response.rb +0 -2
  66. data/lib/daytona_api_client/models/git_delete_branch_request.rb +0 -2
  67. data/lib/daytona_api_client/models/git_repo_request.rb +0 -2
  68. data/lib/daytona_api_client/models/git_status.rb +0 -2
  69. data/lib/daytona_api_client/models/health_controller_check200_response.rb +0 -2
  70. data/lib/daytona_api_client/models/health_controller_check200_response_info_value.rb +0 -2
  71. data/lib/daytona_api_client/models/health_controller_check503_response.rb +0 -2
  72. data/lib/daytona_api_client/models/keyboard_hotkey_request.rb +0 -2
  73. data/lib/daytona_api_client/models/keyboard_press_request.rb +0 -2
  74. data/lib/daytona_api_client/models/keyboard_type_request.rb +0 -2
  75. data/lib/daytona_api_client/models/list_branch_response.rb +0 -2
  76. data/lib/daytona_api_client/models/lsp_completion_params.rb +0 -2
  77. data/lib/daytona_api_client/models/lsp_document_request.rb +0 -2
  78. data/lib/daytona_api_client/models/lsp_location.rb +0 -2
  79. data/lib/daytona_api_client/models/lsp_server_request.rb +0 -2
  80. data/lib/daytona_api_client/models/lsp_symbol.rb +0 -2
  81. data/lib/daytona_api_client/models/match.rb +0 -2
  82. data/lib/daytona_api_client/models/mouse_click_request.rb +0 -2
  83. data/lib/daytona_api_client/models/mouse_click_response.rb +0 -2
  84. data/lib/daytona_api_client/models/mouse_drag_request.rb +0 -2
  85. data/lib/daytona_api_client/models/mouse_drag_response.rb +0 -2
  86. data/lib/daytona_api_client/models/mouse_move_request.rb +0 -2
  87. data/lib/daytona_api_client/models/mouse_move_response.rb +0 -2
  88. data/lib/daytona_api_client/models/mouse_position.rb +0 -2
  89. data/lib/daytona_api_client/models/mouse_scroll_request.rb +0 -2
  90. data/lib/daytona_api_client/models/mouse_scroll_response.rb +0 -2
  91. data/lib/daytona_api_client/models/oidc_config.rb +0 -2
  92. data/lib/daytona_api_client/models/organization.rb +85 -148
  93. data/lib/daytona_api_client/models/organization_invitation.rb +0 -2
  94. data/lib/daytona_api_client/models/organization_role.rb +0 -2
  95. data/lib/daytona_api_client/models/organization_sandbox_default_limited_network_egress.rb +0 -2
  96. data/lib/daytona_api_client/models/organization_suspension.rb +5 -9
  97. data/lib/daytona_api_client/models/organization_usage_overview.rb +146 -20
  98. data/lib/daytona_api_client/models/organization_user.rb +0 -2
  99. data/lib/daytona_api_client/models/paginated_audit_logs.rb +4 -16
  100. data/lib/daytona_api_client/models/paginated_sandboxes.rb +0 -2
  101. data/lib/daytona_api_client/models/paginated_snapshots.rb +0 -2
  102. data/lib/daytona_api_client/models/{paginated_jobs.rb → paginated_snapshots_dto.rb} +4 -6
  103. data/lib/daytona_api_client/models/port_preview_url.rb +14 -33
  104. data/lib/daytona_api_client/models/position.rb +0 -2
  105. data/lib/daytona_api_client/models/posthog_config.rb +0 -2
  106. data/lib/daytona_api_client/models/process_errors_response.rb +0 -2
  107. data/lib/daytona_api_client/models/process_logs_response.rb +0 -2
  108. data/lib/daytona_api_client/models/process_restart_response.rb +0 -2
  109. data/lib/daytona_api_client/models/process_status_response.rb +0 -2
  110. data/lib/daytona_api_client/models/project_dir_response.rb +0 -2
  111. data/lib/daytona_api_client/models/pty_create_request.rb +0 -2
  112. data/lib/daytona_api_client/models/pty_create_response.rb +0 -2
  113. data/lib/daytona_api_client/models/pty_list_response.rb +0 -2
  114. data/lib/daytona_api_client/models/pty_resize_request.rb +0 -2
  115. data/lib/daytona_api_client/models/pty_session_info.rb +0 -2
  116. data/lib/daytona_api_client/models/range.rb +0 -2
  117. data/lib/daytona_api_client/models/region.rb +4 -180
  118. data/lib/daytona_api_client/models/region_screenshot_response.rb +0 -2
  119. data/lib/daytona_api_client/models/registry_push_access_dto.rb +0 -2
  120. data/lib/daytona_api_client/models/replace_request.rb +0 -2
  121. data/lib/daytona_api_client/models/replace_result.rb +0 -2
  122. data/lib/daytona_api_client/models/runner.rb +117 -108
  123. data/lib/daytona_api_client/models/runner_snapshot_dto.rb +17 -2
  124. data/lib/daytona_api_client/models/sandbox.rb +14 -80
  125. data/lib/daytona_api_client/models/sandbox_info.rb +0 -2
  126. data/lib/daytona_api_client/models/sandbox_labels.rb +0 -2
  127. data/lib/daytona_api_client/models/sandbox_state.rb +1 -4
  128. data/lib/daytona_api_client/models/sandbox_volume.rb +4 -16
  129. data/lib/daytona_api_client/models/screenshot_response.rb +0 -2
  130. data/lib/daytona_api_client/models/search_files_response.rb +0 -2
  131. data/lib/daytona_api_client/models/send_webhook_dto.rb +1 -25
  132. data/lib/daytona_api_client/models/session.rb +0 -2
  133. data/lib/daytona_api_client/models/session_execute_request.rb +0 -2
  134. data/lib/daytona_api_client/models/session_execute_response.rb +0 -2
  135. data/lib/daytona_api_client/models/set_snapshot_general_status_dto.rb +0 -2
  136. data/lib/daytona_api_client/models/snapshot_dto.rb +4 -38
  137. data/lib/daytona_api_client/models/snapshot_state.rb +4 -1
  138. data/lib/daytona_api_client/models/ssh_access_dto.rb +4 -33
  139. data/lib/daytona_api_client/models/ssh_access_validation_dto.rb +24 -6
  140. data/lib/daytona_api_client/models/storage_access_dto.rb +0 -2
  141. data/lib/daytona_api_client/models/update_docker_registry.rb +0 -2
  142. data/lib/daytona_api_client/models/update_organization_invitation.rb +0 -2
  143. data/lib/daytona_api_client/models/update_organization_member_access.rb +0 -2
  144. data/lib/daytona_api_client/models/update_organization_quota.rb +41 -92
  145. data/lib/daytona_api_client/models/update_organization_role.rb +0 -2
  146. data/lib/daytona_api_client/models/update_sandbox_state_dto.rb +6 -28
  147. data/lib/daytona_api_client/models/user.rb +0 -2
  148. data/lib/daytona_api_client/models/user_home_dir_response.rb +0 -2
  149. data/lib/daytona_api_client/models/user_public_key.rb +0 -2
  150. data/lib/daytona_api_client/models/volume_dto.rb +0 -2
  151. data/lib/daytona_api_client/models/webhook_app_portal_access.rb +1 -30
  152. data/lib/daytona_api_client/models/{admin_get_webhook_status200_response.rb → webhook_controller_get_status200_response.rb} +3 -5
  153. data/lib/daytona_api_client/models/webhook_initialization_status.rb +0 -2
  154. data/lib/daytona_api_client/models/windows_response.rb +0 -2
  155. data/lib/daytona_api_client/models/work_dir_response.rb +0 -2
  156. data/lib/daytona_api_client/models/workspace.rb +27 -66
  157. data/lib/daytona_api_client/version.rb +1 -1
  158. data/lib/daytona_api_client.rb +2 -46
  159. data/project.json +11 -38
  160. metadata +6 -54
  161. data/.gitignore +0 -39
  162. data/.openapi-generator/FILES +0 -209
  163. data/.openapi-generator/VERSION +0 -1
  164. data/.openapi-generator-ignore +0 -31
  165. data/.rspec +0 -2
  166. data/.rubocop.yml +0 -148
  167. data/fix-gemspec.sh +0 -11
  168. data/lib/daytona_api_client/api/admin_api.rb +0 -1151
  169. data/lib/daytona_api_client/api/jobs_api.rb +0 -299
  170. data/lib/daytona_api_client/api/regions_api.rb +0 -77
  171. data/lib/daytona_api_client/models/admin_create_runner.rb +0 -387
  172. data/lib/daytona_api_client/models/create_region.rb +0 -271
  173. data/lib/daytona_api_client/models/create_region_response.rb +0 -282
  174. data/lib/daytona_api_client/models/create_runner_response.rb +0 -265
  175. data/lib/daytona_api_client/models/create_sandbox_snapshot.rb +0 -238
  176. data/lib/daytona_api_client/models/fork_sandbox.rb +0 -221
  177. data/lib/daytona_api_client/models/job_status.rb +0 -42
  178. data/lib/daytona_api_client/models/job_type.rb +0 -52
  179. data/lib/daytona_api_client/models/log_entry.rb +0 -407
  180. data/lib/daytona_api_client/models/metric_data_point.rb +0 -265
  181. data/lib/daytona_api_client/models/metric_series.rb +0 -267
  182. data/lib/daytona_api_client/models/metrics_response.rb +0 -240
  183. data/lib/daytona_api_client/models/otel_config.rb +0 -251
  184. data/lib/daytona_api_client/models/paginated_logs.rb +0 -321
  185. data/lib/daytona_api_client/models/paginated_traces.rb +0 -321
  186. data/lib/daytona_api_client/models/poll_jobs_response.rb +0 -240
  187. data/lib/daytona_api_client/models/rate_limit_config.rb +0 -251
  188. data/lib/daytona_api_client/models/rate_limit_entry.rb +0 -231
  189. data/lib/daytona_api_client/models/regenerate_api_key_response.rb +0 -238
  190. data/lib/daytona_api_client/models/region_quota.rb +0 -389
  191. data/lib/daytona_api_client/models/region_type.rb +0 -41
  192. data/lib/daytona_api_client/models/region_usage_overview.rb +0 -393
  193. data/lib/daytona_api_client/models/resize_sandbox.rb +0 -298
  194. data/lib/daytona_api_client/models/runner_class.rb +0 -40
  195. data/lib/daytona_api_client/models/runner_full.rb +0 -808
  196. data/lib/daytona_api_client/models/runner_health_metrics.rb +0 -535
  197. data/lib/daytona_api_client/models/runner_healthcheck.rb +0 -290
  198. data/lib/daytona_api_client/models/runner_service_health.rb +0 -275
  199. data/lib/daytona_api_client/models/signed_port_preview_url.rb +0 -319
  200. data/lib/daytona_api_client/models/snapshot_manager_credentials.rb +0 -265
  201. data/lib/daytona_api_client/models/toolbox_proxy_url.rb +0 -238
  202. data/lib/daytona_api_client/models/trace_span.rb +0 -405
  203. data/lib/daytona_api_client/models/trace_summary.rb +0 -383
  204. data/lib/daytona_api_client/models/update_job_status.rb +0 -280
  205. data/lib/daytona_api_client/models/update_organization_default_region.rb +0 -238
  206. data/lib/daytona_api_client/models/update_organization_region_quota.rb +0 -287
  207. data/lib/daytona_api_client/models/update_region.rb +0 -244
  208. data/lib/daytona_api_client/models/url.rb +0 -238
  209. data/lib/daytona_api_client/models/webhook_event.rb +0 -45
  210. data/lib/daytona_api_client/models/workspace_port_preview_url.rb +0 -265
@@ -1,238 +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.12.0
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module DaytonaApiClient
17
- class ToolboxProxyUrl
18
- # The toolbox proxy URL for the sandbox
19
- attr_accessor :url
20
-
21
- # Attribute mapping from ruby-style variable name to JSON key.
22
- def self.attribute_map
23
- {
24
- :'url' => :'url'
25
- }
26
- end
27
-
28
- # Returns attribute mapping this model knows about
29
- def self.acceptable_attribute_map
30
- attribute_map
31
- end
32
-
33
- # Returns all the JSON keys this model knows about
34
- def self.acceptable_attributes
35
- acceptable_attribute_map.values
36
- end
37
-
38
- # Attribute type mapping.
39
- def self.openapi_types
40
- {
41
- :'url' => :'String'
42
- }
43
- end
44
-
45
- # List of attributes with nullable: true
46
- def self.openapi_nullable
47
- Set.new([
48
- ])
49
- end
50
-
51
- # Initializes the object
52
- # @param [Hash] attributes Model attributes in the form of hash
53
- def initialize(attributes = {})
54
- if (!attributes.is_a?(Hash))
55
- fail ArgumentError, "The input argument (attributes) must be a hash in `DaytonaApiClient::ToolboxProxyUrl` initialize method"
56
- end
57
-
58
- # check to see if the attribute exists and convert string to symbol for hash key
59
- acceptable_attribute_map = self.class.acceptable_attribute_map
60
- attributes = attributes.each_with_object({}) { |(k, v), h|
61
- if (!acceptable_attribute_map.key?(k.to_sym))
62
- fail ArgumentError, "`#{k}` is not a valid attribute in `DaytonaApiClient::ToolboxProxyUrl`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
63
- end
64
- h[k.to_sym] = v
65
- }
66
-
67
- if attributes.key?(:'url')
68
- self.url = attributes[:'url']
69
- else
70
- self.url = nil
71
- end
72
- end
73
-
74
- # Show invalid properties with the reasons. Usually used together with valid?
75
- # @return Array for valid properties with the reasons
76
- def list_invalid_properties
77
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
78
- invalid_properties = Array.new
79
- if @url.nil?
80
- invalid_properties.push('invalid value for "url", url cannot be nil.')
81
- end
82
-
83
- invalid_properties
84
- end
85
-
86
- # Check to see if the all the properties in the model are valid
87
- # @return true if the model is valid
88
- def valid?
89
- warn '[DEPRECATED] the `valid?` method is obsolete'
90
- return false if @url.nil?
91
- true
92
- end
93
-
94
- # Custom attribute writer method with validation
95
- # @param [Object] url Value to be assigned
96
- def url=(url)
97
- if url.nil?
98
- fail ArgumentError, 'url cannot be nil'
99
- end
100
-
101
- @url = url
102
- end
103
-
104
- # Checks equality by comparing each attribute.
105
- # @param [Object] Object to be compared
106
- def ==(o)
107
- return true if self.equal?(o)
108
- self.class == o.class &&
109
- url == o.url
110
- end
111
-
112
- # @see the `==` method
113
- # @param [Object] Object to be compared
114
- def eql?(o)
115
- self == o
116
- end
117
-
118
- # Calculates hash code according to all attributes.
119
- # @return [Integer] Hash code
120
- def hash
121
- [url].hash
122
- end
123
-
124
- # Builds the object from hash
125
- # @param [Hash] attributes Model attributes in the form of hash
126
- # @return [Object] Returns the model itself
127
- def self.build_from_hash(attributes)
128
- return nil unless attributes.is_a?(Hash)
129
- attributes = attributes.transform_keys(&:to_sym)
130
- transformed_hash = {}
131
- openapi_types.each_pair do |key, type|
132
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
133
- transformed_hash["#{key}"] = nil
134
- elsif type =~ /\AArray<(.*)>/i
135
- # check to ensure the input is an array given that the attribute
136
- # is documented as an array but the input is not
137
- if attributes[attribute_map[key]].is_a?(Array)
138
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
139
- end
140
- elsif !attributes[attribute_map[key]].nil?
141
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
142
- end
143
- end
144
- new(transformed_hash)
145
- end
146
-
147
- # Deserializes the data based on type
148
- # @param string type Data type
149
- # @param string value Value to be deserialized
150
- # @return [Object] Deserialized data
151
- def self._deserialize(type, value)
152
- case type.to_sym
153
- when :Time
154
- Time.parse(value)
155
- when :Date
156
- Date.parse(value)
157
- when :String
158
- value.to_s
159
- when :Integer
160
- value.to_i
161
- when :Float
162
- value.to_f
163
- when :Boolean
164
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
165
- true
166
- else
167
- false
168
- end
169
- when :Object
170
- # generic object (usually a Hash), return directly
171
- value
172
- when /\AArray<(?<inner_type>.+)>\z/
173
- inner_type = Regexp.last_match[:inner_type]
174
- value.map { |v| _deserialize(inner_type, v) }
175
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
176
- k_type = Regexp.last_match[:k_type]
177
- v_type = Regexp.last_match[:v_type]
178
- {}.tap do |hash|
179
- value.each do |k, v|
180
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
181
- end
182
- end
183
- else # model
184
- # models (e.g. Pet) or oneOf
185
- klass = DaytonaApiClient.const_get(type)
186
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
187
- end
188
- end
189
-
190
- # Returns the string representation of the object
191
- # @return [String] String presentation of the object
192
- def to_s
193
- to_hash.to_s
194
- end
195
-
196
- # to_body is an alias to to_hash (backward compatibility)
197
- # @return [Hash] Returns the object in the form of hash
198
- def to_body
199
- to_hash
200
- end
201
-
202
- # Returns the object in the form of hash
203
- # @return [Hash] Returns the object in the form of hash
204
- def to_hash
205
- hash = {}
206
- self.class.attribute_map.each_pair do |attr, param|
207
- value = self.send(attr)
208
- if value.nil?
209
- is_nullable = self.class.openapi_nullable.include?(attr)
210
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
211
- end
212
-
213
- hash[param] = _to_hash(value)
214
- end
215
- hash
216
- end
217
-
218
- # Outputs non-array value in the form of hash
219
- # For object, use to_hash. Otherwise, just return the value
220
- # @param [Object] value Any valid value
221
- # @return [Hash] Returns the value in the form of hash
222
- def _to_hash(value)
223
- if value.is_a?(Array)
224
- value.compact.map { |v| _to_hash(v) }
225
- elsif value.is_a?(Hash)
226
- {}.tap do |hash|
227
- value.each { |k, v| hash[k] = _to_hash(v) }
228
- end
229
- elsif value.respond_to? :to_hash
230
- value.to_hash
231
- else
232
- value
233
- end
234
- end
235
-
236
- end
237
-
238
- end
@@ -1,405 +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.12.0
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module DaytonaApiClient
17
- class TraceSpan
18
- # Trace identifier
19
- attr_accessor :trace_id
20
-
21
- # Span identifier
22
- attr_accessor :span_id
23
-
24
- # Parent span identifier
25
- attr_accessor :parent_span_id
26
-
27
- # Span name
28
- attr_accessor :span_name
29
-
30
- # Span start timestamp
31
- attr_accessor :timestamp
32
-
33
- # Span duration in nanoseconds
34
- attr_accessor :duration_ns
35
-
36
- # Span attributes
37
- attr_accessor :span_attributes
38
-
39
- # Status code of the span
40
- attr_accessor :status_code
41
-
42
- # Status message
43
- attr_accessor :status_message
44
-
45
- # Attribute mapping from ruby-style variable name to JSON key.
46
- def self.attribute_map
47
- {
48
- :'trace_id' => :'traceId',
49
- :'span_id' => :'spanId',
50
- :'parent_span_id' => :'parentSpanId',
51
- :'span_name' => :'spanName',
52
- :'timestamp' => :'timestamp',
53
- :'duration_ns' => :'durationNs',
54
- :'span_attributes' => :'spanAttributes',
55
- :'status_code' => :'statusCode',
56
- :'status_message' => :'statusMessage'
57
- }
58
- end
59
-
60
- # Returns attribute mapping this model knows about
61
- def self.acceptable_attribute_map
62
- attribute_map
63
- end
64
-
65
- # Returns all the JSON keys this model knows about
66
- def self.acceptable_attributes
67
- acceptable_attribute_map.values
68
- end
69
-
70
- # Attribute type mapping.
71
- def self.openapi_types
72
- {
73
- :'trace_id' => :'String',
74
- :'span_id' => :'String',
75
- :'parent_span_id' => :'String',
76
- :'span_name' => :'String',
77
- :'timestamp' => :'String',
78
- :'duration_ns' => :'Float',
79
- :'span_attributes' => :'Hash<String, String>',
80
- :'status_code' => :'String',
81
- :'status_message' => :'String'
82
- }
83
- end
84
-
85
- # List of attributes with nullable: true
86
- def self.openapi_nullable
87
- Set.new([
88
- ])
89
- end
90
-
91
- # Initializes the object
92
- # @param [Hash] attributes Model attributes in the form of hash
93
- def initialize(attributes = {})
94
- if (!attributes.is_a?(Hash))
95
- fail ArgumentError, "The input argument (attributes) must be a hash in `DaytonaApiClient::TraceSpan` initialize method"
96
- end
97
-
98
- # check to see if the attribute exists and convert string to symbol for hash key
99
- acceptable_attribute_map = self.class.acceptable_attribute_map
100
- attributes = attributes.each_with_object({}) { |(k, v), h|
101
- if (!acceptable_attribute_map.key?(k.to_sym))
102
- fail ArgumentError, "`#{k}` is not a valid attribute in `DaytonaApiClient::TraceSpan`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
103
- end
104
- h[k.to_sym] = v
105
- }
106
-
107
- if attributes.key?(:'trace_id')
108
- self.trace_id = attributes[:'trace_id']
109
- else
110
- self.trace_id = nil
111
- end
112
-
113
- if attributes.key?(:'span_id')
114
- self.span_id = attributes[:'span_id']
115
- else
116
- self.span_id = nil
117
- end
118
-
119
- if attributes.key?(:'parent_span_id')
120
- self.parent_span_id = attributes[:'parent_span_id']
121
- end
122
-
123
- if attributes.key?(:'span_name')
124
- self.span_name = attributes[:'span_name']
125
- else
126
- self.span_name = nil
127
- end
128
-
129
- if attributes.key?(:'timestamp')
130
- self.timestamp = attributes[:'timestamp']
131
- else
132
- self.timestamp = nil
133
- end
134
-
135
- if attributes.key?(:'duration_ns')
136
- self.duration_ns = attributes[:'duration_ns']
137
- else
138
- self.duration_ns = nil
139
- end
140
-
141
- if attributes.key?(:'span_attributes')
142
- if (value = attributes[:'span_attributes']).is_a?(Hash)
143
- self.span_attributes = value
144
- end
145
- else
146
- self.span_attributes = nil
147
- end
148
-
149
- if attributes.key?(:'status_code')
150
- self.status_code = attributes[:'status_code']
151
- end
152
-
153
- if attributes.key?(:'status_message')
154
- self.status_message = attributes[:'status_message']
155
- end
156
- end
157
-
158
- # Show invalid properties with the reasons. Usually used together with valid?
159
- # @return Array for valid properties with the reasons
160
- def list_invalid_properties
161
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
162
- invalid_properties = Array.new
163
- if @trace_id.nil?
164
- invalid_properties.push('invalid value for "trace_id", trace_id cannot be nil.')
165
- end
166
-
167
- if @span_id.nil?
168
- invalid_properties.push('invalid value for "span_id", span_id cannot be nil.')
169
- end
170
-
171
- if @span_name.nil?
172
- invalid_properties.push('invalid value for "span_name", span_name cannot be nil.')
173
- end
174
-
175
- if @timestamp.nil?
176
- invalid_properties.push('invalid value for "timestamp", timestamp cannot be nil.')
177
- end
178
-
179
- if @duration_ns.nil?
180
- invalid_properties.push('invalid value for "duration_ns", duration_ns cannot be nil.')
181
- end
182
-
183
- if @span_attributes.nil?
184
- invalid_properties.push('invalid value for "span_attributes", span_attributes cannot be nil.')
185
- end
186
-
187
- invalid_properties
188
- end
189
-
190
- # Check to see if the all the properties in the model are valid
191
- # @return true if the model is valid
192
- def valid?
193
- warn '[DEPRECATED] the `valid?` method is obsolete'
194
- return false if @trace_id.nil?
195
- return false if @span_id.nil?
196
- return false if @span_name.nil?
197
- return false if @timestamp.nil?
198
- return false if @duration_ns.nil?
199
- return false if @span_attributes.nil?
200
- true
201
- end
202
-
203
- # Custom attribute writer method with validation
204
- # @param [Object] trace_id Value to be assigned
205
- def trace_id=(trace_id)
206
- if trace_id.nil?
207
- fail ArgumentError, 'trace_id cannot be nil'
208
- end
209
-
210
- @trace_id = trace_id
211
- end
212
-
213
- # Custom attribute writer method with validation
214
- # @param [Object] span_id Value to be assigned
215
- def span_id=(span_id)
216
- if span_id.nil?
217
- fail ArgumentError, 'span_id cannot be nil'
218
- end
219
-
220
- @span_id = span_id
221
- end
222
-
223
- # Custom attribute writer method with validation
224
- # @param [Object] span_name Value to be assigned
225
- def span_name=(span_name)
226
- if span_name.nil?
227
- fail ArgumentError, 'span_name cannot be nil'
228
- end
229
-
230
- @span_name = span_name
231
- end
232
-
233
- # Custom attribute writer method with validation
234
- # @param [Object] timestamp Value to be assigned
235
- def timestamp=(timestamp)
236
- if timestamp.nil?
237
- fail ArgumentError, 'timestamp cannot be nil'
238
- end
239
-
240
- @timestamp = timestamp
241
- end
242
-
243
- # Custom attribute writer method with validation
244
- # @param [Object] duration_ns Value to be assigned
245
- def duration_ns=(duration_ns)
246
- if duration_ns.nil?
247
- fail ArgumentError, 'duration_ns cannot be nil'
248
- end
249
-
250
- @duration_ns = duration_ns
251
- end
252
-
253
- # Custom attribute writer method with validation
254
- # @param [Object] span_attributes Value to be assigned
255
- def span_attributes=(span_attributes)
256
- if span_attributes.nil?
257
- fail ArgumentError, 'span_attributes cannot be nil'
258
- end
259
-
260
- @span_attributes = span_attributes
261
- end
262
-
263
- # Checks equality by comparing each attribute.
264
- # @param [Object] Object to be compared
265
- def ==(o)
266
- return true if self.equal?(o)
267
- self.class == o.class &&
268
- trace_id == o.trace_id &&
269
- span_id == o.span_id &&
270
- parent_span_id == o.parent_span_id &&
271
- span_name == o.span_name &&
272
- timestamp == o.timestamp &&
273
- duration_ns == o.duration_ns &&
274
- span_attributes == o.span_attributes &&
275
- status_code == o.status_code &&
276
- status_message == o.status_message
277
- end
278
-
279
- # @see the `==` method
280
- # @param [Object] Object to be compared
281
- def eql?(o)
282
- self == o
283
- end
284
-
285
- # Calculates hash code according to all attributes.
286
- # @return [Integer] Hash code
287
- def hash
288
- [trace_id, span_id, parent_span_id, span_name, timestamp, duration_ns, span_attributes, status_code, status_message].hash
289
- end
290
-
291
- # Builds the object from hash
292
- # @param [Hash] attributes Model attributes in the form of hash
293
- # @return [Object] Returns the model itself
294
- def self.build_from_hash(attributes)
295
- return nil unless attributes.is_a?(Hash)
296
- attributes = attributes.transform_keys(&:to_sym)
297
- transformed_hash = {}
298
- openapi_types.each_pair do |key, type|
299
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
300
- transformed_hash["#{key}"] = nil
301
- elsif type =~ /\AArray<(.*)>/i
302
- # check to ensure the input is an array given that the attribute
303
- # is documented as an array but the input is not
304
- if attributes[attribute_map[key]].is_a?(Array)
305
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
306
- end
307
- elsif !attributes[attribute_map[key]].nil?
308
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
309
- end
310
- end
311
- new(transformed_hash)
312
- end
313
-
314
- # Deserializes the data based on type
315
- # @param string type Data type
316
- # @param string value Value to be deserialized
317
- # @return [Object] Deserialized data
318
- def self._deserialize(type, value)
319
- case type.to_sym
320
- when :Time
321
- Time.parse(value)
322
- when :Date
323
- Date.parse(value)
324
- when :String
325
- value.to_s
326
- when :Integer
327
- value.to_i
328
- when :Float
329
- value.to_f
330
- when :Boolean
331
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
332
- true
333
- else
334
- false
335
- end
336
- when :Object
337
- # generic object (usually a Hash), return directly
338
- value
339
- when /\AArray<(?<inner_type>.+)>\z/
340
- inner_type = Regexp.last_match[:inner_type]
341
- value.map { |v| _deserialize(inner_type, v) }
342
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
343
- k_type = Regexp.last_match[:k_type]
344
- v_type = Regexp.last_match[:v_type]
345
- {}.tap do |hash|
346
- value.each do |k, v|
347
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
348
- end
349
- end
350
- else # model
351
- # models (e.g. Pet) or oneOf
352
- klass = DaytonaApiClient.const_get(type)
353
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
354
- end
355
- end
356
-
357
- # Returns the string representation of the object
358
- # @return [String] String presentation of the object
359
- def to_s
360
- to_hash.to_s
361
- end
362
-
363
- # to_body is an alias to to_hash (backward compatibility)
364
- # @return [Hash] Returns the object in the form of hash
365
- def to_body
366
- to_hash
367
- end
368
-
369
- # Returns the object in the form of hash
370
- # @return [Hash] Returns the object in the form of hash
371
- def to_hash
372
- hash = {}
373
- self.class.attribute_map.each_pair do |attr, param|
374
- value = self.send(attr)
375
- if value.nil?
376
- is_nullable = self.class.openapi_nullable.include?(attr)
377
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
378
- end
379
-
380
- hash[param] = _to_hash(value)
381
- end
382
- hash
383
- end
384
-
385
- # Outputs non-array value in the form of hash
386
- # For object, use to_hash. Otherwise, just return the value
387
- # @param [Object] value Any valid value
388
- # @return [Hash] Returns the value in the form of hash
389
- def _to_hash(value)
390
- if value.is_a?(Array)
391
- value.compact.map { |v| _to_hash(v) }
392
- elsif value.is_a?(Hash)
393
- {}.tap do |hash|
394
- value.each { |k, v| hash[k] = _to_hash(v) }
395
- end
396
- elsif value.respond_to? :to_hash
397
- value.to_hash
398
- else
399
- value
400
- end
401
- end
402
-
403
- end
404
-
405
- end