async def METHOD_NAME(self, tcp_connection, destination, request):
    self._logger.debug("Got request for %s: %s", destination, request)
    hops = self.socks_servers.index(tcp_connection.socksserver) + 1
    try:
        response = await self.tunnels.perform_http_request(destination, request, hops)
        self._logger.debug('Got response from %s: %s', destination, response)
    except RuntimeError as e:
        self._logger.info('Failed to get HTTP response using tunnels: %s', e)
        return
    if response:
        tcp_connection.transport.write(response)
    tcp_connection.transport.close()