[java-metadata-aggregator] 01/02: Adapt to upstream nullability contract change

Ian Young ian at iay.org.uk
Wed Mar 8 10:49:49 UTC 2023


This is an automated email from the git hooks/post-receive script.

iay pushed a commit to branch main
in repository java-metadata-aggregator.

View the commit online:
http://git.shibboleth.net/view/?p=java-metadata-aggregator.git;a=commit;h=5a91797a4e3dd0c63c2ff8183d71bb23622d1129

commit 5a91797a4e3dd0c63c2ff8183d71bb23622d1129
Author: Ian Young <ian at iay.org.uk>
AuthorDate: Wed Mar 8 10:48:51 2023 +0000

    Adapt to upstream nullability contract change
---
 .../metadata/dom/saml/ValidateValidUntilStage.java     | 18 +++++++++++++++---
 1 file changed, 15 insertions(+), 3 deletions(-)

diff --git a/mda-framework/src/main/java/net/shibboleth/metadata/dom/saml/ValidateValidUntilStage.java b/mda-framework/src/main/java/net/shibboleth/metadata/dom/saml/ValidateValidUntilStage.java
index 6723621..d287994 100644
--- a/mda-framework/src/main/java/net/shibboleth/metadata/dom/saml/ValidateValidUntilStage.java
+++ b/mda-framework/src/main/java/net/shibboleth/metadata/dom/saml/ValidateValidUntilStage.java
@@ -21,9 +21,11 @@ import java.time.Duration;
 import java.time.Instant;
 
 import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
 import javax.annotation.concurrent.GuardedBy;
 import javax.annotation.concurrent.ThreadSafe;
 
+import org.w3c.dom.Attr;
 import org.w3c.dom.Element;
 
 import net.shibboleth.metadata.ErrorStatus;
@@ -102,9 +104,19 @@ public class ValidateValidUntilStage extends AbstractIteratingStage<Element> {
             return;
         }
 
-        final Instant validUntil =
-                AttributeSupport.getDateTimeAttribute(AttributeSupport.getAttribute(element,
-                        SAMLMetadataSupport.VALID_UNTIL_ATTRIB_NAME));
+        /*
+         * Nothing to do if there is no validUntil attribute.
+         */
+        final @Nullable Attr attr = AttributeSupport.getAttribute(element,
+                SAMLMetadataSupport.VALID_UNTIL_ATTRIB_NAME);
+        if (attr == null) {
+            if (isRequireValidUntil()) {
+                item.getItemMetadata().put(new ErrorStatus(getId(), "Item does not include a validUntil attribute"));
+            }
+            return;
+        }
+
+        final Instant validUntil = AttributeSupport.getDateTimeAttribute(attr);
         if (validUntil == null) {
             if (isRequireValidUntil()) {
                 item.getItemMetadata().put(new ErrorStatus(getId(), "Item does not include a validUntil attribute"));

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list