flywheel-sdk 21.2.0rc0__py3-none-any.whl

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 (772) hide show
  1. flywheel/__init__.py +784 -0
  2. flywheel/api/__init__.py +46 -0
  3. flywheel/api/acquisitions_api.py +5014 -0
  4. flywheel/api/analyses_api.py +3848 -0
  5. flywheel/api/audit_trail_api.py +568 -0
  6. flywheel/api/auth_api.py +121 -0
  7. flywheel/api/batch_api.py +630 -0
  8. flywheel/api/bulk_api.py +140 -0
  9. flywheel/api/change_log_api.py +254 -0
  10. flywheel/api/collections_api.py +3913 -0
  11. flywheel/api/config_api.py +299 -0
  12. flywheel/api/container_tasks_api.py +137 -0
  13. flywheel/api/container_type_api.py +137 -0
  14. flywheel/api/containers_api.py +4784 -0
  15. flywheel/api/custom_filters_api.py +466 -0
  16. flywheel/api/data_view_executions_api.py +549 -0
  17. flywheel/api/dataexplorer_api.py +1192 -0
  18. flywheel/api/devices_api.py +1071 -0
  19. flywheel/api/dimse_api.py +814 -0
  20. flywheel/api/download_api.py +261 -0
  21. flywheel/api/files_api.py +1868 -0
  22. flywheel/api/form_responses_api.py +703 -0
  23. flywheel/api/gears_api.py +1875 -0
  24. flywheel/api/groups_api.py +2829 -0
  25. flywheel/api/jobs_api.py +2320 -0
  26. flywheel/api/jupyterlab_servers_api.py +245 -0
  27. flywheel/api/modalities_api.py +562 -0
  28. flywheel/api/packfiles_api.py +121 -0
  29. flywheel/api/projects_api.py +7820 -0
  30. flywheel/api/protocols_api.py +757 -0
  31. flywheel/api/reports_api.py +1057 -0
  32. flywheel/api/resolve_api.py +276 -0
  33. flywheel/api/roles_api.py +563 -0
  34. flywheel/api/sessions_api.py +5296 -0
  35. flywheel/api/site_api.py +1552 -0
  36. flywheel/api/staffing_pools_api.py +677 -0
  37. flywheel/api/subjects_api.py +5349 -0
  38. flywheel/api/tasks_api.py +897 -0
  39. flywheel/api/tree_api.py +266 -0
  40. flywheel/api/uids_api.py +140 -0
  41. flywheel/api/upload_api.py +842 -0
  42. flywheel/api/users_api.py +2142 -0
  43. flywheel/api/views_api.py +1089 -0
  44. flywheel/api_client.py +748 -0
  45. flywheel/client.py +291 -0
  46. flywheel/configuration.py +308 -0
  47. flywheel/drone_login.py +65 -0
  48. flywheel/file_spec.py +67 -0
  49. flywheel/finder.py +168 -0
  50. flywheel/flywheel.py +9867 -0
  51. flywheel/gear_context.py +374 -0
  52. flywheel/models/__init__.py +726 -0
  53. flywheel/models/access_level.py +30 -0
  54. flywheel/models/access_permission.py +197 -0
  55. flywheel/models/access_permission_output.py +192 -0
  56. flywheel/models/access_permission_update.py +166 -0
  57. flywheel/models/access_type.py +54 -0
  58. flywheel/models/accumulator.py +33 -0
  59. flywheel/models/acquisition.py +25 -0
  60. flywheel/models/acquisition_container_output.py +34 -0
  61. flywheel/models/acquisition_copy_input.py +223 -0
  62. flywheel/models/acquisition_input.py +297 -0
  63. flywheel/models/acquisition_list_output.py +767 -0
  64. flywheel/models/acquisition_modify_input.py +299 -0
  65. flywheel/models/acquisition_node.py +35 -0
  66. flywheel/models/acquisition_output.py +767 -0
  67. flywheel/models/acquisition_parents.py +241 -0
  68. flywheel/models/acquisition_template_options.py +275 -0
  69. flywheel/models/acquisition_upsert_input.py +383 -0
  70. flywheel/models/acquisition_upsert_output.py +243 -0
  71. flywheel/models/action.py +91 -0
  72. flywheel/models/adhoc_analysis_input.py +247 -0
  73. flywheel/models/analysis.py +25 -0
  74. flywheel/models/analysis_container_output.py +34 -0
  75. flywheel/models/analysis_files_create_ticket_output.py +241 -0
  76. flywheel/models/analysis_input.py +310 -0
  77. flywheel/models/analysis_input_legacy.py +25 -0
  78. flywheel/models/analysis_list_output.py +680 -0
  79. flywheel/models/analysis_list_output_inflated_job.py +650 -0
  80. flywheel/models/analysis_modify_input.py +191 -0
  81. flywheel/models/analysis_node.py +35 -0
  82. flywheel/models/analysis_output.py +683 -0
  83. flywheel/models/analysis_output_inflated_job.py +674 -0
  84. flywheel/models/analysis_parents.py +270 -0
  85. flywheel/models/analysis_update.py +25 -0
  86. flywheel/models/api_key_input_with_optional_label.py +191 -0
  87. flywheel/models/api_key_output.py +297 -0
  88. flywheel/models/as_storage.py +298 -0
  89. flywheel/models/assignee.py +192 -0
  90. flywheel/models/assignee_type.py +29 -0
  91. flywheel/models/audit_trail_report.py +486 -0
  92. flywheel/models/audit_trail_report_status.py +32 -0
  93. flywheel/models/auth0_auth_out.py +323 -0
  94. flywheel/models/auth0_options_out.py +319 -0
  95. flywheel/models/auth_out.py +357 -0
  96. flywheel/models/auth_session_output.py +272 -0
  97. flywheel/models/avatars.py +218 -0
  98. flywheel/models/aws_creds.py +191 -0
  99. flywheel/models/aws_storage.py +354 -0
  100. flywheel/models/azure_creds.py +190 -0
  101. flywheel/models/base_aet.py +245 -0
  102. flywheel/models/base_compute.py +426 -0
  103. flywheel/models/batch.py +360 -0
  104. flywheel/models/batch_cancel_output.py +36 -0
  105. flywheel/models/batch_create_filters.py +220 -0
  106. flywheel/models/batch_job_analysis_input.py +281 -0
  107. flywheel/models/batch_jobs_proposal_input.py +36 -0
  108. flywheel/models/batch_proposal.py +25 -0
  109. flywheel/models/batch_proposal_detail.py +36 -0
  110. flywheel/models/batch_proposal_input.py +25 -0
  111. flywheel/models/body.py +36 -0
  112. flywheel/models/body_regenerate_key_api_devices_device_id_key_post.py +25 -0
  113. flywheel/models/body_region.py +46 -0
  114. flywheel/models/bookmark.py +189 -0
  115. flywheel/models/bulk_move_input.py +272 -0
  116. flywheel/models/bulk_move_sessions.py +25 -0
  117. flywheel/models/callbacks_virus_scan_input.py +36 -0
  118. flywheel/models/cancelled_batch_output.py +163 -0
  119. flywheel/models/catalog_list_output.py +407 -0
  120. flywheel/models/central_out.py +299 -0
  121. flywheel/models/change.py +379 -0
  122. flywheel/models/change_log_container_type.py +38 -0
  123. flywheel/models/change_log_document.py +245 -0
  124. flywheel/models/change_method.py +33 -0
  125. flywheel/models/classic_batch_job_output.py +352 -0
  126. flywheel/models/classic_batch_job_output_inflated_jobs.py +379 -0
  127. flywheel/models/classic_batch_proposal_input.py +388 -0
  128. flywheel/models/classic_batch_proposal_output.py +471 -0
  129. flywheel/models/classification_add_delete.py +36 -0
  130. flywheel/models/classification_replace.py +36 -0
  131. flywheel/models/classification_update_input.py +36 -0
  132. flywheel/models/cohort.py +29 -0
  133. flywheel/models/collection.py +25 -0
  134. flywheel/models/collection_container_output.py +32 -0
  135. flywheel/models/collection_input.py +217 -0
  136. flywheel/models/collection_input_with_contents.py +248 -0
  137. flywheel/models/collection_node.py +192 -0
  138. flywheel/models/collection_node_level.py +31 -0
  139. flywheel/models/collection_operation.py +193 -0
  140. flywheel/models/collection_operation_type.py +29 -0
  141. flywheel/models/collection_output.py +639 -0
  142. flywheel/models/collection_with_stats.py +637 -0
  143. flywheel/models/column.py +286 -0
  144. flywheel/models/column_type.py +32 -0
  145. flywheel/models/common_classification.py +135 -0
  146. flywheel/models/common_deleted_count.py +25 -0
  147. flywheel/models/common_editions.py +25 -0
  148. flywheel/models/common_info.py +135 -0
  149. flywheel/models/common_join_origins.py +25 -0
  150. flywheel/models/common_key.py +36 -0
  151. flywheel/models/common_modified_count.py +25 -0
  152. flywheel/models/common_object_created.py +36 -0
  153. flywheel/models/common_project_settings.py +25 -0
  154. flywheel/models/common_settings.py +36 -0
  155. flywheel/models/complete_multipart_upload_output.py +189 -0
  156. flywheel/models/complete_s3_multipart_upload_input.py +241 -0
  157. flywheel/models/config_feature_map.py +36 -0
  158. flywheel/models/config_out.py +381 -0
  159. flywheel/models/config_output.py +36 -0
  160. flywheel/models/config_site_config_output.py +36 -0
  161. flywheel/models/config_site_settings.py +36 -0
  162. flywheel/models/config_site_settings_input.py +36 -0
  163. flywheel/models/conflict_types.py +30 -0
  164. flywheel/models/container_delete_reason.py +39 -0
  165. flywheel/models/container_filter.py +193 -0
  166. flywheel/models/container_id_view_input.py +521 -0
  167. flywheel/models/container_id_view_input_execute_and_save.py +308 -0
  168. flywheel/models/container_modify.py +536 -0
  169. flywheel/models/container_new_output.py +25 -0
  170. flywheel/models/container_node_min.py +350 -0
  171. flywheel/models/container_output.py +36 -0
  172. flywheel/models/container_output_with_files.py +283 -0
  173. flywheel/models/container_parents.py +311 -0
  174. flywheel/models/container_pipeline_input.py +536 -0
  175. flywheel/models/container_project_parents.py +25 -0
  176. flywheel/models/container_reference.py +193 -0
  177. flywheel/models/container_reference_with_label.py +219 -0
  178. flywheel/models/container_session_parents.py +25 -0
  179. flywheel/models/container_subject_parents.py +25 -0
  180. flywheel/models/container_type.py +39 -0
  181. flywheel/models/container_uidcheck.py +253 -0
  182. flywheel/models/container_update.py +135 -0
  183. flywheel/models/context_input.py +217 -0
  184. flywheel/models/copy_filter.py +299 -0
  185. flywheel/models/copy_status.py +32 -0
  186. flywheel/models/core_models_api_key_api_key_input.py +190 -0
  187. flywheel/models/core_models_audit_trail_create_report_input.py +273 -0
  188. flywheel/models/core_models_audit_trail_modify_report_input.py +167 -0
  189. flywheel/models/core_models_common_source.py +189 -0
  190. flywheel/models/core_models_jobs_api_key_input.py +191 -0
  191. flywheel/models/core_models_search_parent_type.py +33 -0
  192. flywheel/models/core_workflows_form_responses_models_form_parents.py +163 -0
  193. flywheel/models/core_workflows_form_responses_models_form_response_output.py +440 -0
  194. flywheel/models/core_workflows_reader_models_reader_task_parents.py +295 -0
  195. flywheel/models/creds.py +135 -0
  196. flywheel/models/curator.py +221 -0
  197. flywheel/models/current_user_output.py +707 -0
  198. flywheel/models/custom_field.py +437 -0
  199. flywheel/models/custom_form.py +244 -0
  200. flywheel/models/cvat_info.py +275 -0
  201. flywheel/models/cvat_settings.py +272 -0
  202. flywheel/models/cvat_settings_input.py +272 -0
  203. flywheel/models/cvat_sync_state.py +30 -0
  204. flywheel/models/daily_report_usage.py +565 -0
  205. flywheel/models/data_strategy.py +29 -0
  206. flywheel/models/data_view.py +25 -0
  207. flywheel/models/data_view_analysis_file_spec.py +221 -0
  208. flywheel/models/data_view_analysis_filter_spec.py +221 -0
  209. flywheel/models/data_view_column_alias.py +337 -0
  210. flywheel/models/data_view_column_spec.py +286 -0
  211. flywheel/models/data_view_execution.py +505 -0
  212. flywheel/models/data_view_execution_state.py +31 -0
  213. flywheel/models/data_view_file_spec.py +392 -0
  214. flywheel/models/data_view_group_by.py +166 -0
  215. flywheel/models/data_view_group_by_column.py +194 -0
  216. flywheel/models/data_view_name_filter_spec.py +194 -0
  217. flywheel/models/data_view_output.py +25 -0
  218. flywheel/models/data_view_save_data_view_input.py +25 -0
  219. flywheel/models/data_view_zip_filter_spec.py +223 -0
  220. flywheel/models/default_flywheel_role.py +30 -0
  221. flywheel/models/deid_log_skip_reason.py +29 -0
  222. flywheel/models/delete_by_search_query.py +253 -0
  223. flywheel/models/deleted_file.py +514 -0
  224. flywheel/models/deleted_result.py +194 -0
  225. flywheel/models/deprecated_action.py +29 -0
  226. flywheel/models/destination_container_type.py +30 -0
  227. flywheel/models/device.py +437 -0
  228. flywheel/models/device_admin_update.py +194 -0
  229. flywheel/models/device_create.py +219 -0
  230. flywheel/models/device_self_update.py +272 -0
  231. flywheel/models/device_status.py +36 -0
  232. flywheel/models/device_status_entry.py +221 -0
  233. flywheel/models/device_storage_strategy_update.py +193 -0
  234. flywheel/models/dimse_project_input.py +36 -0
  235. flywheel/models/dimse_project_output.py +36 -0
  236. flywheel/models/dimse_service_input.py +36 -0
  237. flywheel/models/dimse_service_output.py +36 -0
  238. flywheel/models/download.py +249 -0
  239. flywheel/models/download_container_filter.py +167 -0
  240. flywheel/models/download_container_filter_definition.py +222 -0
  241. flywheel/models/download_filter.py +221 -0
  242. flywheel/models/download_filter_definition.py +195 -0
  243. flywheel/models/download_format.py +29 -0
  244. flywheel/models/download_input.py +25 -0
  245. flywheel/models/download_node.py +189 -0
  246. flywheel/models/download_strategy.py +31 -0
  247. flywheel/models/download_ticket.py +36 -0
  248. flywheel/models/download_ticket_stub.py +249 -0
  249. flywheel/models/download_ticket_with_summary.py +36 -0
  250. flywheel/models/e_signature.py +242 -0
  251. flywheel/models/edition.py +169 -0
  252. flywheel/models/egress_device.py +597 -0
  253. flywheel/models/egress_device_page.py +219 -0
  254. flywheel/models/egress_provider.py +408 -0
  255. flywheel/models/egress_provider_id.py +164 -0
  256. flywheel/models/exchange_storage.py +243 -0
  257. flywheel/models/executor_info.py +353 -0
  258. flywheel/models/export_templates.py +195 -0
  259. flywheel/models/features.py +1838 -0
  260. flywheel/models/field_change.py +271 -0
  261. flywheel/models/field_change_log_document.py +245 -0
  262. flywheel/models/field_type.py +37 -0
  263. flywheel/models/file.py +1139 -0
  264. flywheel/models/file_classification_delta.py +245 -0
  265. flywheel/models/file_container_type.py +34 -0
  266. flywheel/models/file_entry.py +740 -0
  267. flywheel/models/file_export_templates.py +272 -0
  268. flywheel/models/file_format.py +33 -0
  269. flywheel/models/file_gear_info.py +215 -0
  270. flywheel/models/file_group.py +29 -0
  271. flywheel/models/file_list_output.py +1115 -0
  272. flywheel/models/file_modify_input.py +191 -0
  273. flywheel/models/file_move_input.py +221 -0
  274. flywheel/models/file_node.py +1138 -0
  275. flywheel/models/file_node_min.py +321 -0
  276. flywheel/models/file_origin.py +283 -0
  277. flywheel/models/file_output.py +1135 -0
  278. flywheel/models/file_parents.py +297 -0
  279. flywheel/models/file_reference.py +221 -0
  280. flywheel/models/file_suggestion.py +241 -0
  281. flywheel/models/file_template_options.py +299 -0
  282. flywheel/models/file_upsert_input.py +612 -0
  283. flywheel/models/file_upsert_origin.py +36 -0
  284. flywheel/models/file_upsert_output.py +1154 -0
  285. flywheel/models/file_version.py +190 -0
  286. flywheel/models/file_version_copy_of.py +273 -0
  287. flywheel/models/file_version_output.py +325 -0
  288. flywheel/models/file_via.py +245 -0
  289. flywheel/models/file_zip_entry.py +25 -0
  290. flywheel/models/file_zip_info.py +25 -0
  291. flywheel/models/filter.py +350 -0
  292. flywheel/models/filter_input.py +218 -0
  293. flywheel/models/filter_values.py +195 -0
  294. flywheel/models/filter_view.py +28 -0
  295. flywheel/models/fixed_file_version_input.py +216 -0
  296. flywheel/models/fixed_input.py +299 -0
  297. flywheel/models/form_definition.py +163 -0
  298. flywheel/models/form_response_base.py +311 -0
  299. flywheel/models/form_response_create.py +193 -0
  300. flywheel/models/gcp_creds.py +397 -0
  301. flywheel/models/gcp_storage.py +298 -0
  302. flywheel/models/gear.py +619 -0
  303. flywheel/models/gear_category.py +32 -0
  304. flywheel/models/gear_config.py +138 -0
  305. flywheel/models/gear_context_input.py +164 -0
  306. flywheel/models/gear_context_lookup.py +25 -0
  307. flywheel/models/gear_context_lookup_item.py +36 -0
  308. flywheel/models/gear_context_value_output.py +272 -0
  309. flywheel/models/gear_context_value_output_unfound.py +164 -0
  310. flywheel/models/gear_custom.py +135 -0
  311. flywheel/models/gear_directive.py +135 -0
  312. flywheel/models/gear_doc.py +25 -0
  313. flywheel/models/gear_document.py +332 -0
  314. flywheel/models/gear_document_input.py +303 -0
  315. flywheel/models/gear_document_legacy_input.py +302 -0
  316. flywheel/models/gear_environment.py +135 -0
  317. flywheel/models/gear_exchange.py +221 -0
  318. flywheel/models/gear_file_input.py +192 -0
  319. flywheel/models/gear_id_output.py +170 -0
  320. flywheel/models/gear_info.py +251 -0
  321. flywheel/models/gear_input_item.py +231 -0
  322. flywheel/models/gear_inputs.py +140 -0
  323. flywheel/models/gear_invocation.py +138 -0
  324. flywheel/models/gear_key_input.py +191 -0
  325. flywheel/models/gear_manifest.py +624 -0
  326. flywheel/models/gear_mixin.py +218 -0
  327. flywheel/models/gear_node.py +355 -0
  328. flywheel/models/gear_output_configuration.py +164 -0
  329. flywheel/models/gear_permissions.py +191 -0
  330. flywheel/models/gear_permissions_input.py +163 -0
  331. flywheel/models/gear_permissions_type.py +29 -0
  332. flywheel/models/gear_return_ticket.py +25 -0
  333. flywheel/models/gear_rule.py +653 -0
  334. flywheel/models/gear_rule_condition.py +219 -0
  335. flywheel/models/gear_rule_condition_type.py +37 -0
  336. flywheel/models/gear_rule_input.py +517 -0
  337. flywheel/models/gear_rule_modify_input.py +492 -0
  338. flywheel/models/gear_rule_output.py +652 -0
  339. flywheel/models/gear_save_submission.py +221 -0
  340. flywheel/models/gear_series.py +298 -0
  341. flywheel/models/gear_series_update.py +163 -0
  342. flywheel/models/gear_suggestion_output.py +301 -0
  343. flywheel/models/gear_ticket.py +245 -0
  344. flywheel/models/gear_ticket_output.py +163 -0
  345. flywheel/models/google_auth_out.py +299 -0
  346. flywheel/models/graph_filter.py +329 -0
  347. flywheel/models/group.py +25 -0
  348. flywheel/models/group_by.py +163 -0
  349. flywheel/models/group_by_column.py +36 -0
  350. flywheel/models/group_container_output.py +33 -0
  351. flywheel/models/group_input.py +248 -0
  352. flywheel/models/group_metadata_input.py +36 -0
  353. flywheel/models/group_node.py +34 -0
  354. flywheel/models/group_output.py +471 -0
  355. flywheel/models/group_report.py +218 -0
  356. flywheel/models/group_role.py +163 -0
  357. flywheel/models/group_settings_output.py +249 -0
  358. flywheel/models/group_update.py +249 -0
  359. flywheel/models/header_feature.py +37 -0
  360. flywheel/models/hierarchy_export_templates.py +272 -0
  361. flywheel/models/http_validation_error.py +167 -0
  362. flywheel/models/info.py +218 -0
  363. flywheel/models/info_add_remove.py +36 -0
  364. flywheel/models/info_container_type.py +35 -0
  365. flywheel/models/info_replace.py +36 -0
  366. flywheel/models/info_update_input.py +36 -0
  367. flywheel/models/ingress_provider.py +299 -0
  368. flywheel/models/ingress_providers.py +272 -0
  369. flywheel/models/ingress_site_settings.py +305 -0
  370. flywheel/models/ingress_update_provider.py +218 -0
  371. flywheel/models/inline_response200.py +163 -0
  372. flywheel/models/inline_response2001.py +171 -0
  373. flywheel/models/inline_response2002.py +163 -0
  374. flywheel/models/inline_response2003.py +36 -0
  375. flywheel/models/inline_response2005.py +25 -0
  376. flywheel/models/input_filter.py +221 -0
  377. flywheel/models/input_job.py +521 -0
  378. flywheel/models/input_job_profile.py +275 -0
  379. flywheel/models/inserted_id.py +163 -0
  380. flywheel/models/job.py +841 -0
  381. flywheel/models/job_analysis_input.py +273 -0
  382. flywheel/models/job_ask.py +301 -0
  383. flywheel/models/job_ask_response.py +195 -0
  384. flywheel/models/job_ask_response_job.py +978 -0
  385. flywheel/models/job_ask_return.py +25 -0
  386. flywheel/models/job_ask_return_criteria.py +245 -0
  387. flywheel/models/job_ask_state.py +25 -0
  388. flywheel/models/job_ask_state_response.py +163 -0
  389. flywheel/models/job_complete.py +220 -0
  390. flywheel/models/job_completion_input.py +25 -0
  391. flywheel/models/job_completion_ticket.py +25 -0
  392. flywheel/models/job_config.py +135 -0
  393. flywheel/models/job_config_input.py +272 -0
  394. flywheel/models/job_config_inputs.py +25 -0
  395. flywheel/models/job_config_output.py +25 -0
  396. flywheel/models/job_container_detail.py +25 -0
  397. flywheel/models/job_destination.py +189 -0
  398. flywheel/models/job_detail.py +925 -0
  399. flywheel/models/job_detail_container.py +190 -0
  400. flywheel/models/job_detail_file_entry.py +194 -0
  401. flywheel/models/job_detail_group.py +190 -0
  402. flywheel/models/job_detail_parent_info.py +303 -0
  403. flywheel/models/job_executor_info.py +369 -0
  404. flywheel/models/job_file_input.py +247 -0
  405. flywheel/models/job_file_input_list_output.py +247 -0
  406. flywheel/models/job_file_object.py +435 -0
  407. flywheel/models/job_file_object_list_output.py +407 -0
  408. flywheel/models/job_gear_match.py +25 -0
  409. flywheel/models/job_inputs_array_item.py +305 -0
  410. flywheel/models/job_inputs_item.py +242 -0
  411. flywheel/models/job_inputs_object.py +138 -0
  412. flywheel/models/job_list_entry.py +25 -0
  413. flywheel/models/job_list_output.py +979 -0
  414. flywheel/models/job_list_output_config.py +220 -0
  415. flywheel/models/job_log.py +189 -0
  416. flywheel/models/job_log_column.py +40 -0
  417. flywheel/models/job_log_record.py +192 -0
  418. flywheel/models/job_modify.py +193 -0
  419. flywheel/models/job_origin.py +190 -0
  420. flywheel/models/job_output.py +1005 -0
  421. flywheel/models/job_output_config.py +247 -0
  422. flywheel/models/job_parents.py +297 -0
  423. flywheel/models/job_priority.py +31 -0
  424. flywheel/models/job_priority_update.py +192 -0
  425. flywheel/models/job_profile.py +427 -0
  426. flywheel/models/job_profile_input.py +25 -0
  427. flywheel/models/job_request.py +221 -0
  428. flywheel/models/job_request_item.py +246 -0
  429. flywheel/models/job_request_item_type.py +31 -0
  430. flywheel/models/job_request_target.py +270 -0
  431. flywheel/models/job_state.py +32 -0
  432. flywheel/models/job_state_counts.py +25 -0
  433. flywheel/models/job_stats_by_state.py +25 -0
  434. flywheel/models/job_ticket_output.py +165 -0
  435. flywheel/models/job_transition_times.py +253 -0
  436. flywheel/models/job_version_info.py +135 -0
  437. flywheel/models/jobs_by_state.py +272 -0
  438. flywheel/models/jobs_list.py +166 -0
  439. flywheel/models/join_origin_device.py +164 -0
  440. flywheel/models/join_origin_job.py +219 -0
  441. flywheel/models/join_origin_user.py +189 -0
  442. flywheel/models/join_origins.py +223 -0
  443. flywheel/models/join_type.py +28 -0
  444. flywheel/models/jupyterhub_workspace.py +163 -0
  445. flywheel/models/jupyterlab_server_modify.py +275 -0
  446. flywheel/models/jupyterlab_server_origin.py +25 -0
  447. flywheel/models/jupyterlab_server_output.py +25 -0
  448. flywheel/models/jupyterlab_server_response.py +415 -0
  449. flywheel/models/jupyterlab_server_update.py +25 -0
  450. flywheel/models/ldap_sync.py +36 -0
  451. flywheel/models/ldap_sync_config.py +163 -0
  452. flywheel/models/ldap_sync_input.py +36 -0
  453. flywheel/models/ldap_sync_status.py +250 -0
  454. flywheel/models/legacy_api_key_output.py +271 -0
  455. flywheel/models/legacy_input.py +244 -0
  456. flywheel/models/legacy_usage_report.py +309 -0
  457. flywheel/models/legacys_usage_project_entry.py +194 -0
  458. flywheel/models/libs_workflows_models_parent_type.py +33 -0
  459. flywheel/models/libs_workflows_models_task_status.py +32 -0
  460. flywheel/models/local_storage.py +217 -0
  461. flywheel/models/location.py +189 -0
  462. flywheel/models/locked.py +219 -0
  463. flywheel/models/master_subject_code_dob_input.py +279 -0
  464. flywheel/models/master_subject_code_input.py +281 -0
  465. flywheel/models/master_subject_code_output.py +166 -0
  466. flywheel/models/matched_acquisition_output.py +518 -0
  467. flywheel/models/mfa_channel.py +30 -0
  468. flywheel/models/mfa_settings.py +167 -0
  469. flywheel/models/mixins.py +794 -0
  470. flywheel/models/ml_set_filter.py +194 -0
  471. flywheel/models/ml_type.py +30 -0
  472. flywheel/models/modality.py +250 -0
  473. flywheel/models/modality_input.py +244 -0
  474. flywheel/models/modality_modify.py +218 -0
  475. flywheel/models/modality_output.py +271 -0
  476. flywheel/models/modified_result.py +190 -0
  477. flywheel/models/modify_user_input.py +466 -0
  478. flywheel/models/move_conflict.py +300 -0
  479. flywheel/models/note.py +391 -0
  480. flywheel/models/note_input.py +165 -0
  481. flywheel/models/optional_input_policy.py +30 -0
  482. flywheel/models/order.py +29 -0
  483. flywheel/models/organ_system.py +64 -0
  484. flywheel/models/origin.py +193 -0
  485. flywheel/models/origin_type.py +35 -0
  486. flywheel/models/orphaned_count.py +163 -0
  487. flywheel/models/output_user_page.py +219 -0
  488. flywheel/models/packfile_cleanup_output.py +166 -0
  489. flywheel/models/packfile_removed_output.py +189 -0
  490. flywheel/models/page.py +216 -0
  491. flywheel/models/page_generic_file_output.py +219 -0
  492. flywheel/models/page_generic_filter.py +219 -0
  493. flywheel/models/page_generic_form_response_output.py +219 -0
  494. flywheel/models/page_generic_protocol.py +244 -0
  495. flywheel/models/page_generic_reader_task_output.py +244 -0
  496. flywheel/models/page_generic_staffing_pool.py +244 -0
  497. flywheel/models/parsed_query_response.py +194 -0
  498. flywheel/models/permission_access_permission.py +25 -0
  499. flywheel/models/premade_jobs_batch_job_output.py +298 -0
  500. flywheel/models/premade_jobs_batch_job_output_inflated_jobs.py +299 -0
  501. flywheel/models/premade_jobs_batch_proposal.py +334 -0
  502. flywheel/models/premade_jobs_batch_proposal_detail.py +166 -0
  503. flywheel/models/premade_jobs_batch_proposal_input.py +166 -0
  504. flywheel/models/project.py +25 -0
  505. flywheel/models/project_acquisition_upsert_input.py +25 -0
  506. flywheel/models/project_acquisition_upsert_output.py +25 -0
  507. flywheel/models/project_aet.py +331 -0
  508. flywheel/models/project_aet_input.py +248 -0
  509. flywheel/models/project_catalog_list_output.py +25 -0
  510. flywheel/models/project_contact.py +194 -0
  511. flywheel/models/project_container_output.py +41 -0
  512. flywheel/models/project_copy_input.py +245 -0
  513. flywheel/models/project_copy_output.py +215 -0
  514. flywheel/models/project_counters.py +346 -0
  515. flywheel/models/project_hierarchy_input.py +278 -0
  516. flywheel/models/project_hierarchy_output.py +222 -0
  517. flywheel/models/project_hierarchy_upsert_input.py +25 -0
  518. flywheel/models/project_hierarchy_upsert_output.py +25 -0
  519. flywheel/models/project_input.py +384 -0
  520. flywheel/models/project_institution.py +194 -0
  521. flywheel/models/project_list_output.py +897 -0
  522. flywheel/models/project_locking_reason.py +32 -0
  523. flywheel/models/project_modify.py +413 -0
  524. flywheel/models/project_node.py +42 -0
  525. flywheel/models/project_output.py +899 -0
  526. flywheel/models/project_parents.py +168 -0
  527. flywheel/models/project_report.py +463 -0
  528. flywheel/models/project_report_list.py +167 -0
  529. flywheel/models/project_session_upsert_input.py +25 -0
  530. flywheel/models/project_session_upsert_output.py +25 -0
  531. flywheel/models/project_settings_input.py +333 -0
  532. flywheel/models/project_settings_output.py +333 -0
  533. flywheel/models/project_settings_sharing.py +327 -0
  534. flywheel/models/project_settings_sharing_input.py +334 -0
  535. flywheel/models/project_settings_workspaces.py +167 -0
  536. flywheel/models/project_settings_workspaces_input.py +167 -0
  537. flywheel/models/project_share_level.py +29 -0
  538. flywheel/models/project_sharing_settings_project_contact.py +25 -0
  539. flywheel/models/project_sharing_settings_project_counters.py +36 -0
  540. flywheel/models/project_sharing_settings_project_institution.py +25 -0
  541. flywheel/models/project_sharing_settings_project_settings_input.py +25 -0
  542. flywheel/models/project_sharing_settings_project_settings_output.py +25 -0
  543. flywheel/models/project_sharing_settings_project_settings_sharing.py +25 -0
  544. flywheel/models/project_sharing_settings_project_settings_sharing_input.py +25 -0
  545. flywheel/models/project_sharing_settings_project_stats.py +36 -0
  546. flywheel/models/project_stats.py +270 -0
  547. flywheel/models/project_subject_upsert_input.py +25 -0
  548. flywheel/models/project_subject_upsert_output.py +25 -0
  549. flywheel/models/project_template.py +195 -0
  550. flywheel/models/project_template_input.py +195 -0
  551. flywheel/models/project_template_list_input.py +166 -0
  552. flywheel/models/project_template_requirement.py +36 -0
  553. flywheel/models/project_template_session_template.py +36 -0
  554. flywheel/models/project_upsert_origin.py +36 -0
  555. flywheel/models/protocol.py +515 -0
  556. flywheel/models/protocol_e_signature_config.py +191 -0
  557. flywheel/models/protocol_input.py +354 -0
  558. flywheel/models/protocol_modify.py +277 -0
  559. flywheel/models/protocol_status.py +30 -0
  560. flywheel/models/provider.py +461 -0
  561. flywheel/models/provider_access_type.py +29 -0
  562. flywheel/models/provider_class.py +29 -0
  563. flywheel/models/provider_deletion_status.py +189 -0
  564. flywheel/models/provider_input.py +25 -0
  565. flywheel/models/provider_links.py +282 -0
  566. flywheel/models/provider_type.py +34 -0
  567. flywheel/models/providers.py +277 -0
  568. flywheel/models/reader_batch_create.py +463 -0
  569. flywheel/models/reader_task.py +725 -0
  570. flywheel/models/reader_task_config.py +189 -0
  571. flywheel/models/reader_task_create.py +543 -0
  572. flywheel/models/reader_task_modify.py +303 -0
  573. flywheel/models/reader_task_output.py +752 -0
  574. flywheel/models/reader_task_parent_details.py +322 -0
  575. flywheel/models/report_access_log_context.py +301 -0
  576. flywheel/models/report_access_log_context_entry.py +194 -0
  577. flywheel/models/report_access_log_context_file_entry.py +165 -0
  578. flywheel/models/report_access_log_entry.py +624 -0
  579. flywheel/models/report_access_log_origin.py +194 -0
  580. flywheel/models/report_availability_list.py +167 -0
  581. flywheel/models/report_daily_usage_entry.py +501 -0
  582. flywheel/models/report_demographics_grid.py +36 -0
  583. flywheel/models/report_ethnicity_grid.py +252 -0
  584. flywheel/models/report_gender_count.py +222 -0
  585. flywheel/models/report_group_report.py +217 -0
  586. flywheel/models/report_legacy_usage_entry.py +36 -0
  587. flywheel/models/report_legacy_usage_project_entry.py +36 -0
  588. flywheel/models/report_project.py +25 -0
  589. flywheel/models/report_site.py +192 -0
  590. flywheel/models/report_time_period.py +193 -0
  591. flywheel/models/report_usage.py +630 -0
  592. flywheel/models/report_usage_entry.py +25 -0
  593. flywheel/models/resolve_input.py +163 -0
  594. flywheel/models/resolve_output.py +194 -0
  595. flywheel/models/resolver_acquisition_node.py +36 -0
  596. flywheel/models/resolver_analysis_node.py +36 -0
  597. flywheel/models/resolver_file_node.py +36 -0
  598. flywheel/models/resolver_gear_node.py +36 -0
  599. flywheel/models/resolver_group_node.py +36 -0
  600. flywheel/models/resolver_input.py +25 -0
  601. flywheel/models/resolver_node.py +182 -0
  602. flywheel/models/resolver_output.py +25 -0
  603. flywheel/models/resolver_project_node.py +36 -0
  604. flywheel/models/resolver_session_node.py +36 -0
  605. flywheel/models/resolver_subject_node.py +36 -0
  606. flywheel/models/role_input.py +192 -0
  607. flywheel/models/role_output.py +273 -0
  608. flywheel/models/role_permission.py +194 -0
  609. flywheel/models/role_permission_output.py +189 -0
  610. flywheel/models/role_permission_update.py +163 -0
  611. flywheel/models/role_type.py +32 -0
  612. flywheel/models/role_update.py +194 -0
  613. flywheel/models/roles_backwards_compatible_role_assignment.py +36 -0
  614. flywheel/models/roles_group_role_pool_input.py +36 -0
  615. flywheel/models/roles_role.py +36 -0
  616. flywheel/models/roles_role_assignment.py +195 -0
  617. flywheel/models/roles_role_input.py +36 -0
  618. flywheel/models/rule.py +467 -0
  619. flywheel/models/rule_any.py +216 -0
  620. flywheel/models/s3_addressing_style.py +29 -0
  621. flywheel/models/s3_compat_storage.py +381 -0
  622. flywheel/models/save_search.py +298 -0
  623. flywheel/models/save_search_input.py +219 -0
  624. flywheel/models/save_search_output.py +301 -0
  625. flywheel/models/save_search_page.py +219 -0
  626. flywheel/models/save_search_parent.py +192 -0
  627. flywheel/models/save_search_update.py +194 -0
  628. flywheel/models/search_acquisition_response.py +252 -0
  629. flywheel/models/search_analysis_response.py +254 -0
  630. flywheel/models/search_collection_response.py +254 -0
  631. flywheel/models/search_file_response.py +312 -0
  632. flywheel/models/search_group_response.py +196 -0
  633. flywheel/models/search_parent_acquisition.py +47 -0
  634. flywheel/models/search_parent_analysis.py +47 -0
  635. flywheel/models/search_parent_collection.py +46 -0
  636. flywheel/models/search_parent_project.py +54 -0
  637. flywheel/models/search_parent_response.py +213 -0
  638. flywheel/models/search_parent_session.py +48 -0
  639. flywheel/models/search_parent_subject.py +48 -0
  640. flywheel/models/search_parse_error.py +252 -0
  641. flywheel/models/search_parse_search_query_result.py +36 -0
  642. flywheel/models/search_project_response.py +196 -0
  643. flywheel/models/search_query.py +337 -0
  644. flywheel/models/search_query_suggestions.py +36 -0
  645. flywheel/models/search_response.py +448 -0
  646. flywheel/models/search_return_type.py +33 -0
  647. flywheel/models/search_save_search.py +36 -0
  648. flywheel/models/search_save_search_input.py +36 -0
  649. flywheel/models/search_save_search_parent.py +36 -0
  650. flywheel/models/search_save_search_update.py +36 -0
  651. flywheel/models/search_session_response.py +252 -0
  652. flywheel/models/search_status.py +166 -0
  653. flywheel/models/search_structured_search_query.py +25 -0
  654. flywheel/models/search_subject_response.py +225 -0
  655. flywheel/models/search_suggestion.py +36 -0
  656. flywheel/models/select_item.py +190 -0
  657. flywheel/models/server_state.py +303 -0
  658. flywheel/models/service_aet.py +301 -0
  659. flywheel/models/service_aet_input.py +276 -0
  660. flywheel/models/session.py +25 -0
  661. flywheel/models/session_container_output.py +35 -0
  662. flywheel/models/session_copy_input.py +253 -0
  663. flywheel/models/session_embedded_subject.py +299 -0
  664. flywheel/models/session_input.py +431 -0
  665. flywheel/models/session_list_output.py +897 -0
  666. flywheel/models/session_metadata_input.py +36 -0
  667. flywheel/models/session_modify.py +464 -0
  668. flywheel/models/session_node.py +36 -0
  669. flywheel/models/session_output.py +897 -0
  670. flywheel/models/session_parents.py +220 -0
  671. flywheel/models/session_template_options.py +221 -0
  672. flywheel/models/session_template_recalc_output.py +165 -0
  673. flywheel/models/session_upsert_input.py +464 -0
  674. flywheel/models/session_upsert_output.py +243 -0
  675. flywheel/models/sharing_filter_options.py +345 -0
  676. flywheel/models/signed_fs_upload_output.py +189 -0
  677. flywheel/models/signed_url_cleanup_input.py +189 -0
  678. flywheel/models/signed_url_upload_input.py +190 -0
  679. flywheel/models/signed_url_upload_output.py +349 -0
  680. flywheel/models/site.py +623 -0
  681. flywheel/models/site_report.py +194 -0
  682. flywheel/models/site_settings.py +385 -0
  683. flywheel/models/sort.py +192 -0
  684. flywheel/models/stable_api_key_input.py +25 -0
  685. flywheel/models/staffing_pool.py +324 -0
  686. flywheel/models/staffing_pool_create.py +216 -0
  687. flywheel/models/staffing_pool_list.py +164 -0
  688. flywheel/models/staffing_pool_modify.py +218 -0
  689. flywheel/models/state.py +32 -0
  690. flywheel/models/static_compute.py +218 -0
  691. flywheel/models/status_transitions.py +245 -0
  692. flywheel/models/status_type.py +31 -0
  693. flywheel/models/status_value.py +31 -0
  694. flywheel/models/storage_strategy.py +30 -0
  695. flywheel/models/storage_strategy_config.py +194 -0
  696. flywheel/models/structured_query.py +165 -0
  697. flywheel/models/structured_query_suggestions.py +196 -0
  698. flywheel/models/structured_query_value_suggestion.py +247 -0
  699. flywheel/models/subject.py +34 -0
  700. flywheel/models/subject_container_output.py +36 -0
  701. flywheel/models/subject_copy_input.py +223 -0
  702. flywheel/models/subject_input.py +627 -0
  703. flywheel/models/subject_modify.py +684 -0
  704. flywheel/models/subject_node.py +37 -0
  705. flywheel/models/subject_output.py +1008 -0
  706. flywheel/models/subject_output_for_list.py +1005 -0
  707. flywheel/models/subject_parents.py +194 -0
  708. flywheel/models/subject_role_permission.py +194 -0
  709. flywheel/models/subject_state.py +30 -0
  710. flywheel/models/subject_template_options.py +191 -0
  711. flywheel/models/subject_upsert_input.py +573 -0
  712. flywheel/models/subject_upsert_output.py +216 -0
  713. flywheel/models/sync_user_input.py +322 -0
  714. flywheel/models/tag.py +165 -0
  715. flywheel/models/task_assign.py +194 -0
  716. flywheel/models/task_facet.py +29 -0
  717. flywheel/models/task_parent_ref.py +245 -0
  718. flywheel/models/task_parent_ref_input.py +219 -0
  719. flywheel/models/task_priority.py +31 -0
  720. flywheel/models/task_submission.py +189 -0
  721. flywheel/models/therapeutic_area.py +60 -0
  722. flywheel/models/transitions.py +272 -0
  723. flywheel/models/tree_container_request_spec.py +281 -0
  724. flywheel/models/tree_graph.py +142 -0
  725. flywheel/models/tree_graph_connection.py +244 -0
  726. flywheel/models/tree_graph_connections.py +142 -0
  727. flywheel/models/tree_graph_node.py +166 -0
  728. flywheel/models/tree_request.py +25 -0
  729. flywheel/models/tree_response_item.py +142 -0
  730. flywheel/models/type_str.py +31 -0
  731. flywheel/models/uid_check_input_acquisitions.py +244 -0
  732. flywheel/models/uid_check_input_sessions.py +244 -0
  733. flywheel/models/uid_check_output.py +191 -0
  734. flywheel/models/upload_complete_s3_multipart_input.py +25 -0
  735. flywheel/models/upload_complete_s3_multipart_output.py +25 -0
  736. flywheel/models/upload_signed_fs_file_upload_output.py +36 -0
  737. flywheel/models/upload_signed_upload_url_input.py +36 -0
  738. flywheel/models/upload_signed_upload_url_output.py +36 -0
  739. flywheel/models/upload_ticket_output.py +215 -0
  740. flywheel/models/upload_token_output.py +163 -0
  741. flywheel/models/upsert_result.py +31 -0
  742. flywheel/models/user.py +760 -0
  743. flywheel/models/user_api_key.py +220 -0
  744. flywheel/models/user_input.py +461 -0
  745. flywheel/models/user_jobs.py +219 -0
  746. flywheel/models/user_jobs_output.py +25 -0
  747. flywheel/models/user_output.py +36 -0
  748. flywheel/models/user_output_id.py +163 -0
  749. flywheel/models/user_preferences.py +135 -0
  750. flywheel/models/user_wechat.py +135 -0
  751. flywheel/models/validation_error.py +215 -0
  752. flywheel/models/validation_rule.py +190 -0
  753. flywheel/models/version.py +363 -0
  754. flywheel/models/version_output.py +25 -0
  755. flywheel/models/view_id_output.py +164 -0
  756. flywheel/models/view_output.py +440 -0
  757. flywheel/models/viewer_app.py +381 -0
  758. flywheel/models/viewer_app_input.py +382 -0
  759. flywheel/models/viewer_app_type.py +29 -0
  760. flywheel/models/virus_scan.py +166 -0
  761. flywheel/models/virus_scan_state.py +30 -0
  762. flywheel/models/work_in_progress_features.py +135 -0
  763. flywheel/models/zipfile_info.py +192 -0
  764. flywheel/models/zipfile_member_info.py +241 -0
  765. flywheel/partial_reader.py +50 -0
  766. flywheel/rest.py +352 -0
  767. flywheel/util.py +95 -0
  768. flywheel/view_builder.py +449 -0
  769. flywheel_sdk-21.2.0rc0.dist-info/METADATA +41 -0
  770. flywheel_sdk-21.2.0rc0.dist-info/RECORD +772 -0
  771. flywheel_sdk-21.2.0rc0.dist-info/WHEEL +4 -0
  772. flywheel_sdk-21.2.0rc0.dist-info/licenses/LICENSE.txt +18 -0
