

def tunnel_recv_handler(self, payload):
    ' Gets called when a control proxy replies'
    if ('cmd' in payload):
        if (payload['cmd'] == 'httpreq'):
            try:
                self.calvincontrol.route_request(payload['msgid'], None, self['command'], payload['headers'], payload['data'])
            except:
                _log.exception('FIXME! Caught exception in calvincontrol when tunneling.')
                self.calvincontrol.send_response(payload['msgid'], None, None, status=calvinresponse.INTERNAL_ERROR)
        elif (payload['cmd'] == 'started'):
            self.calvincontrol.node.control_uri = payload['controluri']
            self.calvincontrol.node.storage.add_node(self.calvincontrol.node)
            return
        elif (payload['cmd'] == 'logclose'):
            self.calvincontrol.close_log_tunnel(payload['msg_id'])
            return
    _log.error((('Tunnel client received unknown command %s' % payload['cmd']) if ('cmd' in payload) else ''))

dataset/ETHPy150Open EricssonResearch/calvin-base/calvin/runtime/north/calvincontrol.py CalvinControlTunnelClient.tunnel_recv_handler/VarMisuse@52/87 `payload`->`self`