Antoine Pitrou added the comment:
> As for replacing the protocol but keeping the transport, what would
> be the semantics of that?
The protocol is not really replaced, it's wrapped.
Before:
SocketTransport <- UserProtocol
After:
SocketTransport <- (asyncio.sslproto.SSLProtocol
<- asyncio.sslproto._SSLProtocolTransport) <- UserProtocol
That way, the same SocketTransport (but it could be something else, e.g. a pipe
transport) is always bound to the event loop; we simply insert a processing
layer in the chain between the original transport and the final protocol.
There are two distinct objects so that the SocketTransport sees a protocol and
the UserProtocol sees a transport; but those two objects work hand in hand.
----------
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue23749>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com