code: public Response makeRequest(Request request) throws InvalidRequestException {
  
  		logger.debug("Enter HttpRequestClient::makeRequest");
  
  		//prepare request
  		RequestBuilder builder = RequestBuilder.create(request.getMethod().value()).setUri(request.constructURL().toString()).setVersion(HttpVersion.HTTP_1_1).setCharset(StandardCharsets.UTF_8);
  
  		//add auth header
  		if (request.isRequiresAuthentication()) {
  			builder.addHeader(HttpHeaders.AUTHORIZATION, request.getAuthString());
  		}
  
  		MethodType method = request.getMethod();
  		if (method == MethodType.POST) {
  			//add post header
  			builder.addHeader("Content-Type", "application/x-www-form-urlencoded;charset=UTF-8");
  
  			//add post params
  			for (NameValuePair nvp : request.getPostParams()) {
  				builder.addParameter(nvp);
  			}
  		}
  
  		logger.debug("Request URI : " + builder.getUri());
  		logger.debug("Http Method : " + builder.getMethod());
  
  		try {
  			//make the call
  			HttpResponse response = client.execute(builder.build());
  			//prepare response
  			return new Response(response.getEntity() == null ? null : response.getEntity().getContent(), response.getStatusLine().getStatusCode());
  		} catch (IOException e) {
  			logger.error("Exception while making httpRequest", e);
  			throw new InvalidRequestException(e.getMessage());
  		}
  
  	}
docs: Method to make the HTTP request call using the request attributes supplied
  
  @param request
  @return
  @throws InvalidRequestException