diff --git a/CHANGELOG.md b/CHANGELOG.md index 4a55d3b..8f33011 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,16 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## v0.2.0 (Unreleased) + +### New + +- Support for orchestration custom status ([#31](https://github.com/microsoft/durabletask-python/pull/31)) - contributed by [@famarting](https://github.com/famarting) + +### Updates + +- Updated `durabletask-protobuf` submodule reference to latest + ## v0.1.1a1 ### New diff --git a/durabletask/client.py b/durabletask/client.py index bd28ed1..50b5d07 100644 --- a/durabletask/client.py +++ b/durabletask/client.py @@ -104,7 +104,8 @@ def __init__(self, *, def schedule_new_orchestration(self, orchestrator: Union[task.Orchestrator[TInput, TOutput], str], *, input: Union[TInput, None] = None, instance_id: Union[str, None] = None, - start_at: Union[datetime, None] = None) -> str: + start_at: Union[datetime, None] = None, + reuse_id_policy: Union[pb.OrchestrationIdReusePolicy, None] = None) -> str: name = orchestrator if isinstance(orchestrator, str) else task.get_name(orchestrator) @@ -113,7 +114,9 @@ def schedule_new_orchestration(self, orchestrator: Union[task.Orchestrator[TInpu instanceId=instance_id if instance_id else uuid.uuid4().hex, input=wrappers_pb2.StringValue(value=shared.to_json(input)) if input is not None else None, scheduledStartTimestamp=helpers.new_timestamp(start_at) if start_at else None, - version=wrappers_pb2.StringValue(value="")) + version=wrappers_pb2.StringValue(value=""), + orchestrationIdReusePolicy=reuse_id_policy, + ) self._logger.info(f"Starting new '{name}' instance with ID = '{req.instanceId}'.") res: pb.CreateInstanceResponse = self._stub.StartInstance(req) diff --git a/durabletask/internal/orchestrator_service_pb2.py b/durabletask/internal/orchestrator_service_pb2.py index cd1ef16..6ee3bbb 100644 --- a/durabletask/internal/orchestrator_service_pb2.py +++ b/durabletask/internal/orchestrator_service_pb2.py @@ -1,11 +1,22 @@ # -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE # source: orchestrator_service.proto +# Protobuf Python Version: 5.27.2 """Generated protocol buffer code.""" -from google.protobuf.internal import builder as _builder from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 5, + 27, + 2, + '', + 'orchestrator_service.proto' +) # @@protoc_insertion_point(imports) _sym_db = _symbol_database.Default() @@ -17,186 +28,196 @@ from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1aorchestrator_service.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1egoogle/protobuf/wrappers.proto\x1a\x1bgoogle/protobuf/empty.proto\"^\n\x15OrchestrationInstance\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x31\n\x0b\x65xecutionId\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xc2\x01\n\x0f\x41\x63tivityRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12-\n\x07version\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x35\n\x15orchestrationInstance\x18\x04 \x01(\x0b\x32\x16.OrchestrationInstance\x12\x0e\n\x06taskId\x18\x05 \x01(\x05\"\x91\x01\n\x10\x41\x63tivityResponse\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0e\n\x06taskId\x18\x02 \x01(\x05\x12,\n\x06result\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x0e\x66\x61ilureDetails\x18\x04 \x01(\x0b\x32\x13.TaskFailureDetails\"\xb2\x01\n\x12TaskFailureDetails\x12\x11\n\terrorType\x18\x01 \x01(\t\x12\x14\n\x0c\x65rrorMessage\x18\x02 \x01(\t\x12\x30\n\nstackTrace\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12)\n\x0cinnerFailure\x18\x04 \x01(\x0b\x32\x13.TaskFailureDetails\x12\x16\n\x0eisNonRetriable\x18\x05 \x01(\x08\"\xbf\x01\n\x12ParentInstanceInfo\x12\x17\n\x0ftaskScheduledId\x18\x01 \x01(\x05\x12*\n\x04name\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12-\n\x07version\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x35\n\x15orchestrationInstance\x18\x04 \x01(\x0b\x32\x16.OrchestrationInstance\"i\n\x0cTraceContext\x12\x13\n\x0btraceParent\x18\x01 \x01(\t\x12\x12\n\x06spanID\x18\x02 \x01(\tB\x02\x18\x01\x12\x30\n\ntraceState\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x88\x03\n\x15\x45xecutionStartedEvent\x12\x0c\n\x04name\x18\x01 \x01(\t\x12-\n\x07version\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x35\n\x15orchestrationInstance\x18\x04 \x01(\x0b\x32\x16.OrchestrationInstance\x12+\n\x0eparentInstance\x18\x05 \x01(\x0b\x32\x13.ParentInstanceInfo\x12;\n\x17scheduledStartTimestamp\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12)\n\x12parentTraceContext\x18\x07 \x01(\x0b\x32\r.TraceContext\x12\x39\n\x13orchestrationSpanID\x18\x08 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xa7\x01\n\x17\x45xecutionCompletedEvent\x12\x31\n\x13orchestrationStatus\x18\x01 \x01(\x0e\x32\x14.OrchestrationStatus\x12,\n\x06result\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x0e\x66\x61ilureDetails\x18\x03 \x01(\x0b\x32\x13.TaskFailureDetails\"X\n\x18\x45xecutionTerminatedEvent\x12+\n\x05input\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x0f\n\x07recurse\x18\x02 \x01(\x08\"\xa9\x01\n\x12TaskScheduledEvent\x12\x0c\n\x04name\x18\x01 \x01(\t\x12-\n\x07version\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12)\n\x12parentTraceContext\x18\x04 \x01(\x0b\x32\r.TraceContext\"[\n\x12TaskCompletedEvent\x12\x17\n\x0ftaskScheduledId\x18\x01 \x01(\x05\x12,\n\x06result\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"W\n\x0fTaskFailedEvent\x12\x17\n\x0ftaskScheduledId\x18\x01 \x01(\x05\x12+\n\x0e\x66\x61ilureDetails\x18\x02 \x01(\x0b\x32\x13.TaskFailureDetails\"\xcf\x01\n$SubOrchestrationInstanceCreatedEvent\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12-\n\x07version\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05input\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12)\n\x12parentTraceContext\x18\x05 \x01(\x0b\x32\r.TraceContext\"o\n&SubOrchestrationInstanceCompletedEvent\x12\x17\n\x0ftaskScheduledId\x18\x01 \x01(\x05\x12,\n\x06result\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"k\n#SubOrchestrationInstanceFailedEvent\x12\x17\n\x0ftaskScheduledId\x18\x01 \x01(\x05\x12+\n\x0e\x66\x61ilureDetails\x18\x02 \x01(\x0b\x32\x13.TaskFailureDetails\"?\n\x11TimerCreatedEvent\x12*\n\x06\x66ireAt\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"N\n\x0fTimerFiredEvent\x12*\n\x06\x66ireAt\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0f\n\x07timerId\x18\x02 \x01(\x05\"\x1a\n\x18OrchestratorStartedEvent\"\x1c\n\x1aOrchestratorCompletedEvent\"_\n\x0e\x45ventSentEvent\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"M\n\x10\x45ventRaisedEvent\x12\x0c\n\x04name\x18\x01 \x01(\t\x12+\n\x05input\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x1c\n\x0cGenericEvent\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\t\"D\n\x11HistoryStateEvent\x12/\n\x12orchestrationState\x18\x01 \x01(\x0b\x32\x13.OrchestrationState\"A\n\x12\x43ontinueAsNewEvent\x12+\n\x05input\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"F\n\x17\x45xecutionSuspendedEvent\x12+\n\x05input\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"D\n\x15\x45xecutionResumedEvent\x12+\n\x05input\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x86\t\n\x0cHistoryEvent\x12\x0f\n\x07\x65ventId\x18\x01 \x01(\x05\x12-\n\ttimestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x32\n\x10\x65xecutionStarted\x18\x03 \x01(\x0b\x32\x16.ExecutionStartedEventH\x00\x12\x36\n\x12\x65xecutionCompleted\x18\x04 \x01(\x0b\x32\x18.ExecutionCompletedEventH\x00\x12\x38\n\x13\x65xecutionTerminated\x18\x05 \x01(\x0b\x32\x19.ExecutionTerminatedEventH\x00\x12,\n\rtaskScheduled\x18\x06 \x01(\x0b\x32\x13.TaskScheduledEventH\x00\x12,\n\rtaskCompleted\x18\x07 \x01(\x0b\x32\x13.TaskCompletedEventH\x00\x12&\n\ntaskFailed\x18\x08 \x01(\x0b\x32\x10.TaskFailedEventH\x00\x12P\n\x1fsubOrchestrationInstanceCreated\x18\t \x01(\x0b\x32%.SubOrchestrationInstanceCreatedEventH\x00\x12T\n!subOrchestrationInstanceCompleted\x18\n \x01(\x0b\x32\'.SubOrchestrationInstanceCompletedEventH\x00\x12N\n\x1esubOrchestrationInstanceFailed\x18\x0b \x01(\x0b\x32$.SubOrchestrationInstanceFailedEventH\x00\x12*\n\x0ctimerCreated\x18\x0c \x01(\x0b\x32\x12.TimerCreatedEventH\x00\x12&\n\ntimerFired\x18\r \x01(\x0b\x32\x10.TimerFiredEventH\x00\x12\x38\n\x13orchestratorStarted\x18\x0e \x01(\x0b\x32\x19.OrchestratorStartedEventH\x00\x12<\n\x15orchestratorCompleted\x18\x0f \x01(\x0b\x32\x1b.OrchestratorCompletedEventH\x00\x12$\n\teventSent\x18\x10 \x01(\x0b\x32\x0f.EventSentEventH\x00\x12(\n\x0b\x65ventRaised\x18\x11 \x01(\x0b\x32\x11.EventRaisedEventH\x00\x12%\n\x0cgenericEvent\x18\x12 \x01(\x0b\x32\r.GenericEventH\x00\x12*\n\x0chistoryState\x18\x13 \x01(\x0b\x32\x12.HistoryStateEventH\x00\x12,\n\rcontinueAsNew\x18\x14 \x01(\x0b\x32\x13.ContinueAsNewEventH\x00\x12\x36\n\x12\x65xecutionSuspended\x18\x15 \x01(\x0b\x32\x18.ExecutionSuspendedEventH\x00\x12\x32\n\x10\x65xecutionResumed\x18\x16 \x01(\x0b\x32\x16.ExecutionResumedEventH\x00\x42\x0b\n\teventType\"~\n\x12ScheduleTaskAction\x12\x0c\n\x04name\x18\x01 \x01(\t\x12-\n\x07version\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x9c\x01\n\x1c\x43reateSubOrchestrationAction\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12-\n\x07version\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05input\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"?\n\x11\x43reateTimerAction\x12*\n\x06\x66ireAt\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"u\n\x0fSendEventAction\x12(\n\x08instance\x18\x01 \x01(\x0b\x32\x16.OrchestrationInstance\x12\x0c\n\x04name\x18\x02 \x01(\t\x12*\n\x04\x64\x61ta\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xb4\x02\n\x1b\x43ompleteOrchestrationAction\x12\x31\n\x13orchestrationStatus\x18\x01 \x01(\x0e\x32\x14.OrchestrationStatus\x12,\n\x06result\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12-\n\x07\x64\x65tails\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x30\n\nnewVersion\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12&\n\x0f\x63\x61rryoverEvents\x18\x05 \x03(\x0b\x32\r.HistoryEvent\x12+\n\x0e\x66\x61ilureDetails\x18\x06 \x01(\x0b\x32\x13.TaskFailureDetails\"q\n\x1cTerminateOrchestrationAction\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12,\n\x06reason\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x0f\n\x07recurse\x18\x03 \x01(\x08\"\xfa\x02\n\x12OrchestratorAction\x12\n\n\x02id\x18\x01 \x01(\x05\x12+\n\x0cscheduleTask\x18\x02 \x01(\x0b\x32\x13.ScheduleTaskActionH\x00\x12?\n\x16\x63reateSubOrchestration\x18\x03 \x01(\x0b\x32\x1d.CreateSubOrchestrationActionH\x00\x12)\n\x0b\x63reateTimer\x18\x04 \x01(\x0b\x32\x12.CreateTimerActionH\x00\x12%\n\tsendEvent\x18\x05 \x01(\x0b\x32\x10.SendEventActionH\x00\x12=\n\x15\x63ompleteOrchestration\x18\x06 \x01(\x0b\x32\x1c.CompleteOrchestrationActionH\x00\x12?\n\x16terminateOrchestration\x18\x07 \x01(\x0b\x32\x1d.TerminateOrchestrationActionH\x00\x42\x18\n\x16orchestratorActionType\"\xda\x01\n\x13OrchestratorRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x31\n\x0b\x65xecutionId\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12!\n\npastEvents\x18\x03 \x03(\x0b\x32\r.HistoryEvent\x12 \n\tnewEvents\x18\x04 \x03(\x0b\x32\r.HistoryEvent\x12\x37\n\x10\x65ntityParameters\x18\x05 \x01(\x0b\x32\x1d.OrchestratorEntityParameters\"\x84\x01\n\x14OrchestratorResponse\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12$\n\x07\x61\x63tions\x18\x02 \x03(\x0b\x32\x13.OrchestratorAction\x12\x32\n\x0c\x63ustomStatus\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xd2\x01\n\x15\x43reateInstanceRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12-\n\x07version\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05input\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12;\n\x17scheduledStartTimestamp\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\",\n\x16\x43reateInstanceResponse\x12\x12\n\ninstanceId\x18\x01 \x01(\t\"E\n\x12GetInstanceRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x1b\n\x13getInputsAndOutputs\x18\x02 \x01(\x08\"V\n\x13GetInstanceResponse\x12\x0e\n\x06\x65xists\x18\x01 \x01(\x08\x12/\n\x12orchestrationState\x18\x02 \x01(\x0b\x32\x13.OrchestrationState\"Y\n\x15RewindInstanceRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12,\n\x06reason\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x18\n\x16RewindInstanceResponse\"\x81\x04\n\x12OrchestrationState\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12-\n\x07version\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\x13orchestrationStatus\x18\x04 \x01(\x0e\x32\x14.OrchestrationStatus\x12;\n\x17scheduledStartTimestamp\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x34\n\x10\x63reatedTimestamp\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x38\n\x14lastUpdatedTimestamp\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12+\n\x05input\x18\x08 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12,\n\x06output\x18\t \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x63ustomStatus\x18\n \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x0e\x66\x61ilureDetails\x18\x0b \x01(\x0b\x32\x13.TaskFailureDetails\"b\n\x11RaiseEventRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x14\n\x12RaiseEventResponse\"g\n\x10TerminateRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12,\n\x06output\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x11\n\trecursive\x18\x03 \x01(\x08\"\x13\n\x11TerminateResponse\"R\n\x0eSuspendRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12,\n\x06reason\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x11\n\x0fSuspendResponse\"Q\n\rResumeRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12,\n\x06reason\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x10\n\x0eResumeResponse\"6\n\x15QueryInstancesRequest\x12\x1d\n\x05query\x18\x01 \x01(\x0b\x32\x0e.InstanceQuery\"\x82\x03\n\rInstanceQuery\x12+\n\rruntimeStatus\x18\x01 \x03(\x0e\x32\x14.OrchestrationStatus\x12\x33\n\x0f\x63reatedTimeFrom\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x31\n\rcreatedTimeTo\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x32\n\x0ctaskHubNames\x18\x04 \x03(\x0b\x32\x1c.google.protobuf.StringValue\x12\x18\n\x10maxInstanceCount\x18\x05 \x01(\x05\x12\x37\n\x11\x63ontinuationToken\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x36\n\x10instanceIdPrefix\x18\x07 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x1d\n\x15\x66\x65tchInputsAndOutputs\x18\x08 \x01(\x08\"\x82\x01\n\x16QueryInstancesResponse\x12/\n\x12orchestrationState\x18\x01 \x03(\x0b\x32\x13.OrchestrationState\x12\x37\n\x11\x63ontinuationToken\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"m\n\x15PurgeInstancesRequest\x12\x14\n\ninstanceId\x18\x01 \x01(\tH\x00\x12\x33\n\x13purgeInstanceFilter\x18\x02 \x01(\x0b\x32\x14.PurgeInstanceFilterH\x00\x42\t\n\x07request\"\xaa\x01\n\x13PurgeInstanceFilter\x12\x33\n\x0f\x63reatedTimeFrom\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x31\n\rcreatedTimeTo\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12+\n\rruntimeStatus\x18\x03 \x03(\x0e\x32\x14.OrchestrationStatus\"6\n\x16PurgeInstancesResponse\x12\x1c\n\x14\x64\x65letedInstanceCount\x18\x01 \x01(\x05\"0\n\x14\x43reateTaskHubRequest\x12\x18\n\x10recreateIfExists\x18\x01 \x01(\x08\"\x17\n\x15\x43reateTaskHubResponse\"\x16\n\x14\x44\x65leteTaskHubRequest\"\x17\n\x15\x44\x65leteTaskHubResponse\"\xaa\x01\n\x13SignalEntityRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x11\n\trequestId\x18\x04 \x01(\t\x12\x31\n\rscheduledTime\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\x16\n\x14SignalEntityResponse\"<\n\x10GetEntityRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x14\n\x0cincludeState\x18\x02 \x01(\x08\"D\n\x11GetEntityResponse\x12\x0e\n\x06\x65xists\x18\x01 \x01(\x08\x12\x1f\n\x06\x65ntity\x18\x02 \x01(\x0b\x32\x0f.EntityMetadata\"\xcb\x02\n\x0b\x45ntityQuery\x12:\n\x14instanceIdStartsWith\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x34\n\x10lastModifiedFrom\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x32\n\x0elastModifiedTo\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x14\n\x0cincludeState\x18\x04 \x01(\x08\x12\x18\n\x10includeTransient\x18\x05 \x01(\x08\x12-\n\x08pageSize\x18\x06 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12\x37\n\x11\x63ontinuationToken\x18\x07 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"3\n\x14QueryEntitiesRequest\x12\x1b\n\x05query\x18\x01 \x01(\x0b\x32\x0c.EntityQuery\"s\n\x15QueryEntitiesResponse\x12!\n\x08\x65ntities\x18\x01 \x03(\x0b\x32\x0f.EntityMetadata\x12\x37\n\x11\x63ontinuationToken\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xdb\x01\n\x0e\x45ntityMetadata\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x34\n\x10lastModifiedTime\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x18\n\x10\x62\x61\x63klogQueueSize\x18\x03 \x01(\x05\x12.\n\x08lockedBy\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x35\n\x0fserializedState\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x8f\x01\n\x19\x43leanEntityStorageRequest\x12\x37\n\x11\x63ontinuationToken\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x1b\n\x13removeEmptyEntities\x18\x02 \x01(\x08\x12\x1c\n\x14releaseOrphanedLocks\x18\x03 \x01(\x08\"\x92\x01\n\x1a\x43leanEntityStorageResponse\x12\x37\n\x11\x63ontinuationToken\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x1c\n\x14\x65mptyEntitiesRemoved\x18\x02 \x01(\x05\x12\x1d\n\x15orphanedLocksReleased\x18\x03 \x01(\x05\"]\n\x1cOrchestratorEntityParameters\x12=\n\x1a\x65ntityMessageReorderWindow\x18\x01 \x01(\x0b\x32\x19.google.protobuf.Duration\"\x82\x01\n\x12\x45ntityBatchRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x31\n\x0b\x65ntityState\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12%\n\noperations\x18\x03 \x03(\x0b\x32\x11.OperationRequest\"\xb9\x01\n\x11\x45ntityBatchResult\x12!\n\x07results\x18\x01 \x03(\x0b\x32\x10.OperationResult\x12!\n\x07\x61\x63tions\x18\x02 \x03(\x0b\x32\x10.OperationAction\x12\x31\n\x0b\x65ntityState\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x0e\x66\x61ilureDetails\x18\x04 \x01(\x0b\x32\x13.TaskFailureDetails\"e\n\x10OperationRequest\x12\x11\n\toperation\x18\x01 \x01(\t\x12\x11\n\trequestId\x18\x02 \x01(\t\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"w\n\x0fOperationResult\x12*\n\x07success\x18\x01 \x01(\x0b\x32\x17.OperationResultSuccessH\x00\x12*\n\x07\x66\x61ilure\x18\x02 \x01(\x0b\x32\x17.OperationResultFailureH\x00\x42\x0c\n\nresultType\"F\n\x16OperationResultSuccess\x12,\n\x06result\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"E\n\x16OperationResultFailure\x12+\n\x0e\x66\x61ilureDetails\x18\x01 \x01(\x0b\x32\x13.TaskFailureDetails\"\x9c\x01\n\x0fOperationAction\x12\n\n\x02id\x18\x01 \x01(\x05\x12\'\n\nsendSignal\x18\x02 \x01(\x0b\x32\x11.SendSignalActionH\x00\x12=\n\x15startNewOrchestration\x18\x03 \x01(\x0b\x32\x1c.StartNewOrchestrationActionH\x00\x42\x15\n\x13operationActionType\"\x94\x01\n\x10SendSignalAction\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\rscheduledTime\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xce\x01\n\x1bStartNewOrchestrationAction\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12-\n\x07version\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05input\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\rscheduledTime\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\x15\n\x13GetWorkItemsRequest\"\xa5\x01\n\x08WorkItem\x12\x33\n\x13orchestratorRequest\x18\x01 \x01(\x0b\x32\x14.OrchestratorRequestH\x00\x12+\n\x0f\x61\x63tivityRequest\x18\x02 \x01(\x0b\x32\x10.ActivityRequestH\x00\x12,\n\rentityRequest\x18\x03 \x01(\x0b\x32\x13.EntityBatchRequestH\x00\x42\t\n\x07request\"\x16\n\x14\x43ompleteTaskResponse*\xb5\x02\n\x13OrchestrationStatus\x12 \n\x1cORCHESTRATION_STATUS_RUNNING\x10\x00\x12\"\n\x1eORCHESTRATION_STATUS_COMPLETED\x10\x01\x12)\n%ORCHESTRATION_STATUS_CONTINUED_AS_NEW\x10\x02\x12\x1f\n\x1bORCHESTRATION_STATUS_FAILED\x10\x03\x12!\n\x1dORCHESTRATION_STATUS_CANCELED\x10\x04\x12#\n\x1fORCHESTRATION_STATUS_TERMINATED\x10\x05\x12 \n\x1cORCHESTRATION_STATUS_PENDING\x10\x06\x12\"\n\x1eORCHESTRATION_STATUS_SUSPENDED\x10\x07\x32\xfc\n\n\x15TaskHubSidecarService\x12\x37\n\x05Hello\x12\x16.google.protobuf.Empty\x1a\x16.google.protobuf.Empty\x12@\n\rStartInstance\x12\x16.CreateInstanceRequest\x1a\x17.CreateInstanceResponse\x12\x38\n\x0bGetInstance\x12\x13.GetInstanceRequest\x1a\x14.GetInstanceResponse\x12\x41\n\x0eRewindInstance\x12\x16.RewindInstanceRequest\x1a\x17.RewindInstanceResponse\x12\x41\n\x14WaitForInstanceStart\x12\x13.GetInstanceRequest\x1a\x14.GetInstanceResponse\x12\x46\n\x19WaitForInstanceCompletion\x12\x13.GetInstanceRequest\x1a\x14.GetInstanceResponse\x12\x35\n\nRaiseEvent\x12\x12.RaiseEventRequest\x1a\x13.RaiseEventResponse\x12:\n\x11TerminateInstance\x12\x11.TerminateRequest\x1a\x12.TerminateResponse\x12\x34\n\x0fSuspendInstance\x12\x0f.SuspendRequest\x1a\x10.SuspendResponse\x12\x31\n\x0eResumeInstance\x12\x0e.ResumeRequest\x1a\x0f.ResumeResponse\x12\x41\n\x0eQueryInstances\x12\x16.QueryInstancesRequest\x1a\x17.QueryInstancesResponse\x12\x41\n\x0ePurgeInstances\x12\x16.PurgeInstancesRequest\x1a\x17.PurgeInstancesResponse\x12\x31\n\x0cGetWorkItems\x12\x14.GetWorkItemsRequest\x1a\t.WorkItem0\x01\x12@\n\x14\x43ompleteActivityTask\x12\x11.ActivityResponse\x1a\x15.CompleteTaskResponse\x12H\n\x18\x43ompleteOrchestratorTask\x12\x15.OrchestratorResponse\x1a\x15.CompleteTaskResponse\x12?\n\x12\x43ompleteEntityTask\x12\x12.EntityBatchResult\x1a\x15.CompleteTaskResponse\x12>\n\rCreateTaskHub\x12\x15.CreateTaskHubRequest\x1a\x16.CreateTaskHubResponse\x12>\n\rDeleteTaskHub\x12\x15.DeleteTaskHubRequest\x1a\x16.DeleteTaskHubResponse\x12;\n\x0cSignalEntity\x12\x14.SignalEntityRequest\x1a\x15.SignalEntityResponse\x12\x32\n\tGetEntity\x12\x11.GetEntityRequest\x1a\x12.GetEntityResponse\x12>\n\rQueryEntities\x12\x15.QueryEntitiesRequest\x1a\x16.QueryEntitiesResponse\x12M\n\x12\x43leanEntityStorage\x12\x1a.CleanEntityStorageRequest\x1a\x1b.CleanEntityStorageResponseBf\n1com.microsoft.durabletask.implementation.protobufZ\x10/internal/protos\xaa\x02\x1eMicrosoft.DurableTask.Protobufb\x06proto3') - -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals()) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'orchestrator_service_pb2', globals()) -if _descriptor._USE_C_DESCRIPTORS == False: +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1aorchestrator_service.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1egoogle/protobuf/wrappers.proto\x1a\x1bgoogle/protobuf/empty.proto\"^\n\x15OrchestrationInstance\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x31\n\x0b\x65xecutionId\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xed\x01\n\x0f\x41\x63tivityRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12-\n\x07version\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x35\n\x15orchestrationInstance\x18\x04 \x01(\x0b\x32\x16.OrchestrationInstance\x12\x0e\n\x06taskId\x18\x05 \x01(\x05\x12)\n\x12parentTraceContext\x18\x06 \x01(\x0b\x32\r.TraceContext\"\x91\x01\n\x10\x41\x63tivityResponse\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0e\n\x06taskId\x18\x02 \x01(\x05\x12,\n\x06result\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x0e\x66\x61ilureDetails\x18\x04 \x01(\x0b\x32\x13.TaskFailureDetails\"\xb2\x01\n\x12TaskFailureDetails\x12\x11\n\terrorType\x18\x01 \x01(\t\x12\x14\n\x0c\x65rrorMessage\x18\x02 \x01(\t\x12\x30\n\nstackTrace\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12)\n\x0cinnerFailure\x18\x04 \x01(\x0b\x32\x13.TaskFailureDetails\x12\x16\n\x0eisNonRetriable\x18\x05 \x01(\x08\"\xbf\x01\n\x12ParentInstanceInfo\x12\x17\n\x0ftaskScheduledId\x18\x01 \x01(\x05\x12*\n\x04name\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12-\n\x07version\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x35\n\x15orchestrationInstance\x18\x04 \x01(\x0b\x32\x16.OrchestrationInstance\"i\n\x0cTraceContext\x12\x13\n\x0btraceParent\x18\x01 \x01(\t\x12\x12\n\x06spanID\x18\x02 \x01(\tB\x02\x18\x01\x12\x30\n\ntraceState\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x88\x03\n\x15\x45xecutionStartedEvent\x12\x0c\n\x04name\x18\x01 \x01(\t\x12-\n\x07version\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x35\n\x15orchestrationInstance\x18\x04 \x01(\x0b\x32\x16.OrchestrationInstance\x12+\n\x0eparentInstance\x18\x05 \x01(\x0b\x32\x13.ParentInstanceInfo\x12;\n\x17scheduledStartTimestamp\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12)\n\x12parentTraceContext\x18\x07 \x01(\x0b\x32\r.TraceContext\x12\x39\n\x13orchestrationSpanID\x18\x08 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xa7\x01\n\x17\x45xecutionCompletedEvent\x12\x31\n\x13orchestrationStatus\x18\x01 \x01(\x0e\x32\x14.OrchestrationStatus\x12,\n\x06result\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x0e\x66\x61ilureDetails\x18\x03 \x01(\x0b\x32\x13.TaskFailureDetails\"X\n\x18\x45xecutionTerminatedEvent\x12+\n\x05input\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x0f\n\x07recurse\x18\x02 \x01(\x08\"\xa9\x01\n\x12TaskScheduledEvent\x12\x0c\n\x04name\x18\x01 \x01(\t\x12-\n\x07version\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12)\n\x12parentTraceContext\x18\x04 \x01(\x0b\x32\r.TraceContext\"[\n\x12TaskCompletedEvent\x12\x17\n\x0ftaskScheduledId\x18\x01 \x01(\x05\x12,\n\x06result\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"W\n\x0fTaskFailedEvent\x12\x17\n\x0ftaskScheduledId\x18\x01 \x01(\x05\x12+\n\x0e\x66\x61ilureDetails\x18\x02 \x01(\x0b\x32\x13.TaskFailureDetails\"\xcf\x01\n$SubOrchestrationInstanceCreatedEvent\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12-\n\x07version\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05input\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12)\n\x12parentTraceContext\x18\x05 \x01(\x0b\x32\r.TraceContext\"o\n&SubOrchestrationInstanceCompletedEvent\x12\x17\n\x0ftaskScheduledId\x18\x01 \x01(\x05\x12,\n\x06result\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"k\n#SubOrchestrationInstanceFailedEvent\x12\x17\n\x0ftaskScheduledId\x18\x01 \x01(\x05\x12+\n\x0e\x66\x61ilureDetails\x18\x02 \x01(\x0b\x32\x13.TaskFailureDetails\"?\n\x11TimerCreatedEvent\x12*\n\x06\x66ireAt\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"N\n\x0fTimerFiredEvent\x12*\n\x06\x66ireAt\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0f\n\x07timerId\x18\x02 \x01(\x05\"\x1a\n\x18OrchestratorStartedEvent\"\x1c\n\x1aOrchestratorCompletedEvent\"_\n\x0e\x45ventSentEvent\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"M\n\x10\x45ventRaisedEvent\x12\x0c\n\x04name\x18\x01 \x01(\t\x12+\n\x05input\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\":\n\x0cGenericEvent\x12*\n\x04\x64\x61ta\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"D\n\x11HistoryStateEvent\x12/\n\x12orchestrationState\x18\x01 \x01(\x0b\x32\x13.OrchestrationState\"A\n\x12\x43ontinueAsNewEvent\x12+\n\x05input\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"F\n\x17\x45xecutionSuspendedEvent\x12+\n\x05input\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"D\n\x15\x45xecutionResumedEvent\x12+\n\x05input\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x86\t\n\x0cHistoryEvent\x12\x0f\n\x07\x65ventId\x18\x01 \x01(\x05\x12-\n\ttimestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x32\n\x10\x65xecutionStarted\x18\x03 \x01(\x0b\x32\x16.ExecutionStartedEventH\x00\x12\x36\n\x12\x65xecutionCompleted\x18\x04 \x01(\x0b\x32\x18.ExecutionCompletedEventH\x00\x12\x38\n\x13\x65xecutionTerminated\x18\x05 \x01(\x0b\x32\x19.ExecutionTerminatedEventH\x00\x12,\n\rtaskScheduled\x18\x06 \x01(\x0b\x32\x13.TaskScheduledEventH\x00\x12,\n\rtaskCompleted\x18\x07 \x01(\x0b\x32\x13.TaskCompletedEventH\x00\x12&\n\ntaskFailed\x18\x08 \x01(\x0b\x32\x10.TaskFailedEventH\x00\x12P\n\x1fsubOrchestrationInstanceCreated\x18\t \x01(\x0b\x32%.SubOrchestrationInstanceCreatedEventH\x00\x12T\n!subOrchestrationInstanceCompleted\x18\n \x01(\x0b\x32\'.SubOrchestrationInstanceCompletedEventH\x00\x12N\n\x1esubOrchestrationInstanceFailed\x18\x0b \x01(\x0b\x32$.SubOrchestrationInstanceFailedEventH\x00\x12*\n\x0ctimerCreated\x18\x0c \x01(\x0b\x32\x12.TimerCreatedEventH\x00\x12&\n\ntimerFired\x18\r \x01(\x0b\x32\x10.TimerFiredEventH\x00\x12\x38\n\x13orchestratorStarted\x18\x0e \x01(\x0b\x32\x19.OrchestratorStartedEventH\x00\x12<\n\x15orchestratorCompleted\x18\x0f \x01(\x0b\x32\x1b.OrchestratorCompletedEventH\x00\x12$\n\teventSent\x18\x10 \x01(\x0b\x32\x0f.EventSentEventH\x00\x12(\n\x0b\x65ventRaised\x18\x11 \x01(\x0b\x32\x11.EventRaisedEventH\x00\x12%\n\x0cgenericEvent\x18\x12 \x01(\x0b\x32\r.GenericEventH\x00\x12*\n\x0chistoryState\x18\x13 \x01(\x0b\x32\x12.HistoryStateEventH\x00\x12,\n\rcontinueAsNew\x18\x14 \x01(\x0b\x32\x13.ContinueAsNewEventH\x00\x12\x36\n\x12\x65xecutionSuspended\x18\x15 \x01(\x0b\x32\x18.ExecutionSuspendedEventH\x00\x12\x32\n\x10\x65xecutionResumed\x18\x16 \x01(\x0b\x32\x16.ExecutionResumedEventH\x00\x42\x0b\n\teventType\"~\n\x12ScheduleTaskAction\x12\x0c\n\x04name\x18\x01 \x01(\t\x12-\n\x07version\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x9c\x01\n\x1c\x43reateSubOrchestrationAction\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12-\n\x07version\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05input\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"?\n\x11\x43reateTimerAction\x12*\n\x06\x66ireAt\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"u\n\x0fSendEventAction\x12(\n\x08instance\x18\x01 \x01(\x0b\x32\x16.OrchestrationInstance\x12\x0c\n\x04name\x18\x02 \x01(\t\x12*\n\x04\x64\x61ta\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xb4\x02\n\x1b\x43ompleteOrchestrationAction\x12\x31\n\x13orchestrationStatus\x18\x01 \x01(\x0e\x32\x14.OrchestrationStatus\x12,\n\x06result\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12-\n\x07\x64\x65tails\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x30\n\nnewVersion\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12&\n\x0f\x63\x61rryoverEvents\x18\x05 \x03(\x0b\x32\r.HistoryEvent\x12+\n\x0e\x66\x61ilureDetails\x18\x06 \x01(\x0b\x32\x13.TaskFailureDetails\"q\n\x1cTerminateOrchestrationAction\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12,\n\x06reason\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x0f\n\x07recurse\x18\x03 \x01(\x08\"\xfa\x02\n\x12OrchestratorAction\x12\n\n\x02id\x18\x01 \x01(\x05\x12+\n\x0cscheduleTask\x18\x02 \x01(\x0b\x32\x13.ScheduleTaskActionH\x00\x12?\n\x16\x63reateSubOrchestration\x18\x03 \x01(\x0b\x32\x1d.CreateSubOrchestrationActionH\x00\x12)\n\x0b\x63reateTimer\x18\x04 \x01(\x0b\x32\x12.CreateTimerActionH\x00\x12%\n\tsendEvent\x18\x05 \x01(\x0b\x32\x10.SendEventActionH\x00\x12=\n\x15\x63ompleteOrchestration\x18\x06 \x01(\x0b\x32\x1c.CompleteOrchestrationActionH\x00\x12?\n\x16terminateOrchestration\x18\x07 \x01(\x0b\x32\x1d.TerminateOrchestrationActionH\x00\x42\x18\n\x16orchestratorActionType\"\xda\x01\n\x13OrchestratorRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x31\n\x0b\x65xecutionId\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12!\n\npastEvents\x18\x03 \x03(\x0b\x32\r.HistoryEvent\x12 \n\tnewEvents\x18\x04 \x03(\x0b\x32\r.HistoryEvent\x12\x37\n\x10\x65ntityParameters\x18\x05 \x01(\x0b\x32\x1d.OrchestratorEntityParameters\"\x84\x01\n\x14OrchestratorResponse\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12$\n\x07\x61\x63tions\x18\x02 \x03(\x0b\x32\x13.OrchestratorAction\x12\x32\n\x0c\x63ustomStatus\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xa3\x03\n\x15\x43reateInstanceRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12-\n\x07version\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05input\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12;\n\x17scheduledStartTimestamp\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12?\n\x1aorchestrationIdReusePolicy\x18\x06 \x01(\x0b\x32\x1b.OrchestrationIdReusePolicy\x12\x31\n\x0b\x65xecutionId\x18\x07 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12.\n\x04tags\x18\x08 \x03(\x0b\x32 .CreateInstanceRequest.TagsEntry\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"w\n\x1aOrchestrationIdReusePolicy\x12-\n\x0foperationStatus\x18\x01 \x03(\x0e\x32\x14.OrchestrationStatus\x12*\n\x06\x61\x63tion\x18\x02 \x01(\x0e\x32\x1a.CreateOrchestrationAction\",\n\x16\x43reateInstanceResponse\x12\x12\n\ninstanceId\x18\x01 \x01(\t\"E\n\x12GetInstanceRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x1b\n\x13getInputsAndOutputs\x18\x02 \x01(\x08\"V\n\x13GetInstanceResponse\x12\x0e\n\x06\x65xists\x18\x01 \x01(\x08\x12/\n\x12orchestrationState\x18\x02 \x01(\x0b\x32\x13.OrchestrationState\"Y\n\x15RewindInstanceRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12,\n\x06reason\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x18\n\x16RewindInstanceResponse\"\xa4\x05\n\x12OrchestrationState\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12-\n\x07version\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\x13orchestrationStatus\x18\x04 \x01(\x0e\x32\x14.OrchestrationStatus\x12;\n\x17scheduledStartTimestamp\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x34\n\x10\x63reatedTimestamp\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x38\n\x14lastUpdatedTimestamp\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12+\n\x05input\x18\x08 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12,\n\x06output\x18\t \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x32\n\x0c\x63ustomStatus\x18\n \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x0e\x66\x61ilureDetails\x18\x0b \x01(\x0b\x32\x13.TaskFailureDetails\x12\x31\n\x0b\x65xecutionId\x18\x0c \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x36\n\x12\x63ompletedTimestamp\x18\r \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x36\n\x10parentInstanceId\x18\x0e \x01(\x0b\x32\x1c.google.protobuf.StringValue\"b\n\x11RaiseEventRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x14\n\x12RaiseEventResponse\"g\n\x10TerminateRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12,\n\x06output\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x11\n\trecursive\x18\x03 \x01(\x08\"\x13\n\x11TerminateResponse\"R\n\x0eSuspendRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12,\n\x06reason\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x11\n\x0fSuspendResponse\"Q\n\rResumeRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12,\n\x06reason\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x10\n\x0eResumeResponse\"6\n\x15QueryInstancesRequest\x12\x1d\n\x05query\x18\x01 \x01(\x0b\x32\x0e.InstanceQuery\"\x82\x03\n\rInstanceQuery\x12+\n\rruntimeStatus\x18\x01 \x03(\x0e\x32\x14.OrchestrationStatus\x12\x33\n\x0f\x63reatedTimeFrom\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x31\n\rcreatedTimeTo\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x32\n\x0ctaskHubNames\x18\x04 \x03(\x0b\x32\x1c.google.protobuf.StringValue\x12\x18\n\x10maxInstanceCount\x18\x05 \x01(\x05\x12\x37\n\x11\x63ontinuationToken\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x36\n\x10instanceIdPrefix\x18\x07 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x1d\n\x15\x66\x65tchInputsAndOutputs\x18\x08 \x01(\x08\"\x82\x01\n\x16QueryInstancesResponse\x12/\n\x12orchestrationState\x18\x01 \x03(\x0b\x32\x13.OrchestrationState\x12\x37\n\x11\x63ontinuationToken\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x80\x01\n\x15PurgeInstancesRequest\x12\x14\n\ninstanceId\x18\x01 \x01(\tH\x00\x12\x33\n\x13purgeInstanceFilter\x18\x02 \x01(\x0b\x32\x14.PurgeInstanceFilterH\x00\x12\x11\n\trecursive\x18\x03 \x01(\x08\x42\t\n\x07request\"\xaa\x01\n\x13PurgeInstanceFilter\x12\x33\n\x0f\x63reatedTimeFrom\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x31\n\rcreatedTimeTo\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12+\n\rruntimeStatus\x18\x03 \x03(\x0e\x32\x14.OrchestrationStatus\"6\n\x16PurgeInstancesResponse\x12\x1c\n\x14\x64\x65letedInstanceCount\x18\x01 \x01(\x05\"0\n\x14\x43reateTaskHubRequest\x12\x18\n\x10recreateIfExists\x18\x01 \x01(\x08\"\x17\n\x15\x43reateTaskHubResponse\"\x16\n\x14\x44\x65leteTaskHubRequest\"\x17\n\x15\x44\x65leteTaskHubResponse\"\xaa\x01\n\x13SignalEntityRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x11\n\trequestId\x18\x04 \x01(\t\x12\x31\n\rscheduledTime\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\x16\n\x14SignalEntityResponse\"<\n\x10GetEntityRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x14\n\x0cincludeState\x18\x02 \x01(\x08\"D\n\x11GetEntityResponse\x12\x0e\n\x06\x65xists\x18\x01 \x01(\x08\x12\x1f\n\x06\x65ntity\x18\x02 \x01(\x0b\x32\x0f.EntityMetadata\"\xcb\x02\n\x0b\x45ntityQuery\x12:\n\x14instanceIdStartsWith\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x34\n\x10lastModifiedFrom\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x32\n\x0elastModifiedTo\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x14\n\x0cincludeState\x18\x04 \x01(\x08\x12\x18\n\x10includeTransient\x18\x05 \x01(\x08\x12-\n\x08pageSize\x18\x06 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12\x37\n\x11\x63ontinuationToken\x18\x07 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"3\n\x14QueryEntitiesRequest\x12\x1b\n\x05query\x18\x01 \x01(\x0b\x32\x0c.EntityQuery\"s\n\x15QueryEntitiesResponse\x12!\n\x08\x65ntities\x18\x01 \x03(\x0b\x32\x0f.EntityMetadata\x12\x37\n\x11\x63ontinuationToken\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\xdb\x01\n\x0e\x45ntityMetadata\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x34\n\x10lastModifiedTime\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x18\n\x10\x62\x61\x63klogQueueSize\x18\x03 \x01(\x05\x12.\n\x08lockedBy\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x35\n\x0fserializedState\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"\x8f\x01\n\x19\x43leanEntityStorageRequest\x12\x37\n\x11\x63ontinuationToken\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x1b\n\x13removeEmptyEntities\x18\x02 \x01(\x08\x12\x1c\n\x14releaseOrphanedLocks\x18\x03 \x01(\x08\"\x92\x01\n\x1a\x43leanEntityStorageResponse\x12\x37\n\x11\x63ontinuationToken\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x1c\n\x14\x65mptyEntitiesRemoved\x18\x02 \x01(\x05\x12\x1d\n\x15orphanedLocksReleased\x18\x03 \x01(\x05\"]\n\x1cOrchestratorEntityParameters\x12=\n\x1a\x65ntityMessageReorderWindow\x18\x01 \x01(\x0b\x32\x19.google.protobuf.Duration\"\x82\x01\n\x12\x45ntityBatchRequest\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x31\n\x0b\x65ntityState\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12%\n\noperations\x18\x03 \x03(\x0b\x32\x11.OperationRequest\"\xb9\x01\n\x11\x45ntityBatchResult\x12!\n\x07results\x18\x01 \x03(\x0b\x32\x10.OperationResult\x12!\n\x07\x61\x63tions\x18\x02 \x03(\x0b\x32\x10.OperationAction\x12\x31\n\x0b\x65ntityState\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x0e\x66\x61ilureDetails\x18\x04 \x01(\x0b\x32\x13.TaskFailureDetails\"e\n\x10OperationRequest\x12\x11\n\toperation\x18\x01 \x01(\t\x12\x11\n\trequestId\x18\x02 \x01(\t\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"w\n\x0fOperationResult\x12*\n\x07success\x18\x01 \x01(\x0b\x32\x17.OperationResultSuccessH\x00\x12*\n\x07\x66\x61ilure\x18\x02 \x01(\x0b\x32\x17.OperationResultFailureH\x00\x42\x0c\n\nresultType\"F\n\x16OperationResultSuccess\x12,\n\x06result\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue\"E\n\x16OperationResultFailure\x12+\n\x0e\x66\x61ilureDetails\x18\x01 \x01(\x0b\x32\x13.TaskFailureDetails\"\x9c\x01\n\x0fOperationAction\x12\n\n\x02id\x18\x01 \x01(\x05\x12\'\n\nsendSignal\x18\x02 \x01(\x0b\x32\x11.SendSignalActionH\x00\x12=\n\x15startNewOrchestration\x18\x03 \x01(\x0b\x32\x1c.StartNewOrchestrationActionH\x00\x42\x15\n\x13operationActionType\"\x94\x01\n\x10SendSignalAction\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12+\n\x05input\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\rscheduledTime\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xce\x01\n\x1bStartNewOrchestrationAction\x12\x12\n\ninstanceId\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12-\n\x07version\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12+\n\x05input\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\rscheduledTime\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\x15\n\x13GetWorkItemsRequest\"\xe1\x01\n\x08WorkItem\x12\x33\n\x13orchestratorRequest\x18\x01 \x01(\x0b\x32\x14.OrchestratorRequestH\x00\x12+\n\x0f\x61\x63tivityRequest\x18\x02 \x01(\x0b\x32\x10.ActivityRequestH\x00\x12,\n\rentityRequest\x18\x03 \x01(\x0b\x32\x13.EntityBatchRequestH\x00\x12!\n\nhealthPing\x18\x04 \x01(\x0b\x32\x0b.HealthPingH\x00\x12\x17\n\x0f\x63ompletionToken\x18\n \x01(\tB\t\n\x07request\"\x16\n\x14\x43ompleteTaskResponse\"\x0c\n\nHealthPing*\xb5\x02\n\x13OrchestrationStatus\x12 \n\x1cORCHESTRATION_STATUS_RUNNING\x10\x00\x12\"\n\x1eORCHESTRATION_STATUS_COMPLETED\x10\x01\x12)\n%ORCHESTRATION_STATUS_CONTINUED_AS_NEW\x10\x02\x12\x1f\n\x1bORCHESTRATION_STATUS_FAILED\x10\x03\x12!\n\x1dORCHESTRATION_STATUS_CANCELED\x10\x04\x12#\n\x1fORCHESTRATION_STATUS_TERMINATED\x10\x05\x12 \n\x1cORCHESTRATION_STATUS_PENDING\x10\x06\x12\"\n\x1eORCHESTRATION_STATUS_SUSPENDED\x10\x07*A\n\x19\x43reateOrchestrationAction\x12\t\n\x05\x45RROR\x10\x00\x12\n\n\x06IGNORE\x10\x01\x12\r\n\tTERMINATE\x10\x02\x32\xfc\n\n\x15TaskHubSidecarService\x12\x37\n\x05Hello\x12\x16.google.protobuf.Empty\x1a\x16.google.protobuf.Empty\x12@\n\rStartInstance\x12\x16.CreateInstanceRequest\x1a\x17.CreateInstanceResponse\x12\x38\n\x0bGetInstance\x12\x13.GetInstanceRequest\x1a\x14.GetInstanceResponse\x12\x41\n\x0eRewindInstance\x12\x16.RewindInstanceRequest\x1a\x17.RewindInstanceResponse\x12\x41\n\x14WaitForInstanceStart\x12\x13.GetInstanceRequest\x1a\x14.GetInstanceResponse\x12\x46\n\x19WaitForInstanceCompletion\x12\x13.GetInstanceRequest\x1a\x14.GetInstanceResponse\x12\x35\n\nRaiseEvent\x12\x12.RaiseEventRequest\x1a\x13.RaiseEventResponse\x12:\n\x11TerminateInstance\x12\x11.TerminateRequest\x1a\x12.TerminateResponse\x12\x34\n\x0fSuspendInstance\x12\x0f.SuspendRequest\x1a\x10.SuspendResponse\x12\x31\n\x0eResumeInstance\x12\x0e.ResumeRequest\x1a\x0f.ResumeResponse\x12\x41\n\x0eQueryInstances\x12\x16.QueryInstancesRequest\x1a\x17.QueryInstancesResponse\x12\x41\n\x0ePurgeInstances\x12\x16.PurgeInstancesRequest\x1a\x17.PurgeInstancesResponse\x12\x31\n\x0cGetWorkItems\x12\x14.GetWorkItemsRequest\x1a\t.WorkItem0\x01\x12@\n\x14\x43ompleteActivityTask\x12\x11.ActivityResponse\x1a\x15.CompleteTaskResponse\x12H\n\x18\x43ompleteOrchestratorTask\x12\x15.OrchestratorResponse\x1a\x15.CompleteTaskResponse\x12?\n\x12\x43ompleteEntityTask\x12\x12.EntityBatchResult\x1a\x15.CompleteTaskResponse\x12>\n\rCreateTaskHub\x12\x15.CreateTaskHubRequest\x1a\x16.CreateTaskHubResponse\x12>\n\rDeleteTaskHub\x12\x15.DeleteTaskHubRequest\x1a\x16.DeleteTaskHubResponse\x12;\n\x0cSignalEntity\x12\x14.SignalEntityRequest\x1a\x15.SignalEntityResponse\x12\x32\n\tGetEntity\x12\x11.GetEntityRequest\x1a\x12.GetEntityResponse\x12>\n\rQueryEntities\x12\x15.QueryEntitiesRequest\x1a\x16.QueryEntitiesResponse\x12M\n\x12\x43leanEntityStorage\x12\x1a.CleanEntityStorageRequest\x1a\x1b.CleanEntityStorageResponseBf\n1com.microsoft.durabletask.implementation.protobufZ\x10/internal/protos\xaa\x02\x1eMicrosoft.DurableTask.Protobufb\x06proto3') - DESCRIPTOR._options = None - DESCRIPTOR._serialized_options = b'\n1com.microsoft.durabletask.implementation.protobufZ\020/internal/protos\252\002\036Microsoft.DurableTask.Protobuf' - _TRACECONTEXT.fields_by_name['spanID']._options = None - _TRACECONTEXT.fields_by_name['spanID']._serialized_options = b'\030\001' - _ORCHESTRATIONSTATUS._serialized_start=11416 - _ORCHESTRATIONSTATUS._serialized_end=11725 - _ORCHESTRATIONINSTANCE._serialized_start=156 - _ORCHESTRATIONINSTANCE._serialized_end=250 - _ACTIVITYREQUEST._serialized_start=253 - _ACTIVITYREQUEST._serialized_end=447 - _ACTIVITYRESPONSE._serialized_start=450 - _ACTIVITYRESPONSE._serialized_end=595 - _TASKFAILUREDETAILS._serialized_start=598 - _TASKFAILUREDETAILS._serialized_end=776 - _PARENTINSTANCEINFO._serialized_start=779 - _PARENTINSTANCEINFO._serialized_end=970 - _TRACECONTEXT._serialized_start=972 - _TRACECONTEXT._serialized_end=1077 - _EXECUTIONSTARTEDEVENT._serialized_start=1080 - _EXECUTIONSTARTEDEVENT._serialized_end=1472 - _EXECUTIONCOMPLETEDEVENT._serialized_start=1475 - _EXECUTIONCOMPLETEDEVENT._serialized_end=1642 - _EXECUTIONTERMINATEDEVENT._serialized_start=1644 - _EXECUTIONTERMINATEDEVENT._serialized_end=1732 - _TASKSCHEDULEDEVENT._serialized_start=1735 - _TASKSCHEDULEDEVENT._serialized_end=1904 - _TASKCOMPLETEDEVENT._serialized_start=1906 - _TASKCOMPLETEDEVENT._serialized_end=1997 - _TASKFAILEDEVENT._serialized_start=1999 - _TASKFAILEDEVENT._serialized_end=2086 - _SUBORCHESTRATIONINSTANCECREATEDEVENT._serialized_start=2089 - _SUBORCHESTRATIONINSTANCECREATEDEVENT._serialized_end=2296 - _SUBORCHESTRATIONINSTANCECOMPLETEDEVENT._serialized_start=2298 - _SUBORCHESTRATIONINSTANCECOMPLETEDEVENT._serialized_end=2409 - _SUBORCHESTRATIONINSTANCEFAILEDEVENT._serialized_start=2411 - _SUBORCHESTRATIONINSTANCEFAILEDEVENT._serialized_end=2518 - _TIMERCREATEDEVENT._serialized_start=2520 - _TIMERCREATEDEVENT._serialized_end=2583 - _TIMERFIREDEVENT._serialized_start=2585 - _TIMERFIREDEVENT._serialized_end=2663 - _ORCHESTRATORSTARTEDEVENT._serialized_start=2665 - _ORCHESTRATORSTARTEDEVENT._serialized_end=2691 - _ORCHESTRATORCOMPLETEDEVENT._serialized_start=2693 - _ORCHESTRATORCOMPLETEDEVENT._serialized_end=2721 - _EVENTSENTEVENT._serialized_start=2723 - _EVENTSENTEVENT._serialized_end=2818 - _EVENTRAISEDEVENT._serialized_start=2820 - _EVENTRAISEDEVENT._serialized_end=2897 - _GENERICEVENT._serialized_start=2899 - _GENERICEVENT._serialized_end=2927 - _HISTORYSTATEEVENT._serialized_start=2929 - _HISTORYSTATEEVENT._serialized_end=2997 - _CONTINUEASNEWEVENT._serialized_start=2999 - _CONTINUEASNEWEVENT._serialized_end=3064 - _EXECUTIONSUSPENDEDEVENT._serialized_start=3066 - _EXECUTIONSUSPENDEDEVENT._serialized_end=3136 - _EXECUTIONRESUMEDEVENT._serialized_start=3138 - _EXECUTIONRESUMEDEVENT._serialized_end=3206 - _HISTORYEVENT._serialized_start=3209 - _HISTORYEVENT._serialized_end=4367 - _SCHEDULETASKACTION._serialized_start=4369 - _SCHEDULETASKACTION._serialized_end=4495 - _CREATESUBORCHESTRATIONACTION._serialized_start=4498 - _CREATESUBORCHESTRATIONACTION._serialized_end=4654 - _CREATETIMERACTION._serialized_start=4656 - _CREATETIMERACTION._serialized_end=4719 - _SENDEVENTACTION._serialized_start=4721 - _SENDEVENTACTION._serialized_end=4838 - _COMPLETEORCHESTRATIONACTION._serialized_start=4841 - _COMPLETEORCHESTRATIONACTION._serialized_end=5149 - _TERMINATEORCHESTRATIONACTION._serialized_start=5151 - _TERMINATEORCHESTRATIONACTION._serialized_end=5264 - _ORCHESTRATORACTION._serialized_start=5267 - _ORCHESTRATORACTION._serialized_end=5645 - _ORCHESTRATORREQUEST._serialized_start=5648 - _ORCHESTRATORREQUEST._serialized_end=5866 - _ORCHESTRATORRESPONSE._serialized_start=5869 - _ORCHESTRATORRESPONSE._serialized_end=6001 - _CREATEINSTANCEREQUEST._serialized_start=6004 - _CREATEINSTANCEREQUEST._serialized_end=6214 - _CREATEINSTANCERESPONSE._serialized_start=6216 - _CREATEINSTANCERESPONSE._serialized_end=6260 - _GETINSTANCEREQUEST._serialized_start=6262 - _GETINSTANCEREQUEST._serialized_end=6331 - _GETINSTANCERESPONSE._serialized_start=6333 - _GETINSTANCERESPONSE._serialized_end=6419 - _REWINDINSTANCEREQUEST._serialized_start=6421 - _REWINDINSTANCEREQUEST._serialized_end=6510 - _REWINDINSTANCERESPONSE._serialized_start=6512 - _REWINDINSTANCERESPONSE._serialized_end=6536 - _ORCHESTRATIONSTATE._serialized_start=6539 - _ORCHESTRATIONSTATE._serialized_end=7052 - _RAISEEVENTREQUEST._serialized_start=7054 - _RAISEEVENTREQUEST._serialized_end=7152 - _RAISEEVENTRESPONSE._serialized_start=7154 - _RAISEEVENTRESPONSE._serialized_end=7174 - _TERMINATEREQUEST._serialized_start=7176 - _TERMINATEREQUEST._serialized_end=7279 - _TERMINATERESPONSE._serialized_start=7281 - _TERMINATERESPONSE._serialized_end=7300 - _SUSPENDREQUEST._serialized_start=7302 - _SUSPENDREQUEST._serialized_end=7384 - _SUSPENDRESPONSE._serialized_start=7386 - _SUSPENDRESPONSE._serialized_end=7403 - _RESUMEREQUEST._serialized_start=7405 - _RESUMEREQUEST._serialized_end=7486 - _RESUMERESPONSE._serialized_start=7488 - _RESUMERESPONSE._serialized_end=7504 - _QUERYINSTANCESREQUEST._serialized_start=7506 - _QUERYINSTANCESREQUEST._serialized_end=7560 - _INSTANCEQUERY._serialized_start=7563 - _INSTANCEQUERY._serialized_end=7949 - _QUERYINSTANCESRESPONSE._serialized_start=7952 - _QUERYINSTANCESRESPONSE._serialized_end=8082 - _PURGEINSTANCESREQUEST._serialized_start=8084 - _PURGEINSTANCESREQUEST._serialized_end=8193 - _PURGEINSTANCEFILTER._serialized_start=8196 - _PURGEINSTANCEFILTER._serialized_end=8366 - _PURGEINSTANCESRESPONSE._serialized_start=8368 - _PURGEINSTANCESRESPONSE._serialized_end=8422 - _CREATETASKHUBREQUEST._serialized_start=8424 - _CREATETASKHUBREQUEST._serialized_end=8472 - _CREATETASKHUBRESPONSE._serialized_start=8474 - _CREATETASKHUBRESPONSE._serialized_end=8497 - _DELETETASKHUBREQUEST._serialized_start=8499 - _DELETETASKHUBREQUEST._serialized_end=8521 - _DELETETASKHUBRESPONSE._serialized_start=8523 - _DELETETASKHUBRESPONSE._serialized_end=8546 - _SIGNALENTITYREQUEST._serialized_start=8549 - _SIGNALENTITYREQUEST._serialized_end=8719 - _SIGNALENTITYRESPONSE._serialized_start=8721 - _SIGNALENTITYRESPONSE._serialized_end=8743 - _GETENTITYREQUEST._serialized_start=8745 - _GETENTITYREQUEST._serialized_end=8805 - _GETENTITYRESPONSE._serialized_start=8807 - _GETENTITYRESPONSE._serialized_end=8875 - _ENTITYQUERY._serialized_start=8878 - _ENTITYQUERY._serialized_end=9209 - _QUERYENTITIESREQUEST._serialized_start=9211 - _QUERYENTITIESREQUEST._serialized_end=9262 - _QUERYENTITIESRESPONSE._serialized_start=9264 - _QUERYENTITIESRESPONSE._serialized_end=9379 - _ENTITYMETADATA._serialized_start=9382 - _ENTITYMETADATA._serialized_end=9601 - _CLEANENTITYSTORAGEREQUEST._serialized_start=9604 - _CLEANENTITYSTORAGEREQUEST._serialized_end=9747 - _CLEANENTITYSTORAGERESPONSE._serialized_start=9750 - _CLEANENTITYSTORAGERESPONSE._serialized_end=9896 - _ORCHESTRATORENTITYPARAMETERS._serialized_start=9898 - _ORCHESTRATORENTITYPARAMETERS._serialized_end=9991 - _ENTITYBATCHREQUEST._serialized_start=9994 - _ENTITYBATCHREQUEST._serialized_end=10124 - _ENTITYBATCHRESULT._serialized_start=10127 - _ENTITYBATCHRESULT._serialized_end=10312 - _OPERATIONREQUEST._serialized_start=10314 - _OPERATIONREQUEST._serialized_end=10415 - _OPERATIONRESULT._serialized_start=10417 - _OPERATIONRESULT._serialized_end=10536 - _OPERATIONRESULTSUCCESS._serialized_start=10538 - _OPERATIONRESULTSUCCESS._serialized_end=10608 - _OPERATIONRESULTFAILURE._serialized_start=10610 - _OPERATIONRESULTFAILURE._serialized_end=10679 - _OPERATIONACTION._serialized_start=10682 - _OPERATIONACTION._serialized_end=10838 - _SENDSIGNALACTION._serialized_start=10841 - _SENDSIGNALACTION._serialized_end=10989 - _STARTNEWORCHESTRATIONACTION._serialized_start=10992 - _STARTNEWORCHESTRATIONACTION._serialized_end=11198 - _GETWORKITEMSREQUEST._serialized_start=11200 - _GETWORKITEMSREQUEST._serialized_end=11221 - _WORKITEM._serialized_start=11224 - _WORKITEM._serialized_end=11389 - _COMPLETETASKRESPONSE._serialized_start=11391 - _COMPLETETASKRESPONSE._serialized_end=11413 - _TASKHUBSIDECARSERVICE._serialized_start=11728 - _TASKHUBSIDECARSERVICE._serialized_end=13132 +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'orchestrator_service_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'\n1com.microsoft.durabletask.implementation.protobufZ\020/internal/protos\252\002\036Microsoft.DurableTask.Protobuf' + _globals['_TRACECONTEXT'].fields_by_name['spanID']._loaded_options = None + _globals['_TRACECONTEXT'].fields_by_name['spanID']._serialized_options = b'\030\001' + _globals['_CREATEINSTANCEREQUEST_TAGSENTRY']._loaded_options = None + _globals['_CREATEINSTANCEREQUEST_TAGSENTRY']._serialized_options = b'8\001' + _globals['_ORCHESTRATIONSTATUS']._serialized_start=12076 + _globals['_ORCHESTRATIONSTATUS']._serialized_end=12385 + _globals['_CREATEORCHESTRATIONACTION']._serialized_start=12387 + _globals['_CREATEORCHESTRATIONACTION']._serialized_end=12452 + _globals['_ORCHESTRATIONINSTANCE']._serialized_start=156 + _globals['_ORCHESTRATIONINSTANCE']._serialized_end=250 + _globals['_ACTIVITYREQUEST']._serialized_start=253 + _globals['_ACTIVITYREQUEST']._serialized_end=490 + _globals['_ACTIVITYRESPONSE']._serialized_start=493 + _globals['_ACTIVITYRESPONSE']._serialized_end=638 + _globals['_TASKFAILUREDETAILS']._serialized_start=641 + _globals['_TASKFAILUREDETAILS']._serialized_end=819 + _globals['_PARENTINSTANCEINFO']._serialized_start=822 + _globals['_PARENTINSTANCEINFO']._serialized_end=1013 + _globals['_TRACECONTEXT']._serialized_start=1015 + _globals['_TRACECONTEXT']._serialized_end=1120 + _globals['_EXECUTIONSTARTEDEVENT']._serialized_start=1123 + _globals['_EXECUTIONSTARTEDEVENT']._serialized_end=1515 + _globals['_EXECUTIONCOMPLETEDEVENT']._serialized_start=1518 + _globals['_EXECUTIONCOMPLETEDEVENT']._serialized_end=1685 + _globals['_EXECUTIONTERMINATEDEVENT']._serialized_start=1687 + _globals['_EXECUTIONTERMINATEDEVENT']._serialized_end=1775 + _globals['_TASKSCHEDULEDEVENT']._serialized_start=1778 + _globals['_TASKSCHEDULEDEVENT']._serialized_end=1947 + _globals['_TASKCOMPLETEDEVENT']._serialized_start=1949 + _globals['_TASKCOMPLETEDEVENT']._serialized_end=2040 + _globals['_TASKFAILEDEVENT']._serialized_start=2042 + _globals['_TASKFAILEDEVENT']._serialized_end=2129 + _globals['_SUBORCHESTRATIONINSTANCECREATEDEVENT']._serialized_start=2132 + _globals['_SUBORCHESTRATIONINSTANCECREATEDEVENT']._serialized_end=2339 + _globals['_SUBORCHESTRATIONINSTANCECOMPLETEDEVENT']._serialized_start=2341 + _globals['_SUBORCHESTRATIONINSTANCECOMPLETEDEVENT']._serialized_end=2452 + _globals['_SUBORCHESTRATIONINSTANCEFAILEDEVENT']._serialized_start=2454 + _globals['_SUBORCHESTRATIONINSTANCEFAILEDEVENT']._serialized_end=2561 + _globals['_TIMERCREATEDEVENT']._serialized_start=2563 + _globals['_TIMERCREATEDEVENT']._serialized_end=2626 + _globals['_TIMERFIREDEVENT']._serialized_start=2628 + _globals['_TIMERFIREDEVENT']._serialized_end=2706 + _globals['_ORCHESTRATORSTARTEDEVENT']._serialized_start=2708 + _globals['_ORCHESTRATORSTARTEDEVENT']._serialized_end=2734 + _globals['_ORCHESTRATORCOMPLETEDEVENT']._serialized_start=2736 + _globals['_ORCHESTRATORCOMPLETEDEVENT']._serialized_end=2764 + _globals['_EVENTSENTEVENT']._serialized_start=2766 + _globals['_EVENTSENTEVENT']._serialized_end=2861 + _globals['_EVENTRAISEDEVENT']._serialized_start=2863 + _globals['_EVENTRAISEDEVENT']._serialized_end=2940 + _globals['_GENERICEVENT']._serialized_start=2942 + _globals['_GENERICEVENT']._serialized_end=3000 + _globals['_HISTORYSTATEEVENT']._serialized_start=3002 + _globals['_HISTORYSTATEEVENT']._serialized_end=3070 + _globals['_CONTINUEASNEWEVENT']._serialized_start=3072 + _globals['_CONTINUEASNEWEVENT']._serialized_end=3137 + _globals['_EXECUTIONSUSPENDEDEVENT']._serialized_start=3139 + _globals['_EXECUTIONSUSPENDEDEVENT']._serialized_end=3209 + _globals['_EXECUTIONRESUMEDEVENT']._serialized_start=3211 + _globals['_EXECUTIONRESUMEDEVENT']._serialized_end=3279 + _globals['_HISTORYEVENT']._serialized_start=3282 + _globals['_HISTORYEVENT']._serialized_end=4440 + _globals['_SCHEDULETASKACTION']._serialized_start=4442 + _globals['_SCHEDULETASKACTION']._serialized_end=4568 + _globals['_CREATESUBORCHESTRATIONACTION']._serialized_start=4571 + _globals['_CREATESUBORCHESTRATIONACTION']._serialized_end=4727 + _globals['_CREATETIMERACTION']._serialized_start=4729 + _globals['_CREATETIMERACTION']._serialized_end=4792 + _globals['_SENDEVENTACTION']._serialized_start=4794 + _globals['_SENDEVENTACTION']._serialized_end=4911 + _globals['_COMPLETEORCHESTRATIONACTION']._serialized_start=4914 + _globals['_COMPLETEORCHESTRATIONACTION']._serialized_end=5222 + _globals['_TERMINATEORCHESTRATIONACTION']._serialized_start=5224 + _globals['_TERMINATEORCHESTRATIONACTION']._serialized_end=5337 + _globals['_ORCHESTRATORACTION']._serialized_start=5340 + _globals['_ORCHESTRATORACTION']._serialized_end=5718 + _globals['_ORCHESTRATORREQUEST']._serialized_start=5721 + _globals['_ORCHESTRATORREQUEST']._serialized_end=5939 + _globals['_ORCHESTRATORRESPONSE']._serialized_start=5942 + _globals['_ORCHESTRATORRESPONSE']._serialized_end=6074 + _globals['_CREATEINSTANCEREQUEST']._serialized_start=6077 + _globals['_CREATEINSTANCEREQUEST']._serialized_end=6496 + _globals['_CREATEINSTANCEREQUEST_TAGSENTRY']._serialized_start=6453 + _globals['_CREATEINSTANCEREQUEST_TAGSENTRY']._serialized_end=6496 + _globals['_ORCHESTRATIONIDREUSEPOLICY']._serialized_start=6498 + _globals['_ORCHESTRATIONIDREUSEPOLICY']._serialized_end=6617 + _globals['_CREATEINSTANCERESPONSE']._serialized_start=6619 + _globals['_CREATEINSTANCERESPONSE']._serialized_end=6663 + _globals['_GETINSTANCEREQUEST']._serialized_start=6665 + _globals['_GETINSTANCEREQUEST']._serialized_end=6734 + _globals['_GETINSTANCERESPONSE']._serialized_start=6736 + _globals['_GETINSTANCERESPONSE']._serialized_end=6822 + _globals['_REWINDINSTANCEREQUEST']._serialized_start=6824 + _globals['_REWINDINSTANCEREQUEST']._serialized_end=6913 + _globals['_REWINDINSTANCERESPONSE']._serialized_start=6915 + _globals['_REWINDINSTANCERESPONSE']._serialized_end=6939 + _globals['_ORCHESTRATIONSTATE']._serialized_start=6942 + _globals['_ORCHESTRATIONSTATE']._serialized_end=7618 + _globals['_RAISEEVENTREQUEST']._serialized_start=7620 + _globals['_RAISEEVENTREQUEST']._serialized_end=7718 + _globals['_RAISEEVENTRESPONSE']._serialized_start=7720 + _globals['_RAISEEVENTRESPONSE']._serialized_end=7740 + _globals['_TERMINATEREQUEST']._serialized_start=7742 + _globals['_TERMINATEREQUEST']._serialized_end=7845 + _globals['_TERMINATERESPONSE']._serialized_start=7847 + _globals['_TERMINATERESPONSE']._serialized_end=7866 + _globals['_SUSPENDREQUEST']._serialized_start=7868 + _globals['_SUSPENDREQUEST']._serialized_end=7950 + _globals['_SUSPENDRESPONSE']._serialized_start=7952 + _globals['_SUSPENDRESPONSE']._serialized_end=7969 + _globals['_RESUMEREQUEST']._serialized_start=7971 + _globals['_RESUMEREQUEST']._serialized_end=8052 + _globals['_RESUMERESPONSE']._serialized_start=8054 + _globals['_RESUMERESPONSE']._serialized_end=8070 + _globals['_QUERYINSTANCESREQUEST']._serialized_start=8072 + _globals['_QUERYINSTANCESREQUEST']._serialized_end=8126 + _globals['_INSTANCEQUERY']._serialized_start=8129 + _globals['_INSTANCEQUERY']._serialized_end=8515 + _globals['_QUERYINSTANCESRESPONSE']._serialized_start=8518 + _globals['_QUERYINSTANCESRESPONSE']._serialized_end=8648 + _globals['_PURGEINSTANCESREQUEST']._serialized_start=8651 + _globals['_PURGEINSTANCESREQUEST']._serialized_end=8779 + _globals['_PURGEINSTANCEFILTER']._serialized_start=8782 + _globals['_PURGEINSTANCEFILTER']._serialized_end=8952 + _globals['_PURGEINSTANCESRESPONSE']._serialized_start=8954 + _globals['_PURGEINSTANCESRESPONSE']._serialized_end=9008 + _globals['_CREATETASKHUBREQUEST']._serialized_start=9010 + _globals['_CREATETASKHUBREQUEST']._serialized_end=9058 + _globals['_CREATETASKHUBRESPONSE']._serialized_start=9060 + _globals['_CREATETASKHUBRESPONSE']._serialized_end=9083 + _globals['_DELETETASKHUBREQUEST']._serialized_start=9085 + _globals['_DELETETASKHUBREQUEST']._serialized_end=9107 + _globals['_DELETETASKHUBRESPONSE']._serialized_start=9109 + _globals['_DELETETASKHUBRESPONSE']._serialized_end=9132 + _globals['_SIGNALENTITYREQUEST']._serialized_start=9135 + _globals['_SIGNALENTITYREQUEST']._serialized_end=9305 + _globals['_SIGNALENTITYRESPONSE']._serialized_start=9307 + _globals['_SIGNALENTITYRESPONSE']._serialized_end=9329 + _globals['_GETENTITYREQUEST']._serialized_start=9331 + _globals['_GETENTITYREQUEST']._serialized_end=9391 + _globals['_GETENTITYRESPONSE']._serialized_start=9393 + _globals['_GETENTITYRESPONSE']._serialized_end=9461 + _globals['_ENTITYQUERY']._serialized_start=9464 + _globals['_ENTITYQUERY']._serialized_end=9795 + _globals['_QUERYENTITIESREQUEST']._serialized_start=9797 + _globals['_QUERYENTITIESREQUEST']._serialized_end=9848 + _globals['_QUERYENTITIESRESPONSE']._serialized_start=9850 + _globals['_QUERYENTITIESRESPONSE']._serialized_end=9965 + _globals['_ENTITYMETADATA']._serialized_start=9968 + _globals['_ENTITYMETADATA']._serialized_end=10187 + _globals['_CLEANENTITYSTORAGEREQUEST']._serialized_start=10190 + _globals['_CLEANENTITYSTORAGEREQUEST']._serialized_end=10333 + _globals['_CLEANENTITYSTORAGERESPONSE']._serialized_start=10336 + _globals['_CLEANENTITYSTORAGERESPONSE']._serialized_end=10482 + _globals['_ORCHESTRATORENTITYPARAMETERS']._serialized_start=10484 + _globals['_ORCHESTRATORENTITYPARAMETERS']._serialized_end=10577 + _globals['_ENTITYBATCHREQUEST']._serialized_start=10580 + _globals['_ENTITYBATCHREQUEST']._serialized_end=10710 + _globals['_ENTITYBATCHRESULT']._serialized_start=10713 + _globals['_ENTITYBATCHRESULT']._serialized_end=10898 + _globals['_OPERATIONREQUEST']._serialized_start=10900 + _globals['_OPERATIONREQUEST']._serialized_end=11001 + _globals['_OPERATIONRESULT']._serialized_start=11003 + _globals['_OPERATIONRESULT']._serialized_end=11122 + _globals['_OPERATIONRESULTSUCCESS']._serialized_start=11124 + _globals['_OPERATIONRESULTSUCCESS']._serialized_end=11194 + _globals['_OPERATIONRESULTFAILURE']._serialized_start=11196 + _globals['_OPERATIONRESULTFAILURE']._serialized_end=11265 + _globals['_OPERATIONACTION']._serialized_start=11268 + _globals['_OPERATIONACTION']._serialized_end=11424 + _globals['_SENDSIGNALACTION']._serialized_start=11427 + _globals['_SENDSIGNALACTION']._serialized_end=11575 + _globals['_STARTNEWORCHESTRATIONACTION']._serialized_start=11578 + _globals['_STARTNEWORCHESTRATIONACTION']._serialized_end=11784 + _globals['_GETWORKITEMSREQUEST']._serialized_start=11786 + _globals['_GETWORKITEMSREQUEST']._serialized_end=11807 + _globals['_WORKITEM']._serialized_start=11810 + _globals['_WORKITEM']._serialized_end=12035 + _globals['_COMPLETETASKRESPONSE']._serialized_start=12037 + _globals['_COMPLETETASKRESPONSE']._serialized_end=12059 + _globals['_HEALTHPING']._serialized_start=12061 + _globals['_HEALTHPING']._serialized_end=12073 + _globals['_TASKHUBSIDECARSERVICE']._serialized_start=12455 + _globals['_TASKHUBSIDECARSERVICE']._serialized_end=13859 # @@protoc_insertion_point(module_scope) diff --git a/durabletask/internal/orchestrator_service_pb2.pyi b/durabletask/internal/orchestrator_service_pb2.pyi index afe7254..82d2e1a 100644 --- a/durabletask/internal/orchestrator_service_pb2.pyi +++ b/durabletask/internal/orchestrator_service_pb2.pyi @@ -9,818 +9,874 @@ from google.protobuf import message as _message from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union DESCRIPTOR: _descriptor.FileDescriptor -ORCHESTRATION_STATUS_CANCELED: OrchestrationStatus + +class OrchestrationStatus(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = () + ORCHESTRATION_STATUS_RUNNING: _ClassVar[OrchestrationStatus] + ORCHESTRATION_STATUS_COMPLETED: _ClassVar[OrchestrationStatus] + ORCHESTRATION_STATUS_CONTINUED_AS_NEW: _ClassVar[OrchestrationStatus] + ORCHESTRATION_STATUS_FAILED: _ClassVar[OrchestrationStatus] + ORCHESTRATION_STATUS_CANCELED: _ClassVar[OrchestrationStatus] + ORCHESTRATION_STATUS_TERMINATED: _ClassVar[OrchestrationStatus] + ORCHESTRATION_STATUS_PENDING: _ClassVar[OrchestrationStatus] + ORCHESTRATION_STATUS_SUSPENDED: _ClassVar[OrchestrationStatus] + +class CreateOrchestrationAction(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = () + ERROR: _ClassVar[CreateOrchestrationAction] + IGNORE: _ClassVar[CreateOrchestrationAction] + TERMINATE: _ClassVar[CreateOrchestrationAction] +ORCHESTRATION_STATUS_RUNNING: OrchestrationStatus ORCHESTRATION_STATUS_COMPLETED: OrchestrationStatus ORCHESTRATION_STATUS_CONTINUED_AS_NEW: OrchestrationStatus ORCHESTRATION_STATUS_FAILED: OrchestrationStatus +ORCHESTRATION_STATUS_CANCELED: OrchestrationStatus +ORCHESTRATION_STATUS_TERMINATED: OrchestrationStatus ORCHESTRATION_STATUS_PENDING: OrchestrationStatus -ORCHESTRATION_STATUS_RUNNING: OrchestrationStatus ORCHESTRATION_STATUS_SUSPENDED: OrchestrationStatus -ORCHESTRATION_STATUS_TERMINATED: OrchestrationStatus +ERROR: CreateOrchestrationAction +IGNORE: CreateOrchestrationAction +TERMINATE: CreateOrchestrationAction + +class OrchestrationInstance(_message.Message): + __slots__ = ("instanceId", "executionId") + INSTANCEID_FIELD_NUMBER: _ClassVar[int] + EXECUTIONID_FIELD_NUMBER: _ClassVar[int] + instanceId: str + executionId: _wrappers_pb2.StringValue + def __init__(self, instanceId: _Optional[str] = ..., executionId: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... class ActivityRequest(_message.Message): - __slots__ = ["input", "name", "orchestrationInstance", "taskId", "version"] - INPUT_FIELD_NUMBER: _ClassVar[int] + __slots__ = ("name", "version", "input", "orchestrationInstance", "taskId", "parentTraceContext") NAME_FIELD_NUMBER: _ClassVar[int] + VERSION_FIELD_NUMBER: _ClassVar[int] + INPUT_FIELD_NUMBER: _ClassVar[int] ORCHESTRATIONINSTANCE_FIELD_NUMBER: _ClassVar[int] TASKID_FIELD_NUMBER: _ClassVar[int] - VERSION_FIELD_NUMBER: _ClassVar[int] - input: _wrappers_pb2.StringValue + PARENTTRACECONTEXT_FIELD_NUMBER: _ClassVar[int] name: str + version: _wrappers_pb2.StringValue + input: _wrappers_pb2.StringValue orchestrationInstance: OrchestrationInstance taskId: int - version: _wrappers_pb2.StringValue - def __init__(self, name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., orchestrationInstance: _Optional[_Union[OrchestrationInstance, _Mapping]] = ..., taskId: _Optional[int] = ...) -> None: ... + parentTraceContext: TraceContext + def __init__(self, name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., orchestrationInstance: _Optional[_Union[OrchestrationInstance, _Mapping]] = ..., taskId: _Optional[int] = ..., parentTraceContext: _Optional[_Union[TraceContext, _Mapping]] = ...) -> None: ... class ActivityResponse(_message.Message): - __slots__ = ["failureDetails", "instanceId", "result", "taskId"] - FAILUREDETAILS_FIELD_NUMBER: _ClassVar[int] + __slots__ = ("instanceId", "taskId", "result", "failureDetails") INSTANCEID_FIELD_NUMBER: _ClassVar[int] - RESULT_FIELD_NUMBER: _ClassVar[int] TASKID_FIELD_NUMBER: _ClassVar[int] - failureDetails: TaskFailureDetails + RESULT_FIELD_NUMBER: _ClassVar[int] + FAILUREDETAILS_FIELD_NUMBER: _ClassVar[int] instanceId: str - result: _wrappers_pb2.StringValue taskId: int + result: _wrappers_pb2.StringValue + failureDetails: TaskFailureDetails def __init__(self, instanceId: _Optional[str] = ..., taskId: _Optional[int] = ..., result: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., failureDetails: _Optional[_Union[TaskFailureDetails, _Mapping]] = ...) -> None: ... -class CleanEntityStorageRequest(_message.Message): - __slots__ = ["continuationToken", "releaseOrphanedLocks", "removeEmptyEntities"] - CONTINUATIONTOKEN_FIELD_NUMBER: _ClassVar[int] - RELEASEORPHANEDLOCKS_FIELD_NUMBER: _ClassVar[int] - REMOVEEMPTYENTITIES_FIELD_NUMBER: _ClassVar[int] - continuationToken: _wrappers_pb2.StringValue - releaseOrphanedLocks: bool - removeEmptyEntities: bool - def __init__(self, continuationToken: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., removeEmptyEntities: bool = ..., releaseOrphanedLocks: bool = ...) -> None: ... +class TaskFailureDetails(_message.Message): + __slots__ = ("errorType", "errorMessage", "stackTrace", "innerFailure", "isNonRetriable") + ERRORTYPE_FIELD_NUMBER: _ClassVar[int] + ERRORMESSAGE_FIELD_NUMBER: _ClassVar[int] + STACKTRACE_FIELD_NUMBER: _ClassVar[int] + INNERFAILURE_FIELD_NUMBER: _ClassVar[int] + ISNONRETRIABLE_FIELD_NUMBER: _ClassVar[int] + errorType: str + errorMessage: str + stackTrace: _wrappers_pb2.StringValue + innerFailure: TaskFailureDetails + isNonRetriable: bool + def __init__(self, errorType: _Optional[str] = ..., errorMessage: _Optional[str] = ..., stackTrace: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., innerFailure: _Optional[_Union[TaskFailureDetails, _Mapping]] = ..., isNonRetriable: bool = ...) -> None: ... -class CleanEntityStorageResponse(_message.Message): - __slots__ = ["continuationToken", "emptyEntitiesRemoved", "orphanedLocksReleased"] - CONTINUATIONTOKEN_FIELD_NUMBER: _ClassVar[int] - EMPTYENTITIESREMOVED_FIELD_NUMBER: _ClassVar[int] - ORPHANEDLOCKSRELEASED_FIELD_NUMBER: _ClassVar[int] - continuationToken: _wrappers_pb2.StringValue - emptyEntitiesRemoved: int - orphanedLocksReleased: int - def __init__(self, continuationToken: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., emptyEntitiesRemoved: _Optional[int] = ..., orphanedLocksReleased: _Optional[int] = ...) -> None: ... +class ParentInstanceInfo(_message.Message): + __slots__ = ("taskScheduledId", "name", "version", "orchestrationInstance") + TASKSCHEDULEDID_FIELD_NUMBER: _ClassVar[int] + NAME_FIELD_NUMBER: _ClassVar[int] + VERSION_FIELD_NUMBER: _ClassVar[int] + ORCHESTRATIONINSTANCE_FIELD_NUMBER: _ClassVar[int] + taskScheduledId: int + name: _wrappers_pb2.StringValue + version: _wrappers_pb2.StringValue + orchestrationInstance: OrchestrationInstance + def __init__(self, taskScheduledId: _Optional[int] = ..., name: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., orchestrationInstance: _Optional[_Union[OrchestrationInstance, _Mapping]] = ...) -> None: ... -class CompleteOrchestrationAction(_message.Message): - __slots__ = ["carryoverEvents", "details", "failureDetails", "newVersion", "orchestrationStatus", "result"] - CARRYOVEREVENTS_FIELD_NUMBER: _ClassVar[int] - DETAILS_FIELD_NUMBER: _ClassVar[int] - FAILUREDETAILS_FIELD_NUMBER: _ClassVar[int] - NEWVERSION_FIELD_NUMBER: _ClassVar[int] +class TraceContext(_message.Message): + __slots__ = ("traceParent", "spanID", "traceState") + TRACEPARENT_FIELD_NUMBER: _ClassVar[int] + SPANID_FIELD_NUMBER: _ClassVar[int] + TRACESTATE_FIELD_NUMBER: _ClassVar[int] + traceParent: str + spanID: str + traceState: _wrappers_pb2.StringValue + def __init__(self, traceParent: _Optional[str] = ..., spanID: _Optional[str] = ..., traceState: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... + +class ExecutionStartedEvent(_message.Message): + __slots__ = ("name", "version", "input", "orchestrationInstance", "parentInstance", "scheduledStartTimestamp", "parentTraceContext", "orchestrationSpanID") + NAME_FIELD_NUMBER: _ClassVar[int] + VERSION_FIELD_NUMBER: _ClassVar[int] + INPUT_FIELD_NUMBER: _ClassVar[int] + ORCHESTRATIONINSTANCE_FIELD_NUMBER: _ClassVar[int] + PARENTINSTANCE_FIELD_NUMBER: _ClassVar[int] + SCHEDULEDSTARTTIMESTAMP_FIELD_NUMBER: _ClassVar[int] + PARENTTRACECONTEXT_FIELD_NUMBER: _ClassVar[int] + ORCHESTRATIONSPANID_FIELD_NUMBER: _ClassVar[int] + name: str + version: _wrappers_pb2.StringValue + input: _wrappers_pb2.StringValue + orchestrationInstance: OrchestrationInstance + parentInstance: ParentInstanceInfo + scheduledStartTimestamp: _timestamp_pb2.Timestamp + parentTraceContext: TraceContext + orchestrationSpanID: _wrappers_pb2.StringValue + def __init__(self, name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., orchestrationInstance: _Optional[_Union[OrchestrationInstance, _Mapping]] = ..., parentInstance: _Optional[_Union[ParentInstanceInfo, _Mapping]] = ..., scheduledStartTimestamp: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., parentTraceContext: _Optional[_Union[TraceContext, _Mapping]] = ..., orchestrationSpanID: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... + +class ExecutionCompletedEvent(_message.Message): + __slots__ = ("orchestrationStatus", "result", "failureDetails") ORCHESTRATIONSTATUS_FIELD_NUMBER: _ClassVar[int] RESULT_FIELD_NUMBER: _ClassVar[int] - carryoverEvents: _containers.RepeatedCompositeFieldContainer[HistoryEvent] - details: _wrappers_pb2.StringValue - failureDetails: TaskFailureDetails - newVersion: _wrappers_pb2.StringValue + FAILUREDETAILS_FIELD_NUMBER: _ClassVar[int] orchestrationStatus: OrchestrationStatus result: _wrappers_pb2.StringValue - def __init__(self, orchestrationStatus: _Optional[_Union[OrchestrationStatus, str]] = ..., result: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., details: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., newVersion: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., carryoverEvents: _Optional[_Iterable[_Union[HistoryEvent, _Mapping]]] = ..., failureDetails: _Optional[_Union[TaskFailureDetails, _Mapping]] = ...) -> None: ... - -class CompleteTaskResponse(_message.Message): - __slots__ = [] - def __init__(self) -> None: ... + failureDetails: TaskFailureDetails + def __init__(self, orchestrationStatus: _Optional[_Union[OrchestrationStatus, str]] = ..., result: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., failureDetails: _Optional[_Union[TaskFailureDetails, _Mapping]] = ...) -> None: ... -class ContinueAsNewEvent(_message.Message): - __slots__ = ["input"] +class ExecutionTerminatedEvent(_message.Message): + __slots__ = ("input", "recurse") INPUT_FIELD_NUMBER: _ClassVar[int] + RECURSE_FIELD_NUMBER: _ClassVar[int] input: _wrappers_pb2.StringValue - def __init__(self, input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... + recurse: bool + def __init__(self, input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., recurse: bool = ...) -> None: ... -class CreateInstanceRequest(_message.Message): - __slots__ = ["input", "instanceId", "name", "scheduledStartTimestamp", "version"] - INPUT_FIELD_NUMBER: _ClassVar[int] - INSTANCEID_FIELD_NUMBER: _ClassVar[int] +class TaskScheduledEvent(_message.Message): + __slots__ = ("name", "version", "input", "parentTraceContext") NAME_FIELD_NUMBER: _ClassVar[int] - SCHEDULEDSTARTTIMESTAMP_FIELD_NUMBER: _ClassVar[int] VERSION_FIELD_NUMBER: _ClassVar[int] - input: _wrappers_pb2.StringValue - instanceId: str + INPUT_FIELD_NUMBER: _ClassVar[int] + PARENTTRACECONTEXT_FIELD_NUMBER: _ClassVar[int] name: str - scheduledStartTimestamp: _timestamp_pb2.Timestamp version: _wrappers_pb2.StringValue - def __init__(self, instanceId: _Optional[str] = ..., name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., scheduledStartTimestamp: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ... + input: _wrappers_pb2.StringValue + parentTraceContext: TraceContext + def __init__(self, name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., parentTraceContext: _Optional[_Union[TraceContext, _Mapping]] = ...) -> None: ... -class CreateInstanceResponse(_message.Message): - __slots__ = ["instanceId"] - INSTANCEID_FIELD_NUMBER: _ClassVar[int] - instanceId: str - def __init__(self, instanceId: _Optional[str] = ...) -> None: ... +class TaskCompletedEvent(_message.Message): + __slots__ = ("taskScheduledId", "result") + TASKSCHEDULEDID_FIELD_NUMBER: _ClassVar[int] + RESULT_FIELD_NUMBER: _ClassVar[int] + taskScheduledId: int + result: _wrappers_pb2.StringValue + def __init__(self, taskScheduledId: _Optional[int] = ..., result: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... -class CreateSubOrchestrationAction(_message.Message): - __slots__ = ["input", "instanceId", "name", "version"] - INPUT_FIELD_NUMBER: _ClassVar[int] +class TaskFailedEvent(_message.Message): + __slots__ = ("taskScheduledId", "failureDetails") + TASKSCHEDULEDID_FIELD_NUMBER: _ClassVar[int] + FAILUREDETAILS_FIELD_NUMBER: _ClassVar[int] + taskScheduledId: int + failureDetails: TaskFailureDetails + def __init__(self, taskScheduledId: _Optional[int] = ..., failureDetails: _Optional[_Union[TaskFailureDetails, _Mapping]] = ...) -> None: ... + +class SubOrchestrationInstanceCreatedEvent(_message.Message): + __slots__ = ("instanceId", "name", "version", "input", "parentTraceContext") INSTANCEID_FIELD_NUMBER: _ClassVar[int] NAME_FIELD_NUMBER: _ClassVar[int] VERSION_FIELD_NUMBER: _ClassVar[int] - input: _wrappers_pb2.StringValue + INPUT_FIELD_NUMBER: _ClassVar[int] + PARENTTRACECONTEXT_FIELD_NUMBER: _ClassVar[int] instanceId: str name: str version: _wrappers_pb2.StringValue - def __init__(self, instanceId: _Optional[str] = ..., name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... + input: _wrappers_pb2.StringValue + parentTraceContext: TraceContext + def __init__(self, instanceId: _Optional[str] = ..., name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., parentTraceContext: _Optional[_Union[TraceContext, _Mapping]] = ...) -> None: ... -class CreateTaskHubRequest(_message.Message): - __slots__ = ["recreateIfExists"] - RECREATEIFEXISTS_FIELD_NUMBER: _ClassVar[int] - recreateIfExists: bool - def __init__(self, recreateIfExists: bool = ...) -> None: ... +class SubOrchestrationInstanceCompletedEvent(_message.Message): + __slots__ = ("taskScheduledId", "result") + TASKSCHEDULEDID_FIELD_NUMBER: _ClassVar[int] + RESULT_FIELD_NUMBER: _ClassVar[int] + taskScheduledId: int + result: _wrappers_pb2.StringValue + def __init__(self, taskScheduledId: _Optional[int] = ..., result: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... -class CreateTaskHubResponse(_message.Message): - __slots__ = [] - def __init__(self) -> None: ... +class SubOrchestrationInstanceFailedEvent(_message.Message): + __slots__ = ("taskScheduledId", "failureDetails") + TASKSCHEDULEDID_FIELD_NUMBER: _ClassVar[int] + FAILUREDETAILS_FIELD_NUMBER: _ClassVar[int] + taskScheduledId: int + failureDetails: TaskFailureDetails + def __init__(self, taskScheduledId: _Optional[int] = ..., failureDetails: _Optional[_Union[TaskFailureDetails, _Mapping]] = ...) -> None: ... -class CreateTimerAction(_message.Message): - __slots__ = ["fireAt"] +class TimerCreatedEvent(_message.Message): + __slots__ = ("fireAt",) FIREAT_FIELD_NUMBER: _ClassVar[int] fireAt: _timestamp_pb2.Timestamp def __init__(self, fireAt: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ... -class DeleteTaskHubRequest(_message.Message): - __slots__ = [] - def __init__(self) -> None: ... +class TimerFiredEvent(_message.Message): + __slots__ = ("fireAt", "timerId") + FIREAT_FIELD_NUMBER: _ClassVar[int] + TIMERID_FIELD_NUMBER: _ClassVar[int] + fireAt: _timestamp_pb2.Timestamp + timerId: int + def __init__(self, fireAt: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., timerId: _Optional[int] = ...) -> None: ... -class DeleteTaskHubResponse(_message.Message): - __slots__ = [] +class OrchestratorStartedEvent(_message.Message): + __slots__ = () def __init__(self) -> None: ... -class EntityBatchRequest(_message.Message): - __slots__ = ["entityState", "instanceId", "operations"] - ENTITYSTATE_FIELD_NUMBER: _ClassVar[int] - INSTANCEID_FIELD_NUMBER: _ClassVar[int] - OPERATIONS_FIELD_NUMBER: _ClassVar[int] - entityState: _wrappers_pb2.StringValue - instanceId: str - operations: _containers.RepeatedCompositeFieldContainer[OperationRequest] - def __init__(self, instanceId: _Optional[str] = ..., entityState: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., operations: _Optional[_Iterable[_Union[OperationRequest, _Mapping]]] = ...) -> None: ... - -class EntityBatchResult(_message.Message): - __slots__ = ["actions", "entityState", "failureDetails", "results"] - ACTIONS_FIELD_NUMBER: _ClassVar[int] - ENTITYSTATE_FIELD_NUMBER: _ClassVar[int] - FAILUREDETAILS_FIELD_NUMBER: _ClassVar[int] - RESULTS_FIELD_NUMBER: _ClassVar[int] - actions: _containers.RepeatedCompositeFieldContainer[OperationAction] - entityState: _wrappers_pb2.StringValue - failureDetails: TaskFailureDetails - results: _containers.RepeatedCompositeFieldContainer[OperationResult] - def __init__(self, results: _Optional[_Iterable[_Union[OperationResult, _Mapping]]] = ..., actions: _Optional[_Iterable[_Union[OperationAction, _Mapping]]] = ..., entityState: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., failureDetails: _Optional[_Union[TaskFailureDetails, _Mapping]] = ...) -> None: ... +class OrchestratorCompletedEvent(_message.Message): + __slots__ = () + def __init__(self) -> None: ... -class EntityMetadata(_message.Message): - __slots__ = ["backlogQueueSize", "instanceId", "lastModifiedTime", "lockedBy", "serializedState"] - BACKLOGQUEUESIZE_FIELD_NUMBER: _ClassVar[int] +class EventSentEvent(_message.Message): + __slots__ = ("instanceId", "name", "input") INSTANCEID_FIELD_NUMBER: _ClassVar[int] - LASTMODIFIEDTIME_FIELD_NUMBER: _ClassVar[int] - LOCKEDBY_FIELD_NUMBER: _ClassVar[int] - SERIALIZEDSTATE_FIELD_NUMBER: _ClassVar[int] - backlogQueueSize: int + NAME_FIELD_NUMBER: _ClassVar[int] + INPUT_FIELD_NUMBER: _ClassVar[int] instanceId: str - lastModifiedTime: _timestamp_pb2.Timestamp - lockedBy: _wrappers_pb2.StringValue - serializedState: _wrappers_pb2.StringValue - def __init__(self, instanceId: _Optional[str] = ..., lastModifiedTime: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., backlogQueueSize: _Optional[int] = ..., lockedBy: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., serializedState: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... - -class EntityQuery(_message.Message): - __slots__ = ["continuationToken", "includeState", "includeTransient", "instanceIdStartsWith", "lastModifiedFrom", "lastModifiedTo", "pageSize"] - CONTINUATIONTOKEN_FIELD_NUMBER: _ClassVar[int] - INCLUDESTATE_FIELD_NUMBER: _ClassVar[int] - INCLUDETRANSIENT_FIELD_NUMBER: _ClassVar[int] - INSTANCEIDSTARTSWITH_FIELD_NUMBER: _ClassVar[int] - LASTMODIFIEDFROM_FIELD_NUMBER: _ClassVar[int] - LASTMODIFIEDTO_FIELD_NUMBER: _ClassVar[int] - PAGESIZE_FIELD_NUMBER: _ClassVar[int] - continuationToken: _wrappers_pb2.StringValue - includeState: bool - includeTransient: bool - instanceIdStartsWith: _wrappers_pb2.StringValue - lastModifiedFrom: _timestamp_pb2.Timestamp - lastModifiedTo: _timestamp_pb2.Timestamp - pageSize: _wrappers_pb2.Int32Value - def __init__(self, instanceIdStartsWith: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., lastModifiedFrom: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., lastModifiedTo: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., includeState: bool = ..., includeTransient: bool = ..., pageSize: _Optional[_Union[_wrappers_pb2.Int32Value, _Mapping]] = ..., continuationToken: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... + name: str + input: _wrappers_pb2.StringValue + def __init__(self, instanceId: _Optional[str] = ..., name: _Optional[str] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... class EventRaisedEvent(_message.Message): - __slots__ = ["input", "name"] - INPUT_FIELD_NUMBER: _ClassVar[int] + __slots__ = ("name", "input") NAME_FIELD_NUMBER: _ClassVar[int] - input: _wrappers_pb2.StringValue + INPUT_FIELD_NUMBER: _ClassVar[int] name: str + input: _wrappers_pb2.StringValue def __init__(self, name: _Optional[str] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... -class EventSentEvent(_message.Message): - __slots__ = ["input", "instanceId", "name"] - INPUT_FIELD_NUMBER: _ClassVar[int] - INSTANCEID_FIELD_NUMBER: _ClassVar[int] - NAME_FIELD_NUMBER: _ClassVar[int] - input: _wrappers_pb2.StringValue - instanceId: str - name: str - def __init__(self, instanceId: _Optional[str] = ..., name: _Optional[str] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... +class GenericEvent(_message.Message): + __slots__ = ("data",) + DATA_FIELD_NUMBER: _ClassVar[int] + data: _wrappers_pb2.StringValue + def __init__(self, data: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... -class ExecutionCompletedEvent(_message.Message): - __slots__ = ["failureDetails", "orchestrationStatus", "result"] - FAILUREDETAILS_FIELD_NUMBER: _ClassVar[int] - ORCHESTRATIONSTATUS_FIELD_NUMBER: _ClassVar[int] - RESULT_FIELD_NUMBER: _ClassVar[int] - failureDetails: TaskFailureDetails - orchestrationStatus: OrchestrationStatus - result: _wrappers_pb2.StringValue - def __init__(self, orchestrationStatus: _Optional[_Union[OrchestrationStatus, str]] = ..., result: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., failureDetails: _Optional[_Union[TaskFailureDetails, _Mapping]] = ...) -> None: ... +class HistoryStateEvent(_message.Message): + __slots__ = ("orchestrationState",) + ORCHESTRATIONSTATE_FIELD_NUMBER: _ClassVar[int] + orchestrationState: OrchestrationState + def __init__(self, orchestrationState: _Optional[_Union[OrchestrationState, _Mapping]] = ...) -> None: ... -class ExecutionResumedEvent(_message.Message): - __slots__ = ["input"] +class ContinueAsNewEvent(_message.Message): + __slots__ = ("input",) INPUT_FIELD_NUMBER: _ClassVar[int] input: _wrappers_pb2.StringValue def __init__(self, input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... -class ExecutionStartedEvent(_message.Message): - __slots__ = ["input", "name", "orchestrationInstance", "orchestrationSpanID", "parentInstance", "parentTraceContext", "scheduledStartTimestamp", "version"] - INPUT_FIELD_NUMBER: _ClassVar[int] - NAME_FIELD_NUMBER: _ClassVar[int] - ORCHESTRATIONINSTANCE_FIELD_NUMBER: _ClassVar[int] - ORCHESTRATIONSPANID_FIELD_NUMBER: _ClassVar[int] - PARENTINSTANCE_FIELD_NUMBER: _ClassVar[int] - PARENTTRACECONTEXT_FIELD_NUMBER: _ClassVar[int] - SCHEDULEDSTARTTIMESTAMP_FIELD_NUMBER: _ClassVar[int] - VERSION_FIELD_NUMBER: _ClassVar[int] - input: _wrappers_pb2.StringValue - name: str - orchestrationInstance: OrchestrationInstance - orchestrationSpanID: _wrappers_pb2.StringValue - parentInstance: ParentInstanceInfo - parentTraceContext: TraceContext - scheduledStartTimestamp: _timestamp_pb2.Timestamp - version: _wrappers_pb2.StringValue - def __init__(self, name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., orchestrationInstance: _Optional[_Union[OrchestrationInstance, _Mapping]] = ..., parentInstance: _Optional[_Union[ParentInstanceInfo, _Mapping]] = ..., scheduledStartTimestamp: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., parentTraceContext: _Optional[_Union[TraceContext, _Mapping]] = ..., orchestrationSpanID: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... - class ExecutionSuspendedEvent(_message.Message): - __slots__ = ["input"] + __slots__ = ("input",) INPUT_FIELD_NUMBER: _ClassVar[int] input: _wrappers_pb2.StringValue def __init__(self, input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... -class ExecutionTerminatedEvent(_message.Message): - __slots__ = ["input", "recurse"] +class ExecutionResumedEvent(_message.Message): + __slots__ = ("input",) INPUT_FIELD_NUMBER: _ClassVar[int] - RECURSE_FIELD_NUMBER: _ClassVar[int] input: _wrappers_pb2.StringValue - recurse: bool - def __init__(self, input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., recurse: bool = ...) -> None: ... - -class GenericEvent(_message.Message): - __slots__ = ["data"] - DATA_FIELD_NUMBER: _ClassVar[int] - data: str - def __init__(self, data: _Optional[str] = ...) -> None: ... - -class GetEntityRequest(_message.Message): - __slots__ = ["includeState", "instanceId"] - INCLUDESTATE_FIELD_NUMBER: _ClassVar[int] - INSTANCEID_FIELD_NUMBER: _ClassVar[int] - includeState: bool - instanceId: str - def __init__(self, instanceId: _Optional[str] = ..., includeState: bool = ...) -> None: ... - -class GetEntityResponse(_message.Message): - __slots__ = ["entity", "exists"] - ENTITY_FIELD_NUMBER: _ClassVar[int] - EXISTS_FIELD_NUMBER: _ClassVar[int] - entity: EntityMetadata - exists: bool - def __init__(self, exists: bool = ..., entity: _Optional[_Union[EntityMetadata, _Mapping]] = ...) -> None: ... - -class GetInstanceRequest(_message.Message): - __slots__ = ["getInputsAndOutputs", "instanceId"] - GETINPUTSANDOUTPUTS_FIELD_NUMBER: _ClassVar[int] - INSTANCEID_FIELD_NUMBER: _ClassVar[int] - getInputsAndOutputs: bool - instanceId: str - def __init__(self, instanceId: _Optional[str] = ..., getInputsAndOutputs: bool = ...) -> None: ... - -class GetInstanceResponse(_message.Message): - __slots__ = ["exists", "orchestrationState"] - EXISTS_FIELD_NUMBER: _ClassVar[int] - ORCHESTRATIONSTATE_FIELD_NUMBER: _ClassVar[int] - exists: bool - orchestrationState: OrchestrationState - def __init__(self, exists: bool = ..., orchestrationState: _Optional[_Union[OrchestrationState, _Mapping]] = ...) -> None: ... - -class GetWorkItemsRequest(_message.Message): - __slots__ = [] - def __init__(self) -> None: ... + def __init__(self, input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... class HistoryEvent(_message.Message): - __slots__ = ["continueAsNew", "eventId", "eventRaised", "eventSent", "executionCompleted", "executionResumed", "executionStarted", "executionSuspended", "executionTerminated", "genericEvent", "historyState", "orchestratorCompleted", "orchestratorStarted", "subOrchestrationInstanceCompleted", "subOrchestrationInstanceCreated", "subOrchestrationInstanceFailed", "taskCompleted", "taskFailed", "taskScheduled", "timerCreated", "timerFired", "timestamp"] - CONTINUEASNEW_FIELD_NUMBER: _ClassVar[int] + __slots__ = ("eventId", "timestamp", "executionStarted", "executionCompleted", "executionTerminated", "taskScheduled", "taskCompleted", "taskFailed", "subOrchestrationInstanceCreated", "subOrchestrationInstanceCompleted", "subOrchestrationInstanceFailed", "timerCreated", "timerFired", "orchestratorStarted", "orchestratorCompleted", "eventSent", "eventRaised", "genericEvent", "historyState", "continueAsNew", "executionSuspended", "executionResumed") EVENTID_FIELD_NUMBER: _ClassVar[int] - EVENTRAISED_FIELD_NUMBER: _ClassVar[int] - EVENTSENT_FIELD_NUMBER: _ClassVar[int] - EXECUTIONCOMPLETED_FIELD_NUMBER: _ClassVar[int] - EXECUTIONRESUMED_FIELD_NUMBER: _ClassVar[int] + TIMESTAMP_FIELD_NUMBER: _ClassVar[int] EXECUTIONSTARTED_FIELD_NUMBER: _ClassVar[int] - EXECUTIONSUSPENDED_FIELD_NUMBER: _ClassVar[int] + EXECUTIONCOMPLETED_FIELD_NUMBER: _ClassVar[int] EXECUTIONTERMINATED_FIELD_NUMBER: _ClassVar[int] - GENERICEVENT_FIELD_NUMBER: _ClassVar[int] - HISTORYSTATE_FIELD_NUMBER: _ClassVar[int] - ORCHESTRATORCOMPLETED_FIELD_NUMBER: _ClassVar[int] - ORCHESTRATORSTARTED_FIELD_NUMBER: _ClassVar[int] - SUBORCHESTRATIONINSTANCECOMPLETED_FIELD_NUMBER: _ClassVar[int] - SUBORCHESTRATIONINSTANCECREATED_FIELD_NUMBER: _ClassVar[int] - SUBORCHESTRATIONINSTANCEFAILED_FIELD_NUMBER: _ClassVar[int] + TASKSCHEDULED_FIELD_NUMBER: _ClassVar[int] TASKCOMPLETED_FIELD_NUMBER: _ClassVar[int] TASKFAILED_FIELD_NUMBER: _ClassVar[int] - TASKSCHEDULED_FIELD_NUMBER: _ClassVar[int] + SUBORCHESTRATIONINSTANCECREATED_FIELD_NUMBER: _ClassVar[int] + SUBORCHESTRATIONINSTANCECOMPLETED_FIELD_NUMBER: _ClassVar[int] + SUBORCHESTRATIONINSTANCEFAILED_FIELD_NUMBER: _ClassVar[int] TIMERCREATED_FIELD_NUMBER: _ClassVar[int] TIMERFIRED_FIELD_NUMBER: _ClassVar[int] - TIMESTAMP_FIELD_NUMBER: _ClassVar[int] - continueAsNew: ContinueAsNewEvent + ORCHESTRATORSTARTED_FIELD_NUMBER: _ClassVar[int] + ORCHESTRATORCOMPLETED_FIELD_NUMBER: _ClassVar[int] + EVENTSENT_FIELD_NUMBER: _ClassVar[int] + EVENTRAISED_FIELD_NUMBER: _ClassVar[int] + GENERICEVENT_FIELD_NUMBER: _ClassVar[int] + HISTORYSTATE_FIELD_NUMBER: _ClassVar[int] + CONTINUEASNEW_FIELD_NUMBER: _ClassVar[int] + EXECUTIONSUSPENDED_FIELD_NUMBER: _ClassVar[int] + EXECUTIONRESUMED_FIELD_NUMBER: _ClassVar[int] eventId: int - eventRaised: EventRaisedEvent - eventSent: EventSentEvent - executionCompleted: ExecutionCompletedEvent - executionResumed: ExecutionResumedEvent + timestamp: _timestamp_pb2.Timestamp executionStarted: ExecutionStartedEvent - executionSuspended: ExecutionSuspendedEvent + executionCompleted: ExecutionCompletedEvent executionTerminated: ExecutionTerminatedEvent - genericEvent: GenericEvent - historyState: HistoryStateEvent - orchestratorCompleted: OrchestratorCompletedEvent - orchestratorStarted: OrchestratorStartedEvent - subOrchestrationInstanceCompleted: SubOrchestrationInstanceCompletedEvent - subOrchestrationInstanceCreated: SubOrchestrationInstanceCreatedEvent - subOrchestrationInstanceFailed: SubOrchestrationInstanceFailedEvent + taskScheduled: TaskScheduledEvent taskCompleted: TaskCompletedEvent taskFailed: TaskFailedEvent - taskScheduled: TaskScheduledEvent + subOrchestrationInstanceCreated: SubOrchestrationInstanceCreatedEvent + subOrchestrationInstanceCompleted: SubOrchestrationInstanceCompletedEvent + subOrchestrationInstanceFailed: SubOrchestrationInstanceFailedEvent timerCreated: TimerCreatedEvent timerFired: TimerFiredEvent - timestamp: _timestamp_pb2.Timestamp + orchestratorStarted: OrchestratorStartedEvent + orchestratorCompleted: OrchestratorCompletedEvent + eventSent: EventSentEvent + eventRaised: EventRaisedEvent + genericEvent: GenericEvent + historyState: HistoryStateEvent + continueAsNew: ContinueAsNewEvent + executionSuspended: ExecutionSuspendedEvent + executionResumed: ExecutionResumedEvent def __init__(self, eventId: _Optional[int] = ..., timestamp: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., executionStarted: _Optional[_Union[ExecutionStartedEvent, _Mapping]] = ..., executionCompleted: _Optional[_Union[ExecutionCompletedEvent, _Mapping]] = ..., executionTerminated: _Optional[_Union[ExecutionTerminatedEvent, _Mapping]] = ..., taskScheduled: _Optional[_Union[TaskScheduledEvent, _Mapping]] = ..., taskCompleted: _Optional[_Union[TaskCompletedEvent, _Mapping]] = ..., taskFailed: _Optional[_Union[TaskFailedEvent, _Mapping]] = ..., subOrchestrationInstanceCreated: _Optional[_Union[SubOrchestrationInstanceCreatedEvent, _Mapping]] = ..., subOrchestrationInstanceCompleted: _Optional[_Union[SubOrchestrationInstanceCompletedEvent, _Mapping]] = ..., subOrchestrationInstanceFailed: _Optional[_Union[SubOrchestrationInstanceFailedEvent, _Mapping]] = ..., timerCreated: _Optional[_Union[TimerCreatedEvent, _Mapping]] = ..., timerFired: _Optional[_Union[TimerFiredEvent, _Mapping]] = ..., orchestratorStarted: _Optional[_Union[OrchestratorStartedEvent, _Mapping]] = ..., orchestratorCompleted: _Optional[_Union[OrchestratorCompletedEvent, _Mapping]] = ..., eventSent: _Optional[_Union[EventSentEvent, _Mapping]] = ..., eventRaised: _Optional[_Union[EventRaisedEvent, _Mapping]] = ..., genericEvent: _Optional[_Union[GenericEvent, _Mapping]] = ..., historyState: _Optional[_Union[HistoryStateEvent, _Mapping]] = ..., continueAsNew: _Optional[_Union[ContinueAsNewEvent, _Mapping]] = ..., executionSuspended: _Optional[_Union[ExecutionSuspendedEvent, _Mapping]] = ..., executionResumed: _Optional[_Union[ExecutionResumedEvent, _Mapping]] = ...) -> None: ... -class HistoryStateEvent(_message.Message): - __slots__ = ["orchestrationState"] - ORCHESTRATIONSTATE_FIELD_NUMBER: _ClassVar[int] - orchestrationState: OrchestrationState - def __init__(self, orchestrationState: _Optional[_Union[OrchestrationState, _Mapping]] = ...) -> None: ... - -class InstanceQuery(_message.Message): - __slots__ = ["continuationToken", "createdTimeFrom", "createdTimeTo", "fetchInputsAndOutputs", "instanceIdPrefix", "maxInstanceCount", "runtimeStatus", "taskHubNames"] - CONTINUATIONTOKEN_FIELD_NUMBER: _ClassVar[int] - CREATEDTIMEFROM_FIELD_NUMBER: _ClassVar[int] - CREATEDTIMETO_FIELD_NUMBER: _ClassVar[int] - FETCHINPUTSANDOUTPUTS_FIELD_NUMBER: _ClassVar[int] - INSTANCEIDPREFIX_FIELD_NUMBER: _ClassVar[int] - MAXINSTANCECOUNT_FIELD_NUMBER: _ClassVar[int] - RUNTIMESTATUS_FIELD_NUMBER: _ClassVar[int] - TASKHUBNAMES_FIELD_NUMBER: _ClassVar[int] - continuationToken: _wrappers_pb2.StringValue - createdTimeFrom: _timestamp_pb2.Timestamp - createdTimeTo: _timestamp_pb2.Timestamp - fetchInputsAndOutputs: bool - instanceIdPrefix: _wrappers_pb2.StringValue - maxInstanceCount: int - runtimeStatus: _containers.RepeatedScalarFieldContainer[OrchestrationStatus] - taskHubNames: _containers.RepeatedCompositeFieldContainer[_wrappers_pb2.StringValue] - def __init__(self, runtimeStatus: _Optional[_Iterable[_Union[OrchestrationStatus, str]]] = ..., createdTimeFrom: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., createdTimeTo: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., taskHubNames: _Optional[_Iterable[_Union[_wrappers_pb2.StringValue, _Mapping]]] = ..., maxInstanceCount: _Optional[int] = ..., continuationToken: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., instanceIdPrefix: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., fetchInputsAndOutputs: bool = ...) -> None: ... - -class OperationAction(_message.Message): - __slots__ = ["id", "sendSignal", "startNewOrchestration"] - ID_FIELD_NUMBER: _ClassVar[int] - SENDSIGNAL_FIELD_NUMBER: _ClassVar[int] - STARTNEWORCHESTRATION_FIELD_NUMBER: _ClassVar[int] - id: int - sendSignal: SendSignalAction - startNewOrchestration: StartNewOrchestrationAction - def __init__(self, id: _Optional[int] = ..., sendSignal: _Optional[_Union[SendSignalAction, _Mapping]] = ..., startNewOrchestration: _Optional[_Union[StartNewOrchestrationAction, _Mapping]] = ...) -> None: ... +class ScheduleTaskAction(_message.Message): + __slots__ = ("name", "version", "input") + NAME_FIELD_NUMBER: _ClassVar[int] + VERSION_FIELD_NUMBER: _ClassVar[int] + INPUT_FIELD_NUMBER: _ClassVar[int] + name: str + version: _wrappers_pb2.StringValue + input: _wrappers_pb2.StringValue + def __init__(self, name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... -class OperationRequest(_message.Message): - __slots__ = ["input", "operation", "requestId"] +class CreateSubOrchestrationAction(_message.Message): + __slots__ = ("instanceId", "name", "version", "input") + INSTANCEID_FIELD_NUMBER: _ClassVar[int] + NAME_FIELD_NUMBER: _ClassVar[int] + VERSION_FIELD_NUMBER: _ClassVar[int] INPUT_FIELD_NUMBER: _ClassVar[int] - OPERATION_FIELD_NUMBER: _ClassVar[int] - REQUESTID_FIELD_NUMBER: _ClassVar[int] + instanceId: str + name: str + version: _wrappers_pb2.StringValue input: _wrappers_pb2.StringValue - operation: str - requestId: str - def __init__(self, operation: _Optional[str] = ..., requestId: _Optional[str] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... + def __init__(self, instanceId: _Optional[str] = ..., name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... -class OperationResult(_message.Message): - __slots__ = ["failure", "success"] - FAILURE_FIELD_NUMBER: _ClassVar[int] - SUCCESS_FIELD_NUMBER: _ClassVar[int] - failure: OperationResultFailure - success: OperationResultSuccess - def __init__(self, success: _Optional[_Union[OperationResultSuccess, _Mapping]] = ..., failure: _Optional[_Union[OperationResultFailure, _Mapping]] = ...) -> None: ... +class CreateTimerAction(_message.Message): + __slots__ = ("fireAt",) + FIREAT_FIELD_NUMBER: _ClassVar[int] + fireAt: _timestamp_pb2.Timestamp + def __init__(self, fireAt: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ... -class OperationResultFailure(_message.Message): - __slots__ = ["failureDetails"] - FAILUREDETAILS_FIELD_NUMBER: _ClassVar[int] - failureDetails: TaskFailureDetails - def __init__(self, failureDetails: _Optional[_Union[TaskFailureDetails, _Mapping]] = ...) -> None: ... +class SendEventAction(_message.Message): + __slots__ = ("instance", "name", "data") + INSTANCE_FIELD_NUMBER: _ClassVar[int] + NAME_FIELD_NUMBER: _ClassVar[int] + DATA_FIELD_NUMBER: _ClassVar[int] + instance: OrchestrationInstance + name: str + data: _wrappers_pb2.StringValue + def __init__(self, instance: _Optional[_Union[OrchestrationInstance, _Mapping]] = ..., name: _Optional[str] = ..., data: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... -class OperationResultSuccess(_message.Message): - __slots__ = ["result"] +class CompleteOrchestrationAction(_message.Message): + __slots__ = ("orchestrationStatus", "result", "details", "newVersion", "carryoverEvents", "failureDetails") + ORCHESTRATIONSTATUS_FIELD_NUMBER: _ClassVar[int] RESULT_FIELD_NUMBER: _ClassVar[int] + DETAILS_FIELD_NUMBER: _ClassVar[int] + NEWVERSION_FIELD_NUMBER: _ClassVar[int] + CARRYOVEREVENTS_FIELD_NUMBER: _ClassVar[int] + FAILUREDETAILS_FIELD_NUMBER: _ClassVar[int] + orchestrationStatus: OrchestrationStatus result: _wrappers_pb2.StringValue - def __init__(self, result: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... - -class OrchestrationInstance(_message.Message): - __slots__ = ["executionId", "instanceId"] - EXECUTIONID_FIELD_NUMBER: _ClassVar[int] - INSTANCEID_FIELD_NUMBER: _ClassVar[int] - executionId: _wrappers_pb2.StringValue - instanceId: str - def __init__(self, instanceId: _Optional[str] = ..., executionId: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... + details: _wrappers_pb2.StringValue + newVersion: _wrappers_pb2.StringValue + carryoverEvents: _containers.RepeatedCompositeFieldContainer[HistoryEvent] + failureDetails: TaskFailureDetails + def __init__(self, orchestrationStatus: _Optional[_Union[OrchestrationStatus, str]] = ..., result: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., details: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., newVersion: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., carryoverEvents: _Optional[_Iterable[_Union[HistoryEvent, _Mapping]]] = ..., failureDetails: _Optional[_Union[TaskFailureDetails, _Mapping]] = ...) -> None: ... -class OrchestrationState(_message.Message): - __slots__ = ["createdTimestamp", "customStatus", "failureDetails", "input", "instanceId", "lastUpdatedTimestamp", "name", "orchestrationStatus", "output", "scheduledStartTimestamp", "version"] - CREATEDTIMESTAMP_FIELD_NUMBER: _ClassVar[int] - CUSTOMSTATUS_FIELD_NUMBER: _ClassVar[int] - FAILUREDETAILS_FIELD_NUMBER: _ClassVar[int] - INPUT_FIELD_NUMBER: _ClassVar[int] +class TerminateOrchestrationAction(_message.Message): + __slots__ = ("instanceId", "reason", "recurse") INSTANCEID_FIELD_NUMBER: _ClassVar[int] - LASTUPDATEDTIMESTAMP_FIELD_NUMBER: _ClassVar[int] - NAME_FIELD_NUMBER: _ClassVar[int] - ORCHESTRATIONSTATUS_FIELD_NUMBER: _ClassVar[int] - OUTPUT_FIELD_NUMBER: _ClassVar[int] - SCHEDULEDSTARTTIMESTAMP_FIELD_NUMBER: _ClassVar[int] - VERSION_FIELD_NUMBER: _ClassVar[int] - createdTimestamp: _timestamp_pb2.Timestamp - customStatus: _wrappers_pb2.StringValue - failureDetails: TaskFailureDetails - input: _wrappers_pb2.StringValue + REASON_FIELD_NUMBER: _ClassVar[int] + RECURSE_FIELD_NUMBER: _ClassVar[int] instanceId: str - lastUpdatedTimestamp: _timestamp_pb2.Timestamp - name: str - orchestrationStatus: OrchestrationStatus - output: _wrappers_pb2.StringValue - scheduledStartTimestamp: _timestamp_pb2.Timestamp - version: _wrappers_pb2.StringValue - def __init__(self, instanceId: _Optional[str] = ..., name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., orchestrationStatus: _Optional[_Union[OrchestrationStatus, str]] = ..., scheduledStartTimestamp: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., createdTimestamp: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., lastUpdatedTimestamp: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., output: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., customStatus: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., failureDetails: _Optional[_Union[TaskFailureDetails, _Mapping]] = ...) -> None: ... + reason: _wrappers_pb2.StringValue + recurse: bool + def __init__(self, instanceId: _Optional[str] = ..., reason: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., recurse: bool = ...) -> None: ... class OrchestratorAction(_message.Message): - __slots__ = ["completeOrchestration", "createSubOrchestration", "createTimer", "id", "scheduleTask", "sendEvent", "terminateOrchestration"] - COMPLETEORCHESTRATION_FIELD_NUMBER: _ClassVar[int] - CREATESUBORCHESTRATION_FIELD_NUMBER: _ClassVar[int] - CREATETIMER_FIELD_NUMBER: _ClassVar[int] + __slots__ = ("id", "scheduleTask", "createSubOrchestration", "createTimer", "sendEvent", "completeOrchestration", "terminateOrchestration") ID_FIELD_NUMBER: _ClassVar[int] SCHEDULETASK_FIELD_NUMBER: _ClassVar[int] + CREATESUBORCHESTRATION_FIELD_NUMBER: _ClassVar[int] + CREATETIMER_FIELD_NUMBER: _ClassVar[int] SENDEVENT_FIELD_NUMBER: _ClassVar[int] + COMPLETEORCHESTRATION_FIELD_NUMBER: _ClassVar[int] TERMINATEORCHESTRATION_FIELD_NUMBER: _ClassVar[int] - completeOrchestration: CompleteOrchestrationAction - createSubOrchestration: CreateSubOrchestrationAction - createTimer: CreateTimerAction id: int scheduleTask: ScheduleTaskAction + createSubOrchestration: CreateSubOrchestrationAction + createTimer: CreateTimerAction sendEvent: SendEventAction + completeOrchestration: CompleteOrchestrationAction terminateOrchestration: TerminateOrchestrationAction def __init__(self, id: _Optional[int] = ..., scheduleTask: _Optional[_Union[ScheduleTaskAction, _Mapping]] = ..., createSubOrchestration: _Optional[_Union[CreateSubOrchestrationAction, _Mapping]] = ..., createTimer: _Optional[_Union[CreateTimerAction, _Mapping]] = ..., sendEvent: _Optional[_Union[SendEventAction, _Mapping]] = ..., completeOrchestration: _Optional[_Union[CompleteOrchestrationAction, _Mapping]] = ..., terminateOrchestration: _Optional[_Union[TerminateOrchestrationAction, _Mapping]] = ...) -> None: ... -class OrchestratorCompletedEvent(_message.Message): - __slots__ = [] - def __init__(self) -> None: ... - -class OrchestratorEntityParameters(_message.Message): - __slots__ = ["entityMessageReorderWindow"] - ENTITYMESSAGEREORDERWINDOW_FIELD_NUMBER: _ClassVar[int] - entityMessageReorderWindow: _duration_pb2.Duration - def __init__(self, entityMessageReorderWindow: _Optional[_Union[_duration_pb2.Duration, _Mapping]] = ...) -> None: ... - class OrchestratorRequest(_message.Message): - __slots__ = ["entityParameters", "executionId", "instanceId", "newEvents", "pastEvents"] - ENTITYPARAMETERS_FIELD_NUMBER: _ClassVar[int] - EXECUTIONID_FIELD_NUMBER: _ClassVar[int] + __slots__ = ("instanceId", "executionId", "pastEvents", "newEvents", "entityParameters") INSTANCEID_FIELD_NUMBER: _ClassVar[int] - NEWEVENTS_FIELD_NUMBER: _ClassVar[int] + EXECUTIONID_FIELD_NUMBER: _ClassVar[int] PASTEVENTS_FIELD_NUMBER: _ClassVar[int] - entityParameters: OrchestratorEntityParameters - executionId: _wrappers_pb2.StringValue + NEWEVENTS_FIELD_NUMBER: _ClassVar[int] + ENTITYPARAMETERS_FIELD_NUMBER: _ClassVar[int] instanceId: str - newEvents: _containers.RepeatedCompositeFieldContainer[HistoryEvent] + executionId: _wrappers_pb2.StringValue pastEvents: _containers.RepeatedCompositeFieldContainer[HistoryEvent] + newEvents: _containers.RepeatedCompositeFieldContainer[HistoryEvent] + entityParameters: OrchestratorEntityParameters def __init__(self, instanceId: _Optional[str] = ..., executionId: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., pastEvents: _Optional[_Iterable[_Union[HistoryEvent, _Mapping]]] = ..., newEvents: _Optional[_Iterable[_Union[HistoryEvent, _Mapping]]] = ..., entityParameters: _Optional[_Union[OrchestratorEntityParameters, _Mapping]] = ...) -> None: ... class OrchestratorResponse(_message.Message): - __slots__ = ["actions", "customStatus", "instanceId"] + __slots__ = ("instanceId", "actions", "customStatus") + INSTANCEID_FIELD_NUMBER: _ClassVar[int] ACTIONS_FIELD_NUMBER: _ClassVar[int] CUSTOMSTATUS_FIELD_NUMBER: _ClassVar[int] - INSTANCEID_FIELD_NUMBER: _ClassVar[int] + instanceId: str actions: _containers.RepeatedCompositeFieldContainer[OrchestratorAction] customStatus: _wrappers_pb2.StringValue - instanceId: str def __init__(self, instanceId: _Optional[str] = ..., actions: _Optional[_Iterable[_Union[OrchestratorAction, _Mapping]]] = ..., customStatus: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... -class OrchestratorStartedEvent(_message.Message): - __slots__ = [] - def __init__(self) -> None: ... - -class ParentInstanceInfo(_message.Message): - __slots__ = ["name", "orchestrationInstance", "taskScheduledId", "version"] +class CreateInstanceRequest(_message.Message): + __slots__ = ("instanceId", "name", "version", "input", "scheduledStartTimestamp", "orchestrationIdReusePolicy", "executionId", "tags") + class TagsEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: str + value: str + def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ... + INSTANCEID_FIELD_NUMBER: _ClassVar[int] NAME_FIELD_NUMBER: _ClassVar[int] - ORCHESTRATIONINSTANCE_FIELD_NUMBER: _ClassVar[int] - TASKSCHEDULEDID_FIELD_NUMBER: _ClassVar[int] VERSION_FIELD_NUMBER: _ClassVar[int] - name: _wrappers_pb2.StringValue - orchestrationInstance: OrchestrationInstance - taskScheduledId: int + INPUT_FIELD_NUMBER: _ClassVar[int] + SCHEDULEDSTARTTIMESTAMP_FIELD_NUMBER: _ClassVar[int] + ORCHESTRATIONIDREUSEPOLICY_FIELD_NUMBER: _ClassVar[int] + EXECUTIONID_FIELD_NUMBER: _ClassVar[int] + TAGS_FIELD_NUMBER: _ClassVar[int] + instanceId: str + name: str version: _wrappers_pb2.StringValue - def __init__(self, taskScheduledId: _Optional[int] = ..., name: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., orchestrationInstance: _Optional[_Union[OrchestrationInstance, _Mapping]] = ...) -> None: ... + input: _wrappers_pb2.StringValue + scheduledStartTimestamp: _timestamp_pb2.Timestamp + orchestrationIdReusePolicy: OrchestrationIdReusePolicy + executionId: _wrappers_pb2.StringValue + tags: _containers.ScalarMap[str, str] + def __init__(self, instanceId: _Optional[str] = ..., name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., scheduledStartTimestamp: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., orchestrationIdReusePolicy: _Optional[_Union[OrchestrationIdReusePolicy, _Mapping]] = ..., executionId: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., tags: _Optional[_Mapping[str, str]] = ...) -> None: ... -class PurgeInstanceFilter(_message.Message): - __slots__ = ["createdTimeFrom", "createdTimeTo", "runtimeStatus"] - CREATEDTIMEFROM_FIELD_NUMBER: _ClassVar[int] - CREATEDTIMETO_FIELD_NUMBER: _ClassVar[int] - RUNTIMESTATUS_FIELD_NUMBER: _ClassVar[int] - createdTimeFrom: _timestamp_pb2.Timestamp - createdTimeTo: _timestamp_pb2.Timestamp - runtimeStatus: _containers.RepeatedScalarFieldContainer[OrchestrationStatus] - def __init__(self, createdTimeFrom: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., createdTimeTo: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., runtimeStatus: _Optional[_Iterable[_Union[OrchestrationStatus, str]]] = ...) -> None: ... +class OrchestrationIdReusePolicy(_message.Message): + __slots__ = ("operationStatus", "action") + OPERATIONSTATUS_FIELD_NUMBER: _ClassVar[int] + ACTION_FIELD_NUMBER: _ClassVar[int] + operationStatus: _containers.RepeatedScalarFieldContainer[OrchestrationStatus] + action: CreateOrchestrationAction + def __init__(self, operationStatus: _Optional[_Iterable[_Union[OrchestrationStatus, str]]] = ..., action: _Optional[_Union[CreateOrchestrationAction, str]] = ...) -> None: ... -class PurgeInstancesRequest(_message.Message): - __slots__ = ["instanceId", "purgeInstanceFilter"] +class CreateInstanceResponse(_message.Message): + __slots__ = ("instanceId",) INSTANCEID_FIELD_NUMBER: _ClassVar[int] - PURGEINSTANCEFILTER_FIELD_NUMBER: _ClassVar[int] instanceId: str - purgeInstanceFilter: PurgeInstanceFilter - def __init__(self, instanceId: _Optional[str] = ..., purgeInstanceFilter: _Optional[_Union[PurgeInstanceFilter, _Mapping]] = ...) -> None: ... + def __init__(self, instanceId: _Optional[str] = ...) -> None: ... -class PurgeInstancesResponse(_message.Message): - __slots__ = ["deletedInstanceCount"] - DELETEDINSTANCECOUNT_FIELD_NUMBER: _ClassVar[int] - deletedInstanceCount: int - def __init__(self, deletedInstanceCount: _Optional[int] = ...) -> None: ... +class GetInstanceRequest(_message.Message): + __slots__ = ("instanceId", "getInputsAndOutputs") + INSTANCEID_FIELD_NUMBER: _ClassVar[int] + GETINPUTSANDOUTPUTS_FIELD_NUMBER: _ClassVar[int] + instanceId: str + getInputsAndOutputs: bool + def __init__(self, instanceId: _Optional[str] = ..., getInputsAndOutputs: bool = ...) -> None: ... -class QueryEntitiesRequest(_message.Message): - __slots__ = ["query"] - QUERY_FIELD_NUMBER: _ClassVar[int] - query: EntityQuery - def __init__(self, query: _Optional[_Union[EntityQuery, _Mapping]] = ...) -> None: ... +class GetInstanceResponse(_message.Message): + __slots__ = ("exists", "orchestrationState") + EXISTS_FIELD_NUMBER: _ClassVar[int] + ORCHESTRATIONSTATE_FIELD_NUMBER: _ClassVar[int] + exists: bool + orchestrationState: OrchestrationState + def __init__(self, exists: bool = ..., orchestrationState: _Optional[_Union[OrchestrationState, _Mapping]] = ...) -> None: ... -class QueryEntitiesResponse(_message.Message): - __slots__ = ["continuationToken", "entities"] - CONTINUATIONTOKEN_FIELD_NUMBER: _ClassVar[int] - ENTITIES_FIELD_NUMBER: _ClassVar[int] - continuationToken: _wrappers_pb2.StringValue - entities: _containers.RepeatedCompositeFieldContainer[EntityMetadata] - def __init__(self, entities: _Optional[_Iterable[_Union[EntityMetadata, _Mapping]]] = ..., continuationToken: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... +class RewindInstanceRequest(_message.Message): + __slots__ = ("instanceId", "reason") + INSTANCEID_FIELD_NUMBER: _ClassVar[int] + REASON_FIELD_NUMBER: _ClassVar[int] + instanceId: str + reason: _wrappers_pb2.StringValue + def __init__(self, instanceId: _Optional[str] = ..., reason: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... -class QueryInstancesRequest(_message.Message): - __slots__ = ["query"] - QUERY_FIELD_NUMBER: _ClassVar[int] - query: InstanceQuery - def __init__(self, query: _Optional[_Union[InstanceQuery, _Mapping]] = ...) -> None: ... +class RewindInstanceResponse(_message.Message): + __slots__ = () + def __init__(self) -> None: ... -class QueryInstancesResponse(_message.Message): - __slots__ = ["continuationToken", "orchestrationState"] - CONTINUATIONTOKEN_FIELD_NUMBER: _ClassVar[int] - ORCHESTRATIONSTATE_FIELD_NUMBER: _ClassVar[int] - continuationToken: _wrappers_pb2.StringValue - orchestrationState: _containers.RepeatedCompositeFieldContainer[OrchestrationState] - def __init__(self, orchestrationState: _Optional[_Iterable[_Union[OrchestrationState, _Mapping]]] = ..., continuationToken: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... +class OrchestrationState(_message.Message): + __slots__ = ("instanceId", "name", "version", "orchestrationStatus", "scheduledStartTimestamp", "createdTimestamp", "lastUpdatedTimestamp", "input", "output", "customStatus", "failureDetails", "executionId", "completedTimestamp", "parentInstanceId") + INSTANCEID_FIELD_NUMBER: _ClassVar[int] + NAME_FIELD_NUMBER: _ClassVar[int] + VERSION_FIELD_NUMBER: _ClassVar[int] + ORCHESTRATIONSTATUS_FIELD_NUMBER: _ClassVar[int] + SCHEDULEDSTARTTIMESTAMP_FIELD_NUMBER: _ClassVar[int] + CREATEDTIMESTAMP_FIELD_NUMBER: _ClassVar[int] + LASTUPDATEDTIMESTAMP_FIELD_NUMBER: _ClassVar[int] + INPUT_FIELD_NUMBER: _ClassVar[int] + OUTPUT_FIELD_NUMBER: _ClassVar[int] + CUSTOMSTATUS_FIELD_NUMBER: _ClassVar[int] + FAILUREDETAILS_FIELD_NUMBER: _ClassVar[int] + EXECUTIONID_FIELD_NUMBER: _ClassVar[int] + COMPLETEDTIMESTAMP_FIELD_NUMBER: _ClassVar[int] + PARENTINSTANCEID_FIELD_NUMBER: _ClassVar[int] + instanceId: str + name: str + version: _wrappers_pb2.StringValue + orchestrationStatus: OrchestrationStatus + scheduledStartTimestamp: _timestamp_pb2.Timestamp + createdTimestamp: _timestamp_pb2.Timestamp + lastUpdatedTimestamp: _timestamp_pb2.Timestamp + input: _wrappers_pb2.StringValue + output: _wrappers_pb2.StringValue + customStatus: _wrappers_pb2.StringValue + failureDetails: TaskFailureDetails + executionId: _wrappers_pb2.StringValue + completedTimestamp: _timestamp_pb2.Timestamp + parentInstanceId: _wrappers_pb2.StringValue + def __init__(self, instanceId: _Optional[str] = ..., name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., orchestrationStatus: _Optional[_Union[OrchestrationStatus, str]] = ..., scheduledStartTimestamp: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., createdTimestamp: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., lastUpdatedTimestamp: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., output: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., customStatus: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., failureDetails: _Optional[_Union[TaskFailureDetails, _Mapping]] = ..., executionId: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., completedTimestamp: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., parentInstanceId: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... class RaiseEventRequest(_message.Message): - __slots__ = ["input", "instanceId", "name"] - INPUT_FIELD_NUMBER: _ClassVar[int] + __slots__ = ("instanceId", "name", "input") INSTANCEID_FIELD_NUMBER: _ClassVar[int] NAME_FIELD_NUMBER: _ClassVar[int] - input: _wrappers_pb2.StringValue + INPUT_FIELD_NUMBER: _ClassVar[int] instanceId: str name: str + input: _wrappers_pb2.StringValue def __init__(self, instanceId: _Optional[str] = ..., name: _Optional[str] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... class RaiseEventResponse(_message.Message): - __slots__ = [] + __slots__ = () def __init__(self) -> None: ... -class ResumeRequest(_message.Message): - __slots__ = ["instanceId", "reason"] +class TerminateRequest(_message.Message): + __slots__ = ("instanceId", "output", "recursive") + INSTANCEID_FIELD_NUMBER: _ClassVar[int] + OUTPUT_FIELD_NUMBER: _ClassVar[int] + RECURSIVE_FIELD_NUMBER: _ClassVar[int] + instanceId: str + output: _wrappers_pb2.StringValue + recursive: bool + def __init__(self, instanceId: _Optional[str] = ..., output: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., recursive: bool = ...) -> None: ... + +class TerminateResponse(_message.Message): + __slots__ = () + def __init__(self) -> None: ... + +class SuspendRequest(_message.Message): + __slots__ = ("instanceId", "reason") INSTANCEID_FIELD_NUMBER: _ClassVar[int] REASON_FIELD_NUMBER: _ClassVar[int] instanceId: str reason: _wrappers_pb2.StringValue def __init__(self, instanceId: _Optional[str] = ..., reason: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... -class ResumeResponse(_message.Message): - __slots__ = [] +class SuspendResponse(_message.Message): + __slots__ = () def __init__(self) -> None: ... -class RewindInstanceRequest(_message.Message): - __slots__ = ["instanceId", "reason"] +class ResumeRequest(_message.Message): + __slots__ = ("instanceId", "reason") INSTANCEID_FIELD_NUMBER: _ClassVar[int] REASON_FIELD_NUMBER: _ClassVar[int] instanceId: str reason: _wrappers_pb2.StringValue def __init__(self, instanceId: _Optional[str] = ..., reason: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... -class RewindInstanceResponse(_message.Message): - __slots__ = [] +class ResumeResponse(_message.Message): + __slots__ = () def __init__(self) -> None: ... -class ScheduleTaskAction(_message.Message): - __slots__ = ["input", "name", "version"] - INPUT_FIELD_NUMBER: _ClassVar[int] - NAME_FIELD_NUMBER: _ClassVar[int] - VERSION_FIELD_NUMBER: _ClassVar[int] - input: _wrappers_pb2.StringValue - name: str - version: _wrappers_pb2.StringValue - def __init__(self, name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... +class QueryInstancesRequest(_message.Message): + __slots__ = ("query",) + QUERY_FIELD_NUMBER: _ClassVar[int] + query: InstanceQuery + def __init__(self, query: _Optional[_Union[InstanceQuery, _Mapping]] = ...) -> None: ... -class SendEventAction(_message.Message): - __slots__ = ["data", "instance", "name"] - DATA_FIELD_NUMBER: _ClassVar[int] - INSTANCE_FIELD_NUMBER: _ClassVar[int] - NAME_FIELD_NUMBER: _ClassVar[int] - data: _wrappers_pb2.StringValue - instance: OrchestrationInstance - name: str - def __init__(self, instance: _Optional[_Union[OrchestrationInstance, _Mapping]] = ..., name: _Optional[str] = ..., data: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... +class InstanceQuery(_message.Message): + __slots__ = ("runtimeStatus", "createdTimeFrom", "createdTimeTo", "taskHubNames", "maxInstanceCount", "continuationToken", "instanceIdPrefix", "fetchInputsAndOutputs") + RUNTIMESTATUS_FIELD_NUMBER: _ClassVar[int] + CREATEDTIMEFROM_FIELD_NUMBER: _ClassVar[int] + CREATEDTIMETO_FIELD_NUMBER: _ClassVar[int] + TASKHUBNAMES_FIELD_NUMBER: _ClassVar[int] + MAXINSTANCECOUNT_FIELD_NUMBER: _ClassVar[int] + CONTINUATIONTOKEN_FIELD_NUMBER: _ClassVar[int] + INSTANCEIDPREFIX_FIELD_NUMBER: _ClassVar[int] + FETCHINPUTSANDOUTPUTS_FIELD_NUMBER: _ClassVar[int] + runtimeStatus: _containers.RepeatedScalarFieldContainer[OrchestrationStatus] + createdTimeFrom: _timestamp_pb2.Timestamp + createdTimeTo: _timestamp_pb2.Timestamp + taskHubNames: _containers.RepeatedCompositeFieldContainer[_wrappers_pb2.StringValue] + maxInstanceCount: int + continuationToken: _wrappers_pb2.StringValue + instanceIdPrefix: _wrappers_pb2.StringValue + fetchInputsAndOutputs: bool + def __init__(self, runtimeStatus: _Optional[_Iterable[_Union[OrchestrationStatus, str]]] = ..., createdTimeFrom: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., createdTimeTo: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., taskHubNames: _Optional[_Iterable[_Union[_wrappers_pb2.StringValue, _Mapping]]] = ..., maxInstanceCount: _Optional[int] = ..., continuationToken: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., instanceIdPrefix: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., fetchInputsAndOutputs: bool = ...) -> None: ... -class SendSignalAction(_message.Message): - __slots__ = ["input", "instanceId", "name", "scheduledTime"] - INPUT_FIELD_NUMBER: _ClassVar[int] +class QueryInstancesResponse(_message.Message): + __slots__ = ("orchestrationState", "continuationToken") + ORCHESTRATIONSTATE_FIELD_NUMBER: _ClassVar[int] + CONTINUATIONTOKEN_FIELD_NUMBER: _ClassVar[int] + orchestrationState: _containers.RepeatedCompositeFieldContainer[OrchestrationState] + continuationToken: _wrappers_pb2.StringValue + def __init__(self, orchestrationState: _Optional[_Iterable[_Union[OrchestrationState, _Mapping]]] = ..., continuationToken: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... + +class PurgeInstancesRequest(_message.Message): + __slots__ = ("instanceId", "purgeInstanceFilter", "recursive") INSTANCEID_FIELD_NUMBER: _ClassVar[int] - NAME_FIELD_NUMBER: _ClassVar[int] - SCHEDULEDTIME_FIELD_NUMBER: _ClassVar[int] - input: _wrappers_pb2.StringValue + PURGEINSTANCEFILTER_FIELD_NUMBER: _ClassVar[int] + RECURSIVE_FIELD_NUMBER: _ClassVar[int] instanceId: str - name: str - scheduledTime: _timestamp_pb2.Timestamp - def __init__(self, instanceId: _Optional[str] = ..., name: _Optional[str] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., scheduledTime: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ... + purgeInstanceFilter: PurgeInstanceFilter + recursive: bool + def __init__(self, instanceId: _Optional[str] = ..., purgeInstanceFilter: _Optional[_Union[PurgeInstanceFilter, _Mapping]] = ..., recursive: bool = ...) -> None: ... + +class PurgeInstanceFilter(_message.Message): + __slots__ = ("createdTimeFrom", "createdTimeTo", "runtimeStatus") + CREATEDTIMEFROM_FIELD_NUMBER: _ClassVar[int] + CREATEDTIMETO_FIELD_NUMBER: _ClassVar[int] + RUNTIMESTATUS_FIELD_NUMBER: _ClassVar[int] + createdTimeFrom: _timestamp_pb2.Timestamp + createdTimeTo: _timestamp_pb2.Timestamp + runtimeStatus: _containers.RepeatedScalarFieldContainer[OrchestrationStatus] + def __init__(self, createdTimeFrom: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., createdTimeTo: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., runtimeStatus: _Optional[_Iterable[_Union[OrchestrationStatus, str]]] = ...) -> None: ... + +class PurgeInstancesResponse(_message.Message): + __slots__ = ("deletedInstanceCount",) + DELETEDINSTANCECOUNT_FIELD_NUMBER: _ClassVar[int] + deletedInstanceCount: int + def __init__(self, deletedInstanceCount: _Optional[int] = ...) -> None: ... + +class CreateTaskHubRequest(_message.Message): + __slots__ = ("recreateIfExists",) + RECREATEIFEXISTS_FIELD_NUMBER: _ClassVar[int] + recreateIfExists: bool + def __init__(self, recreateIfExists: bool = ...) -> None: ... + +class CreateTaskHubResponse(_message.Message): + __slots__ = () + def __init__(self) -> None: ... + +class DeleteTaskHubRequest(_message.Message): + __slots__ = () + def __init__(self) -> None: ... + +class DeleteTaskHubResponse(_message.Message): + __slots__ = () + def __init__(self) -> None: ... class SignalEntityRequest(_message.Message): - __slots__ = ["input", "instanceId", "name", "requestId", "scheduledTime"] - INPUT_FIELD_NUMBER: _ClassVar[int] + __slots__ = ("instanceId", "name", "input", "requestId", "scheduledTime") INSTANCEID_FIELD_NUMBER: _ClassVar[int] NAME_FIELD_NUMBER: _ClassVar[int] + INPUT_FIELD_NUMBER: _ClassVar[int] REQUESTID_FIELD_NUMBER: _ClassVar[int] SCHEDULEDTIME_FIELD_NUMBER: _ClassVar[int] - input: _wrappers_pb2.StringValue instanceId: str name: str + input: _wrappers_pb2.StringValue requestId: str scheduledTime: _timestamp_pb2.Timestamp def __init__(self, instanceId: _Optional[str] = ..., name: _Optional[str] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., requestId: _Optional[str] = ..., scheduledTime: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ... class SignalEntityResponse(_message.Message): - __slots__ = [] + __slots__ = () def __init__(self) -> None: ... -class StartNewOrchestrationAction(_message.Message): - __slots__ = ["input", "instanceId", "name", "scheduledTime", "version"] - INPUT_FIELD_NUMBER: _ClassVar[int] +class GetEntityRequest(_message.Message): + __slots__ = ("instanceId", "includeState") INSTANCEID_FIELD_NUMBER: _ClassVar[int] - NAME_FIELD_NUMBER: _ClassVar[int] - SCHEDULEDTIME_FIELD_NUMBER: _ClassVar[int] - VERSION_FIELD_NUMBER: _ClassVar[int] - input: _wrappers_pb2.StringValue + INCLUDESTATE_FIELD_NUMBER: _ClassVar[int] instanceId: str - name: str - scheduledTime: _timestamp_pb2.Timestamp - version: _wrappers_pb2.StringValue - def __init__(self, instanceId: _Optional[str] = ..., name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., scheduledTime: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ... + includeState: bool + def __init__(self, instanceId: _Optional[str] = ..., includeState: bool = ...) -> None: ... -class SubOrchestrationInstanceCompletedEvent(_message.Message): - __slots__ = ["result", "taskScheduledId"] - RESULT_FIELD_NUMBER: _ClassVar[int] - TASKSCHEDULEDID_FIELD_NUMBER: _ClassVar[int] - result: _wrappers_pb2.StringValue - taskScheduledId: int - def __init__(self, taskScheduledId: _Optional[int] = ..., result: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... +class GetEntityResponse(_message.Message): + __slots__ = ("exists", "entity") + EXISTS_FIELD_NUMBER: _ClassVar[int] + ENTITY_FIELD_NUMBER: _ClassVar[int] + exists: bool + entity: EntityMetadata + def __init__(self, exists: bool = ..., entity: _Optional[_Union[EntityMetadata, _Mapping]] = ...) -> None: ... -class SubOrchestrationInstanceCreatedEvent(_message.Message): - __slots__ = ["input", "instanceId", "name", "parentTraceContext", "version"] - INPUT_FIELD_NUMBER: _ClassVar[int] +class EntityQuery(_message.Message): + __slots__ = ("instanceIdStartsWith", "lastModifiedFrom", "lastModifiedTo", "includeState", "includeTransient", "pageSize", "continuationToken") + INSTANCEIDSTARTSWITH_FIELD_NUMBER: _ClassVar[int] + LASTMODIFIEDFROM_FIELD_NUMBER: _ClassVar[int] + LASTMODIFIEDTO_FIELD_NUMBER: _ClassVar[int] + INCLUDESTATE_FIELD_NUMBER: _ClassVar[int] + INCLUDETRANSIENT_FIELD_NUMBER: _ClassVar[int] + PAGESIZE_FIELD_NUMBER: _ClassVar[int] + CONTINUATIONTOKEN_FIELD_NUMBER: _ClassVar[int] + instanceIdStartsWith: _wrappers_pb2.StringValue + lastModifiedFrom: _timestamp_pb2.Timestamp + lastModifiedTo: _timestamp_pb2.Timestamp + includeState: bool + includeTransient: bool + pageSize: _wrappers_pb2.Int32Value + continuationToken: _wrappers_pb2.StringValue + def __init__(self, instanceIdStartsWith: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., lastModifiedFrom: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., lastModifiedTo: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., includeState: bool = ..., includeTransient: bool = ..., pageSize: _Optional[_Union[_wrappers_pb2.Int32Value, _Mapping]] = ..., continuationToken: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... + +class QueryEntitiesRequest(_message.Message): + __slots__ = ("query",) + QUERY_FIELD_NUMBER: _ClassVar[int] + query: EntityQuery + def __init__(self, query: _Optional[_Union[EntityQuery, _Mapping]] = ...) -> None: ... + +class QueryEntitiesResponse(_message.Message): + __slots__ = ("entities", "continuationToken") + ENTITIES_FIELD_NUMBER: _ClassVar[int] + CONTINUATIONTOKEN_FIELD_NUMBER: _ClassVar[int] + entities: _containers.RepeatedCompositeFieldContainer[EntityMetadata] + continuationToken: _wrappers_pb2.StringValue + def __init__(self, entities: _Optional[_Iterable[_Union[EntityMetadata, _Mapping]]] = ..., continuationToken: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... + +class EntityMetadata(_message.Message): + __slots__ = ("instanceId", "lastModifiedTime", "backlogQueueSize", "lockedBy", "serializedState") INSTANCEID_FIELD_NUMBER: _ClassVar[int] - NAME_FIELD_NUMBER: _ClassVar[int] - PARENTTRACECONTEXT_FIELD_NUMBER: _ClassVar[int] - VERSION_FIELD_NUMBER: _ClassVar[int] - input: _wrappers_pb2.StringValue + LASTMODIFIEDTIME_FIELD_NUMBER: _ClassVar[int] + BACKLOGQUEUESIZE_FIELD_NUMBER: _ClassVar[int] + LOCKEDBY_FIELD_NUMBER: _ClassVar[int] + SERIALIZEDSTATE_FIELD_NUMBER: _ClassVar[int] instanceId: str - name: str - parentTraceContext: TraceContext - version: _wrappers_pb2.StringValue - def __init__(self, instanceId: _Optional[str] = ..., name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., parentTraceContext: _Optional[_Union[TraceContext, _Mapping]] = ...) -> None: ... + lastModifiedTime: _timestamp_pb2.Timestamp + backlogQueueSize: int + lockedBy: _wrappers_pb2.StringValue + serializedState: _wrappers_pb2.StringValue + def __init__(self, instanceId: _Optional[str] = ..., lastModifiedTime: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., backlogQueueSize: _Optional[int] = ..., lockedBy: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., serializedState: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... -class SubOrchestrationInstanceFailedEvent(_message.Message): - __slots__ = ["failureDetails", "taskScheduledId"] - FAILUREDETAILS_FIELD_NUMBER: _ClassVar[int] - TASKSCHEDULEDID_FIELD_NUMBER: _ClassVar[int] - failureDetails: TaskFailureDetails - taskScheduledId: int - def __init__(self, taskScheduledId: _Optional[int] = ..., failureDetails: _Optional[_Union[TaskFailureDetails, _Mapping]] = ...) -> None: ... +class CleanEntityStorageRequest(_message.Message): + __slots__ = ("continuationToken", "removeEmptyEntities", "releaseOrphanedLocks") + CONTINUATIONTOKEN_FIELD_NUMBER: _ClassVar[int] + REMOVEEMPTYENTITIES_FIELD_NUMBER: _ClassVar[int] + RELEASEORPHANEDLOCKS_FIELD_NUMBER: _ClassVar[int] + continuationToken: _wrappers_pb2.StringValue + removeEmptyEntities: bool + releaseOrphanedLocks: bool + def __init__(self, continuationToken: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., removeEmptyEntities: bool = ..., releaseOrphanedLocks: bool = ...) -> None: ... -class SuspendRequest(_message.Message): - __slots__ = ["instanceId", "reason"] +class CleanEntityStorageResponse(_message.Message): + __slots__ = ("continuationToken", "emptyEntitiesRemoved", "orphanedLocksReleased") + CONTINUATIONTOKEN_FIELD_NUMBER: _ClassVar[int] + EMPTYENTITIESREMOVED_FIELD_NUMBER: _ClassVar[int] + ORPHANEDLOCKSRELEASED_FIELD_NUMBER: _ClassVar[int] + continuationToken: _wrappers_pb2.StringValue + emptyEntitiesRemoved: int + orphanedLocksReleased: int + def __init__(self, continuationToken: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., emptyEntitiesRemoved: _Optional[int] = ..., orphanedLocksReleased: _Optional[int] = ...) -> None: ... + +class OrchestratorEntityParameters(_message.Message): + __slots__ = ("entityMessageReorderWindow",) + ENTITYMESSAGEREORDERWINDOW_FIELD_NUMBER: _ClassVar[int] + entityMessageReorderWindow: _duration_pb2.Duration + def __init__(self, entityMessageReorderWindow: _Optional[_Union[_duration_pb2.Duration, _Mapping]] = ...) -> None: ... + +class EntityBatchRequest(_message.Message): + __slots__ = ("instanceId", "entityState", "operations") INSTANCEID_FIELD_NUMBER: _ClassVar[int] - REASON_FIELD_NUMBER: _ClassVar[int] + ENTITYSTATE_FIELD_NUMBER: _ClassVar[int] + OPERATIONS_FIELD_NUMBER: _ClassVar[int] instanceId: str - reason: _wrappers_pb2.StringValue - def __init__(self, instanceId: _Optional[str] = ..., reason: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... + entityState: _wrappers_pb2.StringValue + operations: _containers.RepeatedCompositeFieldContainer[OperationRequest] + def __init__(self, instanceId: _Optional[str] = ..., entityState: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., operations: _Optional[_Iterable[_Union[OperationRequest, _Mapping]]] = ...) -> None: ... -class SuspendResponse(_message.Message): - __slots__ = [] - def __init__(self) -> None: ... +class EntityBatchResult(_message.Message): + __slots__ = ("results", "actions", "entityState", "failureDetails") + RESULTS_FIELD_NUMBER: _ClassVar[int] + ACTIONS_FIELD_NUMBER: _ClassVar[int] + ENTITYSTATE_FIELD_NUMBER: _ClassVar[int] + FAILUREDETAILS_FIELD_NUMBER: _ClassVar[int] + results: _containers.RepeatedCompositeFieldContainer[OperationResult] + actions: _containers.RepeatedCompositeFieldContainer[OperationAction] + entityState: _wrappers_pb2.StringValue + failureDetails: TaskFailureDetails + def __init__(self, results: _Optional[_Iterable[_Union[OperationResult, _Mapping]]] = ..., actions: _Optional[_Iterable[_Union[OperationAction, _Mapping]]] = ..., entityState: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., failureDetails: _Optional[_Union[TaskFailureDetails, _Mapping]] = ...) -> None: ... -class TaskCompletedEvent(_message.Message): - __slots__ = ["result", "taskScheduledId"] +class OperationRequest(_message.Message): + __slots__ = ("operation", "requestId", "input") + OPERATION_FIELD_NUMBER: _ClassVar[int] + REQUESTID_FIELD_NUMBER: _ClassVar[int] + INPUT_FIELD_NUMBER: _ClassVar[int] + operation: str + requestId: str + input: _wrappers_pb2.StringValue + def __init__(self, operation: _Optional[str] = ..., requestId: _Optional[str] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... + +class OperationResult(_message.Message): + __slots__ = ("success", "failure") + SUCCESS_FIELD_NUMBER: _ClassVar[int] + FAILURE_FIELD_NUMBER: _ClassVar[int] + success: OperationResultSuccess + failure: OperationResultFailure + def __init__(self, success: _Optional[_Union[OperationResultSuccess, _Mapping]] = ..., failure: _Optional[_Union[OperationResultFailure, _Mapping]] = ...) -> None: ... + +class OperationResultSuccess(_message.Message): + __slots__ = ("result",) RESULT_FIELD_NUMBER: _ClassVar[int] - TASKSCHEDULEDID_FIELD_NUMBER: _ClassVar[int] result: _wrappers_pb2.StringValue - taskScheduledId: int - def __init__(self, taskScheduledId: _Optional[int] = ..., result: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... + def __init__(self, result: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... -class TaskFailedEvent(_message.Message): - __slots__ = ["failureDetails", "taskScheduledId"] +class OperationResultFailure(_message.Message): + __slots__ = ("failureDetails",) FAILUREDETAILS_FIELD_NUMBER: _ClassVar[int] - TASKSCHEDULEDID_FIELD_NUMBER: _ClassVar[int] failureDetails: TaskFailureDetails - taskScheduledId: int - def __init__(self, taskScheduledId: _Optional[int] = ..., failureDetails: _Optional[_Union[TaskFailureDetails, _Mapping]] = ...) -> None: ... - -class TaskFailureDetails(_message.Message): - __slots__ = ["errorMessage", "errorType", "innerFailure", "isNonRetriable", "stackTrace"] - ERRORMESSAGE_FIELD_NUMBER: _ClassVar[int] - ERRORTYPE_FIELD_NUMBER: _ClassVar[int] - INNERFAILURE_FIELD_NUMBER: _ClassVar[int] - ISNONRETRIABLE_FIELD_NUMBER: _ClassVar[int] - STACKTRACE_FIELD_NUMBER: _ClassVar[int] - errorMessage: str - errorType: str - innerFailure: TaskFailureDetails - isNonRetriable: bool - stackTrace: _wrappers_pb2.StringValue - def __init__(self, errorType: _Optional[str] = ..., errorMessage: _Optional[str] = ..., stackTrace: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., innerFailure: _Optional[_Union[TaskFailureDetails, _Mapping]] = ..., isNonRetriable: bool = ...) -> None: ... + def __init__(self, failureDetails: _Optional[_Union[TaskFailureDetails, _Mapping]] = ...) -> None: ... -class TaskScheduledEvent(_message.Message): - __slots__ = ["input", "name", "parentTraceContext", "version"] - INPUT_FIELD_NUMBER: _ClassVar[int] - NAME_FIELD_NUMBER: _ClassVar[int] - PARENTTRACECONTEXT_FIELD_NUMBER: _ClassVar[int] - VERSION_FIELD_NUMBER: _ClassVar[int] - input: _wrappers_pb2.StringValue - name: str - parentTraceContext: TraceContext - version: _wrappers_pb2.StringValue - def __init__(self, name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., parentTraceContext: _Optional[_Union[TraceContext, _Mapping]] = ...) -> None: ... +class OperationAction(_message.Message): + __slots__ = ("id", "sendSignal", "startNewOrchestration") + ID_FIELD_NUMBER: _ClassVar[int] + SENDSIGNAL_FIELD_NUMBER: _ClassVar[int] + STARTNEWORCHESTRATION_FIELD_NUMBER: _ClassVar[int] + id: int + sendSignal: SendSignalAction + startNewOrchestration: StartNewOrchestrationAction + def __init__(self, id: _Optional[int] = ..., sendSignal: _Optional[_Union[SendSignalAction, _Mapping]] = ..., startNewOrchestration: _Optional[_Union[StartNewOrchestrationAction, _Mapping]] = ...) -> None: ... -class TerminateOrchestrationAction(_message.Message): - __slots__ = ["instanceId", "reason", "recurse"] +class SendSignalAction(_message.Message): + __slots__ = ("instanceId", "name", "input", "scheduledTime") INSTANCEID_FIELD_NUMBER: _ClassVar[int] - REASON_FIELD_NUMBER: _ClassVar[int] - RECURSE_FIELD_NUMBER: _ClassVar[int] + NAME_FIELD_NUMBER: _ClassVar[int] + INPUT_FIELD_NUMBER: _ClassVar[int] + SCHEDULEDTIME_FIELD_NUMBER: _ClassVar[int] instanceId: str - reason: _wrappers_pb2.StringValue - recurse: bool - def __init__(self, instanceId: _Optional[str] = ..., reason: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., recurse: bool = ...) -> None: ... + name: str + input: _wrappers_pb2.StringValue + scheduledTime: _timestamp_pb2.Timestamp + def __init__(self, instanceId: _Optional[str] = ..., name: _Optional[str] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., scheduledTime: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ... -class TerminateRequest(_message.Message): - __slots__ = ["instanceId", "output", "recursive"] +class StartNewOrchestrationAction(_message.Message): + __slots__ = ("instanceId", "name", "version", "input", "scheduledTime") INSTANCEID_FIELD_NUMBER: _ClassVar[int] - OUTPUT_FIELD_NUMBER: _ClassVar[int] - RECURSIVE_FIELD_NUMBER: _ClassVar[int] + NAME_FIELD_NUMBER: _ClassVar[int] + VERSION_FIELD_NUMBER: _ClassVar[int] + INPUT_FIELD_NUMBER: _ClassVar[int] + SCHEDULEDTIME_FIELD_NUMBER: _ClassVar[int] instanceId: str - output: _wrappers_pb2.StringValue - recursive: bool - def __init__(self, instanceId: _Optional[str] = ..., output: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., recursive: bool = ...) -> None: ... + name: str + version: _wrappers_pb2.StringValue + input: _wrappers_pb2.StringValue + scheduledTime: _timestamp_pb2.Timestamp + def __init__(self, instanceId: _Optional[str] = ..., name: _Optional[str] = ..., version: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., input: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ..., scheduledTime: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ... -class TerminateResponse(_message.Message): - __slots__ = [] +class GetWorkItemsRequest(_message.Message): + __slots__ = () def __init__(self) -> None: ... -class TimerCreatedEvent(_message.Message): - __slots__ = ["fireAt"] - FIREAT_FIELD_NUMBER: _ClassVar[int] - fireAt: _timestamp_pb2.Timestamp - def __init__(self, fireAt: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ... - -class TimerFiredEvent(_message.Message): - __slots__ = ["fireAt", "timerId"] - FIREAT_FIELD_NUMBER: _ClassVar[int] - TIMERID_FIELD_NUMBER: _ClassVar[int] - fireAt: _timestamp_pb2.Timestamp - timerId: int - def __init__(self, fireAt: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., timerId: _Optional[int] = ...) -> None: ... - -class TraceContext(_message.Message): - __slots__ = ["spanID", "traceParent", "traceState"] - SPANID_FIELD_NUMBER: _ClassVar[int] - TRACEPARENT_FIELD_NUMBER: _ClassVar[int] - TRACESTATE_FIELD_NUMBER: _ClassVar[int] - spanID: str - traceParent: str - traceState: _wrappers_pb2.StringValue - def __init__(self, traceParent: _Optional[str] = ..., spanID: _Optional[str] = ..., traceState: _Optional[_Union[_wrappers_pb2.StringValue, _Mapping]] = ...) -> None: ... - class WorkItem(_message.Message): - __slots__ = ["activityRequest", "entityRequest", "orchestratorRequest"] + __slots__ = ("orchestratorRequest", "activityRequest", "entityRequest", "healthPing", "completionToken") + ORCHESTRATORREQUEST_FIELD_NUMBER: _ClassVar[int] ACTIVITYREQUEST_FIELD_NUMBER: _ClassVar[int] ENTITYREQUEST_FIELD_NUMBER: _ClassVar[int] - ORCHESTRATORREQUEST_FIELD_NUMBER: _ClassVar[int] + HEALTHPING_FIELD_NUMBER: _ClassVar[int] + COMPLETIONTOKEN_FIELD_NUMBER: _ClassVar[int] + orchestratorRequest: OrchestratorRequest activityRequest: ActivityRequest entityRequest: EntityBatchRequest - orchestratorRequest: OrchestratorRequest - def __init__(self, orchestratorRequest: _Optional[_Union[OrchestratorRequest, _Mapping]] = ..., activityRequest: _Optional[_Union[ActivityRequest, _Mapping]] = ..., entityRequest: _Optional[_Union[EntityBatchRequest, _Mapping]] = ...) -> None: ... + healthPing: HealthPing + completionToken: str + def __init__(self, orchestratorRequest: _Optional[_Union[OrchestratorRequest, _Mapping]] = ..., activityRequest: _Optional[_Union[ActivityRequest, _Mapping]] = ..., entityRequest: _Optional[_Union[EntityBatchRequest, _Mapping]] = ..., healthPing: _Optional[_Union[HealthPing, _Mapping]] = ..., completionToken: _Optional[str] = ...) -> None: ... -class OrchestrationStatus(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): - __slots__ = [] +class CompleteTaskResponse(_message.Message): + __slots__ = () + def __init__(self) -> None: ... + +class HealthPing(_message.Message): + __slots__ = () + def __init__(self) -> None: ... diff --git a/durabletask/internal/orchestrator_service_pb2_grpc.py b/durabletask/internal/orchestrator_service_pb2_grpc.py index 287b4d6..f11cf4b 100644 --- a/durabletask/internal/orchestrator_service_pb2_grpc.py +++ b/durabletask/internal/orchestrator_service_pb2_grpc.py @@ -1,11 +1,32 @@ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! """Client and server classes corresponding to protobuf-defined services.""" import grpc +import warnings + from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2 # TODO: This is a manual edit. Need to figure out how to not manually edit this file. import durabletask.internal.orchestrator_service_pb2 as orchestrator__service__pb2 +GRPC_GENERATED_VERSION = '1.67.0' +GRPC_VERSION = grpc.__version__ +_version_not_supported = False + +try: + from grpc._utilities import first_version_is_lower + _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION) +except ImportError: + _version_not_supported = True + +if _version_not_supported: + raise RuntimeError( + f'The grpc package installed is at version {GRPC_VERSION},' + + f' but the generated code in orchestrator_service_pb2_grpc.py depends on' + + f' grpcio>={GRPC_GENERATED_VERSION}.' + + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}' + + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.' + ) + class TaskHubSidecarServiceStub(object): """Missing associated documentation comment in .proto file.""" @@ -20,112 +41,112 @@ def __init__(self, channel): '/TaskHubSidecarService/Hello', request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString, response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString, - ) + _registered_method=True) self.StartInstance = channel.unary_unary( '/TaskHubSidecarService/StartInstance', request_serializer=orchestrator__service__pb2.CreateInstanceRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.CreateInstanceResponse.FromString, - ) + _registered_method=True) self.GetInstance = channel.unary_unary( '/TaskHubSidecarService/GetInstance', request_serializer=orchestrator__service__pb2.GetInstanceRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.GetInstanceResponse.FromString, - ) + _registered_method=True) self.RewindInstance = channel.unary_unary( '/TaskHubSidecarService/RewindInstance', request_serializer=orchestrator__service__pb2.RewindInstanceRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.RewindInstanceResponse.FromString, - ) + _registered_method=True) self.WaitForInstanceStart = channel.unary_unary( '/TaskHubSidecarService/WaitForInstanceStart', request_serializer=orchestrator__service__pb2.GetInstanceRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.GetInstanceResponse.FromString, - ) + _registered_method=True) self.WaitForInstanceCompletion = channel.unary_unary( '/TaskHubSidecarService/WaitForInstanceCompletion', request_serializer=orchestrator__service__pb2.GetInstanceRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.GetInstanceResponse.FromString, - ) + _registered_method=True) self.RaiseEvent = channel.unary_unary( '/TaskHubSidecarService/RaiseEvent', request_serializer=orchestrator__service__pb2.RaiseEventRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.RaiseEventResponse.FromString, - ) + _registered_method=True) self.TerminateInstance = channel.unary_unary( '/TaskHubSidecarService/TerminateInstance', request_serializer=orchestrator__service__pb2.TerminateRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.TerminateResponse.FromString, - ) + _registered_method=True) self.SuspendInstance = channel.unary_unary( '/TaskHubSidecarService/SuspendInstance', request_serializer=orchestrator__service__pb2.SuspendRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.SuspendResponse.FromString, - ) + _registered_method=True) self.ResumeInstance = channel.unary_unary( '/TaskHubSidecarService/ResumeInstance', request_serializer=orchestrator__service__pb2.ResumeRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.ResumeResponse.FromString, - ) + _registered_method=True) self.QueryInstances = channel.unary_unary( '/TaskHubSidecarService/QueryInstances', request_serializer=orchestrator__service__pb2.QueryInstancesRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.QueryInstancesResponse.FromString, - ) + _registered_method=True) self.PurgeInstances = channel.unary_unary( '/TaskHubSidecarService/PurgeInstances', request_serializer=orchestrator__service__pb2.PurgeInstancesRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.PurgeInstancesResponse.FromString, - ) + _registered_method=True) self.GetWorkItems = channel.unary_stream( '/TaskHubSidecarService/GetWorkItems', request_serializer=orchestrator__service__pb2.GetWorkItemsRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.WorkItem.FromString, - ) + _registered_method=True) self.CompleteActivityTask = channel.unary_unary( '/TaskHubSidecarService/CompleteActivityTask', request_serializer=orchestrator__service__pb2.ActivityResponse.SerializeToString, response_deserializer=orchestrator__service__pb2.CompleteTaskResponse.FromString, - ) + _registered_method=True) self.CompleteOrchestratorTask = channel.unary_unary( '/TaskHubSidecarService/CompleteOrchestratorTask', request_serializer=orchestrator__service__pb2.OrchestratorResponse.SerializeToString, response_deserializer=orchestrator__service__pb2.CompleteTaskResponse.FromString, - ) + _registered_method=True) self.CompleteEntityTask = channel.unary_unary( '/TaskHubSidecarService/CompleteEntityTask', request_serializer=orchestrator__service__pb2.EntityBatchResult.SerializeToString, response_deserializer=orchestrator__service__pb2.CompleteTaskResponse.FromString, - ) + _registered_method=True) self.CreateTaskHub = channel.unary_unary( '/TaskHubSidecarService/CreateTaskHub', request_serializer=orchestrator__service__pb2.CreateTaskHubRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.CreateTaskHubResponse.FromString, - ) + _registered_method=True) self.DeleteTaskHub = channel.unary_unary( '/TaskHubSidecarService/DeleteTaskHub', request_serializer=orchestrator__service__pb2.DeleteTaskHubRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.DeleteTaskHubResponse.FromString, - ) + _registered_method=True) self.SignalEntity = channel.unary_unary( '/TaskHubSidecarService/SignalEntity', request_serializer=orchestrator__service__pb2.SignalEntityRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.SignalEntityResponse.FromString, - ) + _registered_method=True) self.GetEntity = channel.unary_unary( '/TaskHubSidecarService/GetEntity', request_serializer=orchestrator__service__pb2.GetEntityRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.GetEntityResponse.FromString, - ) + _registered_method=True) self.QueryEntities = channel.unary_unary( '/TaskHubSidecarService/QueryEntities', request_serializer=orchestrator__service__pb2.QueryEntitiesRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.QueryEntitiesResponse.FromString, - ) + _registered_method=True) self.CleanEntityStorage = channel.unary_unary( '/TaskHubSidecarService/CleanEntityStorage', request_serializer=orchestrator__service__pb2.CleanEntityStorageRequest.SerializeToString, response_deserializer=orchestrator__service__pb2.CleanEntityStorageResponse.FromString, - ) + _registered_method=True) class TaskHubSidecarServiceServicer(object): @@ -398,6 +419,7 @@ def add_TaskHubSidecarServiceServicer_to_server(servicer, server): generic_handler = grpc.method_handlers_generic_handler( 'TaskHubSidecarService', rpc_method_handlers) server.add_generic_rpc_handlers((generic_handler,)) + server.add_registered_method_handlers('TaskHubSidecarService', rpc_method_handlers) # This class is part of an EXPERIMENTAL API. @@ -415,11 +437,21 @@ def Hello(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/Hello', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/Hello', google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString, google_dot_protobuf_dot_empty__pb2.Empty.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def StartInstance(request, @@ -432,11 +464,21 @@ def StartInstance(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/StartInstance', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/StartInstance', orchestrator__service__pb2.CreateInstanceRequest.SerializeToString, orchestrator__service__pb2.CreateInstanceResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def GetInstance(request, @@ -449,11 +491,21 @@ def GetInstance(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/GetInstance', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/GetInstance', orchestrator__service__pb2.GetInstanceRequest.SerializeToString, orchestrator__service__pb2.GetInstanceResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def RewindInstance(request, @@ -466,11 +518,21 @@ def RewindInstance(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/RewindInstance', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/RewindInstance', orchestrator__service__pb2.RewindInstanceRequest.SerializeToString, orchestrator__service__pb2.RewindInstanceResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def WaitForInstanceStart(request, @@ -483,11 +545,21 @@ def WaitForInstanceStart(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/WaitForInstanceStart', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/WaitForInstanceStart', orchestrator__service__pb2.GetInstanceRequest.SerializeToString, orchestrator__service__pb2.GetInstanceResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def WaitForInstanceCompletion(request, @@ -500,11 +572,21 @@ def WaitForInstanceCompletion(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/WaitForInstanceCompletion', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/WaitForInstanceCompletion', orchestrator__service__pb2.GetInstanceRequest.SerializeToString, orchestrator__service__pb2.GetInstanceResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def RaiseEvent(request, @@ -517,11 +599,21 @@ def RaiseEvent(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/RaiseEvent', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/RaiseEvent', orchestrator__service__pb2.RaiseEventRequest.SerializeToString, orchestrator__service__pb2.RaiseEventResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def TerminateInstance(request, @@ -534,11 +626,21 @@ def TerminateInstance(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/TerminateInstance', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/TerminateInstance', orchestrator__service__pb2.TerminateRequest.SerializeToString, orchestrator__service__pb2.TerminateResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def SuspendInstance(request, @@ -551,11 +653,21 @@ def SuspendInstance(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/SuspendInstance', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/SuspendInstance', orchestrator__service__pb2.SuspendRequest.SerializeToString, orchestrator__service__pb2.SuspendResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def ResumeInstance(request, @@ -568,11 +680,21 @@ def ResumeInstance(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/ResumeInstance', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/ResumeInstance', orchestrator__service__pb2.ResumeRequest.SerializeToString, orchestrator__service__pb2.ResumeResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def QueryInstances(request, @@ -585,11 +707,21 @@ def QueryInstances(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/QueryInstances', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/QueryInstances', orchestrator__service__pb2.QueryInstancesRequest.SerializeToString, orchestrator__service__pb2.QueryInstancesResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def PurgeInstances(request, @@ -602,11 +734,21 @@ def PurgeInstances(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/PurgeInstances', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/PurgeInstances', orchestrator__service__pb2.PurgeInstancesRequest.SerializeToString, orchestrator__service__pb2.PurgeInstancesResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def GetWorkItems(request, @@ -619,11 +761,21 @@ def GetWorkItems(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_stream(request, target, '/TaskHubSidecarService/GetWorkItems', + return grpc.experimental.unary_stream( + request, + target, + '/TaskHubSidecarService/GetWorkItems', orchestrator__service__pb2.GetWorkItemsRequest.SerializeToString, orchestrator__service__pb2.WorkItem.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def CompleteActivityTask(request, @@ -636,11 +788,21 @@ def CompleteActivityTask(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/CompleteActivityTask', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/CompleteActivityTask', orchestrator__service__pb2.ActivityResponse.SerializeToString, orchestrator__service__pb2.CompleteTaskResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def CompleteOrchestratorTask(request, @@ -653,11 +815,21 @@ def CompleteOrchestratorTask(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/CompleteOrchestratorTask', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/CompleteOrchestratorTask', orchestrator__service__pb2.OrchestratorResponse.SerializeToString, orchestrator__service__pb2.CompleteTaskResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def CompleteEntityTask(request, @@ -670,11 +842,21 @@ def CompleteEntityTask(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/CompleteEntityTask', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/CompleteEntityTask', orchestrator__service__pb2.EntityBatchResult.SerializeToString, orchestrator__service__pb2.CompleteTaskResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def CreateTaskHub(request, @@ -687,11 +869,21 @@ def CreateTaskHub(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/CreateTaskHub', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/CreateTaskHub', orchestrator__service__pb2.CreateTaskHubRequest.SerializeToString, orchestrator__service__pb2.CreateTaskHubResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def DeleteTaskHub(request, @@ -704,11 +896,21 @@ def DeleteTaskHub(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/DeleteTaskHub', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/DeleteTaskHub', orchestrator__service__pb2.DeleteTaskHubRequest.SerializeToString, orchestrator__service__pb2.DeleteTaskHubResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def SignalEntity(request, @@ -721,11 +923,21 @@ def SignalEntity(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/SignalEntity', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/SignalEntity', orchestrator__service__pb2.SignalEntityRequest.SerializeToString, orchestrator__service__pb2.SignalEntityResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def GetEntity(request, @@ -738,11 +950,21 @@ def GetEntity(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/GetEntity', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/GetEntity', orchestrator__service__pb2.GetEntityRequest.SerializeToString, orchestrator__service__pb2.GetEntityResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def QueryEntities(request, @@ -755,11 +977,21 @@ def QueryEntities(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/QueryEntities', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/QueryEntities', orchestrator__service__pb2.QueryEntitiesRequest.SerializeToString, orchestrator__service__pb2.QueryEntitiesResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) @staticmethod def CleanEntityStorage(request, @@ -772,8 +1004,18 @@ def CleanEntityStorage(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/TaskHubSidecarService/CleanEntityStorage', + return grpc.experimental.unary_unary( + request, + target, + '/TaskHubSidecarService/CleanEntityStorage', orchestrator__service__pb2.CleanEntityStorageRequest.SerializeToString, orchestrator__service__pb2.CleanEntityStorageResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) diff --git a/durabletask/task.py b/durabletask/task.py index e9a1bcd..a9f85de 100644 --- a/durabletask/task.py +++ b/durabletask/task.py @@ -71,6 +71,12 @@ def is_replaying(self) -> bool: """ pass + @abstractmethod + def set_custom_status(self, custom_status: str) -> None: + """Set the custom status. + """ + pass + @abstractmethod def create_timer(self, fire_at: Union[datetime, timedelta]) -> Task: """Create a Timer Task to fire after at the specified deadline. diff --git a/durabletask/worker.py b/durabletask/worker.py index 8775efc..bcc1a30 100644 --- a/durabletask/worker.py +++ b/durabletask/worker.py @@ -10,7 +10,7 @@ TypeVar, Union) import grpc -from google.protobuf import empty_pb2 +from google.protobuf import empty_pb2, wrappers_pb2 import durabletask.internal.helpers as ph import durabletask.internal.helpers as pbh @@ -188,8 +188,8 @@ def stop(self): def _execute_orchestrator(self, req: pb.OrchestratorRequest, stub: stubs.TaskHubSidecarServiceStub): try: executor = _OrchestrationExecutor(self._registry, self._logger) - actions = executor.execute(req.instanceId, req.pastEvents, req.newEvents) - res = pb.OrchestratorResponse(instanceId=req.instanceId, actions=actions) + result = executor.execute(req.instanceId, req.pastEvents, req.newEvents) + res = pb.OrchestratorResponse(instanceId=req.instanceId, actions=result.actions, customStatus=wrappers_pb2.StringValue(value=result.custom_status)) except Exception as ex: self._logger.exception(f"An error occurred while trying to execute instance '{req.instanceId}': {ex}") failure_details = pbh.new_failure_details(ex) @@ -242,6 +242,7 @@ def __init__(self, instance_id: str): self._pending_events: Dict[str, List[task.CompletableTask]] = {} self._new_input: Optional[Any] = None self._save_events = False + self._custom_status: str = "" def run(self, generator: Generator[task.Task, Any, Any]): self._generator = generator @@ -355,6 +356,9 @@ def is_replaying(self) -> bool: def current_utc_datetime(self, value: datetime): self._current_utc_datetime = value + def set_custom_status(self, custom_status: str) -> None: + self._custom_status = custom_status + def create_timer(self, fire_at: Union[datetime, timedelta]) -> task.Task: return self.create_timer_internal(fire_at) @@ -457,6 +461,14 @@ def continue_as_new(self, new_input, *, save_events: bool = False) -> None: self.set_continued_as_new(new_input, save_events) +class ExecutionResults: + actions: List[pb.OrchestratorAction] + custom_status: str + + def __init__(self, actions: List[pb.OrchestratorAction], custom_status: str): + self.actions = actions + self.custom_status = custom_status + class _OrchestrationExecutor: _generator: Optional[task.Orchestrator] = None @@ -466,7 +478,7 @@ def __init__(self, registry: _Registry, logger: logging.Logger): self._is_suspended = False self._suspended_events: List[pb.HistoryEvent] = [] - def execute(self, instance_id: str, old_events: Sequence[pb.HistoryEvent], new_events: Sequence[pb.HistoryEvent]) -> List[pb.OrchestratorAction]: + def execute(self, instance_id: str, old_events: Sequence[pb.HistoryEvent], new_events: Sequence[pb.HistoryEvent]) -> ExecutionResults: if not new_events: raise task.OrchestrationStateError("The new history event list must have at least one event in it.") @@ -501,7 +513,7 @@ def execute(self, instance_id: str, old_events: Sequence[pb.HistoryEvent], new_e actions = ctx.get_actions() if self._logger.level <= logging.DEBUG: self._logger.debug(f"{instance_id}: Returning {len(actions)} action(s): {_get_action_summary(actions)}") - return actions + return ExecutionResults(actions=actions, custom_status=ctx._custom_status) def process_event(self, ctx: _RuntimeOrchestrationContext, event: pb.HistoryEvent) -> None: if self._is_suspended and _is_suspendable(event): diff --git a/submodules/durabletask-protobuf b/submodules/durabletask-protobuf index 3c5d082..c7d8cd8 160000 --- a/submodules/durabletask-protobuf +++ b/submodules/durabletask-protobuf @@ -1 +1 @@ -Subproject commit 3c5d082b5b24adc351a0b8693f023272be18d691 +Subproject commit c7d8cd898017342d090ba9531c3f2ec45b8e07e7 diff --git a/tests/test_orchestration_e2e.py b/tests/test_orchestration_e2e.py index 4ec8369..112737a 100644 --- a/tests/test_orchestration_e2e.py +++ b/tests/test_orchestration_e2e.py @@ -441,3 +441,26 @@ def throw_activity(ctx: task.ActivityContext, _): assert state.failure_details.message.endswith("Activity task #1 failed: Kah-BOOOOM!!!") assert state.failure_details.stack_trace is not None assert throw_activity_counter == 4 + +def test_custom_status(): + + def empty_orchestrator(ctx: task.OrchestrationContext, _): + ctx.set_custom_status("foobaz") + + # Start a worker, which will connect to the sidecar in a background thread + with worker.TaskHubGrpcWorker() as w: + w.add_orchestrator(empty_orchestrator) + w.start() + + c = client.TaskHubGrpcClient() + id = c.schedule_new_orchestration(empty_orchestrator) + state = c.wait_for_orchestration_completion(id, timeout=30) + + assert state is not None + assert state.name == task.get_name(empty_orchestrator) + assert state.instance_id == id + assert state.failure_details is None + assert state.runtime_status == client.OrchestrationStatus.COMPLETED + assert state.serialized_input is None + assert state.serialized_output is None + assert state.serialized_custom_status is "\"foobaz\"" diff --git a/tests/test_orchestration_executor.py b/tests/test_orchestration_executor.py index 6d5fdac..95eab0b 100644 --- a/tests/test_orchestration_executor.py +++ b/tests/test_orchestration_executor.py @@ -38,7 +38,8 @@ def orchestrator(ctx: task.OrchestrationContext, my_input: int): helpers.new_execution_started_event(name, TEST_INSTANCE_ID, encoded_input=json.dumps(test_input)), ] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, [], new_events) + result = executor.execute(TEST_INSTANCE_ID, [], new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_COMPLETED @@ -59,7 +60,8 @@ def empty_orchestrator(ctx: task.OrchestrationContext, _): new_events = [helpers.new_execution_started_event(name, TEST_INSTANCE_ID, encoded_input=None)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, [], new_events) + result = executor.execute(TEST_INSTANCE_ID, [], new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_COMPLETED @@ -73,7 +75,8 @@ def test_orchestrator_not_registered(): name = "Bogus" new_events = [helpers.new_execution_started_event(name, TEST_INSTANCE_ID, encoded_input=None)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, [], new_events) + result = executor.execute(TEST_INSTANCE_ID, [], new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_FAILED @@ -99,7 +102,8 @@ def delay_orchestrator(ctx: task.OrchestrationContext, _): helpers.new_orchestrator_started_event(start_time), helpers.new_execution_started_event(name, TEST_INSTANCE_ID, encoded_input=None)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, [], new_events) + result = executor.execute(TEST_INSTANCE_ID, [], new_events) + actions = result.actions assert actions is not None assert len(actions) == 1 @@ -131,7 +135,8 @@ def delay_orchestrator(ctx: task.OrchestrationContext, _): helpers.new_timer_fired_event(1, expected_fire_at)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_COMPLETED @@ -156,7 +161,8 @@ def orchestrator(ctx: task.OrchestrationContext, orchestrator_input): helpers.new_orchestrator_started_event(), helpers.new_execution_started_event(name, TEST_INSTANCE_ID, encoded_input)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, [], new_events) + result = executor.execute(TEST_INSTANCE_ID, [], new_events) + actions = result.actions assert len(actions) == 1 assert type(actions[0]) is pb.OrchestratorAction @@ -188,7 +194,8 @@ def orchestrator(ctx: task.OrchestrationContext, orchestrator_input): new_events = [helpers.new_task_completed_event(1, encoded_output)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_COMPLETED @@ -216,7 +223,8 @@ def orchestrator(ctx: task.OrchestrationContext, orchestrator_input): new_events = [helpers.new_task_failed_event(1, ex)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_FAILED @@ -261,7 +269,8 @@ def orchestrator(ctx: task.OrchestrationContext, orchestrator_input): helpers.new_orchestrator_started_event(timestamp=current_timestamp), helpers.new_task_failed_event(1, ValueError("Kah-BOOOOM!!!"))] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 1 assert actions[0].HasField("createTimer") assert actions[0].createTimer.fireAt.ToDatetime() == expected_fire_at @@ -274,7 +283,8 @@ def orchestrator(ctx: task.OrchestrationContext, orchestrator_input): helpers.new_orchestrator_started_event(current_timestamp), helpers.new_timer_fired_event(2, current_timestamp)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 2 assert actions[1].HasField("scheduleTask") assert actions[1].id == 1 @@ -286,7 +296,8 @@ def orchestrator(ctx: task.OrchestrationContext, orchestrator_input): helpers.new_orchestrator_started_event(current_timestamp), helpers.new_task_failed_event(1, ValueError("Kah-BOOOOM!!!"))] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 3 assert actions[2].HasField("createTimer") assert actions[2].createTimer.fireAt.ToDatetime() == expected_fire_at @@ -299,7 +310,8 @@ def orchestrator(ctx: task.OrchestrationContext, orchestrator_input): helpers.new_orchestrator_started_event(current_timestamp), helpers.new_timer_fired_event(3, current_timestamp)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 3 assert actions[1].HasField("scheduleTask") assert actions[1].id == 1 @@ -311,7 +323,8 @@ def orchestrator(ctx: task.OrchestrationContext, orchestrator_input): helpers.new_orchestrator_started_event(current_timestamp), helpers.new_task_failed_event(1, ValueError("Kah-BOOOOM!!!"))] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 4 assert actions[3].HasField("createTimer") assert actions[3].createTimer.fireAt.ToDatetime() == expected_fire_at @@ -324,7 +337,8 @@ def orchestrator(ctx: task.OrchestrationContext, orchestrator_input): helpers.new_orchestrator_started_event(current_timestamp), helpers.new_timer_fired_event(4, current_timestamp)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 4 assert actions[1].HasField("scheduleTask") assert actions[1].id == 1 @@ -336,7 +350,8 @@ def orchestrator(ctx: task.OrchestrationContext, orchestrator_input): helpers.new_orchestrator_started_event(current_timestamp), helpers.new_task_failed_event(1, ValueError("Kah-BOOOOM!!!"))] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 5 assert actions[4].HasField("createTimer") assert actions[4].createTimer.fireAt.ToDatetime() == expected_fire_at @@ -349,7 +364,8 @@ def orchestrator(ctx: task.OrchestrationContext, orchestrator_input): helpers.new_orchestrator_started_event(current_timestamp), helpers.new_timer_fired_event(5, current_timestamp)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 5 assert actions[1].HasField("scheduleTask") assert actions[1].id == 1 @@ -362,7 +378,8 @@ def orchestrator(ctx: task.OrchestrationContext, orchestrator_input): helpers.new_orchestrator_started_event(current_timestamp), helpers.new_task_failed_event(1, ValueError("Kah-BOOOOM!!!"))] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 6 assert actions[5].HasField("createTimer") assert actions[5].createTimer.fireAt.ToDatetime() == expected_fire_at @@ -375,7 +392,8 @@ def orchestrator(ctx: task.OrchestrationContext, orchestrator_input): helpers.new_orchestrator_started_event(current_timestamp), helpers.new_timer_fired_event(6, current_timestamp)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 6 assert actions[1].HasField("scheduleTask") assert actions[1].id == 1 @@ -386,7 +404,8 @@ def orchestrator(ctx: task.OrchestrationContext, orchestrator_input): helpers.new_orchestrator_started_event(current_timestamp), helpers.new_task_failed_event(1, ValueError("Kah-BOOOOM!!!"))] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 1 assert actions[0].completeOrchestration.failureDetails.errorMessage.__contains__("Activity task #1 failed: Kah-BOOOOM!!!") assert actions[0].id == 7 @@ -412,7 +431,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): new_events = [helpers.new_timer_fired_event(timer_id=1, fire_at=fire_at)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_FAILED @@ -439,7 +459,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): new_events = [helpers.new_task_completed_event(1)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_FAILED @@ -468,7 +489,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): new_events = [helpers.new_task_completed_event(1)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_FAILED @@ -498,7 +520,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): new_events = [helpers.new_task_completed_event(1)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_FAILED @@ -531,7 +554,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): helpers.new_sub_orchestration_completed_event(1, encoded_output="42")] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_COMPLETED @@ -560,7 +584,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): new_events = [helpers.new_sub_orchestration_failed_event(1, ex)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_FAILED @@ -590,7 +615,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): helpers.new_sub_orchestration_completed_event(1, encoded_output="42")] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_FAILED @@ -619,7 +645,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): helpers.new_sub_orchestration_completed_event(1, encoded_output="42")] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_FAILED @@ -645,7 +672,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): # Execute the orchestration until it is waiting for an external event. The result # should be an empty list of actions because the orchestration didn't schedule any work. executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 0 # Now send an external event to the orchestration and execute it again. This time @@ -653,7 +681,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): old_events = new_events new_events = [helpers.new_event_raised_event("my_event", encoded_input="42")] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_COMPLETED assert complete_action.result.value == "42" @@ -677,7 +706,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): # Execute the orchestration. It should be in a running state waiting for the timer to fire executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 1 assert actions[0].HasField("createTimer") @@ -687,7 +717,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): old_events = new_events + [helpers.new_timer_created_event(1, timer_due_time)] new_events = [helpers.new_timer_fired_event(1, timer_due_time)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_COMPLETED assert complete_action.result.value == "42" @@ -713,14 +744,16 @@ def orchestrator(ctx: task.OrchestrationContext, _): # Execute the orchestration. It should remain in a running state because it was suspended prior # to processing the event raised event. executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 0 # Resume the orchestration. It should complete successfully. old_events = old_events + new_events new_events = [helpers.new_resume_event()] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_COMPLETED assert complete_action.result.value == "42" @@ -745,7 +778,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): # Execute the orchestration. It should be in a running state waiting for an external event executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_TERMINATED assert complete_action.result.value == json.dumps("terminated!") @@ -773,7 +807,8 @@ def orchestrator(ctx: task.OrchestrationContext, input: int): # Execute the orchestration. It should be in a running state waiting for the timer to fire executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_CONTINUED_AS_NEW assert complete_action.result.value == json.dumps(2) @@ -808,7 +843,8 @@ def orchestrator(ctx: task.OrchestrationContext, count: int): helpers.new_execution_started_event(orchestrator_name, TEST_INSTANCE_ID, encoded_input="10")] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions # The result should be 10 "taskScheduled" actions with inputs from 0 to 9 assert len(actions) == 10 @@ -849,12 +885,14 @@ def orchestrator(ctx: task.OrchestrationContext, _): # First, test with only the first 5 events. We expect the orchestration to be running # but return zero actions since its still waiting for the other 5 tasks to complete. executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events[:5]) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events[:5]) + actions = result.actions assert len(actions) == 0 # Now test with the full set of new events. We expect the orchestration to complete. executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_COMPLETED @@ -895,7 +933,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): # Now test with the full set of new events. We expect the orchestration to complete. executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_FAILED @@ -926,7 +965,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): old_events = [] new_events = [helpers.new_execution_started_event(orchestrator_name, TEST_INSTANCE_ID, encoded_input=None)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 2 assert actions[0].HasField('scheduleTask') assert actions[1].HasField('scheduleTask') @@ -942,7 +982,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): encoded_output = json.dumps(hello(None, "Tokyo")) new_events = [helpers.new_task_completed_event(1, encoded_output)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_COMPLETED assert complete_action.result.value == encoded_output @@ -951,7 +992,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): encoded_output = json.dumps(hello(None, "Seattle")) new_events = [helpers.new_task_completed_event(2, encoded_output)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_COMPLETED assert complete_action.result.value == encoded_output @@ -997,7 +1039,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): helpers.new_orchestrator_started_event(timestamp=current_timestamp), helpers.new_task_failed_event(1, ValueError("Kah-BOOOOM!!!"))] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 1 assert actions[0].HasField("createTimer") assert actions[0].createTimer.fireAt.ToDatetime() == expected_fire_at @@ -1010,7 +1053,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): helpers.new_orchestrator_started_event(current_timestamp), helpers.new_timer_fired_event(3, current_timestamp)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 2 assert actions[1].HasField("scheduleTask") assert actions[1].id == 1 @@ -1022,7 +1066,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): helpers.new_orchestrator_started_event(current_timestamp), helpers.new_task_failed_event(1, ValueError("Kah-BOOOOM!!!"))] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 3 assert actions[2].HasField("createTimer") assert actions[2].createTimer.fireAt.ToDatetime() == expected_fire_at @@ -1032,7 +1077,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): encoded_output = json.dumps(dummy_activity(None, "Seattle")) new_events = [helpers.new_task_completed_event(2, encoded_output)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_COMPLETED assert complete_action.result.value == encoded_output @@ -1075,7 +1121,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): helpers.new_orchestrator_started_event(timestamp=current_timestamp), helpers.new_task_failed_event(1, ValueError("Kah-BOOOOM!!!"))] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 1 assert actions[0].HasField("createTimer") assert actions[0].createTimer.fireAt.ToDatetime() == expected_fire_at @@ -1088,7 +1135,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): helpers.new_orchestrator_started_event(current_timestamp), helpers.new_timer_fired_event(3, current_timestamp)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 2 assert actions[1].HasField("scheduleTask") assert actions[1].id == 1 @@ -1100,7 +1148,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): helpers.new_orchestrator_started_event(current_timestamp), helpers.new_task_failed_event(1, ValueError("Kah-BOOOOM!!!"))] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 3 assert actions[2].HasField("createTimer") assert actions[2].createTimer.fireAt.ToDatetime() == expected_fire_at @@ -1113,7 +1162,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): new_events = [helpers.new_task_completed_event(2, encoded_output), helpers.new_timer_fired_event(4, current_timestamp)] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions assert len(actions) == 3 assert actions[1].HasField("scheduleTask") assert actions[1].id == 1 @@ -1126,7 +1176,8 @@ def orchestrator(ctx: task.OrchestrationContext, _): helpers.new_orchestrator_started_event(current_timestamp), helpers.new_task_failed_event(1, ValueError("Kah-BOOOOM!!!"))] executor = worker._OrchestrationExecutor(registry, TEST_LOGGER) - actions = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + result = executor.execute(TEST_INSTANCE_ID, old_events, new_events) + actions = result.actions complete_action = get_and_validate_single_complete_orchestration_action(actions) assert complete_action.orchestrationStatus == pb.ORCHESTRATION_STATUS_FAILED assert complete_action.failureDetails.errorType == 'TaskFailedError' # TODO: Should this be the specific error?