Make StreamIdGen get_next and get_next_mult async (#8161)

This is mainly so that `StreamIdGenerator` and `MultiWriterIdGenerator`
will have the same interface, allowing them to be used interchangeably.
This commit is contained in:
Erik Johnston 2020-08-25 15:10:08 +01:00 committed by GitHub
parent 74bf8d4d06
commit 2231dffee6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
14 changed files with 54 additions and 49 deletions

View file

@ -80,7 +80,7 @@ class StreamIdGenerator(object):
upwards, -1 to grow downwards.
Usage:
with stream_id_gen.get_next() as stream_id:
with await stream_id_gen.get_next() as stream_id:
# ... persist event ...
"""
@ -95,10 +95,10 @@ class StreamIdGenerator(object):
)
self._unfinished_ids = deque() # type: Deque[int]
def get_next(self):
async def get_next(self):
"""
Usage:
with stream_id_gen.get_next() as stream_id:
with await stream_id_gen.get_next() as stream_id:
# ... persist event ...
"""
with self._lock:
@ -117,10 +117,10 @@ class StreamIdGenerator(object):
return manager()
def get_next_mult(self, n):
async def get_next_mult(self, n):
"""
Usage:
with stream_id_gen.get_next(n) as stream_ids:
with await stream_id_gen.get_next(n) as stream_ids:
# ... persist events ...
"""
with self._lock: