[java-opensaml] 04/04: OSJ-200: Improve logging around expired metadata refresh attempts
Brent Putman
putmanb at georgetown.edu
Wed May 10 19:39:48 EDT 2017
This is an automated email from the git hooks/post-receive script.
putmanb pushed a commit to branch master
in repository java-opensaml.
View the commit online:
http://git.shibboleth.net/view/?p=java-opensaml.git;a=commit;h=2ac128c3775f0c7dc6d4eaa9bac87849586a5051
commit 2ac128c3775f0c7dc6d4eaa9bac87849586a5051
Author: Brent Putman <putmanb at georgetown.edu>
AuthorDate: Wed May 10 19:29:45 2017 -0400
OSJ-200: Improve logging around expired metadata refresh attempts
Add to AbstractBatchMetadataResolver new methods getRootValidUntil()
and isRootValid().
---
.../metadata/resolver/BatchMetadataResolver.java | 2 ++
.../impl/AbstractBatchMetadataResolver.java | 30 ++++++++++++++++++++++
2 files changed, 32 insertions(+)
diff --git a/opensaml-saml-api/src/main/java/org/opensaml/saml/metadata/resolver/BatchMetadataResolver.java b/opensaml-saml-api/src/main/java/org/opensaml/saml/metadata/resolver/BatchMetadataResolver.java
index c8a647f..23e1235 100644
--- a/opensaml-saml-api/src/main/java/org/opensaml/saml/metadata/resolver/BatchMetadataResolver.java
+++ b/opensaml-saml-api/src/main/java/org/opensaml/saml/metadata/resolver/BatchMetadataResolver.java
@@ -25,4 +25,6 @@ package org.opensaml.saml.metadata.resolver;
*/
public interface BatchMetadataResolver extends MetadataResolver {
+ //TODO For 4.0: promote getRootValidUntil() and isRootValid() from AbstractBatchMetadataResolver
+
}
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractBatchMetadataResolver.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractBatchMetadataResolver.java
index 7967bf7..3211a6c 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractBatchMetadataResolver.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractBatchMetadataResolver.java
@@ -33,6 +33,7 @@ import net.shibboleth.utilities.java.support.component.ComponentSupport;
import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
import net.shibboleth.utilities.java.support.resolver.ResolverException;
+import org.joda.time.DateTime;
import org.opensaml.core.criterion.EntityIdCriterion;
import org.opensaml.core.xml.XMLObject;
import org.opensaml.saml.metadata.IterableMetadataSource;
@@ -40,6 +41,7 @@ import org.opensaml.saml.metadata.resolver.BatchMetadataResolver;
import org.opensaml.saml.metadata.resolver.filter.FilterException;
import org.opensaml.saml.metadata.resolver.index.MetadataIndex;
import org.opensaml.saml.metadata.resolver.index.impl.MetadataIndexManager;
+import org.opensaml.saml.saml2.common.TimeBoundSAMLObject;
import org.opensaml.saml.saml2.metadata.EntitiesDescriptor;
import org.opensaml.saml.saml2.metadata.EntityDescriptor;
import org.slf4j.Logger;
@@ -151,6 +153,34 @@ public abstract class AbstractBatchMetadataResolver extends AbstractMetadataReso
resolveViaPredicatesOnly = flag;
}
+ /**
+ * Get the validUntil of of the metadata batch root element, if present.
+ *
+ * @return the validUntil date/time of the root element, or null if not available
+ */
+ @Nullable public DateTime getRootValidUntil() {
+ XMLObject cached = getBackingStore().getCachedOriginalMetadata();
+ if (cached != null && cached instanceof TimeBoundSAMLObject) {
+ return ((TimeBoundSAMLObject)cached).getValidUntil();
+ } else {
+ return null;
+ }
+ }
+
+ /**
+ * Get the validity state of the metadata batch root element, as determined by {@link #isValid(XMLObject)}.
+ *
+ * @return true if root element is valid, false if not valid, null if indeterminate
+ */
+ @Nullable public Boolean isRootValid() {
+ XMLObject cached = getBackingStore().getCachedOriginalMetadata();
+ if (cached == null) {
+ return null;
+ } else {
+ return isValid(cached);
+ }
+ }
+
/** {@inheritDoc} */
@Override @Nonnull public Iterable<EntityDescriptor> resolve(final CriteriaSet criteria) throws ResolverException {
ComponentSupport.ifNotInitializedThrowUninitializedComponentException(this);
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list