[java-opensaml COMMIT] /trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractReloa...

noreply at shibboleth.net noreply at shibboleth.net
Wed Nov 20 22:04:34 EST 2013


Author: putmanb
Date: Wed Nov 20 22:04:34 2013
New Revision: 3503

URL: http://svn.shibboleth.net/view/java-opensaml?rev=3503&view=rev
Log:
JOST-220: IdP stopping metadata retrieval.
Presumptive fix b/c still haven't confirmed exact behavior users are seeing but this fixes the bug that is the working assumption.

Modified:
    trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractReloadingMetadataResolver.java

Modified: trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractReloadingMetadataResolver.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractReloadingMetadataResolver.java?rev=3503&r1=3502&r2=3503&view=diff
==============================================================================
--- trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractReloadingMetadataResolver.java (original)
+++ trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractReloadingMetadataResolver.java Wed Nov 20 22:04:34 2013
@@ -36,6 +36,7 @@
 import org.opensaml.saml.metadata.resolver.RefreshableMetadataResolver;
 import org.opensaml.saml.metadata.resolver.filter.FilterException;
 import org.opensaml.saml.saml2.common.SAML2Support;
+import org.opensaml.saml2.metadata.provider.MetadataProviderException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.w3c.dom.Document;
@@ -288,10 +289,15 @@
                 log.debug("Processing new metadata from '{}'", mdId);
                 processNewMetadata(mdId, now, mdBytes);
             }
-        } catch (Exception e) {
-            log.debug("Error occurred while attempting to refresh metadata from '" + mdId + "'", e);
+        } catch (Throwable t) {
+            log.debug("Error occurred while attempting to refresh metadata from '" + mdId + "'", t);
             nextRefresh = new DateTime(ISOChronology.getInstanceUTC()).plus(minRefreshDelay);
-            throw new ResolverException(e);
+            if (t instanceof Exception) {
+                throw new ResolverException((Exception) t);
+            } else {
+                throw new ResolverException(String.format("Saw an error of type '%s' with message '%s'", 
+                        t.getClass().getName(), t.getMessage()));
+            }
         } finally {
             refresMetadataTask = new RefreshMetadataTask();
             long nextRefreshDelay = nextRefresh.getMillis() - System.currentTimeMillis();



More information about the commits mailing list