diff options
author | Alexander Chemeris <Alexander.Chemeris@gmail.com> | 2015-05-30 10:07:53 -0400 |
---|---|---|
committer | Holger Hans Peter Freyther <holger@moiji-mobile.com> | 2015-05-30 17:45:49 +0200 |
commit | 2f48313ed6c598d38a59332166823ddc7fe309ef (patch) | |
tree | 6173ebb92970f7cbf0ea1f57f9768946aa5774bc | |
parent | b819b57a98d142ba004d9dbc6c786c1cd9f1c76c (diff) |
obscvty: Implement readlines() generator function.
-rwxr-xr-x | osmopy/obscvty.py | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/osmopy/obscvty.py b/osmopy/obscvty.py index c7f8b27..2654f3d 100755 --- a/osmopy/obscvty.py +++ b/osmopy/obscvty.py @@ -127,6 +127,25 @@ class VTYInteract(object): self._close_socket() return res[len(request) + 2: -end] + """A generator function yielding lines separated by delim. + Behaves similar to a file readlines() method. + + Example of use: + for line in vty.readlines(): + print line + """ + def readlines(self, recv_buffer=4096, delim='\n'): + buffer = '' + data = True + while data: + data = self.socket.recv(recv_buffer) + buffer += data + + while buffer.find(delim) != -1: + line, buffer = buffer.split('\n', 1) + yield line + return + # There's no close parameter, as close=True makes this useless def enable(self): self.command("enable") |