apex-dispatch-api-client 0.7.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. apex_dispatch_api_client/__about__.py +15 -0
  2. apex_dispatch_api_client/__init__.py +8 -0
  3. apex_dispatch_api_client/api/__init__.py +1 -0
  4. apex_dispatch_api_client/api/default/__init__.py +1 -0
  5. apex_dispatch_api_client/api/default/health_health_get.py +85 -0
  6. apex_dispatch_api_client/api/unit_jobs/__init__.py +1 -0
  7. apex_dispatch_api_client/api/unit_jobs/create_sync_job_sync_jobs_post.py +178 -0
  8. apex_dispatch_api_client/api/unit_jobs/create_unit_job_unit_jobs_post.py +180 -0
  9. apex_dispatch_api_client/api/unit_jobs/delete_job_unit_jobs_job_id_delete.py +170 -0
  10. apex_dispatch_api_client/api/unit_jobs/get_job_params_params_post.py +179 -0
  11. apex_dispatch_api_client/api/unit_jobs/get_job_results_unit_jobs_job_id_results_get.py +186 -0
  12. apex_dispatch_api_client/api/unit_jobs/get_job_unit_jobs_job_id_get.py +172 -0
  13. apex_dispatch_api_client/api/upscale_tasks/__init__.py +1 -0
  14. apex_dispatch_api_client/api/upscale_tasks/create_upscale_task_upscale_tasks_post.py +180 -0
  15. apex_dispatch_api_client/api/upscale_tasks/get_jobs_status_jobs_status_get.py +192 -0
  16. apex_dispatch_api_client/api/upscale_tasks/get_upscale_task_upscale_tasks_task_id_get.py +172 -0
  17. apex_dispatch_api_client/api/upscale_tasks/split_in_tiles_tiles_post.py +184 -0
  18. apex_dispatch_api_client/client.py +282 -0
  19. apex_dispatch_api_client/errors.py +16 -0
  20. apex_dispatch_api_client/models/__init__.py +99 -0
  21. apex_dispatch_api_client/models/asset.py +155 -0
  22. apex_dispatch_api_client/models/base_job_request.py +104 -0
  23. apex_dispatch_api_client/models/base_job_request_parameters.py +47 -0
  24. apex_dispatch_api_client/models/collection.py +332 -0
  25. apex_dispatch_api_client/models/collection_assets_type_0.py +60 -0
  26. apex_dispatch_api_client/models/collection_summaries_type_0.py +109 -0
  27. apex_dispatch_api_client/models/collection_summaries_type_0_additional_property_type_2.py +47 -0
  28. apex_dispatch_api_client/models/error_response.py +138 -0
  29. apex_dispatch_api_client/models/error_response_details_type_0.py +47 -0
  30. apex_dispatch_api_client/models/extent.py +80 -0
  31. apex_dispatch_api_client/models/geometry_collection.py +247 -0
  32. apex_dispatch_api_client/models/grid_type_enum.py +9 -0
  33. apex_dispatch_api_client/models/http_validation_error.py +79 -0
  34. apex_dispatch_api_client/models/jobs_filter.py +9 -0
  35. apex_dispatch_api_client/models/jobs_status_response.py +97 -0
  36. apex_dispatch_api_client/models/line_string.py +163 -0
  37. apex_dispatch_api_client/models/link.py +123 -0
  38. apex_dispatch_api_client/models/mime_types.py +37 -0
  39. apex_dispatch_api_client/models/multi_line_string.py +180 -0
  40. apex_dispatch_api_client/models/multi_point.py +163 -0
  41. apex_dispatch_api_client/models/multi_polygon.py +191 -0
  42. apex_dispatch_api_client/models/output_format_enum.py +11 -0
  43. apex_dispatch_api_client/models/param_request.py +77 -0
  44. apex_dispatch_api_client/models/param_type_enum.py +16 -0
  45. apex_dispatch_api_client/models/parameter.py +108 -0
  46. apex_dispatch_api_client/models/parameter_dimension.py +69 -0
  47. apex_dispatch_api_client/models/point.py +151 -0
  48. apex_dispatch_api_client/models/polygon.py +180 -0
  49. apex_dispatch_api_client/models/process_type_enum.py +9 -0
  50. apex_dispatch_api_client/models/processing_job.py +130 -0
  51. apex_dispatch_api_client/models/processing_job_parameters.py +47 -0
  52. apex_dispatch_api_client/models/processing_job_summary.py +116 -0
  53. apex_dispatch_api_client/models/processing_job_summary_parameters.py +47 -0
  54. apex_dispatch_api_client/models/processing_status_enum.py +14 -0
  55. apex_dispatch_api_client/models/provider.py +135 -0
  56. apex_dispatch_api_client/models/range_.py +79 -0
  57. apex_dispatch_api_client/models/service_details.py +95 -0
  58. apex_dispatch_api_client/models/spatial_extent.py +96 -0
  59. apex_dispatch_api_client/models/tile_request.py +77 -0
  60. apex_dispatch_api_client/models/time_interval.py +99 -0
  61. apex_dispatch_api_client/models/upscaling_task.py +138 -0
  62. apex_dispatch_api_client/models/upscaling_task_request.py +118 -0
  63. apex_dispatch_api_client/models/upscaling_task_request_parameters.py +47 -0
  64. apex_dispatch_api_client/models/upscaling_task_summary.py +88 -0
  65. apex_dispatch_api_client/models/validation_error.py +123 -0
  66. apex_dispatch_api_client/models/validation_error_context.py +47 -0
  67. apex_dispatch_api_client/types.py +54 -0
  68. apex_dispatch_api_client-0.7.2.dist-info/METADATA +167 -0
  69. apex_dispatch_api_client-0.7.2.dist-info/RECORD +71 -0
  70. apex_dispatch_api_client-0.7.2.dist-info/WHEEL +4 -0
  71. apex_dispatch_api_client-0.7.2.dist-info/licenses/LICENSE +202 -0
