RoboZonkyFilter implements ClientRequestFilter,
        ClientResponseFilter { static URI addQueryParams(final URI info, final Map<String, Object[]> params) { final UriBuilder builder = UriBuilder.fromUri(info); builder.uri(info); params.forEach(builder::queryParam); return builder.build(); } RoboZonkyFilter(); void setQueryParam(final String key, final Object... values); void setRequestHeader(final String key, final String value); Optional<String> getLastResponseHeader(final String key); @Override void filter(final ClientRequestContext clientRequestContext); @Override void filter(final ClientRequestContext clientRequestContext,
            final ClientResponseContext clientResponseContext);  }
@Test void rebuildUri() throws URISyntaxException { final URI u = new URI("http: final URI u2 = RoboZonkyFilter.addQueryParams(u, Collections.singletonMap("param2", new Object[] { 1, 2 })); assertThat(u2).isNotEqualTo(u); }