private void get(final HttpResponseHandler responseHandler, final String... paths) throws IOException, HttpException { ConnectionReuseStrategy connStrategy = new DefaultConnectionReuseStrategy(); try (DefaultBHttpClientConnection conn = new DefaultBHttpClientConnection(8 * 1024)) { for (String path : paths) { if (!conn.isOpen()) { Socket socket = new Socket(httpHost.getHostName(), httpHost.getPort()); conn.bind(socket); } BasicHttpRequest request = new BasicHttpRequest("GET", path); System.out.println(">> Request IRI: " + request.getRequestLine().getUri()); httpExecutor.preProcess(request, httpProcessor, httpContext); HttpResponse response = httpExecutor.execute(request, conn, httpContext); httpExecutor.postProcess(response, httpProcessor, httpContext); responseHandler.handle(response); if (!connStrategy.keepAlive(response, httpContext)) { conn.close(); } else { System.out.println("Connection kept alive..."); } } } }
private void post(final String path, final HttpResponseHandler responseHandler, final HttpEntity... requests) throws IOException, HttpException { ConnectionReuseStrategy connStrategy = new DefaultConnectionReuseStrategy(); try (DefaultBHttpClientConnection conn = new DefaultBHttpClientConnection(8 * 1024)) { for (HttpEntity requestBody : requests) { if (!conn.isOpen()) { Socket socket = new Socket(httpHost.getHostName(), httpHost.getPort()); conn.bind(socket); } BasicHttpEntityEnclosingRequest request = new BasicHttpEntityEnclosingRequest("POST", path); request.setEntity(requestBody); System.out.println(">> Request IRI: " + request.getRequestLine().getUri()); httpExecutor.preProcess(request, httpProcessor, httpContext); HttpResponse response = httpExecutor.execute(request, conn, httpContext); httpExecutor.postProcess(response, httpProcessor, httpContext); responseHandler.handle(response); if (!connStrategy.keepAlive(response, httpContext)) { conn.close(); } else { System.out.println("Connection kept alive..."); } } } }
if (!conn.isOpen() || conn.isStale()) { int port = target.getPort() >= 0 ? target.getPort() : 80; outsocket = new Socket(target.getHostName(), port);