@Override
  public void restRequest(RestRequest request, Callback<RestResponse> callback, String routeKey)
  {
    this.restRequest(request, new RequestContext(), callback, routeKey);
  }
@Test
  public void testBadRequest()
  {
    RouteLookup routeLookup = new SimpleTestRouteLookup();

    final D2Client d2Client = new D2ClientBuilder().setZkHosts("localhost:2121").build();
    d2Client.start(new FutureCallback<>());
    RouteLookupClient routeLookupClient = new RouteLookupClient(d2Client, routeLookup, "WestCoast");
    RestRequest dummyRestRequest = new RestRequestBuilder(URI.create("http://simple_uri")).build();
    try
    {
      Future<RestResponse> future = routeLookupClient.restRequest(dummyRestRequest, "5436");
      future.get();
      Assert.fail("Unexpected success, request should have thrown an Exception");
    }
    catch (Exception e)
    {
      Assert.assertTrue(e instanceof IllegalArgumentException);
      String message = e.getMessage();
      if (!message.contains("Unsupported scheme in URI: http://simple_uri"))
      {
        Assert.fail("request was sent using http instead of d2, but we didn't get Unsupported scheme");
      }
    }
  }