[utilities COMMIT] /java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/httpclient/HttpClientBuild...

noreply at shibboleth.net noreply at shibboleth.net
Fri Jan 16 13:00:52 EST 2015


Author: tzeller
Date: Fri Jan 16 13:00:52 2015
New Revision: 723

URL: http://svn.shibboleth.net/view/utilities?rev=723&view=rev
Log:
Add retry handler property.

Modified:
    java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/httpclient/HttpClientBuilder.java

Modified: java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/httpclient/HttpClientBuilder.java
URL: http://svn.shibboleth.net/view/utilities/java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/httpclient/HttpClientBuilder.java?rev=723&r1=722&r2=723&view=diff
==============================================================================
--- java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/httpclient/HttpClientBuilder.java (original)
+++ java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/httpclient/HttpClientBuilder.java Fri Jan 16 13:00:52 2015
@@ -31,6 +31,7 @@
 import org.apache.http.auth.UsernamePasswordCredentials;
 import org.apache.http.client.CredentialsProvider;
 import org.apache.http.client.HttpClient;
+import org.apache.http.client.HttpRequestRetryHandler;
 import org.apache.http.client.config.RequestConfig;
 import org.apache.http.config.ConnectionConfig;
 import org.apache.http.conn.socket.LayeredConnectionSocketFactory;
@@ -181,6 +182,9 @@
 
     /** Character set used for HTTP entity content. Default value: UTF-8 */
     @Nullable private String httpContentCharSet;
+    
+    /** Handler which determines if a request should be retried. */
+    @Nullable private HttpRequestRetryHandler retryHandler;
 
     /** The Apache HttpClientBuilder 4.3+ instance over which to layer this builder. */
     private org.apache.http.impl.client.HttpClientBuilder apacheBuilder;
@@ -518,6 +522,24 @@
     public void setUserAgent(@Nullable final String what) {
         userAgent = what;
     }
+    
+    /**
+     * Get the handler which determines if a request should be retried.
+     * 
+     * @return handler which determines if a request should be retried
+     */
+    @Nullable public HttpRequestRetryHandler getHttpRequestRetryHandler() {
+        return retryHandler;
+    }
+    
+    /**
+     * Set the handler which determines if a request should be retried.
+     * 
+     * @param handler handler which determines if a request should be retried
+     */
+    public void setHttpRequestRetryHandler(@Nullable final HttpRequestRetryHandler handler) {
+        retryHandler = handler;
+    }
 
     /**
      * Constructs an {@link HttpClient} using the settings of this builder.
@@ -552,6 +574,10 @@
         if (connectionCloseAfterResponse) {
             builder.addInterceptorLast(new RequestConnectionClose());
         }
+        
+        if (retryHandler != null) {
+            builder.setRetryHandler(retryHandler);
+        }
 
         // RequestConfig params
         RequestConfig.Builder requestConfigBuilder = RequestConfig.custom();



More information about the commits mailing list