temper-rb 0.5.1

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 (384) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +21 -0
  3. data/README.md +291 -0
  4. data/lib/temper/act.rb +47 -0
  5. data/lib/temper/client.rb +96 -0
  6. data/lib/temper/cognitive_maps.rb +75 -0
  7. data/lib/temper/connection.rb +113 -0
  8. data/lib/temper/contexts.rb +54 -0
  9. data/lib/temper/credentials.rb +138 -0
  10. data/lib/temper/errors.rb +154 -0
  11. data/lib/temper/generated/api/access_api.rb +356 -0
  12. data/lib/temper/generated/api/auditor_api.rb +228 -0
  13. data/lib/temper/generated/api/blobs_api.rb +785 -0
  14. data/lib/temper/generated/api/cognitive_maps_api.rb +996 -0
  15. data/lib/temper/generated/api/contexts_api.rb +1039 -0
  16. data/lib/temper/generated/api/data_artifact_shapes_api.rb +243 -0
  17. data/lib/temper/generated/api/data_artifacts_api.rb +261 -0
  18. data/lib/temper/generated/api/events_api.rb +164 -0
  19. data/lib/temper/generated/api/facets_api.rb +406 -0
  20. data/lib/temper/generated/api/graph_api.rb +612 -0
  21. data/lib/temper/generated/api/health_api.rb +84 -0
  22. data/lib/temper/generated/api/ingest_api.rb +398 -0
  23. data/lib/temper/generated/api/invitations_api.rb +514 -0
  24. data/lib/temper/generated/api/invocations_api.rb +308 -0
  25. data/lib/temper/generated/api/meta_api.rb +169 -0
  26. data/lib/temper/generated/api/profile_api.rb +219 -0
  27. data/lib/temper/generated/api/query_api.rb +97 -0
  28. data/lib/temper/generated/api/reblocking_api.rb +95 -0
  29. data/lib/temper/generated/api/relationships_api.rb +332 -0
  30. data/lib/temper/generated/api/resources_api.rb +1329 -0
  31. data/lib/temper/generated/api/schema_api.rb +218 -0
  32. data/lib/temper/generated/api/search_api.rb +97 -0
  33. data/lib/temper/generated/api/slack_link_api.rb +159 -0
  34. data/lib/temper/generated/api/steward_api.rb +372 -0
  35. data/lib/temper/generated/api/teams_api.rb +687 -0
  36. data/lib/temper/generated/api_client.rb +441 -0
  37. data/lib/temper/generated/api_error.rb +58 -0
  38. data/lib/temper/generated/api_model_base.rb +88 -0
  39. data/lib/temper/generated/configuration.rb +393 -0
  40. data/lib/temper/generated/models/accept_invitation_response.rb +239 -0
  41. data/lib/temper/generated/models/act_input.rb +238 -0
  42. data/lib/temper/generated/models/act_invocation.rb +271 -0
  43. data/lib/temper/generated/models/act_name.rb +104 -0
  44. data/lib/temper/generated/models/act_quantity.rb +219 -0
  45. data/lib/temper/generated/models/act_refusal.rb +192 -0
  46. data/lib/temper/generated/models/actor_authority.rb +41 -0
  47. data/lib/temper/generated/models/add_member_request.rb +213 -0
  48. data/lib/temper/generated/models/advance_watermark_ack.rb +188 -0
  49. data/lib/temper/generated/models/advance_watermark_request.rb +161 -0
  50. data/lib/temper/generated/models/agent_authorship.rb +227 -0
  51. data/lib/temper/generated/models/anchor_address_resolution.rb +106 -0
  52. data/lib/temper/generated/models/anchor_address_resolution_one_of.rb +189 -0
  53. data/lib/temper/generated/models/anchor_address_resolution_one_of1.rb +242 -0
  54. data/lib/temper/generated/models/anchor_address_resolution_one_of2.rb +189 -0
  55. data/lib/temper/generated/models/anchor_shape.rb +239 -0
  56. data/lib/temper/generated/models/anchor_verdict.rb +41 -0
  57. data/lib/temper/generated/models/append_block_payload.rb +250 -0
  58. data/lib/temper/generated/models/artifact_commit_request.rb +337 -0
  59. data/lib/temper/generated/models/artifact_commit_response.rb +192 -0
  60. data/lib/temper/generated/models/artifact_view.rb +466 -0
  61. data/lib/temper/generated/models/assert_relationship_request.rb +406 -0
  62. data/lib/temper/generated/models/atlas_edge.rb +327 -0
  63. data/lib/temper/generated/models/atlas_entry.rb +221 -0
  64. data/lib/temper/generated/models/atlas_home.rb +195 -0
  65. data/lib/temper/generated/models/atlas_node.rb +329 -0
  66. data/lib/temper/generated/models/atlas_subgraph.rb +195 -0
  67. data/lib/temper/generated/models/audit_citation.rb +220 -0
  68. data/lib/temper/generated/models/audit_sweep_row.rb +220 -0
  69. data/lib/temper/generated/models/auditor_dispatch_tick_request.rb +150 -0
  70. data/lib/temper/generated/models/auditor_dispatch_tick_response.rb +178 -0
  71. data/lib/temper/generated/models/auditor_job_complete_ack.rb +175 -0
  72. data/lib/temper/generated/models/bind_team_outcome.rb +218 -0
  73. data/lib/temper/generated/models/bind_team_request.rb +166 -0
  74. data/lib/temper/generated/models/blob_commit_response.rb +283 -0
  75. data/lib/temper/generated/models/blob_delete_ack.rb +191 -0
  76. data/lib/temper/generated/models/blob_relation_ack.rb +165 -0
  77. data/lib/temper/generated/models/blob_relation_assert_request.rb +404 -0
  78. data/lib/temper/generated/models/blob_relation_direction.rb +40 -0
  79. data/lib/temper/generated/models/blob_relation_edge_direction.rb +40 -0
  80. data/lib/temper/generated/models/blob_relation_row.rb +390 -0
  81. data/lib/temper/generated/models/blob_summary.rb +256 -0
  82. data/lib/temper/generated/models/blob_upload_begin_request.rb +219 -0
  83. data/lib/temper/generated/models/blob_upload_begin_response.rb +165 -0
  84. data/lib/temper/generated/models/blob_upload_finalize_request.rb +211 -0
  85. data/lib/temper/generated/models/blob_upload_progress.rb +220 -0
  86. data/lib/temper/generated/models/blob_upload_segment_info.rb +227 -0
  87. data/lib/temper/generated/models/block_chunk_ref.rb +217 -0
  88. data/lib/temper/generated/models/block_fold_disposition.rb +106 -0
  89. data/lib/temper/generated/models/block_fold_disposition_one_of.rb +245 -0
  90. data/lib/temper/generated/models/block_fold_disposition_one_of1.rb +189 -0
  91. data/lib/temper/generated/models/block_fold_disposition_one_of2.rb +189 -0
  92. data/lib/temper/generated/models/block_provenance_row.rb +348 -0
  93. data/lib/temper/generated/models/block_read.rb +106 -0
  94. data/lib/temper/generated/models/block_read_one_of.rb +311 -0
  95. data/lib/temper/generated/models/block_read_one_of1.rb +297 -0
  96. data/lib/temper/generated/models/block_read_one_of2.rb +215 -0
  97. data/lib/temper/generated/models/block_successor.rb +177 -0
  98. data/lib/temper/generated/models/blocks_response.rb +194 -0
  99. data/lib/temper/generated/models/body_storage.rb +40 -0
  100. data/lib/temper/generated/models/bridge.rb +217 -0
  101. data/lib/temper/generated/models/bulk_reassign_ack.rb +167 -0
  102. data/lib/temper/generated/models/bulk_reassign_request.rb +191 -0
  103. data/lib/temper/generated/models/change_role_request.rb +187 -0
  104. data/lib/temper/generated/models/charter_block.rb +220 -0
  105. data/lib/temper/generated/models/charter_disposition.rb +42 -0
  106. data/lib/temper/generated/models/citation_audit_request.rb +231 -0
  107. data/lib/temper/generated/models/citation_audit_row.rb +366 -0
  108. data/lib/temper/generated/models/claimed_audit_job.rb +249 -0
  109. data/lib/temper/generated/models/claimed_job.rb +220 -0
  110. data/lib/temper/generated/models/close_invocation_request.rb +197 -0
  111. data/lib/temper/generated/models/cogmap_analytics_row.rb +220 -0
  112. data/lib/temper/generated/models/cogmap_detail.rb +224 -0
  113. data/lib/temper/generated/models/cogmap_foundation_row.rb +247 -0
  114. data/lib/temper/generated/models/cogmap_grant_body.rb +295 -0
  115. data/lib/temper/generated/models/cogmap_region_metrics_row.rb +248 -0
  116. data/lib/temper/generated/models/cogmap_region_row.rb +269 -0
  117. data/lib/temper/generated/models/cogmap_regulation_row.rb +228 -0
  118. data/lib/temper/generated/models/cogmap_revoke_body.rb +191 -0
  119. data/lib/temper/generated/models/cogmap_row.rb +341 -0
  120. data/lib/temper/generated/models/cogmap_staleness.rb +185 -0
  121. data/lib/temper/generated/models/combine_node.rb +263 -0
  122. data/lib/temper/generated/models/combine_op.rb +41 -0
  123. data/lib/temper/generated/models/composition.rb +203 -0
  124. data/lib/temper/generated/models/composition_trace.rb +167 -0
  125. data/lib/temper/generated/models/confidence_band.rb +41 -0
  126. data/lib/temper/generated/models/content_response.rb +213 -0
  127. data/lib/temper/generated/models/context_create_request.rb +176 -0
  128. data/lib/temper/generated/models/context_owner_ref.rb +106 -0
  129. data/lib/temper/generated/models/context_owner_ref_one_of.rb +166 -0
  130. data/lib/temper/generated/models/context_owner_ref_one_of1.rb +166 -0
  131. data/lib/temper/generated/models/context_panorama.rb +221 -0
  132. data/lib/temper/generated/models/context_row.rb +404 -0
  133. data/lib/temper/generated/models/context_row_with_counts.rb +430 -0
  134. data/lib/temper/generated/models/create_cogmap_outcome.rb +217 -0
  135. data/lib/temper/generated/models/create_cogmap_request.rb +221 -0
  136. data/lib/temper/generated/models/create_invitation_request.rb +213 -0
  137. data/lib/temper/generated/models/create_request_body.rb +184 -0
  138. data/lib/temper/generated/models/create_review_body.rb +148 -0
  139. data/lib/temper/generated/models/deactivated.rb +189 -0
  140. data/lib/temper/generated/models/delete_response.rb +165 -0
  141. data/lib/temper/generated/models/denied.rb +189 -0
  142. data/lib/temper/generated/models/device_overrides.rb +162 -0
  143. data/lib/temper/generated/models/discouraged_open_meta_key.rb +191 -0
  144. data/lib/temper/generated/models/dispatch_tick_request.rb +161 -0
  145. data/lib/temper/generated/models/dispatch_tick_response.rb +178 -0
  146. data/lib/temper/generated/models/disposition.rb +41 -0
  147. data/lib/temper/generated/models/doc_type_description.rb +247 -0
  148. data/lib/temper/generated/models/doc_type_summary.rb +219 -0
  149. data/lib/temper/generated/models/drift_sweep_row.rb +258 -0
  150. data/lib/temper/generated/models/edge_facet_row.rb +332 -0
  151. data/lib/temper/generated/models/edge_facet_set_request.rb +288 -0
  152. data/lib/temper/generated/models/edge_facets_response.rb +193 -0
  153. data/lib/temper/generated/models/edge_filter.rb +192 -0
  154. data/lib/temper/generated/models/edge_kind.rb +42 -0
  155. data/lib/temper/generated/models/element_event.rb +307 -0
  156. data/lib/temper/generated/models/element_kind.rb +40 -0
  157. data/lib/temper/generated/models/embed_dispatch_summary.rb +355 -0
  158. data/lib/temper/generated/models/enforcement_mode.rb +40 -0
  159. data/lib/temper/generated/models/entitlements.rb +234 -0
  160. data/lib/temper/generated/models/entry_bounds.rb +247 -0
  161. data/lib/temper/generated/models/error_body.rb +164 -0
  162. data/lib/temper/generated/models/error_detail.rb +201 -0
  163. data/lib/temper/generated/models/error_details.rb +105 -0
  164. data/lib/temper/generated/models/event_cursor_response.rb +150 -0
  165. data/lib/temper/generated/models/event_trail.rb +241 -0
  166. data/lib/temper/generated/models/exact_arm.rb +226 -0
  167. data/lib/temper/generated/models/exact_hit.rb +193 -0
  168. data/lib/temper/generated/models/extent.rb +106 -0
  169. data/lib/temper/generated/models/extent_one_of.rb +189 -0
  170. data/lib/temper/generated/models/extent_one_of1.rb +189 -0
  171. data/lib/temper/generated/models/extent_one_of2.rb +215 -0
  172. data/lib/temper/generated/models/facet_ack.rb +168 -0
  173. data/lib/temper/generated/models/facet_predicate.rb +191 -0
  174. data/lib/temper/generated/models/facet_retract_ack.rb +165 -0
  175. data/lib/temper/generated/models/facet_set_request.rb +304 -0
  176. data/lib/temper/generated/models/finalize_payload.rb +212 -0
  177. data/lib/temper/generated/models/fold_relationship_request.rb +248 -0
  178. data/lib/temper/generated/models/grant_outcome.rb +166 -0
  179. data/lib/temper/generated/models/graph_edge_row.rb +421 -0
  180. data/lib/temper/generated/models/group_key_meta.rb +217 -0
  181. data/lib/temper/generated/models/health_response.rb +202 -0
  182. data/lib/temper/generated/models/home_cogmap.rb +297 -0
  183. data/lib/temper/generated/models/home_context.rb +281 -0
  184. data/lib/temper/generated/models/id_kind.rb +104 -0
  185. data/lib/temper/generated/models/id_provenance.rb +105 -0
  186. data/lib/temper/generated/models/id_provenance_one_of.rb +215 -0
  187. data/lib/temper/generated/models/id_provenance_one_of1.rb +215 -0
  188. data/lib/temper/generated/models/id_set.rb +214 -0
  189. data/lib/temper/generated/models/idp_revocation.rb +41 -0
  190. data/lib/temper/generated/models/illegal_transition.rb +225 -0
  191. data/lib/temper/generated/models/ingest_create_response.rb +105 -0
  192. data/lib/temper/generated/models/ingest_delta.rb +334 -0
  193. data/lib/temper/generated/models/ingest_payload.rb +478 -0
  194. data/lib/temper/generated/models/ingest_state.rb +40 -0
  195. data/lib/temper/generated/models/inherited_read_grant.rb +219 -0
  196. data/lib/temper/generated/models/inherited_share.rb +192 -0
  197. data/lib/temper/generated/models/input_source.rb +106 -0
  198. data/lib/temper/generated/models/input_source_one_of.rb +227 -0
  199. data/lib/temper/generated/models/input_source_one_of1.rb +189 -0
  200. data/lib/temper/generated/models/input_source_one_of2.rb +189 -0
  201. data/lib/temper/generated/models/insufficient_authority.rb +241 -0
  202. data/lib/temper/generated/models/intention.rb +212 -0
  203. data/lib/temper/generated/models/invitation_status.rb +42 -0
  204. data/lib/temper/generated/models/invitation_token_request.rb +165 -0
  205. data/lib/temper/generated/models/invitee_invitation.rb +447 -0
  206. data/lib/temper/generated/models/invocation_ack.rb +191 -0
  207. data/lib/temper/generated/models/invocation_act_row.rb +269 -0
  208. data/lib/temper/generated/models/invocation_close_ack.rb +213 -0
  209. data/lib/temper/generated/models/invocation_summary.rb +296 -0
  210. data/lib/temper/generated/models/invocation_view.rb +433 -0
  211. data/lib/temper/generated/models/join_request.rb +403 -0
  212. data/lib/temper/generated/models/join_request_status.rb +42 -0
  213. data/lib/temper/generated/models/kind_owner_input.rb +105 -0
  214. data/lib/temper/generated/models/kind_owner_input_one_of.rb +164 -0
  215. data/lib/temper/generated/models/kind_owner_input_one_of1.rb +164 -0
  216. data/lib/temper/generated/models/lineage_node.rb +326 -0
  217. data/lib/temper/generated/models/managed_meta.rb +249 -0
  218. data/lib/temper/generated/models/match_location.rb +188 -0
  219. data/lib/temper/generated/models/materialize_ack.rb +307 -0
  220. data/lib/temper/generated/models/materialize_delta.rb +296 -0
  221. data/lib/temper/generated/models/materialize_request.rb +150 -0
  222. data/lib/temper/generated/models/merge_policy.rb +40 -0
  223. data/lib/temper/generated/models/meta_update_payload.rb +358 -0
  224. data/lib/temper/generated/models/narrowed_by.rb +210 -0
  225. data/lib/temper/generated/models/no_prior_standing.rb +189 -0
  226. data/lib/temper/generated/models/no_standing.rb +189 -0
  227. data/lib/temper/generated/models/node_home.rb +40 -0
  228. data/lib/temper/generated/models/open_invocation_request.rb +204 -0
  229. data/lib/temper/generated/models/open_meta_convention.rb +180 -0
  230. data/lib/temper/generated/models/ord_op.rb +42 -0
  231. data/lib/temper/generated/models/orphan_node.rb +264 -0
  232. data/lib/temper/generated/models/outcome_declaration.rb +177 -0
  233. data/lib/temper/generated/models/pending_invitation_counts.rb +177 -0
  234. data/lib/temper/generated/models/plan_refusal.rb +220 -0
  235. data/lib/temper/generated/models/plan_refusal_details.rb +167 -0
  236. data/lib/temper/generated/models/polarity.rb +40 -0
  237. data/lib/temper/generated/models/profile.rb +313 -0
  238. data/lib/temper/generated/models/profile_auth_link.rb +332 -0
  239. data/lib/temper/generated/models/profile_update_request.rb +169 -0
  240. data/lib/temper/generated/models/profile_with_entitlements.rb +344 -0
  241. data/lib/temper/generated/models/property_op.rb +106 -0
  242. data/lib/temper/generated/models/property_op_one_of.rb +189 -0
  243. data/lib/temper/generated/models/property_op_one_of1.rb +217 -0
  244. data/lib/temper/generated/models/property_op_one_of2.rb +227 -0
  245. data/lib/temper/generated/models/property_predicate.rb +191 -0
  246. data/lib/temper/generated/models/provenance_source.rb +106 -0
  247. data/lib/temper/generated/models/provenance_source_one_of.rb +214 -0
  248. data/lib/temper/generated/models/provenance_source_one_of1.rb +214 -0
  249. data/lib/temper/generated/models/provenance_source_one_of2.rb +216 -0
  250. data/lib/temper/generated/models/public_system_settings.rb +169 -0
  251. data/lib/temper/generated/models/quantity_scale.rb +106 -0
  252. data/lib/temper/generated/models/quantity_scale_one_of.rb +189 -0
  253. data/lib/temper/generated/models/quantity_scale_one_of1.rb +215 -0
  254. data/lib/temper/generated/models/quantity_scale_one_of2.rb +189 -0
  255. data/lib/temper/generated/models/query_response.rb +195 -0
  256. data/lib/temper/generated/models/reassign_ack.rb +191 -0
  257. data/lib/temper/generated/models/reassign_context_outcome.rb +243 -0
  258. data/lib/temper/generated/models/reassign_context_request.rb +166 -0
  259. data/lib/temper/generated/models/reassign_resource_request.rb +165 -0
  260. data/lib/temper/generated/models/reblock_candidate.rb +192 -0
  261. data/lib/temper/generated/models/reblock_outcome.rb +109 -0
  262. data/lib/temper/generated/models/reblock_outcome_one_of.rb +165 -0
  263. data/lib/temper/generated/models/reblock_outcome_one_of1.rb +165 -0
  264. data/lib/temper/generated/models/reblock_outcome_one_of1_in_progress.rb +166 -0
  265. data/lib/temper/generated/models/reblock_outcome_one_of2.rb +165 -0
  266. data/lib/temper/generated/models/reblock_outcome_one_of3.rb +165 -0
  267. data/lib/temper/generated/models/reblock_outcome_one_of4.rb +165 -0
  268. data/lib/temper/generated/models/reblock_outcome_one_of4_error.rb +165 -0
  269. data/lib/temper/generated/models/reblock_outcome_one_of_reblocked.rb +165 -0
  270. data/lib/temper/generated/models/reblock_receipt.rb +259 -0
  271. data/lib/temper/generated/models/reblock_request.rb +215 -0
  272. data/lib/temper/generated/models/reblock_scope.rb +106 -0
  273. data/lib/temper/generated/models/reblock_scope_one_of.rb +166 -0
  274. data/lib/temper/generated/models/reblock_scope_one_of1.rb +166 -0
  275. data/lib/temper/generated/models/reblock_summary.rb +350 -0
  276. data/lib/temper/generated/models/reconcile_cogmap_request.rb +199 -0
  277. data/lib/temper/generated/models/reconcile_edge.rb +253 -0
  278. data/lib/temper/generated/models/reconcile_edge_tombstone.rb +217 -0
  279. data/lib/temper/generated/models/reconcile_entry.rb +318 -0
  280. data/lib/temper/generated/models/reconcile_outcome.rb +327 -0
  281. data/lib/temper/generated/models/reconcile_telos.rb +167 -0
  282. data/lib/temper/generated/models/reconcile_telos_block.rb +191 -0
  283. data/lib/temper/generated/models/reconcile_tombstone.rb +165 -0
  284. data/lib/temper/generated/models/refusal.rb +112 -0
  285. data/lib/temper/generated/models/refusal_reason.rb +104 -0
  286. data/lib/temper/generated/models/region_disclosure.rb +193 -0
  287. data/lib/temper/generated/models/region_hit.rb +192 -0
  288. data/lib/temper/generated/models/relationship_ack.rb +165 -0
  289. data/lib/temper/generated/models/relationship_target.rb +40 -0
  290. data/lib/temper/generated/models/remove_member_outcome.rb +165 -0
  291. data/lib/temper/generated/models/rename_context_outcome.rb +300 -0
  292. data/lib/temper/generated/models/rename_context_request.rb +166 -0
  293. data/lib/temper/generated/models/requested.rb +189 -0
  294. data/lib/temper/generated/models/residual_bucket.rb +191 -0
  295. data/lib/temper/generated/models/residual_context.rb +201 -0
  296. data/lib/temper/generated/models/residual_groups.rb +193 -0
  297. data/lib/temper/generated/models/residual_owned_reach.rb +202 -0
  298. data/lib/temper/generated/models/resource_annotate_request.rb +261 -0
  299. data/lib/temper/generated/models/resource_create_request.rb +355 -0
  300. data/lib/temper/generated/models/resource_facet_row.rb +317 -0
  301. data/lib/temper/generated/models/resource_facets.rb +226 -0
  302. data/lib/temper/generated/models/resource_facets_response.rb +193 -0
  303. data/lib/temper/generated/models/resource_filter.rb +265 -0
  304. data/lib/temper/generated/models/resource_grant_body.rb +295 -0
  305. data/lib/temper/generated/models/resource_hit.rb +216 -0
  306. data/lib/temper/generated/models/resource_lineage.rb +224 -0
  307. data/lib/temper/generated/models/resource_list_response.rb +313 -0
  308. data/lib/temper/generated/models/resource_revoke_body.rb +191 -0
  309. data/lib/temper/generated/models/resource_section.rb +41 -0
  310. data/lib/temper/generated/models/resource_sort_field.rb +45 -0
  311. data/lib/temper/generated/models/resource_update_request.rb +379 -0
  312. data/lib/temper/generated/models/resource_view.rb +592 -0
  313. data/lib/temper/generated/models/restore_context_outcome.rb +274 -0
  314. data/lib/temper/generated/models/retire_context_outcome.rb +247 -0
  315. data/lib/temper/generated/models/return_spec.rb +189 -0
  316. data/lib/temper/generated/models/retype_relationship_request.rb +290 -0
  317. data/lib/temper/generated/models/revoke_outcome.rb +165 -0
  318. data/lib/temper/generated/models/revoked.rb +189 -0
  319. data/lib/temper/generated/models/reweight_relationship_request.rb +264 -0
  320. data/lib/temper/generated/models/score_kind.rb +104 -0
  321. data/lib/temper/generated/models/scoring.rb +192 -0
  322. data/lib/temper/generated/models/search_params.rb +254 -0
  323. data/lib/temper/generated/models/search_reason.rb +41 -0
  324. data/lib/temper/generated/models/search_response.rb +217 -0
  325. data/lib/temper/generated/models/search_result_row.rb +343 -0
  326. data/lib/temper/generated/models/search_scope.rb +41 -0
  327. data/lib/temper/generated/models/search_scope_info.rb +199 -0
  328. data/lib/temper/generated/models/segment_info.rb +200 -0
  329. data/lib/temper/generated/models/segmented_begin.rb +212 -0
  330. data/lib/temper/generated/models/segmented_begin_response.rb +247 -0
  331. data/lib/temper/generated/models/shape_declare_request.rb +315 -0
  332. data/lib/temper/generated/models/shape_emptiness.rb +42 -0
  333. data/lib/temper/generated/models/shape_view.rb +438 -0
  334. data/lib/temper/generated/models/share_context_outcome.rb +218 -0
  335. data/lib/temper/generated/models/share_context_request.rb +166 -0
  336. data/lib/temper/generated/models/slack_disconnect_request.rb +166 -0
  337. data/lib/temper/generated/models/slack_disconnect_response.rb +168 -0
  338. data/lib/temper/generated/models/slack_disconnected_principal.rb +269 -0
  339. data/lib/temper/generated/models/slice_request.rb +216 -0
  340. data/lib/temper/generated/models/sort_order.rb +40 -0
  341. data/lib/temper/generated/models/stage_disposition.rb +42 -0
  342. data/lib/temper/generated/models/stage_input.rb +105 -0
  343. data/lib/temper/generated/models/stage_input_one_of.rb +241 -0
  344. data/lib/temper/generated/models/stage_input_one_of1.rb +253 -0
  345. data/lib/temper/generated/models/stage_input_trace.rb +241 -0
  346. data/lib/temper/generated/models/stage_node.rb +105 -0
  347. data/lib/temper/generated/models/stage_output.rb +105 -0
  348. data/lib/temper/generated/models/stage_output_one_of.rb +217 -0
  349. data/lib/temper/generated/models/stage_output_one_of1.rb +217 -0
  350. data/lib/temper/generated/models/stage_relation.rb +40 -0
  351. data/lib/temper/generated/models/stage_result.rb +423 -0
  352. data/lib/temper/generated/models/stage_trace.rb +451 -0
  353. data/lib/temper/generated/models/standing.rb +43 -0
  354. data/lib/temper/generated/models/standing_shape.rb +355 -0
  355. data/lib/temper/generated/models/subscription.rb +267 -0
  356. data/lib/temper/generated/models/subscription_override.rb +193 -0
  357. data/lib/temper/generated/models/system_access_details.rb +206 -0
  358. data/lib/temper/generated/models/team_create_request.rb +217 -0
  359. data/lib/temper/generated/models/team_detail.rb +313 -0
  360. data/lib/temper/generated/models/team_invitation.rb +406 -0
  361. data/lib/temper/generated/models/team_member_detail.rb +265 -0
  362. data/lib/temper/generated/models/team_member_row.rb +265 -0
  363. data/lib/temper/generated/models/team_member_source.rb +40 -0
  364. data/lib/temper/generated/models/team_role.rb +42 -0
  365. data/lib/temper/generated/models/team_row.rb +287 -0
  366. data/lib/temper/generated/models/team_update_request.rb +159 -0
  367. data/lib/temper/generated/models/territory.rb +298 -0
  368. data/lib/temper/generated/models/territory_kind.rb +41 -0
  369. data/lib/temper/generated/models/territory_overview.rb +223 -0
  370. data/lib/temper/generated/models/unbind_team_outcome.rb +218 -0
  371. data/lib/temper/generated/models/unrecognized_standing.rb +215 -0
  372. data/lib/temper/generated/models/unshare_context_outcome.rb +218 -0
  373. data/lib/temper/generated/models/vault_config.rb +174 -0
  374. data/lib/temper/generated/models/via_entry.rb +305 -0
  375. data/lib/temper/generated/models/wide_arm.rb +252 -0
  376. data/lib/temper/generated/models/wide_hit.rb +193 -0
  377. data/lib/temper/generated/version.rb +15 -0
  378. data/lib/temper/generated.rb +402 -0
  379. data/lib/temper/refs.rb +36 -0
  380. data/lib/temper/resources.rb +68 -0
  381. data/lib/temper/validate.rb +127 -0
  382. data/lib/temper/version.rb +11 -0
  383. data/lib/temper.rb +47 -0
  384. metadata +525 -0
