UriUtils { public static String encode(String value) { return encodeChunk(value, Util.UTF_8, false); }  static boolean isEncoded(String value, Charset charset); static String encode(String value); static String encode(String value, Charset charset); static String encode(String value, boolean allowReservedCharacters); static String encode(String value, Charset charset, boolean allowReservedCharacters); static String decode(String value, Charset charset); static boolean isAbsolute(String uri); static String encodeInternal(String value,
                                      Charset charset,
                                      boolean allowReservedCharacters);  }
@Test public void pctEncodeWithReservedCharacters() { String withReserved = "/api/user@host:port#section[a-z]/data"; String encoded = UriUtils.encode(withReserved, UTF_8, true); assertThat(encoded).isEqualTo("/api/user@host:port#section[a-z]/data"); }