Skip to content

Commit bf6d6f2

Browse files
committed
Use Protocol for stubs
1 parent cc005ae commit bf6d6f2

File tree

2 files changed

+55
-63
lines changed

2 files changed

+55
-63
lines changed
Lines changed: 27 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,34 @@
11
# Copyright (c) Microsoft Corporation.
22
# Licensed under the MIT License.
33

4-
from durabletask.internal.ProtoTaskHubSidecarServiceStub import ProtoTaskHubSidecarServiceStub
4+
from durabletask.internal.proto_task_hub_sidecar_service_stub import ProtoTaskHubSidecarServiceStub
55

66

77
class AzureFunctionsNullStub(ProtoTaskHubSidecarServiceStub):
88
"""A task hub sidecar stub class that implements all methods as no-ops."""
9-
10-
def __init__(self):
11-
"""Constructor.
12-
"""
13-
self.Hello = lambda *args, **kwargs: None
14-
self.StartInstance = lambda *args, **kwargs: None
15-
self.GetInstance = lambda *args, **kwargs: None
16-
self.RewindInstance = lambda *args, **kwargs: None
17-
self.WaitForInstanceStart = lambda *args, **kwargs: None
18-
self.WaitForInstanceCompletion = lambda *args, **kwargs: None
19-
self.RaiseEvent = lambda *args, **kwargs: None
20-
self.TerminateInstance = lambda *args, **kwargs: None
21-
self.SuspendInstance = lambda *args, **kwargs: None
22-
self.ResumeInstance = lambda *args, **kwargs: None
23-
self.QueryInstances = lambda *args, **kwargs: None
24-
self.PurgeInstances = lambda *args, **kwargs: None
25-
self.GetWorkItems = lambda *args, **kwargs: None
26-
self.CompleteActivityTask = lambda *args, **kwargs: None
27-
self.CompleteOrchestratorTask = lambda *args, **kwargs: None
28-
self.CompleteEntityTask = lambda *args, **kwargs: None
29-
self.StreamInstanceHistory = lambda *args, **kwargs: None
30-
self.CreateTaskHub = lambda *args, **kwargs: None
31-
self.DeleteTaskHub = lambda *args, **kwargs: None
32-
self.SignalEntity = lambda *args, **kwargs: None
33-
self.GetEntity = lambda *args, **kwargs: None
34-
self.QueryEntities = lambda *args, **kwargs: None
35-
self.CleanEntityStorage = lambda *args, **kwargs: None
36-
self.AbandonTaskActivityWorkItem = lambda *args, **kwargs: None
37-
self.AbandonTaskOrchestratorWorkItem = lambda *args, **kwargs: None
38-
self.AbandonTaskEntityWorkItem = lambda *args, **kwargs: None
9+
Hello = lambda *args, **kwargs: None
10+
StartInstance = lambda *args, **kwargs: None
11+
GetInstance = lambda *args, **kwargs: None
12+
RewindInstance = lambda *args, **kwargs: None
13+
WaitForInstanceStart = lambda *args, **kwargs: None
14+
WaitForInstanceCompletion = lambda *args, **kwargs: None
15+
RaiseEvent = lambda *args, **kwargs: None
16+
TerminateInstance = lambda *args, **kwargs: None
17+
SuspendInstance = lambda *args, **kwargs: None
18+
ResumeInstance = lambda *args, **kwargs: None
19+
QueryInstances = lambda *args, **kwargs: None
20+
PurgeInstances = lambda *args, **kwargs: None
21+
GetWorkItems = lambda *args, **kwargs: None
22+
CompleteActivityTask = lambda *args, **kwargs: None
23+
CompleteOrchestratorTask = lambda *args, **kwargs: None
24+
CompleteEntityTask = lambda *args, **kwargs: None
25+
StreamInstanceHistory = lambda *args, **kwargs: None
26+
CreateTaskHub = lambda *args, **kwargs: None
27+
DeleteTaskHub = lambda *args, **kwargs: None
28+
SignalEntity = lambda *args, **kwargs: None
29+
GetEntity = lambda *args, **kwargs: None
30+
QueryEntities = lambda *args, **kwargs: None
31+
CleanEntityStorage = lambda *args, **kwargs: None
32+
AbandonTaskActivityWorkItem = lambda *args, **kwargs: None
33+
AbandonTaskOrchestratorWorkItem = lambda *args, **kwargs: None
34+
AbandonTaskEntityWorkItem = lambda *args, **kwargs: None
Lines changed: 28 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,34 @@
1-
from typing import Callable
1+
from typing import Any, Callable, Protocol
22

