[java-opensaml COMMIT] /trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/keyinfo/NamedKeyInfoGeneratorMana...
noreply at shibboleth.net
noreply at shibboleth.net
Fri Mar 14 19:33:23 EDT 2014
Author: putmanb
Date: Fri Mar 14 19:33:23 2014
New Revision: 3701
URL: http://svn.shibboleth.net/view/java-opensaml?rev=3701&view=rev
Log:
Adjust slightly KeyInfo manger lookup to conform with semantics of boolean flag.
Modified:
trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/keyinfo/NamedKeyInfoGeneratorManager.java
Modified: trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/keyinfo/NamedKeyInfoGeneratorManager.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/keyinfo/NamedKeyInfoGeneratorManager.java?rev=3701&r1=3700&r2=3701&view=diff
==============================================================================
--- trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/keyinfo/NamedKeyInfoGeneratorManager.java (original)
+++ trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/keyinfo/NamedKeyInfoGeneratorManager.java Fri Mar 14 19:33:23 2014
@@ -27,12 +27,17 @@
import net.shibboleth.utilities.java.support.collection.LazyMap;
import org.opensaml.security.credential.Credential;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
/**
* A manager for named sets of {@link KeyInfoGeneratorFactory} instances. Each name key serves as an index to an
* instance of {@link KeyInfoGeneratorManager}.
*/
public class NamedKeyInfoGeneratorManager {
+
+ /** Logger. */
+ private final Logger log = LoggerFactory.getLogger(NamedKeyInfoGeneratorManager.class);
/** The set of named factory managers. */
private final Map<String, KeyInfoGeneratorManager> managers;
@@ -159,12 +164,17 @@
@Nonnull final Credential credential) {
KeyInfoGeneratorManager manager = managers.get(name);
if (manager == null) {
- throw new IllegalArgumentException("Manager with name '" + name + "' does not exist");
+ if (useDefaultManager) {
+ log.debug("Manger with name '{}' was not registered, using default manager", name);
+ manager = defaultManager;
+ } else {
+ throw new IllegalArgumentException("Manager with name '" + name + "' does not exist");
+ }
}
KeyInfoGeneratorFactory factory = manager.getFactory(credential);
if (factory == null) {
- if (useDefaultManager) {
+ if (useDefaultManager && manager != defaultManager) {
factory = defaultManager.getFactory(credential);
}
}
More information about the commits
mailing list