@@ -0,0 +1,1008 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Flywheel
5
+
6
+ No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501
7
+
8
+ OpenAPI spec version: 0.0.1
9
+
10
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
11
+ """
12
+
13
+
14
+ ## NOTE: This file is auto generated by the swagger code generator program.
15
+ ## Do not edit the file manually.
16
+
17
+ import pprint
18
+ import re # noqa: F401
19
+ import six
20
+ from typing import TYPE_CHECKING
21
+
22
+ if TYPE_CHECKING:
23
+ from flywheel.models.cohort import Cohort # noqa: F401,E501
24
+ from flywheel.models.file_output import FileOutput # noqa: F401,E501
25
+ from flywheel.models.join_origins import JoinOrigins # noqa: F401,E501
26
+ from flywheel.models.ml_type import MLType # noqa: F401,E501
27
+ from flywheel.models.note import Note # noqa: F401,E501
28
+ from flywheel.models.subject_parents import SubjectParents # noqa: F401,E501
29
+ from flywheel.models.subject_role_permission import SubjectRolePermission # noqa: F401,E501
30
+ from flywheel.models.subject_state import SubjectState # noqa: F401,E501
31
+
32
+ from .mixins import SubjectMixin
33
+ class SubjectOutput(SubjectMixin):
34
+
35
+ swagger_types = {
36
+ 'id': 'str',
37
+ 'project': 'str',
38
+ 'created': 'datetime',
39
+ 'date_of_birth': 'datetime',
40
+ 'modified': 'datetime',
41
+ 'revision': 'int',
42
+ 'parents': 'SubjectParents',
43
+ 'permissions': 'list[SubjectRolePermission]',
44
+ 'firstname': 'str',
45
+ 'lastname': 'str',
46
+ 'sex': 'str',
47
+ 'age': 'int',
48
+ 'cohort': 'Cohort',
49
+ 'mlset': 'MLType',
50
+ 'type': 'str',
51
+ 'race': 'str',
52
+ 'ethnicity': 'str',
53
+ 'species': 'str',
54
+ 'strain': 'str',
55
+ 'label': 'str',
56
+ 'code': 'str',
57
+ 'master_code': 'str',
58
+ 'notes': 'list[Note]',
59
+ 'tags': 'list[str]',
60
+ 'info': 'object',
61
+ 'info_exists': 'bool',
62
+ 'state': 'SubjectState',
63
+ 'files': 'list[FileOutput]',
64
+ 'analyses': 'list[union[AnalysisOutput,AnalysisOutputInflatedJob]]',
65
+ 'join_origin': 'JoinOrigins',
66
+ 'copy_of': 'str',
67
+ 'original_copy_of': 'str'
68
+ }
69
+
70
+ attribute_map = {
71
+ 'id': '_id',
72
+ 'project': 'project',
73
+ 'created': 'created',
74
+ 'date_of_birth': 'date_of_birth',
75
+ 'modified': 'modified',
76
+ 'revision': 'revision',
77
+ 'parents': 'parents',
78
+ 'permissions': 'permissions',
79
+ 'firstname': 'firstname',
80
+ 'lastname': 'lastname',
81
+ 'sex': 'sex',
82
+ 'age': 'age',
83
+ 'cohort': 'cohort',
84
+ 'mlset': 'mlset',
85
+ 'type': 'type',
86
+ 'race': 'race',
87
+ 'ethnicity': 'ethnicity',
88
+ 'species': 'species',
89
+ 'strain': 'strain',
90
+ 'label': 'label',
91
+ 'code': 'code',
92
+ 'master_code': 'master_code',
93
+ 'notes': 'notes',
94
+ 'tags': 'tags',
95
+ 'info': 'info',
96
+ 'info_exists': 'info_exists',
97
+ 'state': 'state',
98
+ 'files': 'files',
99
+ 'analyses': 'analyses',
100
+ 'join_origin': 'join-origin',
101
+ 'copy_of': 'copy_of',
102
+ 'original_copy_of': 'original_copy_of'
103
+ }
104
+
105
+ rattribute_map = {
106
+ '_id': 'id',
107
+ 'project': 'project',
108
+ 'created': 'created',
109
+ 'date_of_birth': 'date_of_birth',
110
+ 'modified': 'modified',
111
+ 'revision': 'revision',
112
+ 'parents': 'parents',
113
+ 'permissions': 'permissions',
114
+ 'firstname': 'firstname',
115
+ 'lastname': 'lastname',
116
+ 'sex': 'sex',
117
+ 'age': 'age',
118
+ 'cohort': 'cohort',
119
+ 'mlset': 'mlset',
120
+ 'type': 'type',
121
+ 'race': 'race',
122
+ 'ethnicity': 'ethnicity',
123
+ 'species': 'species',
124
+ 'strain': 'strain',
125
+ 'label': 'label',
126
+ 'code': 'code',
127
+ 'master_code': 'master_code',
128
+ 'notes': 'notes',
129
+ 'tags': 'tags',
130
+ 'info': 'info',
131
+ 'info_exists': 'info_exists',
132
+ 'state': 'state',
133
+ 'files': 'files',
134
+ 'analyses': 'analyses',
135
+ 'join-origin': 'join_origin',
136
+ 'copy_of': 'copy_of',
137
+ 'original_copy_of': 'original_copy_of'
138
+ }
139
+
140
+ def __init__(self, id=None, project=None, created=None, date_of_birth=None, modified=None, revision=None, parents=None, permissions=None, firstname=None, lastname=None, sex=None, age=None, cohort=None, mlset=None, type=None, race=None, ethnicity=None, species=None, strain=None, label=None, code=None, master_code=None, notes=None, tags=None, info=None, info_exists=None, state=None, files=None, analyses=None, join_origin=None, copy_of=None, original_copy_of=None): # noqa: E501
141
+ """SubjectOutput - a model defined in Swagger"""
142
+ super(SubjectOutput, self).__init__()
143
+
144
+ self._id = None
145
+ self._project = None
146
+ self._created = None
147
+ self._date_of_birth = None
148
+ self._modified = None
149
+ self._revision = None
150
+ self._parents = None
151
+ self._permissions = None
152
+ self._firstname = None
153
+ self._lastname = None
154
+ self._sex = None
155
+ self._age = None
156
+ self._cohort = None
157
+ self._mlset = None
158
+ self._type = None
159
+ self._race = None
160
+ self._ethnicity = None
161
+ self._species = None
162
+ self._strain = None
163
+ self._label = None
164
+ self._code = None
165
+ self._master_code = None
166
+ self._notes = None
167
+ self._tags = None
168
+ self._info = None
169
+ self._info_exists = None
170
+ self._state = None
171
+ self._files = None
172
+ self._analyses = None
173
+ self._join_origin = None
174
+ self._copy_of = None
175
+ self._original_copy_of = None
176
+ self.discriminator = None
177
+ self.alt_discriminator = None
178
+
179
+ if id is not None:
180
+ self.id = id
181
+ self.project = project
182
+ self.created = created
183
+ if date_of_birth is not None:
184
+ self.date_of_birth = date_of_birth
185
+ self.modified = modified
186
+ self.revision = revision
187
+ self.parents = parents
188
+ self.permissions = permissions
189
+ if firstname is not None:
190
+ self.firstname = firstname
191
+ if lastname is not None:
192
+ self.lastname = lastname
193
+ if sex is not None:
194
+ self.sex = sex
195
+ if age is not None:
196
+ self.age = age
197
+ if cohort is not None:
198
+ self.cohort = cohort
199
+ if mlset is not None:
200
+ self.mlset = mlset
201
+ if type is not None:
202
+ self.type = type
203
+ if race is not None:
204
+ self.race = race
205
+ if ethnicity is not None:
206
+ self.ethnicity = ethnicity
207
+ if species is not None:
208
+ self.species = species
209
+ if strain is not None:
210
+ self.strain = strain
211
+ if label is not None:
212
+ self.label = label
213
+ if code is not None:
214
+ self.code = code
215
+ if master_code is not None:
216
+ self.master_code = master_code
217
+ self.notes = notes
218
+ self.tags = tags
219
+ self.info = info
220
+ self.info_exists = info_exists
221
+ if state is not None:
222
+ self.state = state
223
+ self.files = files
224
+ if analyses is not None:
225
+ self.analyses = analyses
226
+ if join_origin is not None:
227
+ self.join_origin = join_origin
228
+ if copy_of is not None:
229
+ self.copy_of = copy_of
230
+ if original_copy_of is not None:
231
+ self.original_copy_of = original_copy_of
232
+
233
+ @property
234
+ def id(self):
235
+ """Gets the id of this SubjectOutput.
236
+
237
+
238
+ :return: The id of this SubjectOutput.
239
+ :rtype: str
240
+ """
241
+ return self._id
242
+
243
+ @id.setter
244
+ def id(self, id):
245
+ """Sets the id of this SubjectOutput.
246
+
247
+
248
+ :param id: The id of this SubjectOutput. # noqa: E501
249
+ :type: str
250
+ """
251
+
252
+ self._id = id
253
+
254
+ @property
255
+ def project(self):
256
+ """Gets the project of this SubjectOutput.
257
+
258
+
259
+ :return: The project of this SubjectOutput.
260
+ :rtype: str
261
+ """
262
+ return self._project
263
+
264
+ @project.setter
265
+ def project(self, project):
266
+ """Sets the project of this SubjectOutput.
267
+
268
+
269
+ :param project: The project of this SubjectOutput. # noqa: E501
270
+ :type: str
271
+ """
272
+
273
+ self._project = project
274
+
275
+ @property
276
+ def created(self):
277
+ """Gets the created of this SubjectOutput.
278
+
279
+
280
+ :return: The created of this SubjectOutput.
281
+ :rtype: datetime
282
+ """
283
+ return self._created
284
+
285
+ @created.setter
286
+ def created(self, created):
287
+ """Sets the created of this SubjectOutput.
288
+
289
+
290
+ :param created: The created of this SubjectOutput. # noqa: E501
291
+ :type: datetime
292
+ """
293
+
294
+ self._created = created
295
+
296
+ @property
297
+ def date_of_birth(self):
298
+ """Gets the date_of_birth of this SubjectOutput.
299
+
300
+
301
+ :return: The date_of_birth of this SubjectOutput.
302
+ :rtype: datetime
303
+ """
304
+ return self._date_of_birth
305
+
306
+ @date_of_birth.setter
307
+ def date_of_birth(self, date_of_birth):
308
+ """Sets the date_of_birth of this SubjectOutput.
309
+
310
+
311
+ :param date_of_birth: The date_of_birth of this SubjectOutput. # noqa: E501
312
+ :type: datetime
313
+ """
314
+
315
+ self._date_of_birth = date_of_birth
316
+
317
+ @property
318
+ def modified(self):
319
+ """Gets the modified of this SubjectOutput.
320
+
321
+
322
+ :return: The modified of this SubjectOutput.
323
+ :rtype: datetime
324
+ """
325
+ return self._modified
326
+
327
+ @modified.setter
328
+ def modified(self, modified):
329
+ """Sets the modified of this SubjectOutput.
330
+
331
+
332
+ :param modified: The modified of this SubjectOutput. # noqa: E501
333
+ :type: datetime
334
+ """
335
+
336
+ self._modified = modified
337
+
338
+ @property
339
+ def revision(self):
340
+ """Gets the revision of this SubjectOutput.
341
+
342
+
343
+ :return: The revision of this SubjectOutput.
344
+ :rtype: int
345
+ """
346
+ return self._revision
347
+
348
+ @revision.setter
349
+ def revision(self, revision):
350
+ """Sets the revision of this SubjectOutput.
351
+
352
+
353
+ :param revision: The revision of this SubjectOutput. # noqa: E501
354
+ :type: int
355
+ """
356
+
357
+ self._revision = revision
358
+
359
+ @property
360
+ def parents(self):
361
+ """Gets the parents of this SubjectOutput.
362
+
363
+
364
+ :return: The parents of this SubjectOutput.
365
+ :rtype: SubjectParents
366
+ """
367
+ return self._parents
368
+
369
+ @parents.setter
370
+ def parents(self, parents):
371
+ """Sets the parents of this SubjectOutput.
372
+
373
+
374
+ :param parents: The parents of this SubjectOutput. # noqa: E501
375
+ :type: SubjectParents
376
+ """
377
+
378
+ self._parents = parents
379
+
380
+ @property
381
+ def permissions(self):
382
+ """Gets the permissions of this SubjectOutput.
383
+
384
+
385
+ :return: The permissions of this SubjectOutput.
386
+ :rtype: list[SubjectRolePermission]
387
+ """
388
+ return self._permissions
389
+
390
+ @permissions.setter
391
+ def permissions(self, permissions):
392
+ """Sets the permissions of this SubjectOutput.
393
+
394
+
395
+ :param permissions: The permissions of this SubjectOutput. # noqa: E501
396
+ :type: list[SubjectRolePermission]
397
+ """
398
+
399
+ self._permissions = permissions
400
+
401
+ @property
402
+ def firstname(self):
403
+ """Gets the firstname of this SubjectOutput.
404
+
405
+
406
+ :return: The firstname of this SubjectOutput.
407
+ :rtype: str
408
+ """
409
+ return self._firstname
410
+
411
+ @firstname.setter
412
+ def firstname(self, firstname):
413
+ """Sets the firstname of this SubjectOutput.
414
+
415
+
416
+ :param firstname: The firstname of this SubjectOutput. # noqa: E501
417
+ :type: str
418
+ """
419
+
420
+ self._firstname = firstname
421
+
422
+ @property
423
+ def lastname(self):
424
+ """Gets the lastname of this SubjectOutput.
425
+
426
+
427
+ :return: The lastname of this SubjectOutput.
428
+ :rtype: str
429
+ """
430
+ return self._lastname
431
+
432
+ @lastname.setter
433
+ def lastname(self, lastname):
434
+ """Sets the lastname of this SubjectOutput.
435
+
436
+
437
+ :param lastname: The lastname of this SubjectOutput. # noqa: E501
438
+ :type: str
439
+ """
440
+
441
+ self._lastname = lastname
442
+
443
+ @property
444
+ def sex(self):
445
+ """Gets the sex of this SubjectOutput.
446
+
447
+
448
+ :return: The sex of this SubjectOutput.
449
+ :rtype: str
450
+ """
451
+ return self._sex
452
+
453
+ @sex.setter
454
+ def sex(self, sex):
455
+ """Sets the sex of this SubjectOutput.
456
+
457
+
458
+ :param sex: The sex of this SubjectOutput. # noqa: E501
459
+ :type: str
460
+ """
461
+
462
+ self._sex = sex
463
+
464
+ @property
465
+ def age(self):
466
+ """Gets the age of this SubjectOutput.
467
+
468
+
469
+ :return: The age of this SubjectOutput.
470
+ :rtype: int
471
+ """
472
+ return self._age
473
+
474
+ @age.setter
475
+ def age(self, age):
476
+ """Sets the age of this SubjectOutput.
477
+
478
+
479
+ :param age: The age of this SubjectOutput. # noqa: E501
480
+ :type: int
481
+ """
482
+
483
+ self._age = age
484
+
485
+ @property
486
+ def cohort(self):
487
+ """Gets the cohort of this SubjectOutput.
488
+
489
+
490
+ :return: The cohort of this SubjectOutput.
491
+ :rtype: Cohort
492
+ """
493
+ return self._cohort
494
+
495
+ @cohort.setter
496
+ def cohort(self, cohort):
497
+ """Sets the cohort of this SubjectOutput.
498
+
499
+
500
+ :param cohort: The cohort of this SubjectOutput. # noqa: E501
501
+ :type: Cohort
502
+ """
503
+
504
+ self._cohort = cohort
505
+
506
+ @property
507
+ def mlset(self):
508
+ """Gets the mlset of this SubjectOutput.
509
+
510
+
511
+ :return: The mlset of this SubjectOutput.
512
+ :rtype: MLType
513
+ """
514
+ return self._mlset
515
+
516
+ @mlset.setter
517
+ def mlset(self, mlset):
518
+ """Sets the mlset of this SubjectOutput.
519
+
520
+
521
+ :param mlset: The mlset of this SubjectOutput. # noqa: E501
522
+ :type: MLType
523
+ """
524
+
525
+ self._mlset = mlset
526
+
527
+ @property
528
+ def type(self):
529
+ """Gets the type of this SubjectOutput.
530
+
531
+
532
+ :return: The type of this SubjectOutput.
533
+ :rtype: str
534
+ """
535
+ return self._type
536
+
537
+ @type.setter
538
+ def type(self, type):
539
+ """Sets the type of this SubjectOutput.
540
+
541
+
542
+ :param type: The type of this SubjectOutput. # noqa: E501
543
+ :type: str
544
+ """
545
+
546
+ self._type = type
547
+
548
+ @property
549
+ def race(self):
550
+ """Gets the race of this SubjectOutput.
551
+
552
+
553
+ :return: The race of this SubjectOutput.
554
+ :rtype: str
555
+ """
556
+ return self._race
557
+
558
+ @race.setter
559
+ def race(self, race):
560
+ """Sets the race of this SubjectOutput.
561
+
562
+
563
+ :param race: The race of this SubjectOutput. # noqa: E501
564
+ :type: str
565
+ """
566
+
567
+ self._race = race
568
+
569
+ @property
570
+ def ethnicity(self):
571
+ """Gets the ethnicity of this SubjectOutput.
572
+
573
+
574
+ :return: The ethnicity of this SubjectOutput.
575
+ :rtype: str
576
+ """
577
+ return self._ethnicity
578
+
579
+ @ethnicity.setter
580
+ def ethnicity(self, ethnicity):
581
+ """Sets the ethnicity of this SubjectOutput.
582
+
583
+
584
+ :param ethnicity: The ethnicity of this SubjectOutput. # noqa: E501
585
+ :type: str
586
+ """
587
+
588
+ self._ethnicity = ethnicity
589
+
590
+ @property
591
+ def species(self):
592
+ """Gets the species of this SubjectOutput.
593
+
594
+
595
+ :return: The species of this SubjectOutput.
596
+ :rtype: str
597
+ """
598
+ return self._species
599
+
600
+ @species.setter
601
+ def species(self, species):
602
+ """Sets the species of this SubjectOutput.
603
+
604
+
605
+ :param species: The species of this SubjectOutput. # noqa: E501
606
+ :type: str
607
+ """
608
+
609
+ self._species = species
610
+
611
+ @property
612
+ def strain(self):
613
+ """Gets the strain of this SubjectOutput.
614
+
615
+
616
+ :return: The strain of this SubjectOutput.
617
+ :rtype: str
618
+ """
619
+ return self._strain
620
+
621
+ @strain.setter
622
+ def strain(self, strain):
623
+ """Sets the strain of this SubjectOutput.
624
+
625
+
626
+ :param strain: The strain of this SubjectOutput. # noqa: E501
627
+ :type: str
628
+ """
629
+
630
+ self._strain = strain
631
+
632
+ @property
633
+ def label(self):
634
+ """Gets the label of this SubjectOutput.
635
+
636
+
637
+ :return: The label of this SubjectOutput.
638
+ :rtype: str
639
+ """
640
+ return self._label
641
+
642
+ @label.setter
643
+ def label(self, label):
644
+ """Sets the label of this SubjectOutput.
645
+
646
+
647
+ :param label: The label of this SubjectOutput. # noqa: E501
648
+ :type: str
649
+ """
650
+
651
+ self._label = label
652
+
653
+ @property
654
+ def code(self):
655
+ """Gets the code of this SubjectOutput.
656
+
657
+
658
+ :return: The code of this SubjectOutput.
659
+ :rtype: str
660
+ """
661
+ return self._code
662
+
663
+ @code.setter
664
+ def code(self, code):
665
+ """Sets the code of this SubjectOutput.
666
+
667
+
668
+ :param code: The code of this SubjectOutput. # noqa: E501
669
+ :type: str
670
+ """
671
+
672
+ self._code = code
673
+
674
+ @property
675
+ def master_code(self):
676
+ """Gets the master_code of this SubjectOutput.
677
+
678
+
679
+ :return: The master_code of this SubjectOutput.
680
+ :rtype: str
681
+ """
682
+ return self._master_code
683
+
684
+ @master_code.setter
685
+ def master_code(self, master_code):
686
+ """Sets the master_code of this SubjectOutput.
687
+
688
+
689
+ :param master_code: The master_code of this SubjectOutput. # noqa: E501
690
+ :type: str
691
+ """
692
+
693
+ self._master_code = master_code
694
+
695
+ @property
696
+ def notes(self):
697
+ """Gets the notes of this SubjectOutput.
698
+
699
+
700
+ :return: The notes of this SubjectOutput.
701
+ :rtype: list[Note]
702
+ """
703
+ return self._notes
704
+
705
+ @notes.setter
706
+ def notes(self, notes):
707
+ """Sets the notes of this SubjectOutput.
708
+
709
+
710
+ :param notes: The notes of this SubjectOutput. # noqa: E501
711
+ :type: list[Note]
712
+ """
713
+
714
+ self._notes = notes
715
+
716
+ @property
717
+ def tags(self):
718
+ """Gets the tags of this SubjectOutput.
719
+
720
+
721
+ :return: The tags of this SubjectOutput.
722
+ :rtype: list[str]
723
+ """
724
+ return self._tags
725
+
726
+ @tags.setter
727
+ def tags(self, tags):
728
+ """Sets the tags of this SubjectOutput.
729
+
730
+
731
+ :param tags: The tags of this SubjectOutput. # noqa: E501
732
+ :type: list[str]
733
+ """
734
+
735
+ self._tags = tags
736
+
737
+ @property
738
+ def info(self):
739
+ """Gets the info of this SubjectOutput.
740
+
741
+
742
+ :return: The info of this SubjectOutput.
743
+ :rtype: object
744
+ """
745
+ return self._info
746
+
747
+ @info.setter
748
+ def info(self, info):
749
+ """Sets the info of this SubjectOutput.
750
+
751
+
752
+ :param info: The info of this SubjectOutput. # noqa: E501
753
+ :type: object
754
+ """
755
+
756
+ self._info = info
757
+
758
+ @property
759
+ def info_exists(self):
760
+ """Gets the info_exists of this SubjectOutput.
761
+
762
+
763
+ :return: The info_exists of this SubjectOutput.
764
+ :rtype: bool
765
+ """
766
+ return self._info_exists
767
+
768
+ @info_exists.setter
769
+ def info_exists(self, info_exists):
770
+ """Sets the info_exists of this SubjectOutput.
771
+
772
+
773
+ :param info_exists: The info_exists of this SubjectOutput. # noqa: E501
774
+ :type: bool
775
+ """
776
+
777
+ self._info_exists = info_exists
778
+
779
+ @property
780
+ def state(self):
781
+ """Gets the state of this SubjectOutput.
782
+
783
+
784
+ :return: The state of this SubjectOutput.
785
+ :rtype: SubjectState
786
+ """
787
+ return self._state
788
+
789
+ @state.setter
790
+ def state(self, state):
791
+ """Sets the state of this SubjectOutput.
792
+
793
+
794
+ :param state: The state of this SubjectOutput. # noqa: E501
795
+ :type: SubjectState
796
+ """
797
+
798
+ self._state = state
799
+
800
+ @property
801
+ def files(self):
802
+ """Gets the files of this SubjectOutput.
803
+
804
+
805
+ :return: The files of this SubjectOutput.
806
+ :rtype: list[FileOutput]
807
+ """
808
+ return self._files
809
+
810
+ @files.setter
811
+ def files(self, files):
812
+ """Sets the files of this SubjectOutput.
813
+
814
+
815
+ :param files: The files of this SubjectOutput. # noqa: E501
816
+ :type: list[FileOutput]
817
+ """
818
+
819
+ self._files = files
820
+
821
+ @property
822
+ def analyses(self):
823
+ """Gets the analyses of this SubjectOutput.
824
+
825
+
826
+ :return: The analyses of this SubjectOutput.
827
+ :rtype: list[union[AnalysisOutput,AnalysisOutputInflatedJob]]
828
+ """
829
+ return self._analyses
830
+
831
+ @analyses.setter
832
+ def analyses(self, analyses):
833
+ """Sets the analyses of this SubjectOutput.
834
+
835
+
836
+ :param analyses: The analyses of this SubjectOutput. # noqa: E501
837
+ :type: list[union[AnalysisOutput,AnalysisOutputInflatedJob]]
838
+ """
839
+
840
+ self._analyses = analyses
841
+
842
+ @property
843
+ def join_origin(self):
844
+ """Gets the join_origin of this SubjectOutput.
845
+
846
+
847
+ :return: The join_origin of this SubjectOutput.
848
+ :rtype: JoinOrigins
849
+ """
850
+ return self._join_origin
851
+
852
+ @join_origin.setter
853
+ def join_origin(self, join_origin):
854
+ """Sets the join_origin of this SubjectOutput.
855
+
856
+
857
+ :param join_origin: The join_origin of this SubjectOutput. # noqa: E501
858
+ :type: JoinOrigins
859
+ """
860
+
861
+ self._join_origin = join_origin
862
+
863
+ @property
864
+ def copy_of(self):
865
+ """Gets the copy_of of this SubjectOutput.
866
+
867
+
868
+ :return: The copy_of of this SubjectOutput.
869
+ :rtype: str
870
+ """
871
+ return self._copy_of
872
+
873
+ @copy_of.setter
874
+ def copy_of(self, copy_of):
875
+ """Sets the copy_of of this SubjectOutput.
876
+
877
+
878
+ :param copy_of: The copy_of of this SubjectOutput. # noqa: E501
879
+ :type: str
880
+ """
881
+
882
+ self._copy_of = copy_of
883
+
884
+ @property
885
+ def original_copy_of(self):
886
+ """Gets the original_copy_of of this SubjectOutput.
887
+
888
+
889
+ :return: The original_copy_of of this SubjectOutput.
890
+ :rtype: str
891
+ """
892
+ return self._original_copy_of
893
+
894
+ @original_copy_of.setter
895
+ def original_copy_of(self, original_copy_of):
896
+ """Sets the original_copy_of of this SubjectOutput.
897
+
898
+
899
+ :param original_copy_of: The original_copy_of of this SubjectOutput. # noqa: E501
900
+ :type: str
901
+ """
902
+
903
+ self._original_copy_of = original_copy_of
904
+
905
+
906
+ @staticmethod
907
+ def positional_to_model(value):
908
+ """Converts a positional argument to a model value"""
909
+ return value
910
+
911
+ def return_value(self):
912
+ """Unwraps return value from model"""
913
+ return self
914
+
915
+ def to_dict(self):
916
+ """Returns the model properties as a dict"""
917
+ result = {}
918
+
919
+ for attr, _ in six.iteritems(self.swagger_types):
920
+ value = getattr(self, attr)
921
+ if isinstance(value, list):
922
+ result[attr] = list(map(
923
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
924
+ value
925
+ ))
926
+ elif hasattr(value, "to_dict"):
927
+ result[attr] = value.to_dict()
928
+ elif isinstance(value, dict):
929
+ result[attr] = dict(map(
930
+ lambda item: (item[0], item[1].to_dict())
931
+ if hasattr(item[1], "to_dict") else item,
932
+ value.items()
933
+ ))
934
+ else:
935
+ result[attr] = value
936
+
937
+ return result
938
+
939
+ def to_str(self):
940
+ """Returns the string representation of the model"""
941
+ return pprint.pformat(self.to_dict())
942
+
943
+ def __repr__(self):
944
+ """For `print` and `pprint`"""
945
+ return self.to_str()
946
+
947
+ def __eq__(self, other):
948
+ """Returns true if both objects are equal"""
949
+ # Import relatives
950
+ from flywheel.models.subject import Subject
951
+ from flywheel.models.subject_output_for_list import SubjectOutputForList
952
+ relatives = (
953
+ Subject,
954
+ SubjectOutputForList,
955
+ )
956
+ if not isinstance(other, relatives + (SubjectOutput,)):
957
+ return False
958
+
959
+ return self.__dict__ == other.__dict__
960
+
961
+ def __ne__(self, other):
962
+ """Returns true if both objects are not equal"""
963
+ return not self == other
964
+
965
+ # Container emulation
966
+ def __getitem__(self, key):
967
+ """Returns the value of key"""
968
+ key = self._map_key(key)
969
+ return getattr(self, key)
970
+
971
+ def __setitem__(self, key, value):
972
+ """Sets the value of key"""
973
+ key = self._map_key(key)
974
+ setattr(self, key, value)
975
+
976
+ def __contains__(self, key):
977
+ """Checks if the given value is a key in this object"""
978
+ key = self._map_key(key, raise_on_error=False)
979
+ return key is not None
980
+
981
+ def keys(self):
982
+ """Returns the list of json properties in the object"""
983
+ return self.__class__.rattribute_map.keys()
984
+
985
+ def values(self):
986
+ """Returns the list of values in the object"""
987
+ for key in self.__class__.attribute_map.keys():
988
+ yield getattr(self, key)
989
+
990
+ def items(self):
991
+ """Returns the list of json property to value mapping"""
992
+ for key, prop in self.__class__.rattribute_map.items():
993
+ yield key, getattr(self, prop)
994
+
995
+ def get(self, key, default=None):
996
+ """Get the value of the provided json property, or default"""
997
+ key = self._map_key(key, raise_on_error=False)
998
+ if key:
999
+ return getattr(self, key, default)
1000
+ return default
1001
+
1002
+ def _map_key(self, key, raise_on_error=True):
1003
+ result = self.__class__.rattribute_map.get(key)
1004
+ if result is None:
1005
+ if raise_on_error:
1006
+ raise AttributeError('Invalid attribute name: {}'.format(key))
1007
+ return None
1008
+ return '_' + result