@@ -0,0 +1,188 @@
1
+ =begin
2
+ #Temper Cloud API
3
+
4
+ #Knowledge base management API for temper cloud
5
+
6
+ The version of the OpenAPI document: 0.5.1
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.23.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Temper::Generated
17
+ # Acknowledgement for a watermark advance — **the cursors as stored**, read back from the UPDATE itself (`RETURNING`), never an echo of the request. The difference is load-bearing. Both fields are optional on the way in and both have a server-side rule applied to them (an absent `event_id` leaves the watermark put; an absent `boundary_fingerprint` falls back to the write-time boundary), so echoing the input would report a state that may not exist. A caller — and a test — can compare these against what it sent and see exactly which rule fired.
18
+ class AdvanceWatermarkAck < ApiModelBase
19
+ # The boundary fingerprint now stored. Never `None` after a successful advance: the fallback computes one when the caller supplies none, precisely so the boundary cannot stay unsnapshotted.
20
+ attr_accessor :boundary_fingerprint
21
+
22
+ # The cogmap whose cursors were written.
23
+ attr_accessor :cogmap_id
24
+
25
+ # The watermark now stored. `None` when the cogmap has never had one — which a boundary-only advance (no `event_id`) does not change.
26
+ attr_accessor :watermark
27
+
28
+ # Attribute mapping from ruby-style variable name to JSON key.
29
+ def self.attribute_map
30
+ {
31
+ :'boundary_fingerprint' => :'boundary_fingerprint',
32
+ :'cogmap_id' => :'cogmap_id',
33
+ :'watermark' => :'watermark'
34
+ }
35
+ end
36
+
37
+ # Returns attribute mapping this model knows about
38
+ def self.acceptable_attribute_map
39
+ attribute_map
40
+ end
41
+
42
+ # Returns all the JSON keys this model knows about
43
+ def self.acceptable_attributes
44
+ acceptable_attribute_map.values
45
+ end
46
+
47
+ # Attribute type mapping.
48
+ def self.openapi_types
49
+ {
50
+ :'boundary_fingerprint' => :'String',
51
+ :'cogmap_id' => :'String',
52
+ :'watermark' => :'String'
53
+ }
54
+ end
55
+
56
+ # List of attributes with nullable: true
57
+ def self.openapi_nullable
58
+ Set.new([
59
+ :'boundary_fingerprint',
60
+ :'watermark'
61
+ ])
62
+ end
63
+
64
+ # Initializes the object
65
+ # @param [Hash] attributes Model attributes in the form of hash
66
+ def initialize(attributes = {})
67
+ if (!attributes.is_a?(Hash))
68
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Temper::Generated::AdvanceWatermarkAck` initialize method"
69
+ end
70
+
71
+ # check to see if the attribute exists and convert string to symbol for hash key
72
+ acceptable_attribute_map = self.class.acceptable_attribute_map
73
+ attributes = attributes.each_with_object({}) { |(k, v), h|
74
+ if (!acceptable_attribute_map.key?(k.to_sym))
75
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Temper::Generated::AdvanceWatermarkAck`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
76
+ end
77
+ h[k.to_sym] = v
78
+ }
79
+
80
+ if attributes.key?(:'boundary_fingerprint')
81
+ self.boundary_fingerprint = attributes[:'boundary_fingerprint']
82
+ end
83
+
84
+ if attributes.key?(:'cogmap_id')
85
+ self.cogmap_id = attributes[:'cogmap_id']
86
+ else
87
+ self.cogmap_id = nil
88
+ end
89
+
90
+ if attributes.key?(:'watermark')
91
+ self.watermark = attributes[:'watermark']
92
+ end
93
+ end
94
+
95
+ # Show invalid properties with the reasons. Usually used together with valid?
96
+ # @return Array for valid properties with the reasons
97
+ def list_invalid_properties
98
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
99
+ invalid_properties = Array.new
100
+ if @cogmap_id.nil?
101
+ invalid_properties.push('invalid value for "cogmap_id", cogmap_id cannot be nil.')
102
+ end
103
+
104
+ invalid_properties
105
+ end
106
+
107
+ # Check to see if the all the properties in the model are valid
108
+ # @return true if the model is valid
109
+ def valid?
110
+ warn '[DEPRECATED] the `valid?` method is obsolete'
111
+ return false if @cogmap_id.nil?
112
+ true
113
+ end
114
+
115
+ # Custom attribute writer method with validation
116
+ # @param [Object] cogmap_id Value to be assigned
117
+ def cogmap_id=(cogmap_id)
118
+ if cogmap_id.nil?
119
+ fail ArgumentError, 'cogmap_id cannot be nil'
120
+ end
121
+
122
+ @cogmap_id = cogmap_id
123
+ end
124
+
125
+ # Checks equality by comparing each attribute.
126
+ # @param [Object] Object to be compared
127
+ def ==(o)
128
+ return true if self.equal?(o)
129
+ self.class == o.class &&
130
+ boundary_fingerprint == o.boundary_fingerprint &&
131
+ cogmap_id == o.cogmap_id &&
132
+ watermark == o.watermark
133
+ end
134
+
135
+ # @see the `==` method
136
+ # @param [Object] Object to be compared
137
+ def eql?(o)
138
+ self == o
139
+ end
140
+
141
+ # Calculates hash code according to all attributes.
142
+ # @return [Integer] Hash code
143
+ def hash
144
+ [boundary_fingerprint, cogmap_id, watermark].hash
145
+ end
146
+
147
+ # Builds the object from hash
148
+ # @param [Hash] attributes Model attributes in the form of hash
149
+ # @return [Object] Returns the model itself
150
+ def self.build_from_hash(attributes)
151
+ return nil unless attributes.is_a?(Hash)
152
+ attributes = attributes.transform_keys(&:to_sym)
153
+ transformed_hash = {}
154
+ openapi_types.each_pair do |key, type|
155
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
156
+ transformed_hash["#{key}"] = nil
157
+ elsif type =~ /\AArray<(.*)>/i
158
+ # check to ensure the input is an array given that the attribute
159
+ # is documented as an array but the input is not
160
+ if attributes[attribute_map[key]].is_a?(Array)
161
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
162
+ end
163
+ elsif !attributes[attribute_map[key]].nil?
164
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
165
+ end
166
+ end
167
+ new(transformed_hash)
168
+ end
169
+
170
+ # Returns the object in the form of hash
171
+ # @return [Hash] Returns the object in the form of hash
172
+ def to_hash
173
+ hash = {}
174
+ self.class.attribute_map.each_pair do |attr, param|
175
+ value = self.send(attr)
176
+ if value.nil?
177
+ is_nullable = self.class.openapi_nullable.include?(attr)
178
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
179
+ end
180
+
181
+ hash[param] = _to_hash(value)
182
+ end
183
+ hash
184
+ end
185
+
186
+ end
187
+
188
+ end
@@ -0,0 +1,161 @@
1
+ =begin
2
+ #Temper Cloud API
3
+
4
+ #Knowledge base management API for temper cloud
5
+
6
+ The version of the OpenAPI document: 0.5.1
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.23.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Temper::Generated
17
+ # Request body for `POST /api/steward/{cogmap}/watermark`.
18
+ class AdvanceWatermarkRequest < ApiModelBase
19
+ # The boundary fingerprint the run observed ([`IngestDelta::boundary_fingerprint`]). Optional, but supplying it is the correct path — see [`StewardAdvanceWatermarkInput::boundary_fingerprint`] for what the fallback gives up.
20
+ attr_accessor :boundary_fingerprint
21
+
22
+ # The `kb_events.id` to advance the watermark to. Optional: a boundary-only advance (an empty event window) supplies none and the watermark stays put. See [`StewardAdvanceWatermarkInput::event_id`].
23
+ attr_accessor :event_id
24
+
25
+ # Attribute mapping from ruby-style variable name to JSON key.
26
+ def self.attribute_map
27
+ {
28
+ :'boundary_fingerprint' => :'boundary_fingerprint',
29
+ :'event_id' => :'event_id'
30
+ }
31
+ end
32
+
33
+ # Returns attribute mapping this model knows about
34
+ def self.acceptable_attribute_map
35
+ attribute_map
36
+ end
37
+
38
+ # Returns all the JSON keys this model knows about
39
+ def self.acceptable_attributes
40
+ acceptable_attribute_map.values
41
+ end
42
+
43
+ # Attribute type mapping.
44
+ def self.openapi_types
45
+ {
46
+ :'boundary_fingerprint' => :'String',
47
+ :'event_id' => :'String'
48
+ }
49
+ end
50
+
51
+ # List of attributes with nullable: true
52
+ def self.openapi_nullable
53
+ Set.new([
54
+ :'boundary_fingerprint',
55
+ :'event_id'
56
+ ])
57
+ end
58
+
59
+ # Initializes the object
60
+ # @param [Hash] attributes Model attributes in the form of hash
61
+ def initialize(attributes = {})
62
+ if (!attributes.is_a?(Hash))
63
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Temper::Generated::AdvanceWatermarkRequest` initialize method"
64
+ end
65
+
66
+ # check to see if the attribute exists and convert string to symbol for hash key
67
+ acceptable_attribute_map = self.class.acceptable_attribute_map
68
+ attributes = attributes.each_with_object({}) { |(k, v), h|
69
+ if (!acceptable_attribute_map.key?(k.to_sym))
70
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Temper::Generated::AdvanceWatermarkRequest`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
71
+ end
72
+ h[k.to_sym] = v
73
+ }
74
+
75
+ if attributes.key?(:'boundary_fingerprint')
76
+ self.boundary_fingerprint = attributes[:'boundary_fingerprint']
77
+ end
78
+
79
+ if attributes.key?(:'event_id')
80
+ self.event_id = attributes[:'event_id']
81
+ end
82
+ end
83
+
84
+ # Show invalid properties with the reasons. Usually used together with valid?
85
+ # @return Array for valid properties with the reasons
86
+ def list_invalid_properties
87
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
88
+ invalid_properties = Array.new
89
+ invalid_properties
90
+ end
91
+
92
+ # Check to see if the all the properties in the model are valid
93
+ # @return true if the model is valid
94
+ def valid?
95
+ warn '[DEPRECATED] the `valid?` method is obsolete'
96
+ true
97
+ end
98
+
99
+ # Checks equality by comparing each attribute.
100
+ # @param [Object] Object to be compared
101
+ def ==(o)
102
+ return true if self.equal?(o)
103
+ self.class == o.class &&
104
+ boundary_fingerprint == o.boundary_fingerprint &&
105
+ event_id == o.event_id
106
+ end
107
+
108
+ # @see the `==` method
109
+ # @param [Object] Object to be compared
110
+ def eql?(o)
111
+ self == o
112
+ end
113
+
114
+ # Calculates hash code according to all attributes.
115
+ # @return [Integer] Hash code
116
+ def hash
117
+ [boundary_fingerprint, event_id].hash
118
+ end
119
+
120
+ # Builds the object from hash
121
+ # @param [Hash] attributes Model attributes in the form of hash
122
+ # @return [Object] Returns the model itself
123
+ def self.build_from_hash(attributes)
124
+ return nil unless attributes.is_a?(Hash)
125
+ attributes = attributes.transform_keys(&:to_sym)
126
+ transformed_hash = {}
127
+ openapi_types.each_pair do |key, type|
128
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
129
+ transformed_hash["#{key}"] = nil
130
+ elsif type =~ /\AArray<(.*)>/i
131
+ # check to ensure the input is an array given that the attribute
132
+ # is documented as an array but the input is not
133
+ if attributes[attribute_map[key]].is_a?(Array)
134
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
135
+ end
136
+ elsif !attributes[attribute_map[key]].nil?
137
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
138
+ end
139
+ end
140
+ new(transformed_hash)
141
+ end
142
+
143
+ # Returns the object in the form of hash
144
+ # @return [Hash] Returns the object in the form of hash
145
+ def to_hash
146
+ hash = {}
147
+ self.class.attribute_map.each_pair do |attr, param|
148
+ value = self.send(attr)
149
+ if value.nil?
150
+ is_nullable = self.class.openapi_nullable.include?(attr)
151
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
152
+ end
153
+
154
+ hash[param] = _to_hash(value)
155
+ end
156
+ hash
157
+ end
158
+
159
+ end
160
+
161
+ end
@@ -0,0 +1,227 @@
1
+ =begin
2
+ #Temper Cloud API
3
+
4
+ #Knowledge base management API for temper cloud
5
+
6
+ The version of the OpenAPI document: 0.5.1
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.23.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Temper::Generated
17
+ # Per-act agent-authorship metadata — rides in `kb_events.metadata`, NOT the payload, so it is invisible to projections (and thus affinity math) by construction. `confidence` is **required whenever authorship is supplied** (it is non-`Option`): a caller either attaches authorship — and must grade its confidence — or attaches none at all (the whole [`ActContext::authorship`] is `None`). The other fields are optional context.
18
+ class AgentAuthorship < ApiModelBase
19
+ attr_accessor :confidence
20
+
21
+ attr_accessor :model
22
+
23
+ attr_accessor :persona
24
+
25
+ attr_accessor :rationale
26
+
27
+ attr_accessor :reasoning
28
+
29
+ class EnumAttributeValidator
30
+ attr_reader :datatype
31
+ attr_reader :allowable_values
32
+
33
+ def initialize(datatype, allowable_values)
34
+ @allowable_values = allowable_values.map do |value|
35
+ case datatype.to_s
36
+ when /Integer/i
37
+ value.to_i
38
+ when /Float/i
39
+ value.to_f
40
+ else
41
+ value
42
+ end
43
+ end
44
+ end
45
+
46
+ def valid?(value)
47
+ !value || allowable_values.include?(value)
48
+ end
49
+ end
50
+
51
+ # Attribute mapping from ruby-style variable name to JSON key.
52
+ def self.attribute_map
53
+ {
54
+ :'confidence' => :'confidence',
55
+ :'model' => :'model',
56
+ :'persona' => :'persona',
57
+ :'rationale' => :'rationale',
58
+ :'reasoning' => :'reasoning'
59
+ }
60
+ end
61
+
62
+ # Returns attribute mapping this model knows about
63
+ def self.acceptable_attribute_map
64
+ attribute_map
65
+ end
66
+
67
+ # Returns all the JSON keys this model knows about
68
+ def self.acceptable_attributes
69
+ acceptable_attribute_map.values
70
+ end
71
+
72
+ # Attribute type mapping.
73
+ def self.openapi_types
74
+ {
75
+ :'confidence' => :'ConfidenceBand',
76
+ :'model' => :'String',
77
+ :'persona' => :'String',
78
+ :'rationale' => :'String',
79
+ :'reasoning' => :'String'
80
+ }
81
+ end
82
+
83
+ # List of attributes with nullable: true
84
+ def self.openapi_nullable
85
+ Set.new([
86
+ :'model',
87
+ :'persona',
88
+ :'rationale',
89
+ :'reasoning'
90
+ ])
91
+ end
92
+
93
+ # Initializes the object
94
+ # @param [Hash] attributes Model attributes in the form of hash
95
+ def initialize(attributes = {})
96
+ if (!attributes.is_a?(Hash))
97
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Temper::Generated::AgentAuthorship` initialize method"
98
+ end
99
+
100
+ # check to see if the attribute exists and convert string to symbol for hash key
101
+ acceptable_attribute_map = self.class.acceptable_attribute_map
102
+ attributes = attributes.each_with_object({}) { |(k, v), h|
103
+ if (!acceptable_attribute_map.key?(k.to_sym))
104
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Temper::Generated::AgentAuthorship`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
105
+ end
106
+ h[k.to_sym] = v
107
+ }
108
+
109
+ if attributes.key?(:'confidence')
110
+ self.confidence = attributes[:'confidence']
111
+ else
112
+ self.confidence = nil
113
+ end
114
+
115
+ if attributes.key?(:'model')
116
+ self.model = attributes[:'model']
117
+ end
118
+
119
+ if attributes.key?(:'persona')
120
+ self.persona = attributes[:'persona']
121
+ end
122
+
123
+ if attributes.key?(:'rationale')
124
+ self.rationale = attributes[:'rationale']
125
+ end
126
+
127
+ if attributes.key?(:'reasoning')
128
+ self.reasoning = attributes[:'reasoning']
129
+ end
130
+ end
131
+
132
+ # Show invalid properties with the reasons. Usually used together with valid?
133
+ # @return Array for valid properties with the reasons
134
+ def list_invalid_properties
135
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
136
+ invalid_properties = Array.new
137
+ if @confidence.nil?
138
+ invalid_properties.push('invalid value for "confidence", confidence cannot be nil.')
139
+ end
140
+
141
+ invalid_properties
142
+ end
143
+
144
+ # Check to see if the all the properties in the model are valid
145
+ # @return true if the model is valid
146
+ def valid?
147
+ warn '[DEPRECATED] the `valid?` method is obsolete'
148
+ return false if @confidence.nil?
149
+ true
150
+ end
151
+
152
+ # Custom attribute writer method with validation
153
+ # @param [Object] confidence Value to be assigned
154
+ def confidence=(confidence)
155
+ if confidence.nil?
156
+ fail ArgumentError, 'confidence cannot be nil'
157
+ end
158
+
159
+ @confidence = confidence
160
+ end
161
+
162
+ # Checks equality by comparing each attribute.
163
+ # @param [Object] Object to be compared
164
+ def ==(o)
165
+ return true if self.equal?(o)
166
+ self.class == o.class &&
167
+ confidence == o.confidence &&
168
+ model == o.model &&
169
+ persona == o.persona &&
170
+ rationale == o.rationale &&
171
+ reasoning == o.reasoning
172
+ end
173
+
174
+ # @see the `==` method
175
+ # @param [Object] Object to be compared
176
+ def eql?(o)
177
+ self == o
178
+ end
179
+
180
+ # Calculates hash code according to all attributes.
181
+ # @return [Integer] Hash code
182
+ def hash
183
+ [confidence, model, persona, rationale, reasoning].hash
184
+ end
185
+
186
+ # Builds the object from hash
187
+ # @param [Hash] attributes Model attributes in the form of hash
188
+ # @return [Object] Returns the model itself
189
+ def self.build_from_hash(attributes)
190
+ return nil unless attributes.is_a?(Hash)
191
+ attributes = attributes.transform_keys(&:to_sym)
192
+ transformed_hash = {}
193
+ openapi_types.each_pair do |key, type|
194
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
195
+ transformed_hash["#{key}"] = nil
196
+ elsif type =~ /\AArray<(.*)>/i
197
+ # check to ensure the input is an array given that the attribute
198
+ # is documented as an array but the input is not
199
+ if attributes[attribute_map[key]].is_a?(Array)
200
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
201
+ end
202
+ elsif !attributes[attribute_map[key]].nil?
203
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
204
+ end
205
+ end
206
+ new(transformed_hash)
207
+ end
208
+
209
+ # Returns the object in the form of hash
210
+ # @return [Hash] Returns the object in the form of hash
211
+ def to_hash
212
+ hash = {}
213
+ self.class.attribute_map.each_pair do |attr, param|
214
+ value = self.send(attr)
215
+ if value.nil?
216
+ is_nullable = self.class.openapi_nullable.include?(attr)
217
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
218
+ end
219
+
220
+ hash[param] = _to_hash(value)
221
+ end
222
+ hash
223
+ end
224
+
225
+ end
226
+
227
+ end
@@ -0,0 +1,106 @@
1
+ =begin
2
+ #Temper Cloud API
3
+
4
+ #Knowledge base management API for temper cloud
5
+
6
+ The version of the OpenAPI document: 0.5.1
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.23.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Temper::Generated
17
+ # How one `anchored-at` row's address resolved — the block read's own three-state contract, stated per row. `live`, `folded`, and `absent` are the block read's own state names, serialized under `\"state\"` the same way its answer is. Carried only on `anchored-at` rows; every other facet row states `null` for this field.
18
+ module AnchorAddressResolution
19
+ class << self
20
+ # List of class defined in oneOf (OpenAPI v3)
21
+ def openapi_one_of
22
+ [
23
+ :'AnchorAddressResolutionOneOf',
24
+ :'AnchorAddressResolutionOneOf1',
25
+ :'AnchorAddressResolutionOneOf2'
26
+ ]
27
+ end
28
+
29
+ # Builds the object
30
+ # @param [Mixed] Data to be matched against the list of oneOf items
31
+ # @return [Object] Returns the model or the data itself
32
+ def build(data)
33
+ # Go through the list of oneOf items and attempt to identify the appropriate one.
34
+ # Note:
35
+ # - We do not attempt to check whether exactly one item matches.
36
+ # - No advanced validation of types in some cases (e.g. "x: { type: string }" will happily match { x: 123 })
37
+ # due to the way the deserialization is made in the base_object template (it just casts without verifying).
38
+ # - TODO: scalar values are de facto behaving as if they were nullable.
39
+ # - TODO: logging when debugging is set.
40
+ openapi_one_of.each do |klass|
41
+ begin
42
+ next if klass == :AnyType # "nullable: true"
43
+ return find_and_cast_into_type(klass, data)
44
+ rescue # rescue all errors so we keep iterating even if the current item lookup raises
45
+ end
46
+ end
47
+
48
+ openapi_one_of.include?(:AnyType) ? data : nil
49
+ end
50
+
51
+ private
52
+
53
+ SchemaMismatchError = Class.new(StandardError)
54
+
55
+ # Note: 'File' is missing here because in the regular case we get the data _after_ a call to JSON.parse.
56
+ def find_and_cast_into_type(klass, data)
57
+ return if data.nil?
58
+
59
+ case klass.to_s
60
+ when 'Boolean'
61
+ return data if data.instance_of?(TrueClass) || data.instance_of?(FalseClass)
62
+ when 'Float'
63
+ return data if data.instance_of?(Float)
64
+ when 'Integer'
65
+ return data if data.instance_of?(Integer)
66
+ when 'Time'
67
+ return Time.parse(data)
68
+ when 'Date'
69
+ return Date.iso8601(data)
70
+ when 'String'
71
+ return data if data.instance_of?(String)
72
+ when 'Object' # "type: object"
73
+ return data if data.instance_of?(Hash)
74
+ when /\AArray<(?<sub_type>.+)>\z/ # "type: array"
75
+ if data.instance_of?(Array)
76
+ sub_type = Regexp.last_match[:sub_type]
77
+ return data.map { |item| find_and_cast_into_type(sub_type, item) }
78
+ end
79
+ when /\AHash<String, (?<sub_type>.+)>\z/ # "type: object" with "additionalProperties: { ... }"
80
+ if data.instance_of?(Hash) && data.keys.all? { |k| k.instance_of?(Symbol) || k.instance_of?(String) }
81
+ sub_type = Regexp.last_match[:sub_type]
82
+ return data.each_with_object({}) { |(k, v), hsh| hsh[k] = find_and_cast_into_type(sub_type, v) }
83
+ end
84
+ else # model
85
+ const = Temper::Generated.const_get(klass)
86
+ if const
87
+ if const.respond_to?(:openapi_one_of) # nested oneOf model
88
+ model = const.build(data)
89
+ return model if model
90
+ else
91
+ # raise if data contains keys that are not known to the model
92
+ raise if const.respond_to?(:acceptable_attributes) && !(data.keys - const.acceptable_attributes).empty?
93
+ model = const.build_from_hash(data)
94
+ return model if model
95
+ end
96
+ end
97
+ end
98
+
99
+ raise # if no match by now, raise
100
+ rescue
101
+ raise SchemaMismatchError, "#{data} doesn't match the #{klass} type"
102
+ end
103
+ end
104
+ end
105
+
106
+ end