/usr/share/pyshared/eventlet/twistedutil/protocols/basic.py is in python-eventlet 0.9.16-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | from twisted.protocols import basic
from twisted.internet.error import ConnectionDone
from eventlet.twistedutil.protocol import GreenTransportBase
class LineOnlyReceiver(basic.LineOnlyReceiver):
def __init__(self, recepient):
self._recepient = recepient
def connectionMade(self):
self._recepient._got_transport(self.transport)
def connectionLost(self, reason):
self._recepient._connectionLost(reason)
def lineReceived(self, line):
self._recepient._got_data(line)
class LineOnlyReceiverTransport(GreenTransportBase):
protocol_class = LineOnlyReceiver
def readline(self):
return self._wait()
def sendline(self, line):
self.protocol.sendLine(line)
# iterator protocol:
def __iter__(self):
return self
def next(self):
try:
return self.readline()
except ConnectionDone:
raise StopIteration
|