/** * HTTP 요청 결과를 HttpInvocation 객체에 위임하여 결과를 가공해 리턴한다. * * @param <T> * @param httpMethod * @param httpInvocation * @return */ public <T> T invoke(HttpMethod httpMethod, HttpInvocation<T> httpInvocation) { populateCookiePolicy(httpMethod); populateRequestHeaders(httpMethod, httpInvocation); try { httpClient.executeMethod(httpMethod); processOnResponses(httpMethod, httpInvocation); } catch (Exception ex) { httpInvocation.onException(ex); } finally { httpMethod.releaseConnection(); } return httpInvocation.getReturnValue(); }