in qpid/messaging/driver.py [0:0]
def dispatch(self):
if not self.connection._connected and not self._closing and self._status != CLOSED:
self.disconnect()
if self._connected and not self._closing:
for ssn in self.connection.sessions.values():
self.attach(ssn)
self.process(ssn)
# We need to check heartbeat even if not self._connected since we may have
# heartbeat timeout before receiving an open-ok
if self.connection.heartbeat and self._status != CLOSED and not self._closing:
now = time.time()
if now - self._last_in > 2*self.connection.heartbeat:
raise HeartbeatTimeout(text="heartbeat timeout")
# Only send heartbeats if we are connected.
if self._connected and now - self._last_out >= self.connection.heartbeat/2.0:
self.write_op(ConnectionHeartbeat())