You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@marmotta.apache.org by wi...@apache.org on 2014/10/31 11:16:48 UTC

[1/3] git commit: removed the usage of deprecated interfaces in httpclient

Repository: marmotta
Updated Branches:
  refs/heads/develop bf7ee37eb -> 27750cd74


removed the usage of deprecated interfaces in httpclient


Project: http://git-wip-us.apache.org/repos/asf/marmotta/repo
Commit: http://git-wip-us.apache.org/repos/asf/marmotta/commit/0ed4572b
Tree: http://git-wip-us.apache.org/repos/asf/marmotta/tree/0ed4572b
Diff: http://git-wip-us.apache.org/repos/asf/marmotta/diff/0ed4572b

Branch: refs/heads/develop
Commit: 0ed4572bc51e52669db33d9bd0976d98b5019cc8
Parents: bf7ee37
Author: Sergio Fernández <wi...@apache.org>
Authored: Fri Oct 31 10:54:39 2014 +0100
Committer: Sergio Fernández <wi...@apache.org>
Committed: Fri Oct 31 10:54:39 2014 +0100

----------------------------------------------------------------------
 .../marmotta/client/ClientConfiguration.java    |  8 +--
 .../apache/marmotta/client/util/HTTPUtil.java   | 51 +++++++++++---------
 2 files changed, 32 insertions(+), 27 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/marmotta/blob/0ed4572b/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/ClientConfiguration.java
----------------------------------------------------------------------
diff --git a/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/ClientConfiguration.java b/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/ClientConfiguration.java
index 57ea4c3..41f9a5a 100644
--- a/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/ClientConfiguration.java
+++ b/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/ClientConfiguration.java
@@ -17,7 +17,7 @@
  */
 package org.apache.marmotta.client;
 
-import org.apache.http.conn.ClientConnectionManager;
+import org.apache.http.conn.HttpClientConnectionManager;
 
 /**
  * Add file description here!
@@ -58,7 +58,7 @@ public class ClientConfiguration {
 	 */
 	private int connectionTimeout = 10000;
 	
