flywheel-sdk 21.2.0__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.
- flywheel/__init__.py +784 -0
- flywheel/api/__init__.py +46 -0
- flywheel/api/acquisitions_api.py +5014 -0
- flywheel/api/analyses_api.py +3848 -0
- flywheel/api/audit_trail_api.py +568 -0
- flywheel/api/auth_api.py +121 -0
- flywheel/api/batch_api.py +630 -0
- flywheel/api/bulk_api.py +140 -0
- flywheel/api/change_log_api.py +254 -0
- flywheel/api/collections_api.py +3913 -0
- flywheel/api/config_api.py +299 -0
- flywheel/api/container_tasks_api.py +137 -0
- flywheel/api/container_type_api.py +137 -0
- flywheel/api/containers_api.py +4784 -0
- flywheel/api/custom_filters_api.py +466 -0
- flywheel/api/data_view_executions_api.py +549 -0
- flywheel/api/dataexplorer_api.py +1192 -0
- flywheel/api/devices_api.py +1071 -0
- flywheel/api/dimse_api.py +814 -0
- flywheel/api/download_api.py +261 -0
- flywheel/api/files_api.py +1868 -0
- flywheel/api/form_responses_api.py +703 -0
- flywheel/api/gears_api.py +1875 -0
- flywheel/api/groups_api.py +2829 -0
- flywheel/api/jobs_api.py +2320 -0
- flywheel/api/jupyterlab_servers_api.py +245 -0
- flywheel/api/modalities_api.py +562 -0
- flywheel/api/packfiles_api.py +121 -0
- flywheel/api/projects_api.py +7820 -0
- flywheel/api/protocols_api.py +757 -0
- flywheel/api/reports_api.py +1057 -0
- flywheel/api/resolve_api.py +276 -0
- flywheel/api/roles_api.py +563 -0
- flywheel/api/sessions_api.py +5296 -0
- flywheel/api/site_api.py +1552 -0
- flywheel/api/staffing_pools_api.py +677 -0
- flywheel/api/subjects_api.py +5349 -0
- flywheel/api/tasks_api.py +897 -0
- flywheel/api/tree_api.py +266 -0
- flywheel/api/uids_api.py +140 -0
- flywheel/api/upload_api.py +842 -0
- flywheel/api/users_api.py +2142 -0
- flywheel/api/views_api.py +1089 -0
- flywheel/api_client.py +748 -0
- flywheel/client.py +291 -0
- flywheel/configuration.py +308 -0
- flywheel/drone_login.py +65 -0
- flywheel/file_spec.py +67 -0
- flywheel/finder.py +168 -0
- flywheel/flywheel.py +9867 -0
- flywheel/gear_context.py +374 -0
- flywheel/models/__init__.py +726 -0
- flywheel/models/access_level.py +30 -0
- flywheel/models/access_permission.py +197 -0
- flywheel/models/access_permission_output.py +192 -0
- flywheel/models/access_permission_update.py +166 -0
- flywheel/models/access_type.py +54 -0
- flywheel/models/accumulator.py +33 -0
- flywheel/models/acquisition.py +25 -0
- flywheel/models/acquisition_container_output.py +34 -0
- flywheel/models/acquisition_copy_input.py +223 -0
- flywheel/models/acquisition_input.py +297 -0
- flywheel/models/acquisition_list_output.py +767 -0
- flywheel/models/acquisition_modify_input.py +299 -0
- flywheel/models/acquisition_node.py +35 -0
- flywheel/models/acquisition_output.py +767 -0
- flywheel/models/acquisition_parents.py +241 -0
- flywheel/models/acquisition_template_options.py +275 -0
- flywheel/models/acquisition_upsert_input.py +383 -0
- flywheel/models/acquisition_upsert_output.py +243 -0
- flywheel/models/action.py +91 -0
- flywheel/models/adhoc_analysis_input.py +247 -0
- flywheel/models/analysis.py +25 -0
- flywheel/models/analysis_container_output.py +34 -0
- flywheel/models/analysis_files_create_ticket_output.py +241 -0
- flywheel/models/analysis_input.py +310 -0
- flywheel/models/analysis_input_legacy.py +25 -0
- flywheel/models/analysis_list_output.py +680 -0
- flywheel/models/analysis_list_output_inflated_job.py +650 -0
- flywheel/models/analysis_modify_input.py +191 -0
- flywheel/models/analysis_node.py +35 -0
- flywheel/models/analysis_output.py +683 -0
- flywheel/models/analysis_output_inflated_job.py +674 -0
- flywheel/models/analysis_parents.py +270 -0
- flywheel/models/analysis_update.py +25 -0
- flywheel/models/api_key_input_with_optional_label.py +191 -0
- flywheel/models/api_key_output.py +297 -0
- flywheel/models/as_storage.py +298 -0
- flywheel/models/assignee.py +192 -0
- flywheel/models/assignee_type.py +29 -0
- flywheel/models/audit_trail_report.py +486 -0
- flywheel/models/audit_trail_report_status.py +32 -0
- flywheel/models/auth0_auth_out.py +323 -0
- flywheel/models/auth0_options_out.py +319 -0
- flywheel/models/auth_out.py +357 -0
- flywheel/models/auth_session_output.py +272 -0
- flywheel/models/avatars.py +218 -0
- flywheel/models/aws_creds.py +191 -0
- flywheel/models/aws_storage.py +354 -0
- flywheel/models/azure_creds.py +190 -0
- flywheel/models/base_aet.py +245 -0
- flywheel/models/base_compute.py +426 -0
- flywheel/models/batch.py +360 -0
- flywheel/models/batch_cancel_output.py +36 -0
- flywheel/models/batch_create_filters.py +220 -0
- flywheel/models/batch_job_analysis_input.py +281 -0
- flywheel/models/batch_jobs_proposal_input.py +36 -0
- flywheel/models/batch_proposal.py +25 -0
- flywheel/models/batch_proposal_detail.py +36 -0
- flywheel/models/batch_proposal_input.py +25 -0
- flywheel/models/body.py +36 -0
- flywheel/models/body_regenerate_key_api_devices_device_id_key_post.py +25 -0
- flywheel/models/body_region.py +46 -0
- flywheel/models/bookmark.py +189 -0
- flywheel/models/bulk_move_input.py +272 -0
- flywheel/models/bulk_move_sessions.py +25 -0
- flywheel/models/callbacks_virus_scan_input.py +36 -0
- flywheel/models/cancelled_batch_output.py +163 -0
- flywheel/models/catalog_list_output.py +407 -0
- flywheel/models/central_out.py +299 -0
- flywheel/models/change.py +379 -0
- flywheel/models/change_log_container_type.py +38 -0
- flywheel/models/change_log_document.py +245 -0
- flywheel/models/change_method.py +33 -0
- flywheel/models/classic_batch_job_output.py +352 -0
- flywheel/models/classic_batch_job_output_inflated_jobs.py +379 -0
- flywheel/models/classic_batch_proposal_input.py +388 -0
- flywheel/models/classic_batch_proposal_output.py +471 -0
- flywheel/models/classification_add_delete.py +36 -0
- flywheel/models/classification_replace.py +36 -0
- flywheel/models/classification_update_input.py +36 -0
- flywheel/models/cohort.py +29 -0
- flywheel/models/collection.py +25 -0
- flywheel/models/collection_container_output.py +32 -0
- flywheel/models/collection_input.py +217 -0
- flywheel/models/collection_input_with_contents.py +248 -0
- flywheel/models/collection_node.py +192 -0
- flywheel/models/collection_node_level.py +31 -0
- flywheel/models/collection_operation.py +193 -0
- flywheel/models/collection_operation_type.py +29 -0
- flywheel/models/collection_output.py +639 -0
- flywheel/models/collection_with_stats.py +637 -0
- flywheel/models/column.py +286 -0
- flywheel/models/column_type.py +32 -0
- flywheel/models/common_classification.py +135 -0
- flywheel/models/common_deleted_count.py +25 -0
- flywheel/models/common_editions.py +25 -0
- flywheel/models/common_info.py +135 -0
- flywheel/models/common_join_origins.py +25 -0
- flywheel/models/common_key.py +36 -0
- flywheel/models/common_modified_count.py +25 -0
- flywheel/models/common_object_created.py +36 -0
- flywheel/models/common_project_settings.py +25 -0
- flywheel/models/common_settings.py +36 -0
- flywheel/models/complete_multipart_upload_output.py +189 -0
- flywheel/models/complete_s3_multipart_upload_input.py +241 -0
- flywheel/models/config_feature_map.py +36 -0
- flywheel/models/config_out.py +381 -0
- flywheel/models/config_output.py +36 -0
- flywheel/models/config_site_config_output.py +36 -0
- flywheel/models/config_site_settings.py +36 -0
- flywheel/models/config_site_settings_input.py +36 -0
- flywheel/models/conflict_types.py +30 -0
- flywheel/models/container_delete_reason.py +39 -0
- flywheel/models/container_filter.py +193 -0
- flywheel/models/container_id_view_input.py +521 -0
- flywheel/models/container_id_view_input_execute_and_save.py +308 -0
- flywheel/models/container_modify.py +536 -0
- flywheel/models/container_new_output.py +25 -0
- flywheel/models/container_node_min.py +350 -0
- flywheel/models/container_output.py +36 -0
- flywheel/models/container_output_with_files.py +283 -0
- flywheel/models/container_parents.py +311 -0
- flywheel/models/container_pipeline_input.py +536 -0
- flywheel/models/container_project_parents.py +25 -0
- flywheel/models/container_reference.py +193 -0
- flywheel/models/container_reference_with_label.py +219 -0
- flywheel/models/container_session_parents.py +25 -0
- flywheel/models/container_subject_parents.py +25 -0
- flywheel/models/container_type.py +39 -0
- flywheel/models/container_uidcheck.py +253 -0
- flywheel/models/container_update.py +135 -0
- flywheel/models/context_input.py +217 -0
- flywheel/models/copy_filter.py +299 -0
- flywheel/models/copy_status.py +32 -0
- flywheel/models/core_models_api_key_api_key_input.py +190 -0
- flywheel/models/core_models_audit_trail_create_report_input.py +273 -0
- flywheel/models/core_models_audit_trail_modify_report_input.py +167 -0
- flywheel/models/core_models_common_source.py +189 -0
- flywheel/models/core_models_jobs_api_key_input.py +191 -0
- flywheel/models/core_models_search_parent_type.py +33 -0
- flywheel/models/core_workflows_form_responses_models_form_parents.py +163 -0
- flywheel/models/core_workflows_form_responses_models_form_response_output.py +440 -0
- flywheel/models/core_workflows_reader_models_reader_task_parents.py +295 -0
- flywheel/models/creds.py +135 -0
- flywheel/models/curator.py +221 -0
- flywheel/models/current_user_output.py +707 -0
- flywheel/models/custom_field.py +437 -0
- flywheel/models/custom_form.py +244 -0
- flywheel/models/cvat_info.py +275 -0
- flywheel/models/cvat_settings.py +272 -0
- flywheel/models/cvat_settings_input.py +272 -0
- flywheel/models/cvat_sync_state.py +30 -0
- flywheel/models/daily_report_usage.py +565 -0
- flywheel/models/data_strategy.py +29 -0
- flywheel/models/data_view.py +25 -0
- flywheel/models/data_view_analysis_file_spec.py +221 -0
- flywheel/models/data_view_analysis_filter_spec.py +221 -0
- flywheel/models/data_view_column_alias.py +337 -0
- flywheel/models/data_view_column_spec.py +286 -0
- flywheel/models/data_view_execution.py +505 -0
- flywheel/models/data_view_execution_state.py +31 -0
- flywheel/models/data_view_file_spec.py +392 -0
- flywheel/models/data_view_group_by.py +166 -0
- flywheel/models/data_view_group_by_column.py +194 -0
- flywheel/models/data_view_name_filter_spec.py +194 -0
- flywheel/models/data_view_output.py +25 -0
- flywheel/models/data_view_save_data_view_input.py +25 -0
- flywheel/models/data_view_zip_filter_spec.py +223 -0
- flywheel/models/default_flywheel_role.py +30 -0
- flywheel/models/deid_log_skip_reason.py +29 -0
- flywheel/models/delete_by_search_query.py +253 -0
- flywheel/models/deleted_file.py +514 -0
- flywheel/models/deleted_result.py +194 -0
- flywheel/models/deprecated_action.py +29 -0
- flywheel/models/destination_container_type.py +30 -0
- flywheel/models/device.py +437 -0
- flywheel/models/device_admin_update.py +194 -0
- flywheel/models/device_create.py +219 -0
- flywheel/models/device_self_update.py +272 -0
- flywheel/models/device_status.py +36 -0
- flywheel/models/device_status_entry.py +221 -0
- flywheel/models/device_storage_strategy_update.py +193 -0
- flywheel/models/dimse_project_input.py +36 -0
- flywheel/models/dimse_project_output.py +36 -0
- flywheel/models/dimse_service_input.py +36 -0
- flywheel/models/dimse_service_output.py +36 -0
- flywheel/models/download.py +249 -0
- flywheel/models/download_container_filter.py +167 -0
- flywheel/models/download_container_filter_definition.py +222 -0
- flywheel/models/download_filter.py +221 -0
- flywheel/models/download_filter_definition.py +195 -0
- flywheel/models/download_format.py +29 -0
- flywheel/models/download_input.py +25 -0
- flywheel/models/download_node.py +189 -0
- flywheel/models/download_strategy.py +31 -0
- flywheel/models/download_ticket.py +36 -0
- flywheel/models/download_ticket_stub.py +249 -0
- flywheel/models/download_ticket_with_summary.py +36 -0
- flywheel/models/e_signature.py +242 -0
- flywheel/models/edition.py +169 -0
- flywheel/models/egress_device.py +597 -0
- flywheel/models/egress_device_page.py +219 -0
- flywheel/models/egress_provider.py +408 -0
- flywheel/models/egress_provider_id.py +164 -0
- flywheel/models/exchange_storage.py +243 -0
- flywheel/models/executor_info.py +353 -0
- flywheel/models/export_templates.py +195 -0
- flywheel/models/features.py +1838 -0
- flywheel/models/field_change.py +271 -0
- flywheel/models/field_change_log_document.py +245 -0
- flywheel/models/field_type.py +37 -0
- flywheel/models/file.py +1139 -0
- flywheel/models/file_classification_delta.py +245 -0
- flywheel/models/file_container_type.py +34 -0
- flywheel/models/file_entry.py +740 -0
- flywheel/models/file_export_templates.py +272 -0
- flywheel/models/file_format.py +33 -0
- flywheel/models/file_gear_info.py +215 -0
- flywheel/models/file_group.py +29 -0
- flywheel/models/file_list_output.py +1115 -0
- flywheel/models/file_modify_input.py +191 -0
- flywheel/models/file_move_input.py +221 -0
- flywheel/models/file_node.py +1138 -0
- flywheel/models/file_node_min.py +321 -0
- flywheel/models/file_origin.py +283 -0
- flywheel/models/file_output.py +1135 -0
- flywheel/models/file_parents.py +297 -0
- flywheel/models/file_reference.py +221 -0
- flywheel/models/file_suggestion.py +241 -0
- flywheel/models/file_template_options.py +299 -0
- flywheel/models/file_upsert_input.py +612 -0
- flywheel/models/file_upsert_origin.py +36 -0
- flywheel/models/file_upsert_output.py +1154 -0
- flywheel/models/file_version.py +190 -0
- flywheel/models/file_version_copy_of.py +273 -0
- flywheel/models/file_version_output.py +325 -0
- flywheel/models/file_via.py +245 -0
- flywheel/models/file_zip_entry.py +25 -0
- flywheel/models/file_zip_info.py +25 -0
- flywheel/models/filter.py +350 -0
- flywheel/models/filter_input.py +218 -0
- flywheel/models/filter_values.py +195 -0
- flywheel/models/filter_view.py +28 -0
- flywheel/models/fixed_file_version_input.py +216 -0
- flywheel/models/fixed_input.py +299 -0
- flywheel/models/form_definition.py +163 -0
- flywheel/models/form_response_base.py +311 -0
- flywheel/models/form_response_create.py +193 -0
- flywheel/models/gcp_creds.py +397 -0
- flywheel/models/gcp_storage.py +298 -0
- flywheel/models/gear.py +619 -0
- flywheel/models/gear_category.py +32 -0
- flywheel/models/gear_config.py +138 -0
- flywheel/models/gear_context_input.py +164 -0
- flywheel/models/gear_context_lookup.py +25 -0
- flywheel/models/gear_context_lookup_item.py +36 -0
- flywheel/models/gear_context_value_output.py +272 -0
- flywheel/models/gear_context_value_output_unfound.py +164 -0
- flywheel/models/gear_custom.py +135 -0
- flywheel/models/gear_directive.py +135 -0
- flywheel/models/gear_doc.py +25 -0
- flywheel/models/gear_document.py +332 -0
- flywheel/models/gear_document_input.py +303 -0
- flywheel/models/gear_document_legacy_input.py +302 -0
- flywheel/models/gear_environment.py +135 -0
- flywheel/models/gear_exchange.py +221 -0
- flywheel/models/gear_file_input.py +192 -0
- flywheel/models/gear_id_output.py +170 -0
- flywheel/models/gear_info.py +251 -0
- flywheel/models/gear_input_item.py +231 -0
- flywheel/models/gear_inputs.py +140 -0
- flywheel/models/gear_invocation.py +138 -0
- flywheel/models/gear_key_input.py +191 -0
- flywheel/models/gear_manifest.py +624 -0
- flywheel/models/gear_mixin.py +218 -0
- flywheel/models/gear_node.py +355 -0
- flywheel/models/gear_output_configuration.py +164 -0
- flywheel/models/gear_permissions.py +191 -0
- flywheel/models/gear_permissions_input.py +163 -0
- flywheel/models/gear_permissions_type.py +29 -0
- flywheel/models/gear_return_ticket.py +25 -0
- flywheel/models/gear_rule.py +653 -0
- flywheel/models/gear_rule_condition.py +219 -0
- flywheel/models/gear_rule_condition_type.py +37 -0
- flywheel/models/gear_rule_input.py +517 -0
- flywheel/models/gear_rule_modify_input.py +492 -0
- flywheel/models/gear_rule_output.py +652 -0
- flywheel/models/gear_save_submission.py +221 -0
- flywheel/models/gear_series.py +298 -0
- flywheel/models/gear_series_update.py +163 -0
- flywheel/models/gear_suggestion_output.py +301 -0
- flywheel/models/gear_ticket.py +245 -0
- flywheel/models/gear_ticket_output.py +163 -0
- flywheel/models/google_auth_out.py +299 -0
- flywheel/models/graph_filter.py +329 -0
- flywheel/models/group.py +25 -0
- flywheel/models/group_by.py +163 -0
- flywheel/models/group_by_column.py +36 -0
- flywheel/models/group_container_output.py +33 -0
- flywheel/models/group_input.py +248 -0
- flywheel/models/group_metadata_input.py +36 -0
- flywheel/models/group_node.py +34 -0
- flywheel/models/group_output.py +471 -0
- flywheel/models/group_report.py +218 -0
- flywheel/models/group_role.py +163 -0
- flywheel/models/group_settings_output.py +249 -0
- flywheel/models/group_update.py +249 -0
- flywheel/models/header_feature.py +37 -0
- flywheel/models/hierarchy_export_templates.py +272 -0
- flywheel/models/http_validation_error.py +167 -0
- flywheel/models/info.py +218 -0
- flywheel/models/info_add_remove.py +36 -0
- flywheel/models/info_container_type.py +35 -0
- flywheel/models/info_replace.py +36 -0
- flywheel/models/info_update_input.py +36 -0
- flywheel/models/ingress_provider.py +299 -0
- flywheel/models/ingress_providers.py +272 -0
- flywheel/models/ingress_site_settings.py +305 -0
- flywheel/models/ingress_update_provider.py +218 -0
- flywheel/models/inline_response200.py +163 -0
- flywheel/models/inline_response2001.py +171 -0
- flywheel/models/inline_response2002.py +163 -0
- flywheel/models/inline_response2003.py +36 -0
- flywheel/models/inline_response2005.py +25 -0
- flywheel/models/input_filter.py +221 -0
- flywheel/models/input_job.py +521 -0
- flywheel/models/input_job_profile.py +275 -0
- flywheel/models/inserted_id.py +163 -0
- flywheel/models/job.py +841 -0
- flywheel/models/job_analysis_input.py +273 -0
- flywheel/models/job_ask.py +301 -0
- flywheel/models/job_ask_response.py +195 -0
- flywheel/models/job_ask_response_job.py +978 -0
- flywheel/models/job_ask_return.py +25 -0
- flywheel/models/job_ask_return_criteria.py +245 -0
- flywheel/models/job_ask_state.py +25 -0
- flywheel/models/job_ask_state_response.py +163 -0
- flywheel/models/job_complete.py +220 -0
- flywheel/models/job_completion_input.py +25 -0
- flywheel/models/job_completion_ticket.py +25 -0
- flywheel/models/job_config.py +135 -0
- flywheel/models/job_config_input.py +272 -0
- flywheel/models/job_config_inputs.py +25 -0
- flywheel/models/job_config_output.py +25 -0
- flywheel/models/job_container_detail.py +25 -0
- flywheel/models/job_destination.py +189 -0
- flywheel/models/job_detail.py +925 -0
- flywheel/models/job_detail_container.py +190 -0
- flywheel/models/job_detail_file_entry.py +194 -0
- flywheel/models/job_detail_group.py +190 -0
- flywheel/models/job_detail_parent_info.py +303 -0
- flywheel/models/job_executor_info.py +369 -0
- flywheel/models/job_file_input.py +247 -0
- flywheel/models/job_file_input_list_output.py +247 -0
- flywheel/models/job_file_object.py +435 -0
- flywheel/models/job_file_object_list_output.py +407 -0
- flywheel/models/job_gear_match.py +25 -0
- flywheel/models/job_inputs_array_item.py +305 -0
- flywheel/models/job_inputs_item.py +242 -0
- flywheel/models/job_inputs_object.py +138 -0
- flywheel/models/job_list_entry.py +25 -0
- flywheel/models/job_list_output.py +979 -0
- flywheel/models/job_list_output_config.py +220 -0
- flywheel/models/job_log.py +189 -0
- flywheel/models/job_log_column.py +40 -0
- flywheel/models/job_log_record.py +192 -0
- flywheel/models/job_modify.py +193 -0
- flywheel/models/job_origin.py +190 -0
- flywheel/models/job_output.py +1005 -0
- flywheel/models/job_output_config.py +247 -0
- flywheel/models/job_parents.py +297 -0
- flywheel/models/job_priority.py +31 -0
- flywheel/models/job_priority_update.py +192 -0
- flywheel/models/job_profile.py +427 -0
- flywheel/models/job_profile_input.py +25 -0
- flywheel/models/job_request.py +221 -0
- flywheel/models/job_request_item.py +246 -0
- flywheel/models/job_request_item_type.py +31 -0
- flywheel/models/job_request_target.py +270 -0
- flywheel/models/job_state.py +32 -0
- flywheel/models/job_state_counts.py +25 -0
- flywheel/models/job_stats_by_state.py +25 -0
- flywheel/models/job_ticket_output.py +165 -0
- flywheel/models/job_transition_times.py +253 -0
- flywheel/models/job_version_info.py +135 -0
- flywheel/models/jobs_by_state.py +272 -0
- flywheel/models/jobs_list.py +166 -0
- flywheel/models/join_origin_device.py +164 -0
- flywheel/models/join_origin_job.py +219 -0
- flywheel/models/join_origin_user.py +189 -0
- flywheel/models/join_origins.py +223 -0
- flywheel/models/join_type.py +28 -0
- flywheel/models/jupyterhub_workspace.py +163 -0
- flywheel/models/jupyterlab_server_modify.py +275 -0
- flywheel/models/jupyterlab_server_origin.py +25 -0
- flywheel/models/jupyterlab_server_output.py +25 -0
- flywheel/models/jupyterlab_server_response.py +415 -0
- flywheel/models/jupyterlab_server_update.py +25 -0
- flywheel/models/ldap_sync.py +36 -0
- flywheel/models/ldap_sync_config.py +163 -0
- flywheel/models/ldap_sync_input.py +36 -0
- flywheel/models/ldap_sync_status.py +250 -0
- flywheel/models/legacy_api_key_output.py +271 -0
- flywheel/models/legacy_input.py +244 -0
- flywheel/models/legacy_usage_report.py +309 -0
- flywheel/models/legacys_usage_project_entry.py +194 -0
- flywheel/models/libs_workflows_models_parent_type.py +33 -0
- flywheel/models/libs_workflows_models_task_status.py +32 -0
- flywheel/models/local_storage.py +217 -0
- flywheel/models/location.py +189 -0
- flywheel/models/locked.py +219 -0
- flywheel/models/master_subject_code_dob_input.py +279 -0
- flywheel/models/master_subject_code_input.py +281 -0
- flywheel/models/master_subject_code_output.py +166 -0
- flywheel/models/matched_acquisition_output.py +518 -0
- flywheel/models/mfa_channel.py +30 -0
- flywheel/models/mfa_settings.py +167 -0
- flywheel/models/mixins.py +794 -0
- flywheel/models/ml_set_filter.py +194 -0
- flywheel/models/ml_type.py +30 -0
- flywheel/models/modality.py +250 -0
- flywheel/models/modality_input.py +244 -0
- flywheel/models/modality_modify.py +218 -0
- flywheel/models/modality_output.py +271 -0
- flywheel/models/modified_result.py +190 -0
- flywheel/models/modify_user_input.py +466 -0
- flywheel/models/move_conflict.py +300 -0
- flywheel/models/note.py +391 -0
- flywheel/models/note_input.py +165 -0
- flywheel/models/optional_input_policy.py +30 -0
- flywheel/models/order.py +29 -0
- flywheel/models/organ_system.py +64 -0
- flywheel/models/origin.py +193 -0
- flywheel/models/origin_type.py +35 -0
- flywheel/models/orphaned_count.py +163 -0
- flywheel/models/output_user_page.py +219 -0
- flywheel/models/packfile_cleanup_output.py +166 -0
- flywheel/models/packfile_removed_output.py +189 -0
- flywheel/models/page.py +216 -0
- flywheel/models/page_generic_file_output.py +219 -0
- flywheel/models/page_generic_filter.py +219 -0
- flywheel/models/page_generic_form_response_output.py +219 -0
- flywheel/models/page_generic_protocol.py +244 -0
- flywheel/models/page_generic_reader_task_output.py +244 -0
- flywheel/models/page_generic_staffing_pool.py +244 -0
- flywheel/models/parsed_query_response.py +194 -0
- flywheel/models/permission_access_permission.py +25 -0
- flywheel/models/premade_jobs_batch_job_output.py +298 -0
- flywheel/models/premade_jobs_batch_job_output_inflated_jobs.py +299 -0
- flywheel/models/premade_jobs_batch_proposal.py +334 -0
- flywheel/models/premade_jobs_batch_proposal_detail.py +166 -0
- flywheel/models/premade_jobs_batch_proposal_input.py +166 -0
- flywheel/models/project.py +25 -0
- flywheel/models/project_acquisition_upsert_input.py +25 -0
- flywheel/models/project_acquisition_upsert_output.py +25 -0
- flywheel/models/project_aet.py +331 -0
- flywheel/models/project_aet_input.py +248 -0
- flywheel/models/project_catalog_list_output.py +25 -0
- flywheel/models/project_contact.py +194 -0
- flywheel/models/project_container_output.py +41 -0
- flywheel/models/project_copy_input.py +245 -0
- flywheel/models/project_copy_output.py +215 -0
- flywheel/models/project_counters.py +346 -0
- flywheel/models/project_hierarchy_input.py +278 -0
- flywheel/models/project_hierarchy_output.py +222 -0
- flywheel/models/project_hierarchy_upsert_input.py +25 -0
- flywheel/models/project_hierarchy_upsert_output.py +25 -0
- flywheel/models/project_input.py +384 -0
- flywheel/models/project_institution.py +194 -0
- flywheel/models/project_list_output.py +897 -0
- flywheel/models/project_locking_reason.py +32 -0
- flywheel/models/project_modify.py +413 -0
- flywheel/models/project_node.py +42 -0
- flywheel/models/project_output.py +899 -0
- flywheel/models/project_parents.py +168 -0
- flywheel/models/project_report.py +463 -0
- flywheel/models/project_report_list.py +167 -0
- flywheel/models/project_session_upsert_input.py +25 -0
- flywheel/models/project_session_upsert_output.py +25 -0
- flywheel/models/project_settings_input.py +333 -0
- flywheel/models/project_settings_output.py +333 -0
- flywheel/models/project_settings_sharing.py +327 -0
- flywheel/models/project_settings_sharing_input.py +334 -0
- flywheel/models/project_settings_workspaces.py +167 -0
- flywheel/models/project_settings_workspaces_input.py +167 -0
- flywheel/models/project_share_level.py +29 -0
- flywheel/models/project_sharing_settings_project_contact.py +25 -0
- flywheel/models/project_sharing_settings_project_counters.py +36 -0
- flywheel/models/project_sharing_settings_project_institution.py +25 -0
- flywheel/models/project_sharing_settings_project_settings_input.py +25 -0
- flywheel/models/project_sharing_settings_project_settings_output.py +25 -0
- flywheel/models/project_sharing_settings_project_settings_sharing.py +25 -0
- flywheel/models/project_sharing_settings_project_settings_sharing_input.py +25 -0
- flywheel/models/project_sharing_settings_project_stats.py +36 -0
- flywheel/models/project_stats.py +270 -0
- flywheel/models/project_subject_upsert_input.py +25 -0
- flywheel/models/project_subject_upsert_output.py +25 -0
- flywheel/models/project_template.py +195 -0
- flywheel/models/project_template_input.py +195 -0
- flywheel/models/project_template_list_input.py +166 -0
- flywheel/models/project_template_requirement.py +36 -0
- flywheel/models/project_template_session_template.py +36 -0
- flywheel/models/project_upsert_origin.py +36 -0
- flywheel/models/protocol.py +515 -0
- flywheel/models/protocol_e_signature_config.py +191 -0
- flywheel/models/protocol_input.py +354 -0
- flywheel/models/protocol_modify.py +277 -0
- flywheel/models/protocol_status.py +30 -0
- flywheel/models/provider.py +461 -0
- flywheel/models/provider_access_type.py +29 -0
- flywheel/models/provider_class.py +29 -0
- flywheel/models/provider_deletion_status.py +189 -0
- flywheel/models/provider_input.py +25 -0
- flywheel/models/provider_links.py +282 -0
- flywheel/models/provider_type.py +34 -0
- flywheel/models/providers.py +277 -0
- flywheel/models/reader_batch_create.py +463 -0
- flywheel/models/reader_task.py +725 -0
- flywheel/models/reader_task_config.py +189 -0
- flywheel/models/reader_task_create.py +543 -0
- flywheel/models/reader_task_modify.py +303 -0
- flywheel/models/reader_task_output.py +752 -0
- flywheel/models/reader_task_parent_details.py +322 -0
- flywheel/models/report_access_log_context.py +301 -0
- flywheel/models/report_access_log_context_entry.py +194 -0
- flywheel/models/report_access_log_context_file_entry.py +165 -0
- flywheel/models/report_access_log_entry.py +624 -0
- flywheel/models/report_access_log_origin.py +194 -0
- flywheel/models/report_availability_list.py +167 -0
- flywheel/models/report_daily_usage_entry.py +501 -0
- flywheel/models/report_demographics_grid.py +36 -0
- flywheel/models/report_ethnicity_grid.py +252 -0
- flywheel/models/report_gender_count.py +222 -0
- flywheel/models/report_group_report.py +217 -0
- flywheel/models/report_legacy_usage_entry.py +36 -0
- flywheel/models/report_legacy_usage_project_entry.py +36 -0
- flywheel/models/report_project.py +25 -0
- flywheel/models/report_site.py +192 -0
- flywheel/models/report_time_period.py +193 -0
- flywheel/models/report_usage.py +630 -0
- flywheel/models/report_usage_entry.py +25 -0
- flywheel/models/resolve_input.py +163 -0
- flywheel/models/resolve_output.py +194 -0
- flywheel/models/resolver_acquisition_node.py +36 -0
- flywheel/models/resolver_analysis_node.py +36 -0
- flywheel/models/resolver_file_node.py +36 -0
- flywheel/models/resolver_gear_node.py +36 -0
- flywheel/models/resolver_group_node.py +36 -0
- flywheel/models/resolver_input.py +25 -0
- flywheel/models/resolver_node.py +182 -0
- flywheel/models/resolver_output.py +25 -0
- flywheel/models/resolver_project_node.py +36 -0
- flywheel/models/resolver_session_node.py +36 -0
- flywheel/models/resolver_subject_node.py +36 -0
- flywheel/models/role_input.py +192 -0
- flywheel/models/role_output.py +273 -0
- flywheel/models/role_permission.py +194 -0
- flywheel/models/role_permission_output.py +189 -0
- flywheel/models/role_permission_update.py +163 -0
- flywheel/models/role_type.py +32 -0
- flywheel/models/role_update.py +194 -0
- flywheel/models/roles_backwards_compatible_role_assignment.py +36 -0
- flywheel/models/roles_group_role_pool_input.py +36 -0
- flywheel/models/roles_role.py +36 -0
- flywheel/models/roles_role_assignment.py +195 -0
- flywheel/models/roles_role_input.py +36 -0
- flywheel/models/rule.py +467 -0
- flywheel/models/rule_any.py +216 -0
- flywheel/models/s3_addressing_style.py +29 -0
- flywheel/models/s3_compat_storage.py +381 -0
- flywheel/models/save_search.py +298 -0
- flywheel/models/save_search_input.py +219 -0
- flywheel/models/save_search_output.py +301 -0
- flywheel/models/save_search_page.py +219 -0
- flywheel/models/save_search_parent.py +192 -0
- flywheel/models/save_search_update.py +194 -0
- flywheel/models/search_acquisition_response.py +252 -0
- flywheel/models/search_analysis_response.py +254 -0
- flywheel/models/search_collection_response.py +254 -0
- flywheel/models/search_file_response.py +312 -0
- flywheel/models/search_group_response.py +196 -0
- flywheel/models/search_parent_acquisition.py +47 -0
- flywheel/models/search_parent_analysis.py +47 -0
- flywheel/models/search_parent_collection.py +46 -0
- flywheel/models/search_parent_project.py +54 -0
- flywheel/models/search_parent_response.py +213 -0
- flywheel/models/search_parent_session.py +48 -0
- flywheel/models/search_parent_subject.py +48 -0
- flywheel/models/search_parse_error.py +252 -0
- flywheel/models/search_parse_search_query_result.py +36 -0
- flywheel/models/search_project_response.py +196 -0
- flywheel/models/search_query.py +337 -0
- flywheel/models/search_query_suggestions.py +36 -0
- flywheel/models/search_response.py +448 -0
- flywheel/models/search_return_type.py +33 -0
- flywheel/models/search_save_search.py +36 -0
- flywheel/models/search_save_search_input.py +36 -0
- flywheel/models/search_save_search_parent.py +36 -0
- flywheel/models/search_save_search_update.py +36 -0
- flywheel/models/search_session_response.py +252 -0
- flywheel/models/search_status.py +166 -0
- flywheel/models/search_structured_search_query.py +25 -0
- flywheel/models/search_subject_response.py +225 -0
- flywheel/models/search_suggestion.py +36 -0
- flywheel/models/select_item.py +190 -0
- flywheel/models/server_state.py +303 -0
- flywheel/models/service_aet.py +301 -0
- flywheel/models/service_aet_input.py +276 -0
- flywheel/models/session.py +25 -0
- flywheel/models/session_container_output.py +35 -0
- flywheel/models/session_copy_input.py +253 -0
- flywheel/models/session_embedded_subject.py +299 -0
- flywheel/models/session_input.py +431 -0
- flywheel/models/session_list_output.py +897 -0
- flywheel/models/session_metadata_input.py +36 -0
- flywheel/models/session_modify.py +464 -0
- flywheel/models/session_node.py +36 -0
- flywheel/models/session_output.py +897 -0
- flywheel/models/session_parents.py +220 -0
- flywheel/models/session_template_options.py +221 -0
- flywheel/models/session_template_recalc_output.py +165 -0
- flywheel/models/session_upsert_input.py +464 -0
- flywheel/models/session_upsert_output.py +243 -0
- flywheel/models/sharing_filter_options.py +345 -0
- flywheel/models/signed_fs_upload_output.py +189 -0
- flywheel/models/signed_url_cleanup_input.py +189 -0
- flywheel/models/signed_url_upload_input.py +190 -0
- flywheel/models/signed_url_upload_output.py +349 -0
- flywheel/models/site.py +623 -0
- flywheel/models/site_report.py +194 -0
- flywheel/models/site_settings.py +385 -0
- flywheel/models/sort.py +192 -0
- flywheel/models/stable_api_key_input.py +25 -0
- flywheel/models/staffing_pool.py +324 -0
- flywheel/models/staffing_pool_create.py +216 -0
- flywheel/models/staffing_pool_list.py +164 -0
- flywheel/models/staffing_pool_modify.py +218 -0
- flywheel/models/state.py +32 -0
- flywheel/models/static_compute.py +218 -0
- flywheel/models/status_transitions.py +245 -0
- flywheel/models/status_type.py +31 -0
- flywheel/models/status_value.py +31 -0
- flywheel/models/storage_strategy.py +30 -0
- flywheel/models/storage_strategy_config.py +194 -0
- flywheel/models/structured_query.py +165 -0
- flywheel/models/structured_query_suggestions.py +196 -0
- flywheel/models/structured_query_value_suggestion.py +247 -0
- flywheel/models/subject.py +34 -0
- flywheel/models/subject_container_output.py +36 -0
- flywheel/models/subject_copy_input.py +223 -0
- flywheel/models/subject_input.py +627 -0
- flywheel/models/subject_modify.py +684 -0
- flywheel/models/subject_node.py +37 -0
- flywheel/models/subject_output.py +1008 -0
- flywheel/models/subject_output_for_list.py +1005 -0
- flywheel/models/subject_parents.py +194 -0
- flywheel/models/subject_role_permission.py +194 -0
- flywheel/models/subject_state.py +30 -0
- flywheel/models/subject_template_options.py +191 -0
- flywheel/models/subject_upsert_input.py +573 -0
- flywheel/models/subject_upsert_output.py +216 -0
- flywheel/models/sync_user_input.py +322 -0
- flywheel/models/tag.py +165 -0
- flywheel/models/task_assign.py +194 -0
- flywheel/models/task_facet.py +29 -0
- flywheel/models/task_parent_ref.py +245 -0
- flywheel/models/task_parent_ref_input.py +219 -0
- flywheel/models/task_priority.py +31 -0
- flywheel/models/task_submission.py +189 -0
- flywheel/models/therapeutic_area.py +60 -0
- flywheel/models/transitions.py +272 -0
- flywheel/models/tree_container_request_spec.py +281 -0
- flywheel/models/tree_graph.py +142 -0
- flywheel/models/tree_graph_connection.py +244 -0
- flywheel/models/tree_graph_connections.py +142 -0
- flywheel/models/tree_graph_node.py +166 -0
- flywheel/models/tree_request.py +25 -0
- flywheel/models/tree_response_item.py +142 -0
- flywheel/models/type_str.py +31 -0
- flywheel/models/uid_check_input_acquisitions.py +244 -0
- flywheel/models/uid_check_input_sessions.py +244 -0
- flywheel/models/uid_check_output.py +191 -0
- flywheel/models/upload_complete_s3_multipart_input.py +25 -0
- flywheel/models/upload_complete_s3_multipart_output.py +25 -0
- flywheel/models/upload_signed_fs_file_upload_output.py +36 -0
- flywheel/models/upload_signed_upload_url_input.py +36 -0
- flywheel/models/upload_signed_upload_url_output.py +36 -0
- flywheel/models/upload_ticket_output.py +215 -0
- flywheel/models/upload_token_output.py +163 -0
- flywheel/models/upsert_result.py +31 -0
- flywheel/models/user.py +760 -0
- flywheel/models/user_api_key.py +220 -0
- flywheel/models/user_input.py +461 -0
- flywheel/models/user_jobs.py +219 -0
- flywheel/models/user_jobs_output.py +25 -0
- flywheel/models/user_output.py +36 -0
- flywheel/models/user_output_id.py +163 -0
- flywheel/models/user_preferences.py +135 -0
- flywheel/models/user_wechat.py +135 -0
- flywheel/models/validation_error.py +215 -0
- flywheel/models/validation_rule.py +190 -0
- flywheel/models/version.py +363 -0
- flywheel/models/version_output.py +25 -0
- flywheel/models/view_id_output.py +164 -0
- flywheel/models/view_output.py +440 -0
- flywheel/models/viewer_app.py +381 -0
- flywheel/models/viewer_app_input.py +382 -0
- flywheel/models/viewer_app_type.py +29 -0
- flywheel/models/virus_scan.py +166 -0
- flywheel/models/virus_scan_state.py +30 -0
- flywheel/models/work_in_progress_features.py +135 -0
- flywheel/models/zipfile_info.py +192 -0
- flywheel/models/zipfile_member_info.py +241 -0
- flywheel/partial_reader.py +50 -0
- flywheel/rest.py +352 -0
- flywheel/util.py +95 -0
- flywheel/view_builder.py +449 -0
- flywheel_sdk-21.2.0.dist-info/METADATA +42 -0
- flywheel_sdk-21.2.0.dist-info/RECORD +772 -0
- flywheel_sdk-21.2.0.dist-info/WHEEL +4 -0
- flywheel_sdk-21.2.0.dist-info/licenses/LICENSE.txt +18 -0
|
@@ -0,0 +1,193 @@
|
|
|
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.container_type import ContainerType # noqa: F401,E501
|
|
24
|
+
from flywheel.models.filter_values import FilterValues # noqa: F401,E501
|
|
25
|
+
|
|
26
|
+
class ContainerFilter(object):
|
|
27
|
+
|
|
28
|
+
swagger_types = {
|
|
29
|
+
'type': 'ContainerType',
|
|
30
|
+
'tags': 'FilterValues'
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
attribute_map = {
|
|
34
|
+
'type': 'type',
|
|
35
|
+
'tags': 'tags'
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
rattribute_map = {
|
|
39
|
+
'type': 'type',
|
|
40
|
+
'tags': 'tags'
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
def __init__(self, type=None, tags=None): # noqa: E501
|
|
44
|
+
"""ContainerFilter - a model defined in Swagger"""
|
|
45
|
+
super(ContainerFilter, self).__init__()
|
|
46
|
+
|
|
47
|
+
self._type = None
|
|
48
|
+
self._tags = None
|
|
49
|
+
self.discriminator = None
|
|
50
|
+
self.alt_discriminator = None
|
|
51
|
+
|
|
52
|
+
self.type = type
|
|
53
|
+
self.tags = tags
|
|
54
|
+
|
|
55
|
+
@property
|
|
56
|
+
def type(self):
|
|
57
|
+
"""Gets the type of this ContainerFilter.
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
:return: The type of this ContainerFilter.
|
|
61
|
+
:rtype: ContainerType
|
|
62
|
+
"""
|
|
63
|
+
return self._type
|
|
64
|
+
|
|
65
|
+
@type.setter
|
|
66
|
+
def type(self, type):
|
|
67
|
+
"""Sets the type of this ContainerFilter.
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
:param type: The type of this ContainerFilter. # noqa: E501
|
|
71
|
+
:type: ContainerType
|
|
72
|
+
"""
|
|
73
|
+
|
|
74
|
+
self._type = type
|
|
75
|
+
|
|
76
|
+
@property
|
|
77
|
+
def tags(self):
|
|
78
|
+
"""Gets the tags of this ContainerFilter.
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
:return: The tags of this ContainerFilter.
|
|
82
|
+
:rtype: FilterValues
|
|
83
|
+
"""
|
|
84
|
+
return self._tags
|
|
85
|
+
|
|
86
|
+
@tags.setter
|
|
87
|
+
def tags(self, tags):
|
|
88
|
+
"""Sets the tags of this ContainerFilter.
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
:param tags: The tags of this ContainerFilter. # noqa: E501
|
|
92
|
+
:type: FilterValues
|
|
93
|
+
"""
|
|
94
|
+
|
|
95
|
+
self._tags = tags
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
@staticmethod
|
|
99
|
+
def positional_to_model(value):
|
|
100
|
+
"""Converts a positional argument to a model value"""
|
|
101
|
+
return value
|
|
102
|
+
|
|
103
|
+
def return_value(self):
|
|
104
|
+
"""Unwraps return value from model"""
|
|
105
|
+
return self
|
|
106
|
+
|
|
107
|
+
def to_dict(self):
|
|
108
|
+
"""Returns the model properties as a dict"""
|
|
109
|
+
result = {}
|
|
110
|
+
|
|
111
|
+
for attr, _ in six.iteritems(self.swagger_types):
|
|
112
|
+
value = getattr(self, attr)
|
|
113
|
+
if isinstance(value, list):
|
|
114
|
+
result[attr] = list(map(
|
|
115
|
+
lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
|
|
116
|
+
value
|
|
117
|
+
))
|
|
118
|
+
elif hasattr(value, "to_dict"):
|
|
119
|
+
result[attr] = value.to_dict()
|
|
120
|
+
elif isinstance(value, dict):
|
|
121
|
+
result[attr] = dict(map(
|
|
122
|
+
lambda item: (item[0], item[1].to_dict())
|
|
123
|
+
if hasattr(item[1], "to_dict") else item,
|
|
124
|
+
value.items()
|
|
125
|
+
))
|
|
126
|
+
else:
|
|
127
|
+
result[attr] = value
|
|
128
|
+
|
|
129
|
+
return result
|
|
130
|
+
|
|
131
|
+
def to_str(self):
|
|
132
|
+
"""Returns the string representation of the model"""
|
|
133
|
+
return pprint.pformat(self.to_dict())
|
|
134
|
+
|
|
135
|
+
def __repr__(self):
|
|
136
|
+
"""For `print` and `pprint`"""
|
|
137
|
+
return self.to_str()
|
|
138
|
+
|
|
139
|
+
def __eq__(self, other):
|
|
140
|
+
"""Returns true if both objects are equal"""
|
|
141
|
+
if not isinstance(other, ContainerFilter):
|
|
142
|
+
return False
|
|
143
|
+
|
|
144
|
+
return self.__dict__ == other.__dict__
|
|
145
|
+
|
|
146
|
+
def __ne__(self, other):
|
|
147
|
+
"""Returns true if both objects are not equal"""
|
|
148
|
+
return not self == other
|
|
149
|
+
|
|
150
|
+
# Container emulation
|
|
151
|
+
def __getitem__(self, key):
|
|
152
|
+
"""Returns the value of key"""
|
|
153
|
+
key = self._map_key(key)
|
|
154
|
+
return getattr(self, key)
|
|
155
|
+
|
|
156
|
+
def __setitem__(self, key, value):
|
|
157
|
+
"""Sets the value of key"""
|
|
158
|
+
key = self._map_key(key)
|
|
159
|
+
setattr(self, key, value)
|
|
160
|
+
|
|
161
|
+
def __contains__(self, key):
|
|
162
|
+
"""Checks if the given value is a key in this object"""
|
|
163
|
+
key = self._map_key(key, raise_on_error=False)
|
|
164
|
+
return key is not None
|
|
165
|
+
|
|
166
|
+
def keys(self):
|
|
167
|
+
"""Returns the list of json properties in the object"""
|
|
168
|
+
return self.__class__.rattribute_map.keys()
|
|
169
|
+
|
|
170
|
+
def values(self):
|
|
171
|
+
"""Returns the list of values in the object"""
|
|
172
|
+
for key in self.__class__.attribute_map.keys():
|
|
173
|
+
yield getattr(self, key)
|
|
174
|
+
|
|
175
|
+
def items(self):
|
|
176
|
+
"""Returns the list of json property to value mapping"""
|
|
177
|
+
for key, prop in self.__class__.rattribute_map.items():
|
|
178
|
+
yield key, getattr(self, prop)
|
|
179
|
+
|
|
180
|
+
def get(self, key, default=None):
|
|
181
|
+
"""Get the value of the provided json property, or default"""
|
|
182
|
+
key = self._map_key(key, raise_on_error=False)
|
|
183
|
+
if key:
|
|
184
|
+
return getattr(self, key, default)
|
|
185
|
+
return default
|
|
186
|
+
|
|
187
|
+
def _map_key(self, key, raise_on_error=True):
|
|
188
|
+
result = self.__class__.rattribute_map.get(key)
|
|
189
|
+
if result is None:
|
|
190
|
+
if raise_on_error:
|
|
191
|
+
raise AttributeError('Invalid attribute name: {}'.format(key))
|
|
192
|
+
return None
|
|
193
|
+
return '_' + result
|
|
@@ -0,0 +1,521 @@
|
|
|
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.column import Column # noqa: F401,E501
|
|
24
|
+
from flywheel.models.data_strategy import DataStrategy # noqa: F401,E501
|
|
25
|
+
from flywheel.models.data_view_file_spec import DataViewFileSpec # noqa: F401,E501
|
|
26
|
+
from flywheel.models.group_by import GroupBy # noqa: F401,E501
|
|
27
|
+
from flywheel.models.origin import Origin # noqa: F401,E501
|
|
28
|
+
|
|
29
|
+
class ContainerIdViewInput(object):
|
|
30
|
+
|
|
31
|
+
swagger_types = {
|
|
32
|
+
'parent': 'str',
|
|
33
|
+
'label': 'str',
|
|
34
|
+
'description': 'str',
|
|
35
|
+
'columns': 'list[Column]',
|
|
36
|
+
'file_spec': 'DataViewFileSpec',
|
|
37
|
+
'filter': 'str',
|
|
38
|
+
'group_by': 'GroupBy',
|
|
39
|
+
'include_ids': 'bool',
|
|
40
|
+
'include_labels': 'bool',
|
|
41
|
+
'error_column': 'bool',
|
|
42
|
+
'missing_data_strategy': 'DataStrategy',
|
|
43
|
+
'sort': 'bool',
|
|
44
|
+
'id': 'str',
|
|
45
|
+
'origin': 'Origin'
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
attribute_map = {
|
|
49
|
+
'parent': 'parent',
|
|
50
|
+
'label': 'label',
|
|
51
|
+
'description': 'description',
|
|
52
|
+
'columns': 'columns',
|
|
53
|
+
'file_spec': 'fileSpec',
|
|
54
|
+
'filter': 'filter',
|
|
55
|
+
'group_by': 'groupBy',
|
|
56
|
+
'include_ids': 'includeIds',
|
|
57
|
+
'include_labels': 'includeLabels',
|
|
58
|
+
'error_column': 'errorColumn',
|
|
59
|
+
'missing_data_strategy': 'missingDataStrategy',
|
|
60
|
+
'sort': 'sort',
|
|
61
|
+
'id': '_id',
|
|
62
|
+
'origin': 'origin'
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
rattribute_map = {
|
|
66
|
+
'parent': 'parent',
|
|
67
|
+
'label': 'label',
|
|
68
|
+
'description': 'description',
|
|
69
|
+
'columns': 'columns',
|
|
70
|
+
'fileSpec': 'file_spec',
|
|
71
|
+
'filter': 'filter',
|
|
72
|
+
'groupBy': 'group_by',
|
|
73
|
+
'includeIds': 'include_ids',
|
|
74
|
+
'includeLabels': 'include_labels',
|
|
75
|
+
'errorColumn': 'error_column',
|
|
76
|
+
'missingDataStrategy': 'missing_data_strategy',
|
|
77
|
+
'sort': 'sort',
|
|
78
|
+
'_id': 'id',
|
|
79
|
+
'origin': 'origin'
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
def __init__(self, parent=None, label=None, description=None, columns=None, file_spec=None, filter=None, group_by=None, include_ids=True, include_labels=True, error_column=None, missing_data_strategy=None, sort=False, id=None, origin=None): # noqa: E501
|
|
83
|
+
"""ContainerIdViewInput - a model defined in Swagger"""
|
|
84
|
+
super(ContainerIdViewInput, self).__init__()
|
|
85
|
+
|
|
86
|
+
self._parent = None
|
|
87
|
+
self._label = None
|
|
88
|
+
self._description = None
|
|
89
|
+
self._columns = None
|
|
90
|
+
self._file_spec = None
|
|
91
|
+
self._filter = None
|
|
92
|
+
self._group_by = None
|
|
93
|
+
self._include_ids = None
|
|
94
|
+
self._include_labels = None
|
|
95
|
+
self._error_column = None
|
|
96
|
+
self._missing_data_strategy = None
|
|
97
|
+
self._sort = None
|
|
98
|
+
self._id = None
|
|
99
|
+
self._origin = None
|
|
100
|
+
self.discriminator = None
|
|
101
|
+
self.alt_discriminator = None
|
|
102
|
+
|
|
103
|
+
if parent is not None:
|
|
104
|
+
self.parent = parent
|
|
105
|
+
self.label = label
|
|
106
|
+
if description is not None:
|
|
107
|
+
self.description = description
|
|
108
|
+
if columns is not None:
|
|
109
|
+
self.columns = columns
|
|
110
|
+
if file_spec is not None:
|
|
111
|
+
self.file_spec = file_spec
|
|
112
|
+
if filter is not None:
|
|
113
|
+
self.filter = filter
|
|
114
|
+
if group_by is not None:
|
|
115
|
+
self.group_by = group_by
|
|
116
|
+
if include_ids is not None:
|
|
117
|
+
self.include_ids = include_ids
|
|
118
|
+
if include_labels is not None:
|
|
119
|
+
self.include_labels = include_labels
|
|
120
|
+
if error_column is not None:
|
|
121
|
+
self.error_column = error_column
|
|
122
|
+
if missing_data_strategy is not None:
|
|
123
|
+
self.missing_data_strategy = missing_data_strategy
|
|
124
|
+
if sort is not None:
|
|
125
|
+
self.sort = sort
|
|
126
|
+
if id is not None:
|
|
127
|
+
self.id = id
|
|
128
|
+
if origin is not None:
|
|
129
|
+
self.origin = origin
|
|
130
|
+
|
|
131
|
+
@property
|
|
132
|
+
def parent(self):
|
|
133
|
+
"""Gets the parent of this ContainerIdViewInput.
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
:return: The parent of this ContainerIdViewInput.
|
|
137
|
+
:rtype: str
|
|
138
|
+
"""
|
|
139
|
+
return self._parent
|
|
140
|
+
|
|
141
|
+
@parent.setter
|
|
142
|
+
def parent(self, parent):
|
|
143
|
+
"""Sets the parent of this ContainerIdViewInput.
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
:param parent: The parent of this ContainerIdViewInput. # noqa: E501
|
|
147
|
+
:type: str
|
|
148
|
+
"""
|
|
149
|
+
|
|
150
|
+
self._parent = parent
|
|
151
|
+
|
|
152
|
+
@property
|
|
153
|
+
def label(self):
|
|
154
|
+
"""Gets the label of this ContainerIdViewInput.
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
:return: The label of this ContainerIdViewInput.
|
|
158
|
+
:rtype: str
|
|
159
|
+
"""
|
|
160
|
+
return self._label
|
|
161
|
+
|
|
162
|
+
@label.setter
|
|
163
|
+
def label(self, label):
|
|
164
|
+
"""Sets the label of this ContainerIdViewInput.
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
:param label: The label of this ContainerIdViewInput. # noqa: E501
|
|
168
|
+
:type: str
|
|
169
|
+
"""
|
|
170
|
+
|
|
171
|
+
self._label = label
|
|
172
|
+
|
|
173
|
+
@property
|
|
174
|
+
def description(self):
|
|
175
|
+
"""Gets the description of this ContainerIdViewInput.
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
:return: The description of this ContainerIdViewInput.
|
|
179
|
+
:rtype: str
|
|
180
|
+
"""
|
|
181
|
+
return self._description
|
|
182
|
+
|
|
183
|
+
@description.setter
|
|
184
|
+
def description(self, description):
|
|
185
|
+
"""Sets the description of this ContainerIdViewInput.
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
:param description: The description of this ContainerIdViewInput. # noqa: E501
|
|
189
|
+
:type: str
|
|
190
|
+
"""
|
|
191
|
+
|
|
192
|
+
self._description = description
|
|
193
|
+
|
|
194
|
+
@property
|
|
195
|
+
def columns(self):
|
|
196
|
+
"""Gets the columns of this ContainerIdViewInput.
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
:return: The columns of this ContainerIdViewInput.
|
|
200
|
+
:rtype: list[Column]
|
|
201
|
+
"""
|
|
202
|
+
return self._columns
|
|
203
|
+
|
|
204
|
+
@columns.setter
|
|
205
|
+
def columns(self, columns):
|
|
206
|
+
"""Sets the columns of this ContainerIdViewInput.
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
:param columns: The columns of this ContainerIdViewInput. # noqa: E501
|
|
210
|
+
:type: list[Column]
|
|
211
|
+
"""
|
|
212
|
+
|
|
213
|
+
self._columns = columns
|
|
214
|
+
|
|
215
|
+
@property
|
|
216
|
+
def file_spec(self):
|
|
217
|
+
"""Gets the file_spec of this ContainerIdViewInput.
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
:return: The file_spec of this ContainerIdViewInput.
|
|
221
|
+
:rtype: DataViewFileSpec
|
|
222
|
+
"""
|
|
223
|
+
return self._file_spec
|
|
224
|
+
|
|
225
|
+
@file_spec.setter
|
|
226
|
+
def file_spec(self, file_spec):
|
|
227
|
+
"""Sets the file_spec of this ContainerIdViewInput.
|
|
228
|
+
|
|
229
|
+
|
|
230
|
+
:param file_spec: The file_spec of this ContainerIdViewInput. # noqa: E501
|
|
231
|
+
:type: DataViewFileSpec
|
|
232
|
+
"""
|
|
233
|
+
|
|
234
|
+
self._file_spec = file_spec
|
|
235
|
+
|
|
236
|
+
@property
|
|
237
|
+
def filter(self):
|
|
238
|
+
"""Gets the filter of this ContainerIdViewInput.
|
|
239
|
+
|
|
240
|
+
|
|
241
|
+
:return: The filter of this ContainerIdViewInput.
|
|
242
|
+
:rtype: str
|
|
243
|
+
"""
|
|
244
|
+
return self._filter
|
|
245
|
+
|
|
246
|
+
@filter.setter
|
|
247
|
+
def filter(self, filter):
|
|
248
|
+
"""Sets the filter of this ContainerIdViewInput.
|
|
249
|
+
|
|
250
|
+
|
|
251
|
+
:param filter: The filter of this ContainerIdViewInput. # noqa: E501
|
|
252
|
+
:type: str
|
|
253
|
+
"""
|
|
254
|
+
|
|
255
|
+
self._filter = filter
|
|
256
|
+
|
|
257
|
+
@property
|
|
258
|
+
def group_by(self):
|
|
259
|
+
"""Gets the group_by of this ContainerIdViewInput.
|
|
260
|
+
|
|
261
|
+
|
|
262
|
+
:return: The group_by of this ContainerIdViewInput.
|
|
263
|
+
:rtype: GroupBy
|
|
264
|
+
"""
|
|
265
|
+
return self._group_by
|
|
266
|
+
|
|
267
|
+
@group_by.setter
|
|
268
|
+
def group_by(self, group_by):
|
|
269
|
+
"""Sets the group_by of this ContainerIdViewInput.
|
|
270
|
+
|
|
271
|
+
|
|
272
|
+
:param group_by: The group_by of this ContainerIdViewInput. # noqa: E501
|
|
273
|
+
:type: GroupBy
|
|
274
|
+
"""
|
|
275
|
+
|
|
276
|
+
self._group_by = group_by
|
|
277
|
+
|
|
278
|
+
@property
|
|
279
|
+
def include_ids(self):
|
|
280
|
+
"""Gets the include_ids of this ContainerIdViewInput.
|
|
281
|
+
|
|
282
|
+
|
|
283
|
+
:return: The include_ids of this ContainerIdViewInput.
|
|
284
|
+
:rtype: bool
|
|
285
|
+
"""
|
|
286
|
+
return self._include_ids
|
|
287
|
+
|
|
288
|
+
@include_ids.setter
|
|
289
|
+
def include_ids(self, include_ids):
|
|
290
|
+
"""Sets the include_ids of this ContainerIdViewInput.
|
|
291
|
+
|
|
292
|
+
|
|
293
|
+
:param include_ids: The include_ids of this ContainerIdViewInput. # noqa: E501
|
|
294
|
+
:type: bool
|
|
295
|
+
"""
|
|
296
|
+
|
|
297
|
+
self._include_ids = include_ids
|
|
298
|
+
|
|
299
|
+
@property
|
|
300
|
+
def include_labels(self):
|
|
301
|
+
"""Gets the include_labels of this ContainerIdViewInput.
|
|
302
|
+
|
|
303
|
+
|
|
304
|
+
:return: The include_labels of this ContainerIdViewInput.
|
|
305
|
+
:rtype: bool
|
|
306
|
+
"""
|
|
307
|
+
return self._include_labels
|
|
308
|
+
|
|
309
|
+
@include_labels.setter
|
|
310
|
+
def include_labels(self, include_labels):
|
|
311
|
+
"""Sets the include_labels of this ContainerIdViewInput.
|
|
312
|
+
|
|
313
|
+
|
|
314
|
+
:param include_labels: The include_labels of this ContainerIdViewInput. # noqa: E501
|
|
315
|
+
:type: bool
|
|
316
|
+
"""
|
|
317
|
+
|
|
318
|
+
self._include_labels = include_labels
|
|
319
|
+
|
|
320
|
+
@property
|
|
321
|
+
def error_column(self):
|
|
322
|
+
"""Gets the error_column of this ContainerIdViewInput.
|
|
323
|
+
|
|
324
|
+
|
|
325
|
+
:return: The error_column of this ContainerIdViewInput.
|
|
326
|
+
:rtype: bool
|
|
327
|
+
"""
|
|
328
|
+
return self._error_column
|
|
329
|
+
|
|
330
|
+
@error_column.setter
|
|
331
|
+
def error_column(self, error_column):
|
|
332
|
+
"""Sets the error_column of this ContainerIdViewInput.
|
|
333
|
+
|
|
334
|
+
|
|
335
|
+
:param error_column: The error_column of this ContainerIdViewInput. # noqa: E501
|
|
336
|
+
:type: bool
|
|
337
|
+
"""
|
|
338
|
+
|
|
339
|
+
self._error_column = error_column
|
|
340
|
+
|
|
341
|
+
@property
|
|
342
|
+
def missing_data_strategy(self):
|
|
343
|
+
"""Gets the missing_data_strategy of this ContainerIdViewInput.
|
|
344
|
+
|
|
345
|
+
|
|
346
|
+
:return: The missing_data_strategy of this ContainerIdViewInput.
|
|
347
|
+
:rtype: DataStrategy
|
|
348
|
+
"""
|
|
349
|
+
return self._missing_data_strategy
|
|
350
|
+
|
|
351
|
+
@missing_data_strategy.setter
|
|
352
|
+
def missing_data_strategy(self, missing_data_strategy):
|
|
353
|
+
"""Sets the missing_data_strategy of this ContainerIdViewInput.
|
|
354
|
+
|
|
355
|
+
|
|
356
|
+
:param missing_data_strategy: The missing_data_strategy of this ContainerIdViewInput. # noqa: E501
|
|
357
|
+
:type: DataStrategy
|
|
358
|
+
"""
|
|
359
|
+
|
|
360
|
+
self._missing_data_strategy = missing_data_strategy
|
|
361
|
+
|
|
362
|
+
@property
|
|
363
|
+
def sort(self):
|
|
364
|
+
"""Gets the sort of this ContainerIdViewInput.
|
|
365
|
+
|
|
366
|
+
|
|
367
|
+
:return: The sort of this ContainerIdViewInput.
|
|
368
|
+
:rtype: bool
|
|
369
|
+
"""
|
|
370
|
+
return self._sort
|
|
371
|
+
|
|
372
|
+
@sort.setter
|
|
373
|
+
def sort(self, sort):
|
|
374
|
+
"""Sets the sort of this ContainerIdViewInput.
|
|
375
|
+
|
|
376
|
+
|
|
377
|
+
:param sort: The sort of this ContainerIdViewInput. # noqa: E501
|
|
378
|
+
:type: bool
|
|
379
|
+
"""
|
|
380
|
+
|
|
381
|
+
self._sort = sort
|
|
382
|
+
|
|
383
|
+
@property
|
|
384
|
+
def id(self):
|
|
385
|
+
"""Gets the id of this ContainerIdViewInput.
|
|
386
|
+
|
|
387
|
+
|
|
388
|
+
:return: The id of this ContainerIdViewInput.
|
|
389
|
+
:rtype: str
|
|
390
|
+
"""
|
|
391
|
+
return self._id
|
|
392
|
+
|
|
393
|
+
@id.setter
|
|
394
|
+
def id(self, id):
|
|
395
|
+
"""Sets the id of this ContainerIdViewInput.
|
|
396
|
+
|
|
397
|
+
|
|
398
|
+
:param id: The id of this ContainerIdViewInput. # noqa: E501
|
|
399
|
+
:type: str
|
|
400
|
+
"""
|
|
401
|
+
|
|
402
|
+
self._id = id
|
|
403
|
+
|
|
404
|
+
@property
|
|
405
|
+
def origin(self):
|
|
406
|
+
"""Gets the origin of this ContainerIdViewInput.
|
|
407
|
+
|
|
408
|
+
|
|
409
|
+
:return: The origin of this ContainerIdViewInput.
|
|
410
|
+
:rtype: Origin
|
|
411
|
+
"""
|
|
412
|
+
return self._origin
|
|
413
|
+
|
|
414
|
+
@origin.setter
|
|
415
|
+
def origin(self, origin):
|
|
416
|
+
"""Sets the origin of this ContainerIdViewInput.
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
:param origin: The origin of this ContainerIdViewInput. # noqa: E501
|
|
420
|
+
:type: Origin
|
|
421
|
+
"""
|
|
422
|
+
|
|
423
|
+
self._origin = origin
|
|
424
|
+
|
|
425
|
+
|
|
426
|
+
@staticmethod
|
|
427
|
+
def positional_to_model(value):
|
|
428
|
+
"""Converts a positional argument to a model value"""
|
|
429
|
+
return value
|
|
430
|
+
|
|
431
|
+
def return_value(self):
|
|
432
|
+
"""Unwraps return value from model"""
|
|
433
|
+
return self
|
|
434
|
+
|
|
435
|
+
def to_dict(self):
|
|
436
|
+
"""Returns the model properties as a dict"""
|
|
437
|
+
result = {}
|
|
438
|
+
|
|
439
|
+
for attr, _ in six.iteritems(self.swagger_types):
|
|
440
|
+
value = getattr(self, attr)
|
|
441
|
+
if isinstance(value, list):
|
|
442
|
+
result[attr] = list(map(
|
|
443
|
+
lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
|
|
444
|
+
value
|
|
445
|
+
))
|
|
446
|
+
elif hasattr(value, "to_dict"):
|
|
447
|
+
result[attr] = value.to_dict()
|
|
448
|
+
elif isinstance(value, dict):
|
|
449
|
+
result[attr] = dict(map(
|
|
450
|
+
lambda item: (item[0], item[1].to_dict())
|
|
451
|
+
if hasattr(item[1], "to_dict") else item,
|
|
452
|
+
value.items()
|
|
453
|
+
))
|
|
454
|
+
else:
|
|
455
|
+
result[attr] = value
|
|
456
|
+
|
|
457
|
+
return result
|
|
458
|
+
|
|
459
|
+
def to_str(self):
|
|
460
|
+
"""Returns the string representation of the model"""
|
|
461
|
+
return pprint.pformat(self.to_dict())
|
|
462
|
+
|
|
463
|
+
def __repr__(self):
|
|
464
|
+
"""For `print` and `pprint`"""
|
|
465
|
+
return self.to_str()
|
|
466
|
+
|
|
467
|
+
def __eq__(self, other):
|
|
468
|
+
"""Returns true if both objects are equal"""
|
|
469
|
+
if not isinstance(other, ContainerIdViewInput):
|
|
470
|
+
return False
|
|
471
|
+
|
|
472
|
+
return self.__dict__ == other.__dict__
|
|
473
|
+
|
|
474
|
+
def __ne__(self, other):
|
|
475
|
+
"""Returns true if both objects are not equal"""
|
|
476
|
+
return not self == other
|
|
477
|
+
|
|
478
|
+
# Container emulation
|
|
479
|
+
def __getitem__(self, key):
|
|
480
|
+
"""Returns the value of key"""
|
|
481
|
+
key = self._map_key(key)
|
|
482
|
+
return getattr(self, key)
|
|
483
|
+
|
|
484
|
+
def __setitem__(self, key, value):
|
|
485
|
+
"""Sets the value of key"""
|
|
486
|
+
key = self._map_key(key)
|
|
487
|
+
setattr(self, key, value)
|
|
488
|
+
|
|
489
|
+
def __contains__(self, key):
|
|
490
|
+
"""Checks if the given value is a key in this object"""
|
|
491
|
+
key = self._map_key(key, raise_on_error=False)
|
|
492
|
+
return key is not None
|
|
493
|
+
|
|
494
|
+
def keys(self):
|
|
495
|
+
"""Returns the list of json properties in the object"""
|
|
496
|
+
return self.__class__.rattribute_map.keys()
|
|
497
|
+
|
|
498
|
+
def values(self):
|
|
499
|
+
"""Returns the list of values in the object"""
|
|
500
|
+
for key in self.__class__.attribute_map.keys():
|
|
501
|
+
yield getattr(self, key)
|
|
502
|
+
|
|
503
|
+
def items(self):
|
|
504
|
+
"""Returns the list of json property to value mapping"""
|
|
505
|
+
for key, prop in self.__class__.rattribute_map.items():
|
|
506
|
+
yield key, getattr(self, prop)
|
|
507
|
+
|
|
508
|
+
def get(self, key, default=None):
|
|
509
|
+
"""Get the value of the provided json property, or default"""
|
|
510
|
+
key = self._map_key(key, raise_on_error=False)
|
|
511
|
+
if key:
|
|
512
|
+
return getattr(self, key, default)
|
|
513
|
+
return default
|
|
514
|
+
|
|
515
|
+
def _map_key(self, key, raise_on_error=True):
|
|
516
|
+
result = self.__class__.rattribute_map.get(key)
|
|
517
|
+
if result is None:
|
|
518
|
+
if raise_on_error:
|
|
519
|
+
raise AttributeError('Invalid attribute name: {}'.format(key))
|
|
520
|
+
return None
|
|
521
|
+
return '_' + result
|