cosmotech-api 3.1.0__py3-none-any.whl → 3.1.1__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.

Potentially problematic release.


This version of cosmotech-api might be problematic. Click here for more details.

Files changed (243) hide show
  1. cosmotech_api/__init__.py +1 -1
  2. cosmotech_api/api/connector_api.py +1 -1
  3. cosmotech_api/api/dataset_api.py +1 -1
  4. cosmotech_api/api/organization_api.py +1 -1
  5. cosmotech_api/api/run_api.py +1 -1
  6. cosmotech_api/api/runner_api.py +1 -1
  7. cosmotech_api/api/scenario_api.py +1 -1
  8. cosmotech_api/api/scenariorun_api.py +1 -1
  9. cosmotech_api/api/scenariorunresult_api.py +1 -1
  10. cosmotech_api/api/solution_api.py +1 -1
  11. cosmotech_api/api/twingraph_api.py +1 -1
  12. cosmotech_api/api/validator_api.py +1 -1
  13. cosmotech_api/api/workspace_api.py +1 -1
  14. cosmotech_api/api_client.py +1 -1
  15. cosmotech_api/api_response.py +21 -0
  16. cosmotech_api/apis/__init__.py +2 -0
  17. cosmotech_api/configuration.py +2 -2
  18. cosmotech_api/exceptions.py +1 -1
  19. cosmotech_api/model/component_role_permissions.py +1 -1
  20. cosmotech_api/model/connector.py +1 -1
  21. cosmotech_api/model/connector_parameter.py +1 -1
  22. cosmotech_api/model/connector_parameter_group.py +1 -1
  23. cosmotech_api/model/container_resource_size_info.py +1 -1
  24. cosmotech_api/model/container_resource_sizing.py +1 -1
  25. cosmotech_api/model/dataset.py +9 -7
  26. cosmotech_api/model/dataset_access_control.py +1 -1
  27. cosmotech_api/model/dataset_compatibility.py +1 -1
  28. cosmotech_api/model/dataset_connector.py +1 -1
  29. cosmotech_api/model/dataset_copy_parameters.py +1 -1
  30. cosmotech_api/model/dataset_role.py +1 -1
  31. cosmotech_api/model/dataset_search.py +1 -1
  32. cosmotech_api/model/dataset_security.py +1 -1
  33. cosmotech_api/model/dataset_source_type.py +6 -5
  34. cosmotech_api/model/dataset_twin_graph_hash.py +1 -1
  35. cosmotech_api/model/dataset_twin_graph_info.py +1 -1
  36. cosmotech_api/model/dataset_twin_graph_query.py +1 -1
  37. cosmotech_api/model/delete_historical_data.py +1 -1
  38. cosmotech_api/model/file_upload_metadata.py +1 -1
  39. cosmotech_api/model/file_upload_validation.py +1 -1
  40. cosmotech_api/model/graph_properties.py +1 -1
  41. cosmotech_api/model/organization.py +1 -1
  42. cosmotech_api/model/organization_access_control.py +1 -1
  43. cosmotech_api/model/organization_role.py +1 -1
  44. cosmotech_api/model/organization_security.py +1 -1
  45. cosmotech_api/model/organization_service.py +1 -1
  46. cosmotech_api/model/organization_services.py +1 -1
  47. cosmotech_api/model/resource_size_info.py +1 -1
  48. cosmotech_api/model/run.py +1 -1
  49. cosmotech_api/model/run_container.py +1 -1
  50. cosmotech_api/model/run_container_artifact.py +1 -1
  51. cosmotech_api/model/run_container_logs.py +1 -1
  52. cosmotech_api/model/run_logs.py +1 -1
  53. cosmotech_api/model/run_resource_requested.py +1 -1
  54. cosmotech_api/model/run_search.py +1 -1
  55. cosmotech_api/model/run_start_containers.py +1 -1
  56. cosmotech_api/model/run_state.py +1 -1
  57. cosmotech_api/model/run_status.py +1 -1
  58. cosmotech_api/model/run_status_node.py +1 -1
  59. cosmotech_api/model/run_template.py +1 -1
  60. cosmotech_api/model/run_template_handler_id.py +1 -1
  61. cosmotech_api/model/run_template_orchestrator.py +1 -1
  62. cosmotech_api/model/run_template_parameter.py +1 -1
  63. cosmotech_api/model/run_template_parameter_group.py +1 -1
  64. cosmotech_api/model/run_template_parameter_value.py +1 -1
  65. cosmotech_api/model/run_template_resource_sizing.py +1 -1
  66. cosmotech_api/model/run_template_step_source.py +1 -1
  67. cosmotech_api/model/runner.py +1 -1
  68. cosmotech_api/model/runner_access_control.py +1 -1
  69. cosmotech_api/model/runner_changed_parameter_value.py +1 -1
  70. cosmotech_api/model/runner_comparison_result.py +1 -1
  71. cosmotech_api/model/runner_data_download_info.py +1 -1
  72. cosmotech_api/model/runner_data_download_job.py +1 -1
  73. cosmotech_api/model/runner_job_state.py +1 -1
  74. cosmotech_api/model/runner_last_run.py +1 -1
  75. cosmotech_api/model/runner_resource_sizing.py +1 -1
  76. cosmotech_api/model/runner_role.py +1 -1
  77. cosmotech_api/model/runner_run_template_parameter_value.py +1 -1
  78. cosmotech_api/model/runner_security.py +1 -1
  79. cosmotech_api/model/runner_validation_status.py +1 -1
  80. cosmotech_api/model/scenario.py +1 -1
  81. cosmotech_api/model/scenario_access_control.py +1 -1
  82. cosmotech_api/model/scenario_changed_parameter_value.py +1 -1
  83. cosmotech_api/model/scenario_comparison_result.py +1 -1
  84. cosmotech_api/model/scenario_data_download_info.py +1 -1
  85. cosmotech_api/model/scenario_data_download_job.py +1 -1
  86. cosmotech_api/model/scenario_job_state.py +1 -1
  87. cosmotech_api/model/scenario_last_run.py +1 -1
  88. cosmotech_api/model/scenario_resource_sizing.py +1 -1
  89. cosmotech_api/model/scenario_role.py +1 -1
  90. cosmotech_api/model/scenario_run.py +1 -1
  91. cosmotech_api/model/scenario_run_container.py +1 -1
  92. cosmotech_api/model/scenario_run_container_artifact.py +1 -1
  93. cosmotech_api/model/scenario_run_container_logs.py +1 -1
  94. cosmotech_api/model/scenario_run_logs.py +1 -1
  95. cosmotech_api/model/scenario_run_resource_requested.py +1 -1
  96. cosmotech_api/model/scenario_run_result.py +1 -1
  97. cosmotech_api/model/scenario_run_search.py +1 -1
  98. cosmotech_api/model/scenario_run_start_containers.py +1 -1
  99. cosmotech_api/model/scenario_run_state.py +1 -1
  100. cosmotech_api/model/scenario_run_status.py +1 -1
  101. cosmotech_api/model/scenario_run_status_node.py +1 -1
  102. cosmotech_api/model/scenario_run_template_parameter_value.py +1 -1
  103. cosmotech_api/model/scenario_security.py +1 -1
  104. cosmotech_api/model/scenario_validation_status.py +1 -1
  105. cosmotech_api/model/solution.py +5 -1
  106. cosmotech_api/model/solution_access_control.py +1 -1
  107. cosmotech_api/model/solution_role.py +1 -1
  108. cosmotech_api/model/solution_security.py +1 -1
  109. cosmotech_api/model/source_info.py +1 -1
  110. cosmotech_api/model/sub_dataset_graph_query.py +1 -1
  111. cosmotech_api/model/translated_labels.py +1 -1
  112. cosmotech_api/model/twin_graph_batch_result.py +1 -1
  113. cosmotech_api/model/twin_graph_hash.py +1 -1
  114. cosmotech_api/model/twin_graph_import.py +1 -1
  115. cosmotech_api/model/twin_graph_import_info.py +1 -1
  116. cosmotech_api/model/twin_graph_query.py +1 -1
  117. cosmotech_api/model/validator.py +1 -1
  118. cosmotech_api/model/validator_run.py +1 -1
  119. cosmotech_api/model/workspace.py +1 -1
  120. cosmotech_api/model/workspace_access_control.py +1 -1
  121. cosmotech_api/model/workspace_file.py +1 -1
  122. cosmotech_api/model/workspace_role.py +1 -1
  123. cosmotech_api/model/workspace_secret.py +1 -1
  124. cosmotech_api/model/workspace_security.py +1 -1
  125. cosmotech_api/model/workspace_solution.py +1 -1
  126. cosmotech_api/model/workspace_web_app.py +1 -1
  127. cosmotech_api/model_utils.py +1 -1
  128. cosmotech_api/models/__init__.py +24 -0
  129. cosmotech_api/models/component_role_permissions.py +90 -0
  130. cosmotech_api/models/connector.py +135 -0
  131. cosmotech_api/models/connector_parameter.py +98 -0
  132. cosmotech_api/models/connector_parameter_group.py +100 -0
  133. cosmotech_api/models/container_resource_size_info.py +90 -0
  134. cosmotech_api/models/container_resource_sizing.py +97 -0
  135. cosmotech_api/models/dataset.py +195 -0
  136. cosmotech_api/models/dataset_access_control.py +90 -0
  137. cosmotech_api/models/dataset_compatibility.py +92 -0
  138. cosmotech_api/models/dataset_connector.py +94 -0
  139. cosmotech_api/models/dataset_copy_parameters.py +92 -0
  140. cosmotech_api/models/dataset_role.py +88 -0
  141. cosmotech_api/models/dataset_search.py +88 -0
  142. cosmotech_api/models/dataset_security.py +98 -0
  143. cosmotech_api/models/dataset_source_type.py +42 -0
  144. cosmotech_api/models/dataset_twin_graph_hash.py +88 -0
  145. cosmotech_api/models/dataset_twin_graph_info.py +92 -0
  146. cosmotech_api/models/dataset_twin_graph_query.py +88 -0
  147. cosmotech_api/models/delete_historical_data.py +92 -0
  148. cosmotech_api/models/file_upload_metadata.py +90 -0
  149. cosmotech_api/models/file_upload_validation.py +105 -0
  150. cosmotech_api/models/graph_properties.py +96 -0
  151. cosmotech_api/models/organization.py +108 -0
  152. cosmotech_api/models/organization_access_control.py +90 -0
  153. cosmotech_api/models/organization_role.py +88 -0
  154. cosmotech_api/models/organization_security.py +98 -0
  155. cosmotech_api/models/organization_service.py +96 -0
  156. cosmotech_api/models/organization_services.py +99 -0
  157. cosmotech_api/models/resource_size_info.py +90 -0
  158. cosmotech_api/models/run.py +167 -0
  159. cosmotech_api/models/run_container.py +126 -0
  160. cosmotech_api/models/run_container_artifact.py +90 -0
  161. cosmotech_api/models/run_container_logs.py +102 -0
  162. cosmotech_api/models/run_logs.py +107 -0
  163. cosmotech_api/models/run_resource_requested.py +90 -0
  164. cosmotech_api/models/run_search.py +112 -0
  165. cosmotech_api/models/run_start_containers.py +104 -0
  166. cosmotech_api/models/run_state.py +40 -0
  167. cosmotech_api/models/run_status.py +123 -0
  168. cosmotech_api/models/run_status_node.py +116 -0
  169. cosmotech_api/models/run_template.py +164 -0
  170. cosmotech_api/models/run_template_handler_id.py +42 -0
  171. cosmotech_api/models/run_template_orchestrator.py +38 -0
  172. cosmotech_api/models/run_template_parameter.py +102 -0
  173. cosmotech_api/models/run_template_parameter_group.py +98 -0
  174. cosmotech_api/models/run_template_parameter_value.py +94 -0
  175. cosmotech_api/models/run_template_resource_sizing.py +97 -0
  176. cosmotech_api/models/run_template_step_source.py +40 -0
  177. cosmotech_api/models/runner.py +188 -0
  178. cosmotech_api/models/runner_access_control.py +90 -0
  179. cosmotech_api/models/runner_changed_parameter_value.py +102 -0
  180. cosmotech_api/models/runner_comparison_result.py +106 -0
  181. cosmotech_api/models/runner_data_download_info.py +93 -0
  182. cosmotech_api/models/runner_data_download_job.py +90 -0
  183. cosmotech_api/models/runner_job_state.py +42 -0
  184. cosmotech_api/models/runner_last_run.py +94 -0
  185. cosmotech_api/models/runner_parent_last_run.py +94 -0
  186. cosmotech_api/models/runner_resource_sizing.py +97 -0
  187. cosmotech_api/models/runner_role.py +88 -0
  188. cosmotech_api/models/runner_root_last_run.py +94 -0
  189. cosmotech_api/models/runner_run_template_parameter_value.py +96 -0
  190. cosmotech_api/models/runner_security.py +98 -0
  191. cosmotech_api/models/runner_validation_status.py +40 -0
  192. cosmotech_api/models/scenario.py +186 -0
  193. cosmotech_api/models/scenario_access_control.py +90 -0
  194. cosmotech_api/models/scenario_changed_parameter_value.py +102 -0
  195. cosmotech_api/models/scenario_comparison_result.py +106 -0
  196. cosmotech_api/models/scenario_data_download_info.py +93 -0
  197. cosmotech_api/models/scenario_data_download_job.py +90 -0
  198. cosmotech_api/models/scenario_job_state.py +42 -0
  199. cosmotech_api/models/scenario_last_run.py +94 -0
  200. cosmotech_api/models/scenario_resource_sizing.py +97 -0
  201. cosmotech_api/models/scenario_role.py +88 -0
  202. cosmotech_api/models/scenario_run.py +179 -0
  203. cosmotech_api/models/scenario_run_container.py +126 -0
  204. cosmotech_api/models/scenario_run_container_artifact.py +90 -0
  205. cosmotech_api/models/scenario_run_container_logs.py +102 -0
  206. cosmotech_api/models/scenario_run_logs.py +107 -0
  207. cosmotech_api/models/scenario_run_resource_requested.py +90 -0
  208. cosmotech_api/models/scenario_run_result.py +90 -0
  209. cosmotech_api/models/scenario_run_search.py +112 -0
  210. cosmotech_api/models/scenario_run_start_containers.py +104 -0
  211. cosmotech_api/models/scenario_run_state.py +42 -0
  212. cosmotech_api/models/scenario_run_status.py +119 -0
  213. cosmotech_api/models/scenario_run_status_node.py +116 -0
  214. cosmotech_api/models/scenario_run_template_parameter_value.py +96 -0
  215. cosmotech_api/models/scenario_security.py +98 -0
  216. cosmotech_api/models/scenario_validation_status.py +40 -0
  217. cosmotech_api/models/solution.py +154 -0
  218. cosmotech_api/models/solution_access_control.py +90 -0
  219. cosmotech_api/models/solution_role.py +88 -0
  220. cosmotech_api/models/solution_security.py +98 -0
  221. cosmotech_api/models/source_info.py +94 -0
  222. cosmotech_api/models/sub_dataset_graph_query.py +94 -0
  223. cosmotech_api/models/twin_graph_batch_result.py +92 -0
  224. cosmotech_api/models/twin_graph_hash.py +88 -0
  225. cosmotech_api/models/twin_graph_query.py +90 -0
  226. cosmotech_api/models/validator.py +106 -0
  227. cosmotech_api/models/validator_run.py +126 -0
  228. cosmotech_api/models/workspace.py +142 -0
  229. cosmotech_api/models/workspace_access_control.py +90 -0
  230. cosmotech_api/models/workspace_file.py +88 -0
  231. cosmotech_api/models/workspace_role.py +88 -0
  232. cosmotech_api/models/workspace_secret.py +88 -0
  233. cosmotech_api/models/workspace_security.py +98 -0
  234. cosmotech_api/models/workspace_solution.py +92 -0
  235. cosmotech_api/models/workspace_web_app.py +92 -0
  236. cosmotech_api/py.typed +0 -0
  237. cosmotech_api/rest.py +1 -1
  238. {cosmotech_api-3.1.0.dist-info → cosmotech_api-3.1.1.dist-info}/METADATA +1 -1
  239. cosmotech_api-3.1.1.dist-info/RECORD +251 -0
  240. {cosmotech_api-3.1.0.dist-info → cosmotech_api-3.1.1.dist-info}/WHEEL +1 -1
  241. cosmotech_api-3.1.0.dist-info/RECORD +0 -142
  242. {cosmotech_api-3.1.0.dist-info → cosmotech_api-3.1.1.dist-info}/LICENSE +0 -0
  243. {cosmotech_api-3.1.0.dist-info → cosmotech_api-3.1.1.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,186 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Cosmo Tech Platform API
5
+
6
+ Cosmo Tech Platform API
7
+
8
+ The version of the OpenAPI document: 3.1.1-SNAPSHOT
9
+ Contact: platform@cosmotech.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, Field, StrictInt, StrictStr
22
+ from typing import Any, ClassVar, Dict, List, Optional
23
+ from cosmotech_api.models.scenario_job_state import ScenarioJobState
24
+ from cosmotech_api.models.scenario_last_run import ScenarioLastRun
25
+ from cosmotech_api.models.scenario_resource_sizing import ScenarioResourceSizing
26
+ from cosmotech_api.models.scenario_run_template_parameter_value import ScenarioRunTemplateParameterValue
27
+ from cosmotech_api.models.scenario_security import ScenarioSecurity
28
+ from cosmotech_api.models.scenario_validation_status import ScenarioValidationStatus
29
+ from typing import Optional, Set
30
+ from typing_extensions import Self
31
+
32
+ class Scenario(BaseModel):
33
+ """
34
+ a Scenario with base information
35
+ """ # noqa: E501
36
+ id: Optional[StrictStr] = Field(default=None, description="the Scenario unique identifier")
37
+ name: Optional[StrictStr] = Field(default=None, description="the Scenario name")
38
+ description: Optional[StrictStr] = Field(default=None, description="the Scenario description")
39
+ tags: Optional[List[StrictStr]] = Field(default=None, description="the list of tags")
40
+ parent_id: Optional[StrictStr] = Field(default=None, description="the Scenario parent id", alias="parentId")
41
+ owner_id: Optional[StrictStr] = Field(default=None, description="the user id which own this Scenario", alias="ownerId")
42
+ root_id: Optional[StrictStr] = Field(default=None, description="the scenario root id", alias="rootId")
43
+ solution_id: Optional[StrictStr] = Field(default=None, description="the Solution Id associated with this Scenario", alias="solutionId")
44
+ run_template_id: Optional[StrictStr] = Field(default=None, description="the Solution Run Template Id associated with this Scenario", alias="runTemplateId")
45
+ organization_id: Optional[StrictStr] = Field(default=None, description="the associated Organization Id", alias="organizationId")
46
+ workspace_id: Optional[StrictStr] = Field(default=None, description="the associated Workspace Id", alias="workspaceId")
47
+ state: Optional[ScenarioJobState] = None
48
+ creation_date: Optional[StrictInt] = Field(default=None, description="the Scenario creation date", alias="creationDate")
49
+ last_update: Optional[StrictInt] = Field(default=None, description="the last time a Scenario was updated", alias="lastUpdate")
50
+ owner_name: Optional[StrictStr] = Field(default=None, description="the name of the owner", alias="ownerName")
51
+ solution_name: Optional[StrictStr] = Field(default=None, description="the Solution name", alias="solutionName")
52
+ run_template_name: Optional[StrictStr] = Field(default=None, description="the Solution Run Template name associated with this Scenario", alias="runTemplateName")
53
+ dataset_list: Optional[List[StrictStr]] = Field(default=None, description="the list of Dataset Id associated to this Scenario Run Template", alias="datasetList")
54
+ run_sizing: Optional[ScenarioResourceSizing] = Field(default=None, alias="runSizing")
55
+ parameters_values: Optional[List[ScenarioRunTemplateParameterValue]] = Field(default=None, description="the list of Solution Run Template parameters values", alias="parametersValues")
56
+ last_run: Optional[ScenarioLastRun] = Field(default=None, alias="lastRun")
57
+ parent_last_run: Optional[ScenarioLastRun] = Field(default=None, alias="parentLastRun")
58
+ root_last_run: Optional[ScenarioLastRun] = Field(default=None, alias="rootLastRun")
59
+ validation_status: Optional[ScenarioValidationStatus] = Field(default=None, alias="validationStatus")
60
+ security: Optional[ScenarioSecurity] = None
61
+ __properties: ClassVar[List[str]] = ["id", "name", "description", "tags", "parentId", "ownerId", "rootId", "solutionId", "runTemplateId", "organizationId", "workspaceId", "state", "creationDate", "lastUpdate", "ownerName", "solutionName", "runTemplateName", "datasetList", "runSizing", "parametersValues", "lastRun", "parentLastRun", "rootLastRun", "validationStatus", "security"]
62
+
63
+ model_config = {
64
+ "populate_by_name": True,
65
+ "validate_assignment": True,
66
+ "protected_namespaces": (),
67
+ }
68
+
69
+
70
+ def to_str(self) -> str:
71
+ """Returns the string representation of the model using alias"""
72
+ return pprint.pformat(self.model_dump(by_alias=True))
73
+
74
+ def to_json(self) -> str:
75
+ """Returns the JSON representation of the model using alias"""
76
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
77
+ return json.dumps(self.to_dict())
78
+
79
+ @classmethod
80
+ def from_json(cls, json_str: str) -> Optional[Self]:
81
+ """Create an instance of Scenario from a JSON string"""
82
+ return cls.from_dict(json.loads(json_str))
83
+
84
+ def to_dict(self) -> Dict[str, Any]:
85
+ """Return the dictionary representation of the model using alias.
86
+
87
+ This has the following differences from calling pydantic's
88
+ `self.model_dump(by_alias=True)`:
89
+
90
+ * `None` is only added to the output dict for nullable fields that
91
+ were set at model initialization. Other fields with value `None`
92
+ are ignored.
93
+ * OpenAPI `readOnly` fields are excluded.
94
+ * OpenAPI `readOnly` fields are excluded.
95
+ * OpenAPI `readOnly` fields are excluded.
96
+ * OpenAPI `readOnly` fields are excluded.
97
+ * OpenAPI `readOnly` fields are excluded.
98
+ * OpenAPI `readOnly` fields are excluded.
99
+ * OpenAPI `readOnly` fields are excluded.
100
+ * OpenAPI `readOnly` fields are excluded.
101
+ * OpenAPI `readOnly` fields are excluded.
102
+ * OpenAPI `readOnly` fields are excluded.
103
+ * OpenAPI `readOnly` fields are excluded.
104
+ """
105
+ excluded_fields: Set[str] = set([
106
+ "id",
107
+ "owner_id",
108
+ "root_id",
109
+ "solution_id",
110
+ "organization_id",
111
+ "workspace_id",
112
+ "creation_date",
113
+ "last_update",
114
+ "owner_name",
115
+ "solution_name",
116
+ "run_template_name",
117
+ ])
118
+
119
+ _dict = self.model_dump(
120
+ by_alias=True,
121
+ exclude=excluded_fields,
122
+ exclude_none=True,
123
+ )
124
+ # override the default output from pydantic by calling `to_dict()` of run_sizing
125
+ if self.run_sizing:
126
+ _dict['runSizing'] = self.run_sizing.to_dict()
127
+ # override the default output from pydantic by calling `to_dict()` of each item in parameters_values (list)
128
+ _items = []
129
+ if self.parameters_values:
130
+ for _item in self.parameters_values:
131
+ if _item:
132
+ _items.append(_item.to_dict())
133
+ _dict['parametersValues'] = _items
134
+ # override the default output from pydantic by calling `to_dict()` of last_run
135
+ if self.last_run:
136
+ _dict['lastRun'] = self.last_run.to_dict()
137
+ # override the default output from pydantic by calling `to_dict()` of parent_last_run
138
+ if self.parent_last_run:
139
+ _dict['parentLastRun'] = self.parent_last_run.to_dict()
140
+ # override the default output from pydantic by calling `to_dict()` of root_last_run
141
+ if self.root_last_run:
142
+ _dict['rootLastRun'] = self.root_last_run.to_dict()
143
+ # override the default output from pydantic by calling `to_dict()` of security
144
+ if self.security:
145
+ _dict['security'] = self.security.to_dict()
146
+ return _dict
147
+
148
+ @classmethod
149
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
150
+ """Create an instance of Scenario from a dict"""
151
+ if obj is None:
152
+ return None
153
+
154
+ if not isinstance(obj, dict):
155
+ return cls.model_validate(obj)
156
+
157
+ _obj = cls.model_validate({
158
+ "id": obj.get("id"),
159
+ "name": obj.get("name"),
160
+ "description": obj.get("description"),
161
+ "tags": obj.get("tags"),
162
+ "parentId": obj.get("parentId"),
163
+ "ownerId": obj.get("ownerId"),
164
+ "rootId": obj.get("rootId"),
165
+ "solutionId": obj.get("solutionId"),
166
+ "runTemplateId": obj.get("runTemplateId"),
167
+ "organizationId": obj.get("organizationId"),
168
+ "workspaceId": obj.get("workspaceId"),
169
+ "state": obj.get("state"),
170
+ "creationDate": obj.get("creationDate"),
171
+ "lastUpdate": obj.get("lastUpdate"),
172
+ "ownerName": obj.get("ownerName"),
173
+ "solutionName": obj.get("solutionName"),
174
+ "runTemplateName": obj.get("runTemplateName"),
175
+ "datasetList": obj.get("datasetList"),
176
+ "runSizing": ScenarioResourceSizing.from_dict(obj["runSizing"]) if obj.get("runSizing") is not None else None,
177
+ "parametersValues": [ScenarioRunTemplateParameterValue.from_dict(_item) for _item in obj["parametersValues"]] if obj.get("parametersValues") is not None else None,
178
+ "lastRun": ScenarioLastRun.from_dict(obj["lastRun"]) if obj.get("lastRun") is not None else None,
179
+ "parentLastRun": ScenarioLastRun.from_dict(obj["parentLastRun"]) if obj.get("parentLastRun") is not None else None,
180
+ "rootLastRun": ScenarioLastRun.from_dict(obj["rootLastRun"]) if obj.get("rootLastRun") is not None else None,
181
+ "validationStatus": obj.get("validationStatus"),
182
+ "security": ScenarioSecurity.from_dict(obj["security"]) if obj.get("security") is not None else None
183
+ })
184
+ return _obj
185
+
186
+
@@ -0,0 +1,90 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Cosmo Tech Platform API
5
+
6
+ Cosmo Tech Platform API
7
+
8
+ The version of the OpenAPI document: 3.1.1-SNAPSHOT
9
+ Contact: platform@cosmotech.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, Field, StrictStr
22
+ from typing import Any, ClassVar, Dict, List
23
+ from typing import Optional, Set
24
+ from typing_extensions import Self
25
+
26
+ class ScenarioAccessControl(BaseModel):
27
+ """
28
+ a Scenario access control item
29
+ """ # noqa: E501
30
+ id: StrictStr = Field(description="the identity id")
31
+ role: StrictStr = Field(description="a role")
32
+ __properties: ClassVar[List[str]] = ["id", "role"]
33
+
34
+ model_config = {
35
+ "populate_by_name": True,
36
+ "validate_assignment": True,
37
+ "protected_namespaces": (),
38
+ }
39
+
40
+
41
+ def to_str(self) -> str:
42
+ """Returns the string representation of the model using alias"""
43
+ return pprint.pformat(self.model_dump(by_alias=True))
44
+
45
+ def to_json(self) -> str:
46
+ """Returns the JSON representation of the model using alias"""
47
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
48
+ return json.dumps(self.to_dict())
49
+
50
+ @classmethod
51
+ def from_json(cls, json_str: str) -> Optional[Self]:
52
+ """Create an instance of ScenarioAccessControl from a JSON string"""
53
+ return cls.from_dict(json.loads(json_str))
54
+
55
+ def to_dict(self) -> Dict[str, Any]:
56
+ """Return the dictionary representation of the model using alias.
57
+
58
+ This has the following differences from calling pydantic's
59
+ `self.model_dump(by_alias=True)`:
60
+
61
+ * `None` is only added to the output dict for nullable fields that
62
+ were set at model initialization. Other fields with value `None`
63
+ are ignored.
64
+ """
65
+ excluded_fields: Set[str] = set([
66
+ ])
67
+
68
+ _dict = self.model_dump(
69
+ by_alias=True,
70
+ exclude=excluded_fields,
71
+ exclude_none=True,
72
+ )
73
+ return _dict
74
+
75
+ @classmethod
76
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
77
+ """Create an instance of ScenarioAccessControl from a dict"""
78
+ if obj is None:
79
+ return None
80
+
81
+ if not isinstance(obj, dict):
82
+ return cls.model_validate(obj)
83
+
84
+ _obj = cls.model_validate({
85
+ "id": obj.get("id"),
86
+ "role": obj.get("role")
87
+ })
88
+ return _obj
89
+
90
+
@@ -0,0 +1,102 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Cosmo Tech Platform API
5
+
6
+ Cosmo Tech Platform API
7
+
8
+ The version of the OpenAPI document: 3.1.1-SNAPSHOT
9
+ Contact: platform@cosmotech.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, Field, StrictStr
22
+ from typing import Any, ClassVar, Dict, List, Optional
23
+ from typing import Optional, Set
24
+ from typing_extensions import Self
25
+
26
+ class ScenarioChangedParameterValue(BaseModel):
27
+ """
28
+ the difference between the values of a parameter
29
+ """ # noqa: E501
30
+ parameter_id: Optional[StrictStr] = Field(default=None, description="the parameter id the values refer to", alias="parameterId")
31
+ var_type: Optional[StrictStr] = Field(default=None, description="the parameter value type", alias="varType")
32
+ value: Optional[StrictStr] = Field(default=None, description="the parameter value for the reference Scenario")
33
+ compared_value: Optional[StrictStr] = Field(default=None, description="the parameter value for the compared Scenario", alias="comparedValue")
34
+ __properties: ClassVar[List[str]] = ["parameterId", "varType", "value", "comparedValue"]
35
+
36
+ model_config = {
37
+ "populate_by_name": True,
38
+ "validate_assignment": True,
39
+ "protected_namespaces": (),
40
+ }
41
+
42
+
43
+ def to_str(self) -> str:
44
+ """Returns the string representation of the model using alias"""
45
+ return pprint.pformat(self.model_dump(by_alias=True))
46
+
47
+ def to_json(self) -> str:
48
+ """Returns the JSON representation of the model using alias"""
49
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
50
+ return json.dumps(self.to_dict())
51
+
52
+ @classmethod
53
+ def from_json(cls, json_str: str) -> Optional[Self]:
54
+ """Create an instance of ScenarioChangedParameterValue from a JSON string"""
55
+ return cls.from_dict(json.loads(json_str))
56
+
57
+ def to_dict(self) -> Dict[str, Any]:
58
+ """Return the dictionary representation of the model using alias.
59
+
60
+ This has the following differences from calling pydantic's
61
+ `self.model_dump(by_alias=True)`:
62
+
63
+ * `None` is only added to the output dict for nullable fields that
64
+ were set at model initialization. Other fields with value `None`
65
+ are ignored.
66
+ * OpenAPI `readOnly` fields are excluded.
67
+ * OpenAPI `readOnly` fields are excluded.
68
+ * OpenAPI `readOnly` fields are excluded.
69
+ * OpenAPI `readOnly` fields are excluded.
70
+ """
71
+ excluded_fields: Set[str] = set([
72
+ "parameter_id",
73
+ "var_type",
74
+ "value",
75
+ "compared_value",
76
+ ])
77
+
78
+ _dict = self.model_dump(
79
+ by_alias=True,
80
+ exclude=excluded_fields,
81
+ exclude_none=True,
82
+ )
83
+ return _dict
84
+
85
+ @classmethod
86
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
87
+ """Create an instance of ScenarioChangedParameterValue from a dict"""
88
+ if obj is None:
89
+ return None
90
+
91
+ if not isinstance(obj, dict):
92
+ return cls.model_validate(obj)
93
+
94
+ _obj = cls.model_validate({
95
+ "parameterId": obj.get("parameterId"),
96
+ "varType": obj.get("varType"),
97
+ "value": obj.get("value"),
98
+ "comparedValue": obj.get("comparedValue")
99
+ })
100
+ return _obj
101
+
102
+
@@ -0,0 +1,106 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Cosmo Tech Platform API
5
+
6
+ Cosmo Tech Platform API
7
+
8
+ The version of the OpenAPI document: 3.1.1-SNAPSHOT
9
+ Contact: platform@cosmotech.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, Field, StrictStr
22
+ from typing import Any, ClassVar, Dict, List, Optional
23
+ from cosmotech_api.models.scenario_changed_parameter_value import ScenarioChangedParameterValue
24
+ from typing import Optional, Set
25
+ from typing_extensions import Self
26
+
27
+ class ScenarioComparisonResult(BaseModel):
28
+ """
29
+ the result of the comparison of two scenarios
30
+ """ # noqa: E501
31
+ scenario_id: Optional[StrictStr] = Field(default=None, description="the Scenario Id which is the reference for the comparison", alias="scenarioId")
32
+ compared_scenario_id: Optional[StrictStr] = Field(default=None, description="the Scenario Id the reference Scenario is compared to", alias="comparedScenarioId")
33
+ changed_values: Optional[List[ScenarioChangedParameterValue]] = Field(default=None, description="the list of changed values for parameters", alias="changedValues")
34
+ __properties: ClassVar[List[str]] = ["scenarioId", "comparedScenarioId", "changedValues"]
35
+
36
+ model_config = {
37
+ "populate_by_name": True,
38
+ "validate_assignment": True,
39
+ "protected_namespaces": (),
40
+ }
41
+
42
+
43
+ def to_str(self) -> str:
44
+ """Returns the string representation of the model using alias"""
45
+ return pprint.pformat(self.model_dump(by_alias=True))
46
+
47
+ def to_json(self) -> str:
48
+ """Returns the JSON representation of the model using alias"""
49
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
50
+ return json.dumps(self.to_dict())
51
+
52
+ @classmethod
53
+ def from_json(cls, json_str: str) -> Optional[Self]:
54
+ """Create an instance of ScenarioComparisonResult from a JSON string"""
55
+ return cls.from_dict(json.loads(json_str))
56
+
57
+ def to_dict(self) -> Dict[str, Any]:
58
+ """Return the dictionary representation of the model using alias.
59
+
60
+ This has the following differences from calling pydantic's
61
+ `self.model_dump(by_alias=True)`:
62
+
63
+ * `None` is only added to the output dict for nullable fields that
64
+ were set at model initialization. Other fields with value `None`
65
+ are ignored.
66
+ * OpenAPI `readOnly` fields are excluded.
67
+ * OpenAPI `readOnly` fields are excluded.
68
+ * OpenAPI `readOnly` fields are excluded.
69
+ """
70
+ excluded_fields: Set[str] = set([
71
+ "scenario_id",
72
+ "compared_scenario_id",
73
+ "changed_values",
74
+ ])
75
+
76
+ _dict = self.model_dump(
77
+ by_alias=True,
78
+ exclude=excluded_fields,
79
+ exclude_none=True,
80
+ )
81
+ # override the default output from pydantic by calling `to_dict()` of each item in changed_values (list)
82
+ _items = []
83
+ if self.changed_values:
84
+ for _item in self.changed_values:
85
+ if _item:
86
+ _items.append(_item.to_dict())
87
+ _dict['changedValues'] = _items
88
+ return _dict
89
+
90
+ @classmethod
91
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
92
+ """Create an instance of ScenarioComparisonResult from a dict"""
93
+ if obj is None:
94
+ return None
95
+
96
+ if not isinstance(obj, dict):
97
+ return cls.model_validate(obj)
98
+
99
+ _obj = cls.model_validate({
100
+ "scenarioId": obj.get("scenarioId"),
101
+ "comparedScenarioId": obj.get("comparedScenarioId"),
102
+ "changedValues": [ScenarioChangedParameterValue.from_dict(_item) for _item in obj["changedValues"]] if obj.get("changedValues") is not None else None
103
+ })
104
+ return _obj
105
+
106
+
@@ -0,0 +1,93 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Cosmo Tech Platform API
5
+
6
+ Cosmo Tech Platform API
7
+
8
+ The version of the OpenAPI document: 3.1.1-SNAPSHOT
9
+ Contact: platform@cosmotech.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, Field, StrictStr
22
+ from typing import Any, ClassVar, Dict, List, Optional
23
+ from cosmotech_api.models.scenario_job_state import ScenarioJobState
24
+ from typing import Optional, Set
25
+ from typing_extensions import Self
26
+
27
+ class ScenarioDataDownloadInfo(BaseModel):
28
+ """
29
+ Scenario data download job info
30
+ """ # noqa: E501
31
+ url: Optional[StrictStr] = Field(default=None, description="the Scenario Data Download URL")
32
+ state: Optional[ScenarioJobState] = None
33
+ __properties: ClassVar[List[str]] = ["url", "state"]
34
+
35
+ model_config = {
36
+ "populate_by_name": True,
37
+ "validate_assignment": True,
38
+ "protected_namespaces": (),
39
+ }
40
+
41
+
42
+ def to_str(self) -> str:
43
+ """Returns the string representation of the model using alias"""
44
+ return pprint.pformat(self.model_dump(by_alias=True))
45
+
46
+ def to_json(self) -> str:
47
+ """Returns the JSON representation of the model using alias"""
48
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
49
+ return json.dumps(self.to_dict())
50
+
51
+ @classmethod
52
+ def from_json(cls, json_str: str) -> Optional[Self]:
53
+ """Create an instance of ScenarioDataDownloadInfo from a JSON string"""
54
+ return cls.from_dict(json.loads(json_str))
55
+
56
+ def to_dict(self) -> Dict[str, Any]:
57
+ """Return the dictionary representation of the model using alias.
58
+
59
+ This has the following differences from calling pydantic's
60
+ `self.model_dump(by_alias=True)`:
61
+
62
+ * `None` is only added to the output dict for nullable fields that
63
+ were set at model initialization. Other fields with value `None`
64
+ are ignored.
65
+ * OpenAPI `readOnly` fields are excluded.
66
+ """
67
+ excluded_fields: Set[str] = set([
68
+ "url",
69
+ ])
70
+
71
+ _dict = self.model_dump(
72
+ by_alias=True,
73
+ exclude=excluded_fields,
74
+ exclude_none=True,
75
+ )
76
+ return _dict
77
+
78
+ @classmethod
79
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
80
+ """Create an instance of ScenarioDataDownloadInfo from a dict"""
81
+ if obj is None:
82
+ return None
83
+
84
+ if not isinstance(obj, dict):
85
+ return cls.model_validate(obj)
86
+
87
+ _obj = cls.model_validate({
88
+ "url": obj.get("url"),
89
+ "state": obj.get("state")
90
+ })
91
+ return _obj
92
+
93
+
@@ -0,0 +1,90 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Cosmo Tech Platform API
5
+
6
+ Cosmo Tech Platform API
7
+
8
+ The version of the OpenAPI document: 3.1.1-SNAPSHOT
9
+ Contact: platform@cosmotech.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, Field, StrictStr
22
+ from typing import Any, ClassVar, Dict, List, Optional
23
+ from typing import Optional, Set
24
+ from typing_extensions import Self
25
+
26
+ class ScenarioDataDownloadJob(BaseModel):
27
+ """
28
+ Scenario data download job
29
+ """ # noqa: E501
30
+ id: Optional[StrictStr] = Field(default=None, description="the Scenario Data Download job identifier")
31
+ __properties: ClassVar[List[str]] = ["id"]
32
+
33
+ model_config = {
34
+ "populate_by_name": True,
35
+ "validate_assignment": True,
36
+ "protected_namespaces": (),
37
+ }
38
+
39
+
40
+ def to_str(self) -> str:
41
+ """Returns the string representation of the model using alias"""
42
+ return pprint.pformat(self.model_dump(by_alias=True))
43
+
44
+ def to_json(self) -> str:
45
+ """Returns the JSON representation of the model using alias"""
46
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
47
+ return json.dumps(self.to_dict())
48
+
49
+ @classmethod
50
+ def from_json(cls, json_str: str) -> Optional[Self]:
51
+ """Create an instance of ScenarioDataDownloadJob from a JSON string"""
52
+ return cls.from_dict(json.loads(json_str))
53
+
54
+ def to_dict(self) -> Dict[str, Any]:
55
+ """Return the dictionary representation of the model using alias.
56
+
57
+ This has the following differences from calling pydantic's
58
+ `self.model_dump(by_alias=True)`:
59
+
60
+ * `None` is only added to the output dict for nullable fields that
61
+ were set at model initialization. Other fields with value `None`
62
+ are ignored.
63
+ * OpenAPI `readOnly` fields are excluded.
64
+ """
65
+ excluded_fields: Set[str] = set([
66
+ "id",
67
+ ])
68
+
69
+ _dict = self.model_dump(
70
+ by_alias=True,
71
+ exclude=excluded_fields,
72
+ exclude_none=True,
73
+ )
74
+ return _dict
75
+
76
+ @classmethod
77
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
78
+ """Create an instance of ScenarioDataDownloadJob from a dict"""
79
+ if obj is None:
80
+ return None
81
+
82
+ if not isinstance(obj, dict):
83
+ return cls.model_validate(obj)
84
+
85
+ _obj = cls.model_validate({
86
+ "id": obj.get("id")
87
+ })
88
+ return _obj
89
+
90
+