@@ -0,0 +1,151 @@
1
+ from __future__ import annotations
2
+
3
+ from collections.abc import Mapping
4
+ from typing import (
5
+ Any,
6
+ Literal,
7
+ TypeVar,
8
+ cast,
9
+ )
10
+
11
+ from attrs import define as _attrs_define
12
+ from attrs import field as _attrs_field
13
+
14
+ from ..types import UNSET, Unset
15
+
16
+ T = TypeVar("T", bound="Point")
17
+
18
+
19
+ @_attrs_define
20
+ class Point:
21
+ """Point Model
22
+
23
+ Attributes:
24
+ type_ (Literal['Point']):
25
+ coordinates (list[float]):
26
+ bbox (list[float] | None | Unset):
27
+ """
28
+
29
+ type_: Literal["Point"]
30
+ coordinates: list[float]
31
+ bbox: list[float] | None | Unset = UNSET
32
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
33
+
34
+ def to_dict(self) -> dict[str, Any]:
35
+ type_ = self.type_
36
+
37
+ coordinates: list[float]
38
+ if isinstance(self.coordinates, list):
39
+ coordinates = []
40
+ for componentsschemas_position_2d_item_data in self.coordinates:
41
+ componentsschemas_position_2d_item: float
42
+ componentsschemas_position_2d_item = (
43
+ componentsschemas_position_2d_item_data
44
+ )
45
+ coordinates.append(componentsschemas_position_2d_item)
46
+
47
+ bbox: list[float] | None | Unset
48
+ if isinstance(self.bbox, Unset):
49
+ bbox = UNSET
50
+ elif isinstance(self.bbox, list):
51
+ bbox = []
52
+ for bbox_type_0_item_data in self.bbox:
53
+ bbox_type_0_item: float
54
+ bbox_type_0_item = bbox_type_0_item_data
55
+ bbox.append(bbox_type_0_item)
56
+
57
+ else:
58
+ bbox = self.bbox
59
+
60
+ field_dict: dict[str, Any] = {}
61
+ field_dict.update(self.additional_properties)
62
+ field_dict.update(
63
+ {
64
+ "type": type_,
65
+ "coordinates": coordinates,
66
+ }
67
+ )
68
+ if bbox is not UNSET:
69
+ field_dict["bbox"] = bbox
70
+
71
+ return field_dict
72
+
73
+ @classmethod
74
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
75
+ d = dict(src_dict)
76
+ type_ = cast(Literal["Point"], d.pop("type"))
77
+ if type_ != "Point":
78
+ raise ValueError(f"type must match const 'Point', got '{type_}'")
79
+
80
+ def _parse_coordinates(data: object) -> list[float]:
81
+ if not isinstance(data, list):
82
+ raise TypeError()
83
+ coordinates_type_0 = []
84
+ _coordinates_type_0 = data
85
+ for componentsschemas_position_2d_item_data in _coordinates_type_0:
86
+
87
+ def _parse_componentsschemas_position_2d_item(data: object) -> float:
88
+ return cast(float, data)
89
+
90
+ componentsschemas_position_2d_item = (
91
+ _parse_componentsschemas_position_2d_item(
92
+ componentsschemas_position_2d_item_data
93
+ )
94
+ )
95
+
96
+ coordinates_type_0.append(componentsschemas_position_2d_item)
97
+
98
+ return coordinates_type_0
99
+
100
+ coordinates = _parse_coordinates(d.pop("coordinates"))
101
+
102
+ def _parse_bbox(data: object) -> list[float] | None | Unset:
103
+ if data is None:
104
+ return data
105
+ if isinstance(data, Unset):
106
+ return data
107
+ try:
108
+ if not isinstance(data, list):
109
+ raise TypeError()
110
+ bbox_type_0 = []
111
+ _bbox_type_0 = data
112
+ for bbox_type_0_item_data in _bbox_type_0:
113
+
114
+ def _parse_bbox_type_0_item(data: object) -> float:
115
+ return cast(float, data)
116
+
117
+ bbox_type_0_item = _parse_bbox_type_0_item(bbox_type_0_item_data)
118
+
119
+ bbox_type_0.append(bbox_type_0_item)
120
+
121
+ return bbox_type_0
122
+ except (TypeError, ValueError, AttributeError, KeyError):
123
+ pass
124
+ return cast(list[float] | None | Unset, data)
125
+
126
+ bbox = _parse_bbox(d.pop("bbox", UNSET))
127
+
128
+ point = cls(
129
+ type_=type_,
130
+ coordinates=coordinates,
131
+ bbox=bbox,
132
+ )
133
+
134
+ point.additional_properties = d
135
+ return point
136
+
137
+ @property
138
+ def additional_keys(self) -> list[str]:
139
+ return list(self.additional_properties.keys())
140
+
141
+ def __getitem__(self, key: str) -> Any:
142
+ return self.additional_properties[key]
143
+
144
+ def __setitem__(self, key: str, value: Any) -> None:
145
+ self.additional_properties[key] = value
146
+
147
+ def __delitem__(self, key: str) -> None:
148
+ del self.additional_properties[key]
149
+
150
+ def __contains__(self, key: str) -> bool:
151
+ return key in self.additional_properties
@@ -0,0 +1,180 @@
1
+ from __future__ import annotations
2
+
3
+ from collections.abc import Mapping
4
+ from typing import (
5
+ Any,
6
+ Literal,
7
+ TypeVar,
8
+ cast,
9
+ )
10
+
11
+ from attrs import define as _attrs_define
12
+ from attrs import field as _attrs_field
13
+
14
+ from ..types import UNSET, Unset
15
+
16
+ T = TypeVar("T", bound="Polygon")
17
+
18
+
19
+ @_attrs_define
20
+ class Polygon:
21
+ """Polygon Model
22
+
23
+ Attributes:
24
+ type_ (Literal['Polygon']):
25
+ coordinates (list[list[list[float]]]):
26
+ bbox (list[float] | None | Unset):
27
+ """
28
+
29
+ type_: Literal["Polygon"]
30
+ coordinates: list[list[list[float]]]
31
+ bbox: list[float] | None | Unset = UNSET
32
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
33
+
34
+ def to_dict(self) -> dict[str, Any]:
35
+ type_ = self.type_
36
+
37
+ coordinates = []
38
+ for coordinates_item_data in self.coordinates:
39
+ coordinates_item = []
40
+ for coordinates_item_item_data in coordinates_item_data:
41
+ coordinates_item_item: list[float]
42
+ if isinstance(coordinates_item_item_data, list):
43
+ coordinates_item_item = []
44
+ for (
45
+ componentsschemas_position_2d_item_data
46
+ ) in coordinates_item_item_data:
47
+ componentsschemas_position_2d_item: float
48
+ componentsschemas_position_2d_item = (
49
+ componentsschemas_position_2d_item_data
50
+ )
51
+ coordinates_item_item.append(componentsschemas_position_2d_item)
52
+
53
+ coordinates_item.append(coordinates_item_item)
54
+
55
+ coordinates.append(coordinates_item)
56
+
57
+ bbox: list[float] | None | Unset
58
+ if isinstance(self.bbox, Unset):
59
+ bbox = UNSET
60
+ elif isinstance(self.bbox, list):
61
+ bbox = []
62
+ for bbox_type_0_item_data in self.bbox:
63
+ bbox_type_0_item: float
64
+ bbox_type_0_item = bbox_type_0_item_data
65
+ bbox.append(bbox_type_0_item)
66
+
67
+ else:
68
+ bbox = self.bbox
69
+
70
+ field_dict: dict[str, Any] = {}
71
+ field_dict.update(self.additional_properties)
72
+ field_dict.update(
73
+ {
74
+ "type": type_,
75
+ "coordinates": coordinates,
76
+ }
77
+ )
78
+ if bbox is not UNSET:
79
+ field_dict["bbox"] = bbox
80
+
81
+ return field_dict
82
+
83
+ @classmethod
84
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
85
+ d = dict(src_dict)
86
+ type_ = cast(Literal["Polygon"], d.pop("type"))
87
+ if type_ != "Polygon":
88
+ raise ValueError(f"type must match const 'Polygon', got '{type_}'")
89
+
90
+ coordinates = []
91
+ _coordinates = d.pop("coordinates")
92
+ for coordinates_item_data in _coordinates:
93
+ coordinates_item = []
94
+ _coordinates_item = coordinates_item_data
95
+ for coordinates_item_item_data in _coordinates_item:
96
+
97
+ def _parse_coordinates_item_item(data: object) -> list[float]:
98
+ if not isinstance(data, list):
99
+ raise TypeError()
100
+ coordinates_item_item_type_0 = []
101
+ _coordinates_item_item_type_0 = data
102
+ for (
103
+ componentsschemas_position_2d_item_data
104
+ ) in _coordinates_item_item_type_0:
105
+
106
+ def _parse_componentsschemas_position_2d_item(
107
+ data: object,
108
+ ) -> float:
109
+ return cast(float, data)
110
+
111
+ componentsschemas_position_2d_item = (
112
+ _parse_componentsschemas_position_2d_item(
113
+ componentsschemas_position_2d_item_data
114
+ )
115
+ )
116
+
117
+ coordinates_item_item_type_0.append(
118
+ componentsschemas_position_2d_item
119
+ )
120
+
121
+ return coordinates_item_item_type_0
122
+
123
+ coordinates_item_item = _parse_coordinates_item_item(
124
+ coordinates_item_item_data
125
+ )
126
+
127
+ coordinates_item.append(coordinates_item_item)
128
+
129
+ coordinates.append(coordinates_item)
130
+
131
+ def _parse_bbox(data: object) -> list[float] | None | Unset:
132
+ if data is None:
133
+ return data
134
+ if isinstance(data, Unset):
135
+ return data
136
+ try:
137
+ if not isinstance(data, list):
138
+ raise TypeError()
139
+ bbox_type_0 = []
140
+ _bbox_type_0 = data
141
+ for bbox_type_0_item_data in _bbox_type_0:
142
+
143
+ def _parse_bbox_type_0_item(data: object) -> float:
144
+ return cast(float, data)
145
+
146
+ bbox_type_0_item = _parse_bbox_type_0_item(bbox_type_0_item_data)
147
+
148
+ bbox_type_0.append(bbox_type_0_item)
149
+
150
+ return bbox_type_0
151
+ except (TypeError, ValueError, AttributeError, KeyError):
152
+ pass
153
+ return cast(list[float] | None | Unset, data)
154
+
155
+ bbox = _parse_bbox(d.pop("bbox", UNSET))
156
+
157
+ polygon = cls(
158
+ type_=type_,
159
+ coordinates=coordinates,
160
+ bbox=bbox,
161
+ )
162
+
163
+ polygon.additional_properties = d
164
+ return polygon
165
+
166
+ @property
167
+ def additional_keys(self) -> list[str]:
168
+ return list(self.additional_properties.keys())
169
+
170
+ def __getitem__(self, key: str) -> Any:
171
+ return self.additional_properties[key]
172
+
173
+ def __setitem__(self, key: str, value: Any) -> None:
174
+ self.additional_properties[key] = value
175
+
176
+ def __delitem__(self, key: str) -> None:
177
+ del self.additional_properties[key]
178
+
179
+ def __contains__(self, key: str) -> bool:
180
+ return key in self.additional_properties
@@ -0,0 +1,9 @@
1
+ from enum import Enum
2
+
3
+
4
+ class ProcessTypeEnum(str, Enum):
5
+ OGC_API_PROCESS = "ogc_api_process"
6
+ OPENEO = "openeo"
7
+
8
+ def __str__(self) -> str:
9
+ return str(self.value)
@@ -0,0 +1,130 @@
1
+ from __future__ import annotations
2
+
3
+ import datetime
4
+ from collections.abc import Mapping
5
+ from typing import TYPE_CHECKING, Any, TypeVar
6
+
7
+ from attrs import define as _attrs_define
8
+ from attrs import field as _attrs_field
9
+ from dateutil.parser import isoparse
10
+
11
+ from ..models.process_type_enum import ProcessTypeEnum
12
+ from ..models.processing_status_enum import ProcessingStatusEnum
13
+
14
+ if TYPE_CHECKING:
15
+ from ..models.processing_job_parameters import ProcessingJobParameters
16
+ from ..models.service_details import ServiceDetails
17
+
18
+
19
+ T = TypeVar("T", bound="ProcessingJob")
20
+
21
+
22
+ @_attrs_define
23
+ class ProcessingJob:
24
+ """
25
+ Attributes:
26
+ id (int): Unique identifier of the processing job
27
+ title (str): Title of the job
28
+ label (ProcessTypeEnum):
29
+ status (ProcessingStatusEnum):
30
+ service (ServiceDetails):
31
+ parameters (ProcessingJobParameters): JSON representing the parameters for the service execution
32
+ created (datetime.datetime): Creation time of the processing job
33
+ updated (datetime.datetime): Timestamp representing the last time that the job details were updated
34
+ """
35
+
36
+ id: int
37
+ title: str
38
+ label: ProcessTypeEnum
39
+ status: ProcessingStatusEnum
40
+ service: ServiceDetails
41
+ parameters: ProcessingJobParameters
42
+ created: datetime.datetime
43
+ updated: datetime.datetime
44
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
45
+
46
+ def to_dict(self) -> dict[str, Any]:
47
+ id = self.id
48
+
49
+ title = self.title
50
+
51
+ label = self.label.value
52
+
53
+ status = self.status.value
54
+
55
+ service = self.service.to_dict()
56
+
57
+ parameters = self.parameters.to_dict()
58
+
59
+ created = self.created.isoformat()
60
+
61
+ updated = self.updated.isoformat()
62
+
63
+ field_dict: dict[str, Any] = {}
64
+ field_dict.update(self.additional_properties)
65
+ field_dict.update(
66
+ {
67
+ "id": id,
68
+ "title": title,
69
+ "label": label,
70
+ "status": status,
71
+ "service": service,
72
+ "parameters": parameters,
73
+ "created": created,
74
+ "updated": updated,
75
+ }
76
+ )
77
+
78
+ return field_dict
79
+
80
+ @classmethod
81
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
82
+ from ..models.processing_job_parameters import ProcessingJobParameters
83
+ from ..models.service_details import ServiceDetails
84
+
85
+ d = dict(src_dict)
86
+ id = d.pop("id")
87
+
88
+ title = d.pop("title")
89
+
90
+ label = ProcessTypeEnum(d.pop("label"))
91
+
92
+ status = ProcessingStatusEnum(d.pop("status"))
93
+
94
+ service = ServiceDetails.from_dict(d.pop("service"))
95
+
96
+ parameters = ProcessingJobParameters.from_dict(d.pop("parameters"))
97
+
98
+ created = isoparse(d.pop("created"))
99
+
100
+ updated = isoparse(d.pop("updated"))
101
+
102
+ processing_job = cls(
103
+ id=id,
104
+ title=title,
105
+ label=label,
106
+ status=status,
107
+ service=service,
108
+ parameters=parameters,
109
+ created=created,
110
+ updated=updated,
111
+ )
112
+
113
+ processing_job.additional_properties = d
114
+ return processing_job
115
+
116
+ @property
117
+ def additional_keys(self) -> list[str]:
118
+ return list(self.additional_properties.keys())
119
+
120
+ def __getitem__(self, key: str) -> Any:
121
+ return self.additional_properties[key]
122
+
123
+ def __setitem__(self, key: str, value: Any) -> None:
124
+ self.additional_properties[key] = value
125
+
126
+ def __delitem__(self, key: str) -> None:
127
+ del self.additional_properties[key]
128
+
129
+ def __contains__(self, key: str) -> bool:
130
+ return key in self.additional_properties
@@ -0,0 +1,47 @@
1
+ from __future__ import annotations
2
+
3
+ from collections.abc import Mapping
4
+ from typing import Any, TypeVar
5
+
6
+ from attrs import define as _attrs_define
7
+ from attrs import field as _attrs_field
8
+
9
+ T = TypeVar("T", bound="ProcessingJobParameters")
10
+
11
+
12
+ @_attrs_define
13
+ class ProcessingJobParameters:
14
+ """JSON representing the parameters for the service execution"""
15
+
16
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
17
+
18
+ def to_dict(self) -> dict[str, Any]:
19
+
20
+ field_dict: dict[str, Any] = {}
21
+ field_dict.update(self.additional_properties)
22
+
23
+ return field_dict
24
+
25
+ @classmethod
26
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
27
+ d = dict(src_dict)
28
+ processing_job_parameters = cls()
29
+
30
+ processing_job_parameters.additional_properties = d
31
+ return processing_job_parameters
32
+
33
+ @property
34
+ def additional_keys(self) -> list[str]:
35
+ return list(self.additional_properties.keys())
36
+
37
+ def __getitem__(self, key: str) -> Any:
38
+ return self.additional_properties[key]
39
+
40
+ def __setitem__(self, key: str, value: Any) -> None:
41
+ self.additional_properties[key] = value
42
+
43
+ def __delitem__(self, key: str) -> None:
44
+ del self.additional_properties[key]
45
+
46
+ def __contains__(self, key: str) -> bool:
47
+ return key in self.additional_properties
@@ -0,0 +1,116 @@
1
+ from __future__ import annotations
2
+
3
+ from collections.abc import Mapping
4
+ from typing import TYPE_CHECKING, Any, TypeVar
5
+
6
+ from attrs import define as _attrs_define
7
+ from attrs import field as _attrs_field
8
+
9
+ from ..models.process_type_enum import ProcessTypeEnum
10
+ from ..models.processing_status_enum import ProcessingStatusEnum
11
+
12
+ if TYPE_CHECKING:
13
+ from ..models.processing_job_summary_parameters import (
14
+ ProcessingJobSummaryParameters,
15
+ )
16
+ from ..models.service_details import ServiceDetails
17
+
18
+
19
+ T = TypeVar("T", bound="ProcessingJobSummary")
20
+
21
+
22
+ @_attrs_define
23
+ class ProcessingJobSummary:
24
+ """
25
+ Attributes:
26
+ id (int): Unique identifier of the processing job
27
+ title (str): Title of the job
28
+ label (ProcessTypeEnum):
29
+ status (ProcessingStatusEnum):
30
+ service (ServiceDetails):
31
+ parameters (ProcessingJobSummaryParameters): JSON representing the parameters for the service execution
32
+ """
33
+
34
+ id: int
35
+ title: str
36
+ label: ProcessTypeEnum
37
+ status: ProcessingStatusEnum
38
+ service: ServiceDetails
39
+ parameters: ProcessingJobSummaryParameters
40
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
41
+
42
+ def to_dict(self) -> dict[str, Any]:
43
+ id = self.id
44
+
45
+ title = self.title
46
+
47
+ label = self.label.value
48
+
49
+ status = self.status.value
50
+
51
+ service = self.service.to_dict()
52
+
53
+ parameters = self.parameters.to_dict()
54
+
55
+ field_dict: dict[str, Any] = {}
56
+ field_dict.update(self.additional_properties)
57
+ field_dict.update(
58
+ {
59
+ "id": id,
60
+ "title": title,
61
+ "label": label,
62
+ "status": status,
63
+ "service": service,
64
+ "parameters": parameters,
65
+ }
66
+ )
67
+
68
+ return field_dict
69
+
70
+ @classmethod
71
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
72
+ from ..models.processing_job_summary_parameters import (
73
+ ProcessingJobSummaryParameters,
74
+ )
75
+ from ..models.service_details import ServiceDetails
76
+
77
+ d = dict(src_dict)
78
+ id = d.pop("id")
79
+
80
+ title = d.pop("title")
81
+
82
+ label = ProcessTypeEnum(d.pop("label"))
83
+
84
+ status = ProcessingStatusEnum(d.pop("status"))
85
+
86
+ service = ServiceDetails.from_dict(d.pop("service"))
87
+
88
+ parameters = ProcessingJobSummaryParameters.from_dict(d.pop("parameters"))
89
+
90
+ processing_job_summary = cls(
91
+ id=id,
92
+ title=title,
93
+ label=label,
94
+ status=status,
95
+ service=service,
96
+ parameters=parameters,
97
+ )
98
+
99
+ processing_job_summary.additional_properties = d
100
+ return processing_job_summary
101
+
102
+ @property
103
+ def additional_keys(self) -> list[str]:
104
+ return list(self.additional_properties.keys())
105
+
106
+ def __getitem__(self, key: str) -> Any:
107
+ return self.additional_properties[key]
108
+
109
+ def __setitem__(self, key: str, value: Any) -> None:
110
+ self.additional_properties[key] = value
111
+
112
+ def __delitem__(self, key: str) -> None:
113
+ del self.additional_properties[key]
114
+
115
+ def __contains__(self, key: str) -> bool:
116
+ return key in self.additional_properties
@@ -0,0 +1,47 @@
1
+ from __future__ import annotations
2
+
3
+ from collections.abc import Mapping
4
+ from typing import Any, TypeVar
5
+
6
+ from attrs import define as _attrs_define
7
+ from attrs import field as _attrs_field
8
+
9
+ T = TypeVar("T", bound="ProcessingJobSummaryParameters")
10
+
11
+
12
+ @_attrs_define
13
+ class ProcessingJobSummaryParameters:
14
+ """JSON representing the parameters for the service execution"""
15
+
16
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
17
+
18
+ def to_dict(self) -> dict[str, Any]:
19
+
20
+ field_dict: dict[str, Any] = {}
21
+ field_dict.update(self.additional_properties)
22
+
23
+ return field_dict
24
+
25
+ @classmethod
26
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
27
+ d = dict(src_dict)
28
+ processing_job_summary_parameters = cls()
29
+
30
+ processing_job_summary_parameters.additional_properties = d
31
+ return processing_job_summary_parameters
32
+
33
+ @property
34
+ def additional_keys(self) -> list[str]:
35
+ return list(self.additional_properties.keys())
36
+
37
+ def __getitem__(self, key: str) -> Any:
38
+ return self.additional_properties[key]
39
+
40
+ def __setitem__(self, key: str, value: Any) -> None:
41
+ self.additional_properties[key] = value
42
+
43
+ def __delitem__(self, key: str) -> None:
44
+ del self.additional_properties[key]
45
+
46
+ def __contains__(self, key: str) -> bool:
47
+ return key in self.additional_properties
@@ -0,0 +1,14 @@
1
+ from enum import Enum
2
+
3
+
4
+ class ProcessingStatusEnum(str, Enum):
5
+ CANCELED = "canceled"
6
+ CREATED = "created"
7
+ FAILED = "failed"
8
+ FINISHED = "finished"
9
+ QUEUED = "queued"
10
+ RUNNING = "running"
11
+ UNKNOWN = "unknown"
12
+
13
+ def __str__(self) -> str:
14
+ return str(self.value)