[java-identity-provider COMMIT] in /trunk/idp-attribute-resolver-spring/src: main/java/net/shibboleth/idp/attribute/r...
noreply at shibboleth.net
noreply at shibboleth.net
Fri Jul 1 14:01:08 EDT 2016
Author: scantor
Date: Fri Jul 1 14:01:08 2016
New Revision: 8277
URL: http://svn.shibboleth.net/view/java-identity-provider?rev=8277&view=rev
Log:
IDP-1004 - StoredId data connector queryTimeout attribute doesn't support XML Duration
https://issues.shibboleth.net/jira/browse/IDP-1004
Modified:
trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/impl/StoredIDDataConnectorParser.java
trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/StoredIDDataConnectorParserTest.java
trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/stored.xml
Modified: trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/impl/StoredIDDataConnectorParser.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/impl/StoredIDDataConnectorParser.java?rev=8277&r1=8276&r2=8277&view=diff
==============================================================================
--- trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/impl/StoredIDDataConnectorParser.java (original)
+++ trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/impl/StoredIDDataConnectorParser.java Fri Jul 1 14:01:08 2016
@@ -25,6 +25,7 @@
import net.shibboleth.ext.spring.context.FilesystemGenericApplicationContext;
import net.shibboleth.ext.spring.util.SpringSupport;
import net.shibboleth.idp.saml.attribute.resolver.impl.StoredIDDataConnector;
+import net.shibboleth.utilities.java.support.annotation.Duration;
import net.shibboleth.utilities.java.support.primitive.StringSupport;
import net.shibboleth.utilities.java.support.xml.AttributeSupport;
import net.shibboleth.utilities.java.support.xml.ElementSupport;
@@ -74,8 +75,11 @@
}
if (config.hasAttributeNS(null, "queryTimeout")) {
- builder.addPropertyValue("queryTimeout",
- StringSupport.trimOrNull(config.getAttributeNS(null, "queryTimeout")));
+ final BeanDefinitionBuilder timeout =
+ BeanDefinitionBuilder.rootBeanDefinition(StoredIDDataConnectorParser.class, "buildDuration");
+ timeout.addConstructorArgValue(StringSupport.trimOrNull(config.getAttributeNS(null, "queryTimeout")));
+ timeout.addConstructorArgValue(1);
+ builder.addPropertyValue("queryTimeout", timeout.getBeanDefinition());
}
if (config.hasAttributeNS(null, "transactionRetries")) {
@@ -150,4 +154,17 @@
return parser.createDataSource();
}
+ /**
+ * Converts the supplied duration to milliseconds and divides it by the divisor. Useful for modifying durations
+ * while resolving property replacement.
+ *
+ * @param duration the duration (which may have gone through spring translation from iso to long)
+ * @param divisor to modify the duration with
+ *
+ * @return result of the division
+ */
+ public static long buildDuration(@Duration final long duration, final long divisor) {
+ return duration / divisor;
+ }
+
}
Modified: trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/StoredIDDataConnectorParserTest.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/StoredIDDataConnectorParserTest.java?rev=8277&r1=8276&r2=8277&view=diff
==============================================================================
--- trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/StoredIDDataConnectorParserTest.java (original)
+++ trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/StoredIDDataConnectorParserTest.java Fri Jul 1 14:01:08 2016
@@ -39,6 +39,7 @@
Assert.assertEquals(connector.getGeneratedAttributeId(), "jenny");
Assert.assertEquals(connector.getSalt(), "abcdefghijklmnopqrst".getBytes());
Assert.assertEquals(connector.getTransactionRetries(), 5);
+ Assert.assertEquals(connector.getQueryTimeout(), 5000);
Assert.assertEquals(connector.getFailFast(), false);
Assert.assertTrue(Arrays.areEqual(connector.getRetryableErrors().toArray(), new String[]{"25000", "25001"}));
Modified: trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/stored.xml
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/stored.xml?rev=8277&r1=8276&r2=8277&view=diff
==============================================================================
--- trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/stored.xml (original)
[... 10 lines stripped ...]
More information about the commits
mailing list