Skip to content

Commit 6bd5468

Browse files
Updated type hints
1 parent 4a7ba02 commit 6bd5468

9 files changed

Lines changed: 55 additions & 42 deletions

src/conductor/client/event/event_client.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
from typing import Dict
2+
13
from conductor.client.event.queue.queue_configuration import QueueConfiguration
24
from conductor.client.http.api import EventResourceApi
35
from conductor.client.http.api_client import ApiClient
@@ -13,13 +15,13 @@ def delete_queue_configuration(self, queue_configuration: QueueConfiguration) ->
1315
queue_type=queue_configuration.queue_type,
1416
)
1517

16-
def get_kafka_queue_configuration(self, queue_topic: str) -> QueueConfiguration:
18+
def get_kafka_queue_configuration(self, queue_topic: str) -> Dict[str, object]:
1719
return self.get_queue_configuration(
1820
queue_type="kafka",
1921
queue_name=queue_topic,
2022
)
2123

22-
def get_queue_configuration(self, queue_type: str, queue_name: str) -> QueueConfiguration:
24+
def get_queue_configuration(self, queue_type: str, queue_name: str) -> Dict[str, object]:
2325
return self.client.get_queue_config(queue_type, queue_name)
2426

2527
def put_queue_configuration(self, queue_configuration: QueueConfiguration):

src/conductor/client/orkes/orkes_authorization_client.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
from conductor.client.authorization_client import AuthorizationClient
66
from conductor.client.configuration.configuration import Configuration
7+
from conductor.client.http.models import ExtendedConductorApplication
78
from conductor.client.http.models.authorization_request import AuthorizationRequest
89
from conductor.client.http.models.conductor_application import ConductorApplication
910
from conductor.client.http.models.conductor_user import ConductorUser
@@ -44,7 +45,7 @@ def get_app_by_access_key_id(self, access_key_id: str) -> ConductorApplication:
4445
app_obj = self.applicationResourceApi.get_app_by_access_key_id(access_key_id)
4546
return self.api_client.deserialize_class(app_obj, "ConductorApplication")
4647

47-
def list_applications(self) -> List[ConductorApplication]:
48+
def list_applications(self) -> List[ExtendedConductorApplication]:
4849
return self.applicationResourceApi.list_applications()
4950

5051
def update_application(

src/conductor/client/orkes/orkes_integration_client.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
from __future__ import absolute_import, annotations
22

3-
from typing import Dict, List, Optional
3+
from typing import List, Optional
44

55
from conductor.client.codegen.rest import ApiException
66
from conductor.client.configuration.configuration import Configuration
7+
from conductor.client.http.models import MessageTemplate
78
from conductor.client.http.models.integration import Integration
89
from conductor.client.http.models.integration_api import IntegrationApi
910
from conductor.client.http.models.integration_api_update import IntegrationApiUpdate
1011
from conductor.client.http.models.integration_def import IntegrationDef
1112
from conductor.client.http.models.integration_update import IntegrationUpdate
12-
from conductor.client.http.models.prompt_template import PromptTemplate
1313
from conductor.client.integration_client import IntegrationClient
1414
from conductor.client.orkes.orkes_base_client import OrkesBaseClient
1515

@@ -53,7 +53,7 @@ def get_integration(self, integration_name: str) -> Optional[Integration]:
5353
def get_integrations(self) -> List[Integration]:
5454
return self.integrationApi.get_integration_providers()
5555

56-
def get_integration_provider(self, name: str) -> Optional[IntegrationDef]:
56+
def get_integration_provider(self, name: str) -> Optional[Integration]:
5757
"""Get integration provider by name"""
5858
try:
5959
return self.integrationApi.get_integration_provider(name)
@@ -64,7 +64,7 @@ def get_integration_provider(self, name: str) -> Optional[IntegrationDef]:
6464

6565
def get_integration_providers(
6666
self, category: Optional[str] = None, active_only: Optional[bool] = None
67-
) -> List[IntegrationDef]:
67+
) -> List[Integration]:
6868
"""Get all integration providers with optional filtering"""
6969
kwargs = {}
7070
if category is not None:
@@ -79,7 +79,7 @@ def get_integration_provider_defs(self) -> List[IntegrationDef]:
7979

8080
def get_prompts_with_integration(
8181
self, ai_integration: str, model_name: str
82-
) -> List[PromptTemplate]:
82+
) -> List[MessageTemplate]:
8383
return self.integrationApi.get_prompts_with_integration(ai_integration, model_name)
8484

8585
def save_integration_api(self, integration_name, api_name, api_details: IntegrationApiUpdate):
@@ -127,15 +127,15 @@ def get_tags_for_integration_provider(self, name):
127127
# Utility Methods for Integration Provider Management
128128
def get_integration_provider_by_category(
129129
self, category: str, active_only: bool = True
130-
) -> List[IntegrationDef]:
130+
) -> List[Integration]:
131131
"""Get integration providers filtered by category"""
132132
return self.get_integration_providers(category=category, active_only=active_only)
133133

