Esempio n. 1
0
    def _check_connected(self):
        _logger.debug('_check_connected')
        err = self._fd.getsockopt(socket.SOL_SOCKET, socket.SO_ERROR)
        if err != 0:
            self._error = True
            self._do_close()
            return

        self._connected = True
        self._wev.set_handler(lambda ev: self._on_send())
        if len(self._to_send) == 0:
            Event.delEvent(self._wev)

        if self._onConnected is not None:
            try:
                self._onConnected(self)
            except Exception as e:
                _logger.error('_on_connected: %s', e)
                _logger.exception(traceback.format_exc())
                self._error = True
                self._do_close()
                return
        else:
            self.start_receiving()
Esempio n. 2
0
 def _stop_sending(self):
     _logger.debug('%s, _stop_sending', str(self))
     if Event.isEventSet(self._wev):
         _logger.debug('%s, _stop_sending::delEvent', str(self))
         Event.delEvent(self._wev)
Esempio n. 3
0
 def stop_receiving(self):
     _logger.debug('%s, stop_receiving', str(self))
     if Event.isEventSet(self._rev):
         _logger.debug('%s, stop_receiving::delEvent', str(self))
         Event.delEvent(self._rev)