private HttpResponse getHTTPResponse() throws IOException, NullPointerException { if (fileURI == null) throw new NullPointerException("No file URI specified"); HttpClient client = new DefaultHttpClient(); BasicHttpContext localContext = new BasicHttpContext(); // Clear down the local cookie store every time to make sure we don't have any left over cookies // influencing the test localContext.setAttribute(ClientContext.COOKIE_STORE, null); LOG.info("Mimic WebDriver cookie state: " + mimicWebDriverCookieState); if (mimicWebDriverCookieState) { localContext.setAttribute( ClientContext.COOKIE_STORE, mimicCookieState(driver.manage().getCookies())); } HttpRequestBase requestMethod = httpRequestMethod.getRequestMethod(); requestMethod.setURI(fileURI); HttpParams httpRequestParameters = requestMethod.getParams(); httpRequestParameters.setParameter(ClientPNames.HANDLE_REDIRECTS, followRedirects); requestMethod.setParams(httpRequestParameters); // TODO if post send map of variables, also need to add a post map setter LOG.info("Sending " + httpRequestMethod.toString() + " request for: " + fileURI); return client.execute(requestMethod, localContext); }
@Override public int hashCode() { int result = method != null ? method.hashCode() : 0; result = 31 * result + (url != null ? url.hashCode() : 0); result = 31 * result + (sign_url != null ? sign_url.hashCode() : 0); result = 31 * result + (parameters != null ? Arrays.hashCode(parameters) : 0); result = 31 * result + (authorization != null ? authorization.hashCode() : 0); result = 31 * result + (requestHeaders != null ? requestHeaders.hashCode() : 0); return result; }
@Override public boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; final HttpRequest that = (HttpRequest) o; if (authorization != null ? !authorization.equals(that.authorization) : that.authorization != null) return false; if (!Arrays.equals(parameters, that.parameters)) return false; if (requestHeaders != null ? !requestHeaders.equals(that.requestHeaders) : that.requestHeaders != null) return false; if (method != null ? !method.equals(that.method) : that.method != null) return false; if (url != null ? !url.equals(that.url) : that.url != null) return false; return true; }
@Override public RequestMethod getMethod() { return RequestMethod.valueOf(request.getMethod().toUpperCase()); }