|
3 | 3 | isort:skip_file |
4 | 4 | """ |
5 | 5 | import abc |
| 6 | +import collections.abc |
6 | 7 | import grpc |
| 8 | +import grpc.aio |
7 | 9 | from nidaqmx._stubs import session_pb2 |
| 10 | +import typing |
| 11 | + |
| 12 | +_T = typing.TypeVar('_T') |
| 13 | + |
| 14 | +class _MaybeAsyncIterator(collections.abc.AsyncIterator[_T], collections.abc.Iterator[_T], metaclass=abc.ABCMeta): |
| 15 | + ... |
| 16 | + |
| 17 | +class _ServicerContext(grpc.ServicerContext, grpc.aio.ServicerContext): # type: ignore |
| 18 | + ... |
8 | 19 |
|
9 | 20 | class SessionUtilitiesStub: |
10 | | - def __init__(self, channel: grpc.Channel) -> None: ... |
| 21 | + def __init__(self, channel: typing.Union[grpc.Channel, grpc.aio.Channel]) -> None: ... |
11 | 22 | EnumerateDevices: grpc.UnaryUnaryMultiCallable[ |
12 | 23 | session_pb2.EnumerateDevicesRequest, |
13 | 24 | session_pb2.EnumerateDevicesResponse, |
@@ -36,43 +47,72 @@ class SessionUtilitiesStub: |
36 | 47 | ] |
37 | 48 | """Resets the server to a default state with no open sessions""" |
38 | 49 |
|
| 50 | +class SessionUtilitiesAsyncStub: |
| 51 | + EnumerateDevices: grpc.aio.UnaryUnaryMultiCallable[ |
| 52 | + session_pb2.EnumerateDevicesRequest, |
| 53 | + session_pb2.EnumerateDevicesResponse, |
| 54 | + ] |
| 55 | + """Provides a list of devices or chassis connected to server under localhost""" |
| 56 | + Reserve: grpc.aio.UnaryUnaryMultiCallable[ |
| 57 | + session_pb2.ReserveRequest, |
| 58 | + session_pb2.ReserveResponse, |
| 59 | + ] |
| 60 | + """Reserve a set of client defined resources for exclusive use""" |
| 61 | + IsReservedByClient: grpc.aio.UnaryUnaryMultiCallable[ |
| 62 | + session_pb2.IsReservedByClientRequest, |
| 63 | + session_pb2.IsReservedByClientResponse, |
| 64 | + ] |
| 65 | + """Determines if a set of client defined resources is currently reserved by a |
| 66 | + specific client |
| 67 | + """ |
| 68 | + Unreserve: grpc.aio.UnaryUnaryMultiCallable[ |
| 69 | + session_pb2.UnreserveRequest, |
| 70 | + session_pb2.UnreserveResponse, |
| 71 | + ] |
| 72 | + """Unreserves a previously reserved resource""" |
| 73 | + ResetServer: grpc.aio.UnaryUnaryMultiCallable[ |
| 74 | + session_pb2.ResetServerRequest, |
| 75 | + session_pb2.ResetServerResponse, |
| 76 | + ] |
| 77 | + """Resets the server to a default state with no open sessions""" |
| 78 | + |
39 | 79 | class SessionUtilitiesServicer(metaclass=abc.ABCMeta): |
40 | 80 | @abc.abstractmethod |
41 | 81 | def EnumerateDevices( |
42 | 82 | self, |
43 | 83 | request: session_pb2.EnumerateDevicesRequest, |
44 | | - context: grpc.ServicerContext, |
45 | | - ) -> session_pb2.EnumerateDevicesResponse: |
| 84 | + context: _ServicerContext, |
| 85 | + ) -> typing.Union[session_pb2.EnumerateDevicesResponse, collections.abc.Awaitable[session_pb2.EnumerateDevicesResponse]]: |
46 | 86 | """Provides a list of devices or chassis connected to server under localhost""" |
47 | 87 | @abc.abstractmethod |
48 | 88 | def Reserve( |
49 | 89 | self, |
50 | 90 | request: session_pb2.ReserveRequest, |
51 | | - context: grpc.ServicerContext, |
52 | | - ) -> session_pb2.ReserveResponse: |
| 91 | + context: _ServicerContext, |
| 92 | + ) -> typing.Union[session_pb2.ReserveResponse, collections.abc.Awaitable[session_pb2.ReserveResponse]]: |
53 | 93 | """Reserve a set of client defined resources for exclusive use""" |
54 | 94 | @abc.abstractmethod |
55 | 95 | def IsReservedByClient( |
56 | 96 | self, |
57 | 97 | request: session_pb2.IsReservedByClientRequest, |
58 | | - context: grpc.ServicerContext, |
59 | | - ) -> session_pb2.IsReservedByClientResponse: |
| 98 | + context: _ServicerContext, |
| 99 | + ) -> typing.Union[session_pb2.IsReservedByClientResponse, collections.abc.Awaitable[session_pb2.IsReservedByClientResponse]]: |
60 | 100 | """Determines if a set of client defined resources is currently reserved by a |
61 | 101 | specific client |
62 | 102 | """ |
63 | 103 | @abc.abstractmethod |
64 | 104 | def Unreserve( |
65 | 105 | self, |
66 | 106 | request: session_pb2.UnreserveRequest, |
67 | | - context: grpc.ServicerContext, |
68 | | - ) -> session_pb2.UnreserveResponse: |
| 107 | + context: _ServicerContext, |
| 108 | + ) -> typing.Union[session_pb2.UnreserveResponse, collections.abc.Awaitable[session_pb2.UnreserveResponse]]: |
69 | 109 | """Unreserves a previously reserved resource""" |
70 | 110 | @abc.abstractmethod |
71 | 111 | def ResetServer( |
72 | 112 | self, |
73 | 113 | request: session_pb2.ResetServerRequest, |
74 | | - context: grpc.ServicerContext, |
75 | | - ) -> session_pb2.ResetServerResponse: |
| 114 | + context: _ServicerContext, |
| 115 | + ) -> typing.Union[session_pb2.ResetServerResponse, collections.abc.Awaitable[session_pb2.ResetServerResponse]]: |
76 | 116 | """Resets the server to a default state with no open sessions""" |
77 | 117 |
|
78 | | -def add_SessionUtilitiesServicer_to_server(servicer: SessionUtilitiesServicer, server: grpc.Server) -> None: ... |
| 118 | +def add_SessionUtilitiesServicer_to_server(servicer: SessionUtilitiesServicer, server: typing.Union[grpc.Server, grpc.aio.Server]) -> None: ... |
0 commit comments