From b86919a6ffe270aa64b4631cd0c32836d162d80e Mon Sep 17 00:00:00 2001 From: Paul Sokolovsky Date: Sat, 3 May 2014 23:13:35 +0300 Subject: [PATCH] asyncio_micro: StreamReader, StreamWriter: add more methods. --- asyncio_micro/asyncio_micro.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/asyncio_micro/asyncio_micro.py b/asyncio_micro/asyncio_micro.py index a6d97248..c687aa37 100644 --- a/asyncio_micro/asyncio_micro.py +++ b/asyncio_micro/asyncio_micro.py @@ -186,6 +186,13 @@ class StreamReader: def __init__(self, s): self.s = s + def read(self, n): + s = yield IORead(self.s) + res = self.s.read(n) + if not res: + yield IODone(IO_READ, self.s) + return res + def readline(self): log.debug("StreamReader.readline()") s = yield IORead(self.s) @@ -208,6 +215,10 @@ class StreamWriter: s = yield IOWrite(self.s) log.debug("StreamWriter.write(): returning") + def close(self): + yield IODone(IO_WRITE, self.s) + self.s.close() + def open_connection(host, port): log.debug("open_connection(%s, %s)", host, port)