You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2012/07/03 12:19:47 UTC

svn commit: r1356661 - in /incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console: commons/HttpResourceStream.java pages/Configuration.java

Author: ilgrosso
Date: Tue Jul  3 10:19:46 2012
New Revision: 1356661

URL: http://svn.apache.org/viewvc?rev=1356661&view=rev
Log:
[SYNCOPE-103] Aligning with latest HttpClient updates (Auth cache)

Modified:
    incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/commons/HttpResourceStream.java
    incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Configuration.java

Modified: incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/commons/HttpResourceStream.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/commons/HttpResourceStream.java?rev=1356661&r1=1356660&r2=1356661&view=diff
==============================================================================
--- incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/commons/HttpResourceStream.java (original)
+++ incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/commons/HttpResourceStream.java Tue Jul  3 10:19:46 2012
@@ -25,11 +25,18 @@ import java.net.URI;
 import java.net.URISyntaxException;
 import org.apache.http.Header;
 import org.apache.http.HttpEntity;
+import org.apache.http.HttpHost;
 import org.apache.http.HttpResponse;
 import org.apache.http.ProtocolVersion;
+import org.apache.http.auth.AuthScope;
+import org.apache.http.client.AuthCache;
 import org.apache.http.client.methods.HttpGet;
+import org.apache.http.client.protocol.ClientContext;
 import org.apache.http.entity.BasicHttpEntity;
+import org.apache.http.impl.auth.BasicScheme;
+import org.apache.http.impl.client.BasicAuthCache;
 import org.apache.http.message.BasicHttpResponse;
+import org.apache.http.protocol.BasicHttpContext;
 import org.apache.syncope.client.http.PreemptiveAuthHttpRequestFactory;
 import org.apache.syncope.console.SyncopeSession;
 import org.apache.wicket.util.lang.Args;
@@ -80,18 +87,26 @@ public class HttpResourceStream extends 
             return;
         }
 
+        final AuthScope scope = ((PreemptiveAuthHttpRequestFactory) SyncopeSession.get().getRestTemplate().
+                getRequestFactory()).getAuthScope();
+        final HttpHost targetHost = new HttpHost(scope.getHost(), scope.getPort(), scope.getScheme());
+        BasicHttpContext localcontext = new BasicHttpContext();
+        // Generate BASIC scheme object and add it to the local auth cache
+        AuthCache authCache = new BasicAuthCache();
+        authCache.put(targetHost, new BasicScheme());
+        localcontext.setAttribute(ClientContext.AUTH_CACHE, authCache);
+
         HttpGet getMethod = new HttpGet(this.uri);
         HttpResponse response;
-
         try {
             response = ((PreemptiveAuthHttpRequestFactory) SyncopeSession.get().getRestTemplate().getRequestFactory()).
-                    getHttpClient().execute(getMethod);
+                    getHttpClient().execute(targetHost, getMethod, localcontext);
         } catch (Exception e) {
             LOG.error("Unexpected exception while executing HTTP method to {}", this.uri, e);
             response = buildFakeResponse(e.getMessage());
         }
         if (response.getStatusLine().getStatusCode() != 200) {
-            LOG.error("Unsuccessful HTTP method to {}", this.uri);
+            LOG.error("Unsuccessful HTTP method to {} {}", this.uri, response);
             response = buildFakeResponse("HTTP status " + response.getStatusLine().getStatusCode());
         }
 

Modified: incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Configuration.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Configuration.java?rev=1356661&r1=1356660&r2=1356661&view=diff
==============================================================================
--- incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Configuration.java (original)
+++ incubator/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Configuration.java Tue Jul  3 10:19:46 2012
@@ -26,6 +26,24 @@ import java.util.Arrays;
 import java.util.Collections;
 import java.util.Iterator;
 import java.util.List;
+import org.apache.syncope.client.to.ConfigurationTO;
+import org.apache.syncope.client.to.LoggerTO;
+import org.apache.syncope.client.to.NotificationTO;
+import org.apache.syncope.client.to.WorkflowDefinitionTO;
+import org.apache.syncope.client.validation.SyncopeClientCompositeErrorException;
+import org.apache.syncope.console.commons.Constants;
+import org.apache.syncope.console.commons.HttpResourceStream;
+import org.apache.syncope.console.commons.PreferenceManager;
+import org.apache.syncope.console.commons.SortableDataProviderComparator;
+import org.apache.syncope.console.pages.panels.PoliciesPanel;
+import org.apache.syncope.console.rest.ConfigurationRestClient;
+import org.apache.syncope.console.rest.LoggerRestClient;
+import org.apache.syncope.console.rest.NotificationRestClient;
+import org.apache.syncope.console.rest.WorkflowRestClient;
+import org.apache.syncope.console.wicket.markup.html.form.ActionLink;
+import org.apache.syncope.console.wicket.markup.html.form.ActionLinksPanel;
+import org.apache.syncope.types.PolicyType;
+import org.apache.syncope.types.SyncopeLoggerLevel;
 import org.apache.wicket.Page;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior;
@@ -60,24 +78,6 @@ import org.apache.wicket.request.mapper.
 import org.apache.wicket.request.resource.ContentDisposition;
 import org.apache.wicket.spring.injection.annot.SpringBean;
 import org.slf4j.LoggerFactory;
-import org.apache.syncope.client.to.ConfigurationTO;
-import org.apache.syncope.client.to.LoggerTO;
-import org.apache.syncope.client.to.NotificationTO;
-import org.apache.syncope.client.to.WorkflowDefinitionTO;
-import org.apache.syncope.client.validation.SyncopeClientCompositeErrorException;
-import org.apache.syncope.console.commons.Constants;
-import org.apache.syncope.console.commons.HttpResourceStream;
-import org.apache.syncope.console.commons.PreferenceManager;
-import org.apache.syncope.console.commons.SortableDataProviderComparator;
-import org.apache.syncope.console.pages.panels.PoliciesPanel;
-import org.apache.syncope.console.rest.ConfigurationRestClient;
-import org.apache.syncope.console.rest.LoggerRestClient;
-import org.apache.syncope.console.rest.NotificationRestClient;
-import org.apache.syncope.console.rest.WorkflowRestClient;
-import org.apache.syncope.console.wicket.markup.html.form.ActionLink;
-import org.apache.syncope.console.wicket.markup.html.form.ActionLinksPanel;
-import org.apache.syncope.types.PolicyType;
-import org.apache.syncope.types.SyncopeLoggerLevel;
 
 /**
  * Configurations WebPage.