134-
def get_active_integration_providers(self) -> List[IntegrationDef]:
134+
def get_active_integration_providers(self) -> List[Integration]:
135135
"""Get only active integration providers"""
136136
return self.get_integration_providers(active_only=True)
137137

138-
def get_integration_available_apis(self, name: str) -> List[IntegrationApi]:
138+
def get_integration_available_apis(self, name: str) -> List[str]:
139139
"""Get available APIs for an integration"""
140140
return self.integrationApi.get_integration_available_apis(name)
141141

@@ -156,7 +156,7 @@ def get_all_integrations(
156156

157157
def get_providers_and_integrations(
158158
self, integration_type: Optional[str] = None, active_only: Optional[bool] = None
159-
) -> Dict[str, object]:
159+
) -> List[str]:
160160
"""Get providers and integrations together"""
161161
kwargs = {}
162162
if integration_type is not None:

src/conductor/client/orkes/orkes_metadata_client.py

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,25 @@
1010
from conductor.client.orkes.models.metadata_tag import MetadataTag
1111
from conductor.client.orkes.models.ratelimit_tag import RateLimitTag
1212
from conductor.client.orkes.orkes_base_client import OrkesBaseClient
13+
from conductor.client.http.models.extended_task_def import ExtendedTaskDef
14+
from conductor.client.http.models.extended_workflow_def import ExtendedWorkflowDef
1315

1416

1517
class OrkesMetadataClient(OrkesBaseClient, MetadataClient):
1618
def __init__(self, configuration: Configuration):
1719
super(OrkesMetadataClient, self).__init__(configuration)
1820

19-
def register_workflow_def(self, workflow_def: WorkflowDef, overwrite: Optional[bool] = True):
20-
self.metadataResourceApi.create(workflow_def, overwrite=overwrite)
21+
def register_workflow_def(
22+
self, workflow_def: ExtendedWorkflowDef, overwrite: Optional[bool] = True
23+
) -> object:
24+
return self.metadataResourceApi.create(workflow_def, overwrite=overwrite)
2125

22-
def update_workflow_def(self, workflow_def: WorkflowDef, overwrite: Optional[bool] = True):
23-
self.metadataResourceApi.update([workflow_def], overwrite=overwrite)
26+
def update_workflow_def(
27+
self, workflow_def: ExtendedWorkflowDef, overwrite: Optional[bool] = True
28+
) -> object:
29+
return self.metadataResourceApi.update([workflow_def], overwrite=overwrite)
2430

25-
def unregister_workflow_def(self, name: str, version: int):
31+
def unregister_workflow_def(self, name: str, version: int) -> None:
2632
self.metadataResourceApi.unregister_workflow_def(name, version)
2733

2834
def get_workflow_def(self, name: str, version: Optional[int] = None) -> WorkflowDef:
@@ -37,16 +43,16 @@ def get_workflow_def(self, name: str, version: Optional[int] = None) -> Workflow
3743
def get_all_workflow_defs(self) -> List[WorkflowDef]:
3844
return self.metadataResourceApi.get_workflow_defs()
3945

40-
def register_task_def(self, task_def: TaskDef):
41-
self.metadataResourceApi.register_task_def([task_def])
46+
def register_task_def(self, task_def: ExtendedTaskDef) -> object:
47+
return self.metadataResourceApi.register_task_def([task_def])
4248

4349
def update_task_def(self, task_def: TaskDef):
4450
self.metadataResourceApi.update_task_def(task_def)
4551

4652
def unregister_task_def(self, task_type: str):
4753
self.metadataResourceApi.unregister_task_def(task_type)
4854

49-
def get_task_def(self, task_type: str) -> TaskDef:
55+
def get_task_def(self, task_type: str) -> object:
5056
return self.metadataResourceApi.get_task_def(task_type)
5157

5258
def get_all_task_defs(self) -> List[TaskDef]:
@@ -59,7 +65,7 @@ def delete_workflow_tag(self, tag: MetadataTag, workflow_name: str):
5965
tagStr = TagString(tag.key, tag.type, tag.value)
6066
self.tagsApi.delete_workflow_tag(tagStr, workflow_name)
6167

62-
def get_workflow_tags(self, workflow_name: str) -> List[MetadataTag]:
68+
def get_workflow_tags(self, workflow_name: str) -> object:
6369
return self.tagsApi.get_workflow_tags(workflow_name)
6470

6571
def set_workflow_tags(self, tags: List[MetadataTag], workflow_name: str):
@@ -72,7 +78,7 @@ def deleteTaskTag(self, tag: MetadataTag, taskName: str):
7278
tagStr = TagString(tag.key, tag.type, tag.value)
7379
self.tagsApi.delete_task_tag(tagStr, taskName)
7480

