Beispiel #1
0
    def read_transport(self, n, timeout_sec):
        if self._proc is None:
            raise server.TransportClosedError()

        fd = self._proc.stdout.fileno()
        end_time = None if timeout_sec is None else time.monotonic(
        ) + timeout_sec

        try:
            self._await_ready([fd], [], end_time=end_time)
            to_return = os.read(fd, n)
        except BrokenPipeError:
            to_return = 0

        if not to_return:
            self.disconnect_transport()
            raise server.TransportClosedError()

        return to_return
Beispiel #2
0
    def write_transport(self, data, timeout_sec):
        if self._proc is None:
            raise server.TransportClosedError()

        fd = self._proc.stdin.fileno()
        end_time = None if timeout_sec is None else time.monotonic(
        ) + timeout_sec

        data_len = len(data)
        while data:
            self._await_ready([], [fd], end_time=end_time)
            try:
                num_written = os.write(fd, data)
            except BrokenPipeError:
                num_written = 0

            if not num_written:
                self.disconnect_transport()
                raise server.TransportClosedError()

            data = data[num_written:]
 def write_transport(self, data, timeout_sec):
     if self._serial is None:
         raise server.TransportClosedError()
     return self._serial.write(data)
 def read_transport(self, n, timeout_sec):
     # It's hard to set timeout_sec, so we just throw it away
     # TODO fix this
     if self._serial is None:
         raise server.TransportClosedError()
     return self._serial.read(n)
Beispiel #5
0
    def read_transport(self, n, timeout_sec):
        if self._transport is None:
            raise server.TransportClosedError()

        return self._transport.read(n, timeout_sec)
Beispiel #6
0
 def read_transport(self, n, timeout_sec):
     self._serial.timeout = timeout_sec
     if self._serial is None:
         raise server.TransportClosedError()
     return self._serial.read(n)