def connect(self, target): if self._connected: raise PipeError('already connected') self._connect_result = Result() try: self._handle.connect(target, self.__connect_cb) except pyuv.error.PipeError as e: raise PipeError(convert_errno(e.args[0]), e.args[1]) try: self._connect_result.wait() except PipeError: self.close() raise else: self._set_connected() finally: self._connect_result = None
def connect(self, target, source_address=None): if self._connected: raise TCPError('already connected') # TODO: getaddrinfo if source_address: try: self._handle.bind(source_address) except pyuv.error.TCPError as e: raise TCPError(e.args[0], e.args[1]) try: self._handle.connect(target, self.__connect_cb) except pyuv.error.TCPError as e: raise TCPError(e.args[0], e.args[1]) self._connect_result = Result() try: self._connect_result.wait() except TCPError: self.close() raise else: self._set_connected() finally: self._connect_result = None
def __init__(self, handle): super(PipeStream, self).__init__() self._handle = handle self._read_result = Result()
def __init__(self, fd, readable): super(TTYStream, self).__init__() loop = evergreen.current.loop self._handle = pyuv.TTY(loop._loop, fd, readable) self._read_result = Result() self._set_connected()