[Python-checkins] cpython (3.4): Backout changeset 6ab2575bc12b

victor.stinner python-checkins at python.org
Thu Jan 15 21:52:24 CET 2015


https://hg.python.org/cpython/rev/ecbde0b31f6f
changeset:   94184:ecbde0b31f6f
branch:      3.4
parent:      94182:45e2c95bb802
user:        Victor Stinner <victor.stinner at gmail.com>
date:        Thu Jan 15 21:50:19 2015 +0100
summary:
  Backout changeset 6ab2575bc12b

StreamWriter: close() now clears the reference to the transport

StreamWriter now raises an exception if it is closed: write(), writelines(),
write_eof(), can_write_eof(), get_extra_info(), drain().

files:
  Lib/asyncio/streams.py |  25 ++++---------------------
  1 files changed, 4 insertions(+), 21 deletions(-)


diff --git a/Lib/asyncio/streams.py b/Lib/asyncio/streams.py
--- a/Lib/asyncio/streams.py
+++ b/Lib/asyncio/streams.py
@@ -258,22 +258,8 @@
         self._reader = reader
         self._loop = loop
 
-    def close(self):
-        if self._transport is None:
-            return
-        self._transport.close()
-        self._transport = None
-
-    def _check_closed(self):
-        if self._transport is None:
-            raise RuntimeError('StreamWriter is closed')
-
     def __repr__(self):
-        info = [self.__class__.__name__]
-        if self._transport is not None:
-            info.append('transport=%r' % self._transport)
-        else:
-            info.append('closed')
+        info = [self.__class__.__name__, 'transport=%r' % self._transport]
         if self._reader is not None:
             info.append('reader=%r' % self._reader)
         return '<%s>' % ' '.join(info)
@@ -283,23 +269,21 @@
         return self._transport
 
     def write(self, data):
-        self._check_closed()
         self._transport.write(data)
 
     def writelines(self, data):
-        self._check_closed()
         self._transport.writelines(data)
 
     def write_eof(self):
-        self._check_closed()
         return self._transport.write_eof()
 
     def can_write_eof(self):
-        self._check_closed()
         return self._transport.can_write_eof()
 
+    def close(self):
+        return self._transport.close()
+
     def get_extra_info(self, name, default=None):
-        self._check_closed()
         return self._transport.get_extra_info(name, default)
 
     @coroutine
@@ -311,7 +295,6 @@
           w.write(data)
           yield from w.drain()
         """
-        self._check_closed()
         if self._reader is not None:
             exc = self._reader.exception()
             if exc is not None:

-- 
Repository URL: https://hg.python.org/cpython


More information about the Python-checkins mailing list