75-
def getTaskTags(self, taskName: str) -> List[MetadataTag]:
81+
def getTaskTags(self, taskName: str) -> object:
7682
return self.tagsApi.get_task_tags(taskName)
7783

7884
def setTaskTags(self, tags: List[MetadataTag], taskName: str):

src/conductor/client/orkes/orkes_prompt_client.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
from conductor.client.configuration.configuration import Configuration
77
from conductor.client.http.models.prompt_template import PromptTemplate
88
from conductor.client.http.models.prompt_template_test_request import PromptTemplateTestRequest
9-
from conductor.client.orkes.models.metadata_tag import MetadataTag
9+
from conductor.client.http.models.tag import Tag
1010
from conductor.client.orkes.orkes_base_client import OrkesBaseClient
1111
from conductor.client.prompt_client import PromptClient
1212

@@ -32,13 +32,13 @@ def get_prompts(self):
3232
def delete_prompt(self, prompt_name: str):
3333
self.promptApi.delete_message_template(prompt_name)
3434

35-
def get_tags_for_prompt_template(self, prompt_name: str) -> List[MetadataTag]:
35+
def get_tags_for_prompt_template(self, prompt_name: str) -> List[Tag]:
3636
return self.promptApi.get_tags_for_prompt_template(prompt_name)
3737

38-
def update_tag_for_prompt_template(self, prompt_name: str, tags: List[MetadataTag]):
38+
def update_tag_for_prompt_template(self, prompt_name: str, tags: List[Tag]):
3939
self.promptApi.put_tag_for_prompt_template(tags, prompt_name)
4040

41-
def delete_tag_for_prompt_template(self, prompt_name: str, tags: List[MetadataTag]):
41+
def delete_tag_for_prompt_template(self, prompt_name: str, tags: List[Tag]):
4242
self.promptApi.delete_tag_for_prompt_template(tags, prompt_name)
4343

