[java-identity-provider] branch master updated: IDP-1286: Support expirationWarningThreshold in dynamic resolvers

Brent Putman putmanb at georgetown.edu
Mon Oct 1 19:51:50 EDT 2018


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

putmanb pushed a commit to branch master
in repository java-identity-provider.

View the commit online:
http://git.shibboleth.net/view/?p=java-identity-provider.git;a=commit;h=b87fceaad9285f063b7e77af147141026b06c8d9

The following commit(s) were added to refs/heads/master by this push:
       new  b87fcea   IDP-1286: Support expirationWarningThreshold in dynamic resolvers
b87fcea is described below

commit b87fceaad9285f063b7e77af147141026b06c8d9
Author: Brent Putman <putmanb at georgetown.edu>
AuthorDate: Mon Oct 1 19:43:52 2018 -0400

    IDP-1286: Support expirationWarningThreshold in dynamic resolvers
---
 .../metadata/impl/AbstractDynamicMetadataProviderParser.java       | 5 +++++
 .../metadata/DynamicHTTPMetadataProviderParserTest.java            | 2 ++
 .../metadata/LocalDynamicMetadataProviderParserTest.java           | 1 +
 .../profile/spring/relyingparty/metadata/dynamicBasicParams.xml    | 1 +
 idp-schema/src/main/resources/schema/shibboleth-metadata.xsd       | 7 +++++++
 5 files changed, 16 insertions(+)

diff --git a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicMetadataProviderParser.java b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicMetadataProviderParser.java
index ef79c87..d0cdcba 100644
--- a/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicMetadataProviderParser.java
+++ b/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/impl/AbstractDynamicMetadataProviderParser.java
@@ -91,6 +91,11 @@ public abstract class AbstractDynamicMetadataProviderParser extends AbstractMeta
                     StringSupport.trimOrNull(element.getAttributeNS(null, "cleanupTaskInterval")));
         }
         
+        if (element.hasAttributeNS(null, "expirationWarningThreshold")) {
+            builder.addPropertyValue("expirationWarningThreshold",
+                    StringSupport.trimOrNull(element.getAttributeNS(null, "expirationWarningThreshold")));
+        }
+        
         if (element.hasAttributeNS(null, "indexesRef")) {
             builder.addPropertyReference("indexes",
                     StringSupport.trimOrNull(element.getAttributeNS(null, "indexesRef")));
diff --git a/idp-profile-spring/src/test/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/DynamicHTTPMetadataProviderParserTest.java b/idp-profile-spring/src/test/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/DynamicHTTPMetadataProviderParserTest.java
index d9a9e3e..bc62562 100644
--- a/idp-profile-spring/src/test/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/DynamicHTTPMetadataProviderParserTest.java
+++ b/idp-profile-spring/src/test/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/DynamicHTTPMetadataProviderParserTest.java
@@ -74,6 +74,7 @@ public class DynamicHTTPMetadataProviderParserTest extends AbstractMetadataParse
         Assert.assertEquals(resolver.getMaxIdleEntityData(), Long.valueOf(8*60*60*1000L));
         Assert.assertTrue(resolver.isRemoveIdleEntityData());
         Assert.assertEquals(resolver.getCleanupTaskInterval(), Long.valueOf(30*60*1000L));
+        Assert.assertEquals(resolver.getExpirationWarningThreshold(), Long.valueOf(0l));
         
         Assert.assertEquals(resolver.getSupportedContentTypes(), 
                 Arrays.asList("application/samlmetadata+xml", "application/xml", "text/xml"));
@@ -212,6 +213,7 @@ public class DynamicHTTPMetadataProviderParserTest extends AbstractMetadataParse
         Assert.assertEquals(resolver.getMaxIdleEntityData(), Long.valueOf(2*60*60*1000L));
         Assert.assertFalse(resolver.isRemoveIdleEntityData());
         Assert.assertEquals(resolver.getCleanupTaskInterval(), Long.valueOf(20*60*1000L));
+        Assert.assertEquals(resolver.getExpirationWarningThreshold(), Long.valueOf(3*60*60*1000L));
         
         Assert.assertEquals(resolver.getSupportedContentTypes(), Collections.singletonList("text/xml"));
         
diff --git a/idp-profile-spring/src/test/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/LocalDynamicMetadataProviderParserTest.java b/idp-profile-spring/src/test/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/LocalDynamicMetadataProviderParserTest.java
index b45407d..d64bc51 100644
--- a/idp-profile-spring/src/test/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/LocalDynamicMetadataProviderParserTest.java
+++ b/idp-profile-spring/src/test/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/LocalDynamicMetadataProviderParserTest.java
@@ -82,6 +82,7 @@ public class LocalDynamicMetadataProviderParserTest extends AbstractMetadataPars
         Assert.assertEquals(resolver.getMaxIdleEntityData(), Long.valueOf(8*60*60*1000L));
         Assert.assertTrue(resolver.isRemoveIdleEntityData());
         Assert.assertEquals(resolver.getCleanupTaskInterval(), Long.valueOf(30*60*1000L));
+        Assert.assertEquals(resolver.getExpirationWarningThreshold(), Long.valueOf(0l));
         
         Assert.assertFalse(resolver.isPersistentCachingEnabled());
         
diff --git a/idp-profile-spring/src/test/resources/net/shibboleth/idp/profile/spring/relyingparty/metadata/dynamicBasicParams.xml b/idp-profile-spring/src/test/resources/net/shibboleth/idp/profile/spring/relyingparty/metadata/dynamicBasicParams.xml
index 448337b..c0ee5ad 100644
--- a/idp-profile-spring/src/test/resources/net/shibboleth/idp/profile/spring/relyingparty/metadata/dynamicBasicParams.xml
+++ b/idp-profile-spring/src/test/resources/net/shibboleth/idp/profile/spring/relyingparty/metadata/dynamicBasicParams.xml
@@ -14,6 +14,7 @@
     negativeLookupCacheDuration="PT5M"
     maxIdleEntityData="PT2H"
     removeIdleEntityData="false"
+    expirationWarningThreshold="PT3H"
     cleanupTaskInterval="PT20M"
     httpClientRef="apacheClient"
     supportedContentTypes="text/xml"
diff --git a/idp-schema/src/main/resources/schema/shibboleth-metadata.xsd b/idp-schema/src/main/resources/schema/shibboleth-metadata.xsd
index 998ab7e..0e90671 100644
--- a/idp-schema/src/main/resources/schema/shibboleth-metadata.xsd
+++ b/idp-schema/src/main/resources/schema/shibboleth-metadata.xsd
@@ -766,6 +766,13 @@
                         <documentation>A boolean flag indicating whether idle metadata should be removed.</documentation>
                     </annotation>
                 </attribute>
+                <attribute name="expirationWarningThreshold" type="string">
+                    <annotation>
+                        <documentation>
+                            Impending expiration warning threshold for metadata refresh.
+                        </documentation>
+                    </annotation>
+                </attribute>
                 <attribute name="cleanupTaskInterval" type="string">
                     <annotation>
                         <documentation>

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


More information about the commits mailing list