def on_connected(self, headers, body):
        if 'heart-beat' in headers:
            self.heartbeats = utils.calculate_heartbeats(headers['heart-beat'].replace(' ', '').split(','), self.heartbeats)
            if self.heartbeats != (0, 0):
                self.send_sleep = self.heartbeats[0] / 1000

                # receive gets an additional grace of 50%
                self.receive_sleep = (self.heartbeats[1] / 1000) * 1.5

                # Setup an initial grace period
                if self.receive_sleep != 0:
                    self.received_heartbeat = monotonic() + \
                        2 * self.receive_sleep

                if self.send_sleep == 0:
                    self.sleep_time = self.receive_sleep
                elif self.receive_sleep == 0:
                    self.sleep_time = self.send_sleep
                else:
                    # sleep is the GCD of the send and receive times
                    self.sleep_time = gcd(self.send_sleep, self.receive_sleep) / 2.0

                self.running = True
                if self.heartbeat_thread is None:
                    self.heartbeat_thread = utils.default_create_thread(self.__heartbeat_loop)
                    self.heartbeat_thread.name = "StompHeartbeat%s" % getattr(self.heartbeat_thread, "name", "Thread")
Should we redirect and where to?
dataset/ETHPy150Open jasonrbriggs/stomp.py/stomp/listener.py/HeartbeatListener.on_connected--crossover with--dataset/ETHPy150Open Esri/geoprocessing-tools-for-hadoop/requests/packages/urllib3/response.py/HTTPResponse.get_redirect_location