RequestKey { @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((method == null) ? 0 : method.hashCode()); result = prime * result + ((url == null) ? 0 : url.hashCode()); return result; } private  RequestKey(Builder builder); private  RequestKey(Request request); static Builder builder(HttpMethod method, String url); static RequestKey create(Request request); HttpMethod getMethod(); String getUrl(); RequestHeaders getHeaders(); Charset getCharset(); byte[] getBody(); @Override int hashCode(); @Override boolean equals(Object obj); boolean equalsExtended(Object obj); @Override String toString();  }
@Test public void equalSelf() { assertThat(requestKey.hashCode(), equalTo(requestKey.hashCode())); assertThat(requestKey, equalTo(requestKey)); }