33

4-
class ProtoTaskHubSidecarServiceStub(object):
4+
class ProtoTaskHubSidecarServiceStub(Protocol):
55
"""A stub class roughly matching the TaskHubSidecarServiceStub generated from the .proto file.
66
Used by Azure Functions during orchestration and entity executions to inject custom behavior,
77
as no real sidecar stub is available.
88
"""
9-
10-
def __init__(self):
11-
"""Constructor.
12-
"""
13-
self.Hello: Callable[..., None]
14-
self.StartInstance: Callable[..., None]
15-
self.GetInstance: Callable[..., None]
16-
self.RewindInstance: Callable[..., None]
17-
self.WaitForInstanceStart: Callable[..., None]
18-
self.WaitForInstanceCompletion: Callable[..., None]
19-
self.RaiseEvent: Callable[..., None]
20-
self.TerminateInstance: Callable[..., None]
21-
self.SuspendInstance: Callable[..., None]
22-
self.ResumeInstance: Callable[..., None]
23-
self.QueryInstances: Callable[..., None]
24-
self.PurgeInstances: Callable[..., None]
25-
self.GetWorkItems: Callable[..., None]
26-
self.CompleteActivityTask: Callable[..., None]
27-
self.CompleteOrchestratorTask: Callable[..., None]
28-
self.CompleteEntityTask: Callable[..., None]
29-
self.StreamInstanceHistory: Callable[..., None]
30-
self.CreateTaskHub: Callable[..., None]
31-
self.DeleteTaskHub: Callable[..., None]
32-
self.SignalEntity: Callable[..., None]
33-
self.GetEntity: Callable[..., None]
34-
self.QueryEntities: Callable[..., None]
35-
self.CleanEntityStorage: Callable[..., None]
36-
self.AbandonTaskActivityWorkItem: Callable[..., None]
37-
self.AbandonTaskOrchestratorWorkItem: Callable[..., None]
38-
self.AbandonTaskEntityWorkItem: Callable[..., None]
9+
Hello: Callable[..., Any]
10+
StartInstance: Callable[..., Any]
11+
GetInstance: Callable[..., Any]
12+
RewindInstance: Callable[..., Any]
13+
WaitForInstanceStart: Callable[..., Any]
14+
WaitForInstanceCompletion: Callable[..., Any]
15+
RaiseEvent: Callable[..., Any]
16+
TerminateInstance: Callable[..., Any]
17+
SuspendInstance: Callable[..., Any]
18+
ResumeInstance: Callable[..., Any]
19+
QueryInstances: Callable[..., Any]
20+
PurgeInstances: Callable[..., Any]
21+
GetWorkItems: Callable[..., Any]
22+
CompleteActivityTask: Callable[..., Any]
23+
CompleteOrchestratorTask: Callable[..., Any]
24+
CompleteEntityTask: Callable[..., Any]
25+
StreamInstanceHistory: Callable[..., Any]
26+
CreateTaskHub: Callable[..., Any]
27+
DeleteTaskHub: Callable[..., Any]
28+
SignalEntity: Callable[..., Any]
29+
GetEntity: Callable[..., Any]
30+
QueryEntities: Callable[..., Any]
31+
CleanEntityStorage: Callable[..., Any]
32+
AbandonTaskActivityWorkItem: Callable[..., Any]
33+
AbandonTaskOrchestratorWorkItem: Callable[..., Any]
34+
AbandonTaskEntityWorkItem: Callable[..., Any]

0 commit comments

Comments
 (0)