4444
def test_prompt(

src/conductor/client/orkes/orkes_scheduler_client.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
11
from __future__ import annotations
22

3-
from typing import List, Optional, Tuple
3+
from typing import List, Optional
44

55
from conductor.client.configuration.configuration import Configuration
6+
from conductor.client.http.models import WorkflowScheduleModel
67
from conductor.client.http.models.save_schedule_request import SaveScheduleRequest
78
from conductor.client.http.models.search_result_workflow_schedule_execution_model import (
89
SearchResultWorkflowScheduleExecutionModel,
910
)
1011
from conductor.client.http.models.workflow_schedule import WorkflowSchedule
1112
from conductor.client.orkes.models.metadata_tag import MetadataTag
13+
from conductor.client.http.models.tag import Tag
1214
from conductor.client.orkes.orkes_base_client import OrkesBaseClient
1315
from conductor.client.scheduler_client import SchedulerClient
1416

@@ -20,10 +22,10 @@ def __init__(self, configuration: Configuration):
2022
def save_schedule(self, save_schedule_request: SaveScheduleRequest):
2123
self.schedulerResourceApi.save_schedule(save_schedule_request)
2224

23-
def get_schedule(self, name: str) -> Tuple[Optional[WorkflowSchedule], str]:
25+
def get_schedule(self, name: str) -> WorkflowSchedule:
2426
return self.schedulerResourceApi.get_schedule(name)
2527

26-
def get_all_schedules(self, workflow_name: Optional[str] = None) -> List[WorkflowSchedule]:
28+
def get_all_schedules(self, workflow_name: Optional[str] = None) -> List[WorkflowScheduleModel]:
2729
kwargs = {}
2830
if workflow_name:
2931
kwargs.update({"workflow_name": workflow_name})
@@ -88,8 +90,8 @@ def requeue_all_execution_records(self):
8890
def set_scheduler_tags(self, tags: List[MetadataTag], name: str):
8991
self.schedulerResourceApi.put_tag_for_schedule(tags, name)
9092

91-
def get_scheduler_tags(self, name: str) -> List[MetadataTag]:
93+
def get_scheduler_tags(self, name: str) -> List[Tag]:
9294
return self.schedulerResourceApi.get_tags_for_schedule(name)
9395

94-
def delete_scheduler_tags(self, tags: List[MetadataTag], name: str) -> List[MetadataTag]:
96+
def delete_scheduler_tags(self, tags: List[MetadataTag], name: str) -> None:
9597
return self.schedulerResourceApi.delete_tag_for_schedule(tags, name)

src/conductor/client/orkes/orkes_secret_client.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
from typing import List, Set
22

33
from conductor.client.configuration.configuration import Configuration
4-
from conductor.client.orkes.models.metadata_tag import MetadataTag
4+
from conductor.client.http.models.tag import Tag
55
from conductor.client.orkes.orkes_base_client import OrkesBaseClient
66
from conductor.client.secret_client import SecretClient
77

@@ -25,14 +25,14 @@ def list_secrets_that_user_can_grant_access_to(self) -> List[str]:
2525
def delete_secret(self, key: str):
2626
self.secretResourceApi.delete_secret(key)
2727

28-
def secret_exists(self, key: str) -> bool:
28+
def secret_exists(self, key: str) -> object:
2929
return self.secretResourceApi.secret_exists(key)
3030

31-
def set_secret_tags(self, tags: List[MetadataTag], key: str):
31+
def set_secret_tags(self, tags: List[Tag], key: str):
3232
self.secretResourceApi.put_tag_for_secret(tags, key)
3333

34-
def get_secret_tags(self, key: str) -> List[MetadataTag]:
34+
def get_secret_tags(self, key: str) -> List[Tag]:
3535
return self.secretResourceApi.get_tags(key)
3636

37-
def delete_secret_tags(self, tags: List[MetadataTag], key: str) -> List[MetadataTag]:
37+
def delete_secret_tags(self, tags: List[Tag], key: str) -> None:
3838
return self.secretResourceApi.delete_tag_for_secret(tags, key)

src/conductor/client/orkes/orkes_workflow_client.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
from conductor.client.http.models.scrollable_search_result_workflow_summary import (
1010
ScrollableSearchResultWorkflowSummary,
1111
)
12-
from conductor.client.http.models.signal_response import SignalResponse
1312
from conductor.client.http.models.skip_task_request import SkipTaskRequest
1413
from conductor.client.http.models.start_workflow_request import StartWorkflowRequest
1514
from conductor.client.http.models.workflow import Workflow
@@ -70,7 +69,7 @@ def execute_workflow_with_return_strategy(
7069
wait_for_seconds: int = 30,
7170
consistency: Optional[str] = None,
7271
return_strategy: Optional[str] = None,
73-
) -> SignalResponse:
72+
) -> WorkflowRun:
7473
"""Execute a workflow synchronously with optional reactive features
7574
Args:
7675
start_workflow_request: StartWorkflowRequest containing workflow details

src/conductor/client/workflow/executor/workflow_executor.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
from conductor.client.http.api.metadata_resource_api import MetadataResourceApi
88
from conductor.client.http.api.task_resource_api import TaskResourceApi
99
from conductor.client.http.api_client import ApiClient
10+
from conductor.client.http.models import Task
1011
from conductor.client.http.models.correlation_ids_search_request import CorrelationIdsSearchRequest
1112
from conductor.client.http.models.rerun_workflow_request import RerunWorkflowRequest
1213
from conductor.client.http.models.scrollable_search_result_workflow_summary import (
@@ -17,7 +18,7 @@
1718
from conductor.client.http.models.start_workflow_request import StartWorkflowRequest
1819
from conductor.client.http.models.task_result import TaskResult
1920
from conductor.client.http.models.workflow import Workflow
20-
from conductor.client.http.models.workflow_def import WorkflowDef
21+
from conductor.client.http.models.extended_workflow_def import ExtendedWorkflowDef
2122
from conductor.client.http.models.workflow_run import WorkflowRun
2223
from conductor.client.http.models.workflow_status import WorkflowStatus
2324
from conductor.client.orkes.orkes_workflow_client import OrkesWorkflowClient
@@ -30,7 +31,9 @@ def __init__(self, configuration: Configuration) -> None:
3031
self.task_client = TaskResourceApi(api_client)
3132
self.workflow_client = OrkesWorkflowClient(configuration)
3233

33-
def register_workflow(self, workflow: WorkflowDef, overwrite: Optional[bool] = None) -> object:
34+
def register_workflow(
35+
self, workflow: ExtendedWorkflowDef, overwrite: Optional[bool] = None
36+
) -> object:
3437
"""Create a new workflow definition"""
3538
kwargs = {}
3639
if overwrite is not None:
@@ -81,7 +84,7 @@ def execute_workflow_with_return_strategy(
8184
request_id: Optional[str] = None,
8285
consistency: Optional[str] = None,
8386
return_strategy: Optional[str] = None,
84-
) -> SignalResponse:
87+
) -> WorkflowRun:
8588
"""Execute a workflow synchronously with optional reactive features"""
8689
if request_id is None:
8790
request_id = str(uuid.uuid4())
@@ -291,7 +294,7 @@ def update_task_by_ref_name_sync(
291294
status=status,
292295
)
293296

294-
def get_task(self, task_id: str) -> str:
297+
def get_task(self, task_id: str) -> Task:
295298
"""Get task by Id"""
296299
return self.task_client.get_task(task_id=task_id)
297300

0 commit comments

Comments
 (0)