-	private ClientConnectionManager conectionManager;
+	private HttpClientConnectionManager conectionManager;
 
 	public ClientConfiguration(String marmottaUri) {
         if (marmottaUri.endsWith("/")) {
@@ -122,11 +122,11 @@ public class ClientConfiguration {
 		this.connectionTimeout = connectionTimeout;
 	}
 
-    public ClientConnectionManager getConectionManager() {
+    public HttpClientConnectionManager getConectionManager() {
         return conectionManager;
     }
 
-    public void setConectionManager(ClientConnectionManager conectionManager) {
+    public void setConectionManager(HttpClientConnectionManager conectionManager) {
         this.conectionManager = conectionManager;
     }
 }

http://git-wip-us.apache.org/repos/asf/marmotta/blob/0ed4572b/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/util/HTTPUtil.java
----------------------------------------------------------------------
diff --git a/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/util/HTTPUtil.java b/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/util/HTTPUtil.java
index 5f97947..ba8232f 100644
--- a/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/util/HTTPUtil.java
+++ b/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/util/HTTPUtil.java
@@ -21,16 +21,16 @@ import org.apache.commons.lang3.StringUtils;
 import org.apache.http.*;
 import org.apache.http.client.HttpClient;
 import org.apache.http.client.HttpRequestRetryHandler;
+import org.apache.http.client.config.RequestConfig;
 import org.apache.http.client.methods.HttpGet;
 import org.apache.http.client.methods.HttpHead;
 import org.apache.http.client.methods.HttpPost;
-import org.apache.http.client.params.ClientPNames;
-import org.apache.http.impl.client.DefaultHttpClient;
-import org.apache.http.impl.client.DefaultRedirectStrategy;
-import org.apache.http.params.BasicHttpParams;
-import org.apache.http.params.CoreConnectionPNames;
-import org.apache.http.params.CoreProtocolPNames;
-import org.apache.http.params.HttpParams;
+import org.apache.http.config.Registry;
+import org.apache.http.config.RegistryBuilder;
+import org.apache.http.conn.socket.ConnectionSocketFactory;
+import org.apache.http.conn.socket.PlainConnectionSocketFactory;
+import org.apache.http.impl.client.*;
+import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
 import org.apache.http.protocol.HttpContext;
 import org.apache.marmotta.client.ClientConfiguration;
 
@@ -52,28 +52,33 @@ public class HTTPUtil {
 
     public static HttpClient createClient(ClientConfiguration config, String context) {
 
-        HttpParams httpParams = new BasicHttpParams();
-        httpParams.setParameter(CoreProtocolPNames.USER_AGENT, "Marmotta Client Library/" + MetaUtil.getVersion());
+        final HttpClientBuilder httpClientBuilder = HttpClients.custom();
 
-        httpParams.setIntParameter(CoreConnectionPNames.SO_TIMEOUT, config.getSoTimeout());
-        httpParams.setIntParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, config.getConnectionTimeout());
+        httpClientBuilder.setUserAgent("Marmotta Client Library/" + MetaUtil.getVersion());
+        httpClientBuilder.setRedirectStrategy(new MarmottaRedirectStrategy());
+        httpClientBuilder.setRetryHandler(new MarmottaHttpRequestRetryHandler());
 
-        httpParams.setBooleanParameter(ClientPNames.HANDLE_REDIRECTS, true);
-        httpParams.setIntParameter(ClientPNames.MAX_REDIRECTS, 3);
+        final RequestConfig.Builder requestConfigBuilder = RequestConfig.custom();
+        requestConfigBuilder.setSocketTimeout(config.getSoTimeout());
+        requestConfigBuilder.setConnectTimeout(config.getConnectionTimeout());
+        requestConfigBuilder.setRedirectsEnabled(true);
+        requestConfigBuilder.setMaxRedirects(3);
+        httpClientBuilder.setDefaultRequestConfig(requestConfigBuilder.build());
 
-        if (StringUtils.isNotBlank(context)) {
-            httpParams.setParameter(CONTEXT, context);
-        }
-
-        DefaultHttpClient client;
         if (config.getConectionManager() != null) {
-            client = new DefaultHttpClient(config.getConectionManager(), httpParams);
+            httpClientBuilder.setConnectionManager(config.getConectionManager());
         } else {
-            client = new DefaultHttpClient(httpParams);
+            final Registry<ConnectionSocketFactory> registry = RegistryBuilder.<ConnectionSocketFactory>create()
+                    .register("http", PlainConnectionSocketFactory.getSocketFactory())
+                    //.register("https", )
+                    .build();
+
+            final PoolingHttpClientConnectionManager cm = new PoolingHttpClientConnectionManager(registry);
+            cm.setMaxTotal(100);
+            httpClientBuilder.setConnectionManager(cm);
         }
-        client.setRedirectStrategy(new MarmottaRedirectStrategy());
-        client.setHttpRequestRetryHandler(new MarmottaHttpRequestRetryHandler());
-        return client;
+
+        return httpClientBuilder.build();
     }
 
     public static HttpPost createPost(String path, ClientConfiguration config) {


[2/3] git commit: swtiched to URIBuilder to build POST requests

Posted by wi...@apache.org.
swtiched to URIBuilder to build POST requests


Project: http://git-wip-us.apache.org/repos/asf/marmotta/repo
Commit: http://git-wip-us.apache.org/repos/asf/marmotta/commit/50955473
Tree: http://git-wip-us.apache.org/repos/asf/marmotta/tree/50955473
Diff: http://git-wip-us.apache.org/repos/asf/marmotta/diff/50955473

Branch: refs/heads/develop
Commit: 509554733eb23e0c32b1d0d1f59c429dd4b31266
Parents: 0ed4572
Author: Sergio Fernández <wi...@apache.org>
Authored: Fri Oct 31 10:59:04 2014 +0100
Committer: Sergio Fernández <wi...@apache.org>
Committed: Fri Oct 31 10:59:11 2014 +0100

----------------------------------------------------------------------
 .../java/org/apache/marmotta/client/util/HTTPUtil.java   | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/marmotta/blob/50955473/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/util/HTTPUtil.java
----------------------------------------------------------------------
diff --git a/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/util/HTTPUtil.java b/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/util/HTTPUtil.java
index ba8232f..3382657 100644
--- a/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/util/HTTPUtil.java
+++ b/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/util/HTTPUtil.java
@@ -25,6 +25,7 @@ import org.apache.http.client.config.RequestConfig;
 import org.apache.http.client.methods.HttpGet;
 import org.apache.http.client.methods.HttpHead;
 import org.apache.http.client.methods.HttpPost;
+import org.apache.http.client.utils.URIBuilder;
 import org.apache.http.config.Registry;
 import org.apache.http.config.RegistryBuilder;
 import org.apache.http.conn.socket.ConnectionSocketFactory;
@@ -35,6 +36,7 @@ import org.apache.http.protocol.HttpContext;
 import org.apache.marmotta.client.ClientConfiguration;
 
 import java.io.IOException;
+import java.net.URISyntaxException;
 
 /**
  * HTTP Utilities
@@ -81,15 +83,14 @@ public class HTTPUtil {
         return httpClientBuilder.build();
     }
 
-    public static HttpPost createPost(String path, ClientConfiguration config) {
-        String serviceUrl = config.getMarmottaUri() + path;
+    public static HttpPost createPost(String path, ClientConfiguration config) throws URISyntaxException {
+        final URIBuilder uriBuilder = new URIBuilder(config.getMarmottaUri()).setPath(path);
 
-        //FIXME: switch to a more elegant way, such as Jersey's UriBuilder
         if (StringUtils.isNotBlank(config.getMarmottaContext())) {
-            serviceUrl += "?" + CONTEXT + "=" + config.getMarmottaContext();
+            uriBuilder.addParameter(CONTEXT, config.getMarmottaContext());
         }
 
-        return new HttpPost(serviceUrl);
+        return new HttpPost(uriBuilder.build());
     }
 
 


[3/3] git commit: added authorization on post requests when credentials are set (patch by Fabian Cretton)

Posted by wi...@apache.org.
added authorization on post requests when credentials are set (patch by Fabian Cretton)


Project: http://git-wip-us.apache.org/repos/asf/marmotta/repo
Commit: http://git-wip-us.apache.org/repos/asf/marmotta/commit/27750cd7
Tree: http://git-wip-us.apache.org/repos/asf/marmotta/tree/27750cd7
Diff: http://git-wip-us.apache.org/repos/asf/marmotta/diff/27750cd7

Branch: refs/heads/develop
Commit: 27750cd74095bf7b9dffe406713778984499e275
Parents: 5095547
Author: Sergio Fernández <wi...@apache.org>
Authored: Fri Oct 31 11:16:21 2014 +0100
Committer: Sergio Fernández <wi...@apache.org>
Committed: Fri Oct 31 11:16:21 2014 +0100

----------------------------------------------------------------------
 .../org/apache/marmotta/client/util/HTTPUtil.java   | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/marmotta/blob/27750cd7/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/util/HTTPUtil.java
----------------------------------------------------------------------
diff --git a/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/util/HTTPUtil.java b/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/util/HTTPUtil.java
index 3382657..c2cbd4d 100644
--- a/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/util/HTTPUtil.java
+++ b/client/marmotta-client-java/src/main/java/org/apache/marmotta/client/util/HTTPUtil.java
@@ -35,7 +35,9 @@ import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
 import org.apache.http.protocol.HttpContext;
 import org.apache.marmotta.client.ClientConfiguration;
 
+import javax.xml.bind.DatatypeConverter;
 import java.io.IOException;
+import java.io.UnsupportedEncodingException;
 import java.net.URISyntaxException;
 
 /**
@@ -90,7 +92,19 @@ public class HTTPUtil {
             uriBuilder.addParameter(CONTEXT, config.getMarmottaContext());
         }
 
-        return new HttpPost(uriBuilder.build());
+        final HttpPost post = new HttpPost(uriBuilder.build());
+
+        if (StringUtils.isNotBlank(config.getMarmottaUser()) && StringUtils.isNotBlank(config.getMarmottaUser())) {
+            final String credentials = String.format("%s;%s", config.getMarmottaUser(), config.getMarmottaPassword());
+            try {
+                final String encoded = DatatypeConverter.printBase64Binary(credentials.getBytes("UTF-8"));
+                post.setHeader("Authorization", String.format("Basic %s", encoded));
+            } catch (UnsupportedEncodingException e) {
+                System.err.println("Error encoding credentials: " + e.getMessage());
+            }
+        }
+
+        return post;
     }