Merge pull request #265 from ralexstokes/add-wait-closed

Add call to `wait_closed` method of asyncio.StreamWriter
This commit is contained in:
Alex Stokes 2019-08-24 22:17:29 +02:00 committed by GitHub
commit d764ca2884
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 12 additions and 11 deletions

View File

@ -37,5 +37,6 @@ class RawConnection(IRawConnection):
"""
return await self.reader.read(n)
def close(self) -> None:
async def close(self) -> None:
self.writer.close()
await self.writer.wait_closed()

View File

@ -17,5 +17,5 @@ class IRawConnection(ABC):
pass
@abstractmethod
def close(self) -> None:
async def close(self) -> None:
pass

View File

@ -118,7 +118,7 @@ class Swarm(INetwork):
)
except SecurityUpgradeFailure as error:
# TODO: Add logging to indicate the failure
raw_conn.close()
await raw_conn.close()
raise SwarmException(
f"fail to upgrade the connection to a secured connection from {peer_id}"
) from error
@ -128,7 +128,7 @@ class Swarm(INetwork):
)
except MuxerUpgradeFailure as error:
# TODO: Add logging to indicate the failure
secured_conn.close()
await secured_conn.close()
raise SwarmException(
f"fail to upgrade the connection to a muxed connection from {peer_id}"
) from error
@ -215,7 +215,7 @@ class Swarm(INetwork):
)
except SecurityUpgradeFailure as error:
# TODO: Add logging to indicate the failure
raw_conn.close()
await raw_conn.close()
raise SwarmException(
"fail to upgrade the connection to a secured connection"
) from error
@ -226,7 +226,7 @@ class Swarm(INetwork):
)
except MuxerUpgradeFailure as error:
# TODO: Add logging to indicate the failure
secured_conn.close()
await secured_conn.close()
raise SwarmException(
f"fail to upgrade the connection to a muxed connection from {peer_id}"
) from error

View File

@ -36,8 +36,8 @@ class BaseSession(ISecureConn):
async def read(self, n: int = -1) -> bytes:
return await self.conn.read(n)
def close(self) -> None:
self.conn.close()
async def close(self) -> None:
await self.conn.close()
def get_local_peer(self) -> ID:
return self.local_peer

View File

@ -40,7 +40,7 @@ class IMuxedConn(ABC):
pass
@abstractmethod
def close(self) -> None:
async def close(self) -> None:
"""
close connection
"""

View File

@ -69,11 +69,11 @@ class Mplex(IMuxedConn):
def initiator(self) -> bool:
return self.conn.initiator
def close(self) -> None:
async def close(self) -> None:
"""
close the stream muxer and underlying raw connection
"""
self.conn.close()
await self.conn.close()
def is_closed(self) -> bool:
"""