[java-identity-provider COMMIT] /trunk/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingpart...

noreply at shibboleth.net noreply at shibboleth.net
Tue Nov 8 18:44:51 EST 2016


Author: putmanb
Date: Tue Nov  8 18:44:51 2016
New Revision: 8561

URL: http://svn.shibboleth.net/view/java-identity-provider?rev=8561&view=rev
Log:
OSJ-186: Suggestions for metadata resolver improvements

In dynamic metadata resolver parser, change internally-constructed HttpClient timeouts to 5s.

Modified:
    trunk/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicHTTPMetadataProviderParser.java

Modified: trunk/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicHTTPMetadataProviderParser.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicHTTPMetadataProviderParser.java?rev=8561&r1=8560&r2=8561&view=diff
==============================================================================
--- trunk/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicHTTPMetadataProviderParser.java	(original)
+++ trunk/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicHTTPMetadataProviderParser.java	Tue Nov  8 18:44:51 2016
@@ -65,6 +65,15 @@
     
     /** Default max connections per route. */
     private static final Integer DEFAULT_MAX_CONNECTIONS_PER_ROUTE = 100;
+        
+    /** Default request connection timeout. */
+    private static final String DEFAULT_CONNECTION_REQUEST_TIMEOUT = "PT5S";
+    
+    /** Default connection timeout. */
+    private static final String DEFAULT_CONNECTION_TIMEOUT = "PT5S";
+    
+    /** Default socket timeout. */
+    private static final String DEFAULT_SOCKET_TIMEOUT = "PT5S";
 
     /** Logger. */
     private final Logger log = LoggerFactory.getLogger(AbstractDynamicHTTPMetadataProviderParser.class);
@@ -196,21 +205,30 @@
         clientBuilder.setLazyInit(true);
 
         //Note: 'requestTimeout' is deprecated in favor of 'connectionTimeout'.
-        if (element.hasAttributeNS(null, "requestTimeout")) {
-            clientBuilder.addPropertyValue("connectionTimeout",
-                    StringSupport.trimOrNull(element.getAttributeNS(null, "requestTimeout")));
-        }
-        if (element.hasAttributeNS(null, "connectionTimeout")) {
-            clientBuilder.addPropertyValue("connectionTimeout",
-                    StringSupport.trimOrNull(element.getAttributeNS(null, "connectionTimeout")));
-        }
+        if (element.hasAttributeNS(null, "requestTimeout") || element.hasAttributeNS(null, "connectionTimeout")) {
+            if (element.hasAttributeNS(null, "requestTimeout")) {
+                clientBuilder.addPropertyValue("connectionTimeout",
+                        StringSupport.trimOrNull(element.getAttributeNS(null, "requestTimeout")));
+            }
+            if (element.hasAttributeNS(null, "connectionTimeout")) {
+                clientBuilder.addPropertyValue("connectionTimeout",
+                        StringSupport.trimOrNull(element.getAttributeNS(null, "connectionTimeout")));
+            }
+        } else {
+            clientBuilder.addPropertyValue("connectionTimeout", DEFAULT_CONNECTION_TIMEOUT);
+        }
+        
         if (element.hasAttributeNS(null, "connectionRequestTimeout")) {
             clientBuilder.addPropertyValue("connectionRequestTimeout",
                     StringSupport.trimOrNull(element.getAttributeNS(null, "connectionRequestTimeout")));
+        } else {
+            clientBuilder.addPropertyValue("connectionRequestTimeout", DEFAULT_CONNECTION_REQUEST_TIMEOUT);
         }
         if (element.hasAttributeNS(null, "socketTimeout")) {
             clientBuilder.addPropertyValue("socketTimeout",
                     StringSupport.trimOrNull(element.getAttributeNS(null, "socketTimeout")));
+        } else {
+            clientBuilder.addPropertyValue("socketTimeout", DEFAULT_SOCKET_TIMEOUT);
         }
         
         if (element.hasAttributeNS(null, "maxConnectionsTotal")) {



More information about the commits mailing list