pinexq-client 0.9.2.20250506.42__py3-none-any.whl → 0.9.2.20250515.43__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.
- pinexq_client/job_management/__init__.py +1 -1
- pinexq_client/job_management/hcos/jobsroot_hco.py +14 -0
- pinexq_client/job_management/model/open_api_generated.py +30 -2
- pinexq_client/job_management/tool/job.py +18 -1
- {pinexq_client-0.9.2.20250506.42.dist-info → pinexq_client-0.9.2.20250515.43.dist-info}/METADATA +1 -1
- {pinexq_client-0.9.2.20250506.42.dist-info → pinexq_client-0.9.2.20250515.43.dist-info}/RECORD +9 -9
- {pinexq_client-0.9.2.20250506.42.dist-info → pinexq_client-0.9.2.20250515.43.dist-info}/WHEEL +0 -0
- {pinexq_client-0.9.2.20250506.42.dist-info → pinexq_client-0.9.2.20250515.43.dist-info}/entry_points.txt +0 -0
- {pinexq_client-0.9.2.20250506.42.dist-info → pinexq_client-0.9.2.20250515.43.dist-info}/licenses/LICENSE +0 -0
|
@@ -15,6 +15,7 @@ from pinexq_client.job_management.hcos.job_query_result_hco import (
|
|
|
15
15
|
)
|
|
16
16
|
from pinexq_client.job_management.hcos.job_used_tags_hco import JobUsedTagsLink
|
|
17
17
|
from pinexq_client.job_management.known_relations import Relations
|
|
18
|
+
from pinexq_client.job_management.model import RapidJobSetupParameters
|
|
18
19
|
from pinexq_client.job_management.model.open_api_generated import (
|
|
19
20
|
CreateJobParameters,
|
|
20
21
|
JobQueryParameters,
|
|
@@ -43,6 +44,16 @@ class CreateSubJobAction(ActionWithParametersHco[CreateSubJobParameters]):
|
|
|
43
44
|
return self._get_default_parameters(CreateSubJobParameters, CreateSubJobParameters())
|
|
44
45
|
|
|
45
46
|
|
|
47
|
+
class RapidJobSetupAction(ActionWithParametersHco[RapidJobSetupParameters]):
|
|
48
|
+
def execute(self, parameters: RapidJobSetupParameters) -> JobLink:
|
|
49
|
+
url: URL = self._execute_returns_url(parameters)
|
|
50
|
+
link = Link.from_url(url, [str(Relations.CREATED_RESSOURCE)], "Rapid job setup", MediaTypes.SIREN)
|
|
51
|
+
return JobLink.from_link(self._client, link)
|
|
52
|
+
|
|
53
|
+
def default_parameters(self) -> RapidJobSetupParameters:
|
|
54
|
+
return self._get_default_parameters(RapidJobSetupParameters, RapidJobSetupParameters())
|
|
55
|
+
|
|
56
|
+
|
|
46
57
|
class JobQueryAction(ActionWithParametersHco):
|
|
47
58
|
def execute(self, parameters: JobQueryParameters) -> JobQueryResultHco:
|
|
48
59
|
url = self._execute_returns_url(parameters)
|
|
@@ -56,6 +67,7 @@ class JobQueryAction(ActionWithParametersHco):
|
|
|
56
67
|
|
|
57
68
|
class JobsRootHco(Hco[JobsRootEntity]):
|
|
58
69
|
create_job_action: CreateJobAction | UnavailableAction
|
|
70
|
+
rapid_job_setup_action: RapidJobSetupAction | UnavailableAction
|
|
59
71
|
job_query_action: JobQueryAction | UnavailableAction
|
|
60
72
|
create_subjob_action: CreateSubJobAction | UnavailableAction
|
|
61
73
|
used_tags_link: JobUsedTagsLink | UnavailableLink
|
|
@@ -70,6 +82,8 @@ class JobsRootHco(Hco[JobsRootEntity]):
|
|
|
70
82
|
instance.create_job_action = CreateJobAction.from_entity_optional(client, instance._entity, "CreateJob")
|
|
71
83
|
instance.create_subjob_action = CreateSubJobAction.from_entity_optional(client, instance._entity,
|
|
72
84
|
"CreateSubJob")
|
|
85
|
+
instance.rapid_job_setup_action = RapidJobSetupAction.from_entity_optional(client, instance._entity,
|
|
86
|
+
"RapidSetupJob")
|
|
73
87
|
instance.job_query_action = JobQueryAction.from_entity_optional(client, instance._entity, "CreateJobQuery")
|
|
74
88
|
instance.used_tags_link = JobUsedTagsLink.from_entity_optional(
|
|
75
89
|
instance._client, instance._entity, Relations.USED_TAGS)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# generated by datamodel-codegen:
|
|
2
2
|
# filename: openapi.json
|
|
3
|
-
# timestamp: 2025-05-
|
|
3
|
+
# timestamp: 2025-05-14T12:10:18+00:00
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
@@ -137,6 +137,15 @@ class InfoHtoOpenApiProperties(BaseModel):
|
|
|
137
137
|
used_storage_in_bytes: int | None = Field(None, alias='UsedStorageInBytes')
|
|
138
138
|
|
|
139
139
|
|
|
140
|
+
class InputDataSlotParameter(BaseModel):
|
|
141
|
+
model_config = ConfigDict(
|
|
142
|
+
extra='allow',
|
|
143
|
+
populate_by_name=True,
|
|
144
|
+
)
|
|
145
|
+
index: int | None = Field(None, alias='Index')
|
|
146
|
+
work_data_urls: List[str] | None = Field(None, alias='WorkDataUrls')
|
|
147
|
+
|
|
148
|
+
|
|
140
149
|
class JobQueryResultHtoOpenApiProperties(BaseModel):
|
|
141
150
|
model_config = ConfigDict(
|
|
142
151
|
extra='allow',
|
|
@@ -324,6 +333,25 @@ class ProcessingView(BaseModel):
|
|
|
324
333
|
)
|
|
325
334
|
|
|
326
335
|
|
|
336
|
+
class RapidJobSetupParameters(BaseModel):
|
|
337
|
+
model_config = ConfigDict(
|
|
338
|
+
extra='allow',
|
|
339
|
+
populate_by_name=True,
|
|
340
|
+
)
|
|
341
|
+
name: constr(min_length=1) = Field(..., alias='Name')
|
|
342
|
+
processing_step_url: str | None = Field(None, alias='ProcessingStepUrl')
|
|
343
|
+
parent_job_url: str | None = Field(None, alias='ParentJobUrl')
|
|
344
|
+
tags: List[str] | None = Field(None, alias='Tags')
|
|
345
|
+
parameters: str | None = Field(None, alias='Parameters')
|
|
346
|
+
allow_output_data_deletion: bool | None = Field(
|
|
347
|
+
None, alias='AllowOutputDataDeletion'
|
|
348
|
+
)
|
|
349
|
+
input_data_slots: List[InputDataSlotParameter] | None = Field(
|
|
350
|
+
None, alias='InputDataSlots'
|
|
351
|
+
)
|
|
352
|
+
start: bool | None = Field(None, alias='Start')
|
|
353
|
+
|
|
354
|
+
|
|
327
355
|
class RenameJobParameters(BaseModel):
|
|
328
356
|
model_config = ConfigDict(
|
|
329
357
|
extra='allow',
|
|
@@ -659,8 +687,8 @@ class JobHtoOpenApiProperties(BaseModel):
|
|
|
659
687
|
hidden: bool | None = Field(None, alias='Hidden')
|
|
660
688
|
output_is_deletable: bool | None = Field(None, alias='OutputIsDeletable')
|
|
661
689
|
created_at: AwareDatetime | None = Field(None, alias='CreatedAt')
|
|
662
|
-
completed_at: AwareDatetime | None = Field(None, alias='CompletedAt')
|
|
663
690
|
started_at: AwareDatetime | None = Field(None, alias='StartedAt')
|
|
691
|
+
completed_at: AwareDatetime | None = Field(None, alias='CompletedAt')
|
|
664
692
|
error_description: str | None = Field(None, alias='ErrorDescription')
|
|
665
693
|
processing: ProcessingView | None = Field(None, alias='Processing')
|
|
666
694
|
result: str | None = Field(None, alias='Result')
|
|
@@ -35,7 +35,7 @@ from pinexq_client.job_management.model import (
|
|
|
35
35
|
SelectProcessingParameters,
|
|
36
36
|
SelectWorkDataCollectionForDataSlotParameters,
|
|
37
37
|
SelectWorkDataForDataSlotParameters,
|
|
38
|
-
SetJobTagsParameters,
|
|
38
|
+
SetJobTagsParameters, RapidJobSetupParameters,
|
|
39
39
|
)
|
|
40
40
|
from pinexq_client.job_management.tool.processing_step import ProcessingStep
|
|
41
41
|
from pinexq_client.job_management.tool.workdata import WorkData
|
|
@@ -661,6 +661,23 @@ class Job:
|
|
|
661
661
|
self._raise_if_no_hco()
|
|
662
662
|
return self.job_hco.processing
|
|
663
663
|
|
|
664
|
+
def create_and_configure_rapidly(
|
|
665
|
+
self,
|
|
666
|
+
parameters: RapidJobSetupParameters
|
|
667
|
+
) -> Self:
|
|
668
|
+
"""
|
|
669
|
+
Creates a new job and configures it rapidly with RapidJobSetupParameters.
|
|
670
|
+
|
|
671
|
+
Args:
|
|
672
|
+
parameters: The parameters to configure the job with.
|
|
673
|
+
|
|
674
|
+
Returns:
|
|
675
|
+
The newly created job as `Job` object
|
|
676
|
+
"""
|
|
677
|
+
job_link = self._jobs_root.rapid_job_setup_action.execute(parameters)
|
|
678
|
+
self._get_by_link(job_link)
|
|
679
|
+
return self
|
|
680
|
+
|
|
664
681
|
def self_link(self) -> JobLink:
|
|
665
682
|
self._raise_if_no_hco()
|
|
666
683
|
return self.job_hco.self_link
|
{pinexq_client-0.9.2.20250506.42.dist-info → pinexq_client-0.9.2.20250515.43.dist-info}/METADATA
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: pinexq-client
|
|
3
|
-
Version: 0.9.2.
|
|
3
|
+
Version: 0.9.2.20250515.43
|
|
4
4
|
Summary: A hypermedia-based client for the DataCybernetics PinexQ platform.
|
|
5
5
|
Author-Email: =?utf-8?q?Sebastian_H=C3=B6fer?= <hoefer@data-cybernetics.com>, Mathias Reichardt <reichardt@data-cybernetics.com>, Jasim Ahmed <ahmed@data-cybernetics.com>, Pratik Poudel <poudel@data-cybernetics.com>
|
|
6
6
|
Maintainer-Email: Mathias Reichardt <reichardt@data-cybernetics.com>, =?utf-8?q?Sebastian_H=C3=B6fer?= <hoefer@data-cybernetics.com>, Carsten Blank <blank@data-cybernetics.com>
|
{pinexq_client-0.9.2.20250506.42.dist-info → pinexq_client-0.9.2.20250515.43.dist-info}/RECORD
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
pinexq_client-0.9.2.
|
|
2
|
-
pinexq_client-0.9.2.
|
|
3
|
-
pinexq_client-0.9.2.
|
|
4
|
-
pinexq_client-0.9.2.
|
|
1
|
+
pinexq_client-0.9.2.20250515.43.dist-info/METADATA,sha256=0WwpBhk9GA6PUPIi3nDnyX9fvaaRIb9nloEjn2OVsBk,3279
|
|
2
|
+
pinexq_client-0.9.2.20250515.43.dist-info/WHEEL,sha256=tSfRZzRHthuv7vxpI4aehrdN9scLjk-dCJkPLzkHxGg,90
|
|
3
|
+
pinexq_client-0.9.2.20250515.43.dist-info/entry_points.txt,sha256=6OYgBcLyFCUgeqLgnvMyOJxPCWzgy7se4rLPKtNonMs,34
|
|
4
|
+
pinexq_client-0.9.2.20250515.43.dist-info/licenses/LICENSE,sha256=3oz3tAhM7kOgRukkRe7wmh5T_HihZY77ZtJDJm91ZN8,1072
|
|
5
5
|
pinexq_client/core/__init__.py,sha256=zO9vUuAl6AEokL-SqQO3Jl1qrxFBZPA2kH99VNZugEU,598
|
|
6
6
|
pinexq_client/core/base_relations.py,sha256=oIUS58pkbMDdqm-3YOdsenhL1smtzeAk4fp7-U595MY,162
|
|
7
7
|
pinexq_client/core/enterapi.py,sha256=eB4F2_t3lCbMgKhy-M-Sf_u9MhuJMO7OGh-GB-4Cc-8,731
|
|
@@ -21,7 +21,7 @@ pinexq_client/core/model/error.py,sha256=ZDbUlwsj7d8XPMolSSLTFwgs3RBLvOvgmlEtoBu
|
|
|
21
21
|
pinexq_client/core/model/sirenmodels.py,sha256=vGRQlhM2cSa2caxQel91Jr48KWqM-vMYX32iaQCzIds,5547
|
|
22
22
|
pinexq_client/core/polling.py,sha256=Z6VXn-PCGk4XX-4tQWZG59qJyCIS0eIrpPUORQDIGrs,1077
|
|
23
23
|
pinexq_client/core/sirenaccess.py,sha256=F7eZI5Pz79el0D30SYNGsiS2qWaAZF_jrCrUy-q2GgY,6992
|
|
24
|
-
pinexq_client/job_management/__init__.py,sha256=
|
|
24
|
+
pinexq_client/job_management/__init__.py,sha256=jaOkYyOSur8EMcz4fgEFlENQFwagHKjLwlR67E9FIhs,598
|
|
25
25
|
pinexq_client/job_management/enterjma.py,sha256=Ivl_jVPw_gaLyU5nKbywM-bbVGpn0MoCrZ0DMbJYf3s,1411
|
|
26
26
|
pinexq_client/job_management/hcos/__init__.py,sha256=TZgs5kuBk3lSBxPfn5ehgbdUgzPy2jn1PC3Ea6VQY-k,584
|
|
27
27
|
pinexq_client/job_management/hcos/entrypoint_hco.py,sha256=qodjAwO_MtawUuhmaYjhGXHV-uW1k94V9gKRYZRkhn4,2234
|
|
@@ -30,7 +30,7 @@ pinexq_client/job_management/hcos/input_dataslot_hco.py,sha256=SDflhyW8kjpcTUfKA
|
|
|
30
30
|
pinexq_client/job_management/hcos/job_hco.py,sha256=8Lq5RABq7XUp3Z6jhYegPgVPfm591-38eC8CCLes0KQ,8934
|
|
31
31
|
pinexq_client/job_management/hcos/job_query_result_hco.py,sha256=I0G8YIlYDhTahLz8n06L8BywlcsMGNWUEsmEr4Sk0GU,3315
|
|
32
32
|
pinexq_client/job_management/hcos/job_used_tags_hco.py,sha256=nys6E97NNXATdnvX6KZ46JR9qEb2lnqol9ZvJVEiNpQ,944
|
|
33
|
-
pinexq_client/job_management/hcos/jobsroot_hco.py,sha256=
|
|
33
|
+
pinexq_client/job_management/hcos/jobsroot_hco.py,sha256=5h_CYb9FyjpmAlvDXuK_AimCvomadFTcCSQ6QmMD0QY,4726
|
|
34
34
|
pinexq_client/job_management/hcos/output_dataslot_hco.py,sha256=zxpo-fI9eHcp_pMKcf2l-gRoPHX1RzQO53auHMRB_T8,1549
|
|
35
35
|
pinexq_client/job_management/hcos/processing_step_hco.py,sha256=JH9s3ifchYvpwzPGkDon9AyDnjdZZiSCu1Xtgd2jKnY,6131
|
|
36
36
|
pinexq_client/job_management/hcos/processing_step_used_tags_hco.py,sha256=90-2IWlYTcYX62NzmAPnmcUCwMDhmMZyBrNs_G3yigs,1067
|
|
@@ -43,11 +43,11 @@ pinexq_client/job_management/hcos/workdata_used_tags_query_result_hco.py,sha256=
|
|
|
43
43
|
pinexq_client/job_management/hcos/workdataroot_hco.py,sha256=LdEPW2JJTqAWi-6zj-40lfREhthcDL6nPXQk_nfMtCA,3936
|
|
44
44
|
pinexq_client/job_management/known_relations.py,sha256=f3-7RagAfeSFv9b54l5zxnLKbVQjQQHzYsM4W2QHf0Y,708
|
|
45
45
|
pinexq_client/job_management/model/__init__.py,sha256=iuAKRXdW_Mxo0i3HsBfEzhJJZUKkNe3qs4gLW-ge1PU,63
|
|
46
|
-
pinexq_client/job_management/model/open_api_generated.py,sha256=
|
|
46
|
+
pinexq_client/job_management/model/open_api_generated.py,sha256=s-XtnhuK5YmBhbOqKsy09iRKrQMtZL6-N2be-g5d8QU,33211
|
|
47
47
|
pinexq_client/job_management/model/sirenentities.py,sha256=MUjgByEwzQcrduCEJuNK85uAj8SLTdyaiKmnlB44h3E,3430
|
|
48
48
|
pinexq_client/job_management/tool/__init__.py,sha256=zPobd-hQyANHzC0-TjJG91z9XrewvE54ZJ6VViymW5M,128
|
|
49
|
-
pinexq_client/job_management/tool/job.py,sha256=
|
|
49
|
+
pinexq_client/job_management/tool/job.py,sha256=p9WDfJiIcQMZyLfNajpxK9kSd0DqF2H9hoS7lvDIFC0,25496
|
|
50
50
|
pinexq_client/job_management/tool/job_group.py,sha256=TNWw46UDyP2gmArhbzMAqpHa6lS2hzwarLIrxxpOMnk,4822
|
|
51
51
|
pinexq_client/job_management/tool/processing_step.py,sha256=LLesEbS7vaAiCoGs7MV8bnaD8bWnkK-2YTxAsyPiJFM,10796
|
|
52
52
|
pinexq_client/job_management/tool/workdata.py,sha256=wRy_yfFZUJDh-hoGUuAbQaRGtPysDmEOhLwD84Fgz04,5510
|
|
53
|
-
pinexq_client-0.9.2.
|
|
53
|
+
pinexq_client-0.9.2.20250515.43.dist-info/RECORD,,
|
{pinexq_client-0.9.2.20250506.42.dist-info → pinexq_client-0.9.2.20250515.43.dist-info}/WHEEL
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|