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 <[email protected]>
Authored: Fri Oct 31 11:16:21 2014 +0100
Committer: Sergio Fernández <[email protected]>
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;
     }
 
 

Reply via email to