[java-opensaml COMMIT] in /trunk/opensaml-saml-impl/src: main/java/org/opensaml/saml/metadata/resolver/impl/ChainingM...
noreply at shibboleth.net
noreply at shibboleth.net
Fri Aug 23 23:17:50 EDT 2013
Author: putmanb
Date: Fri Aug 23 23:17:50 2013
New Revision: 3432
URL: http://svn.shibboleth.net/view/java-opensaml?rev=3432&view=rev
Log:
In metadata credential resolver, implement credential caching using XMLObject object metadata.
Modified:
trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/ChainingMetadataResolver.java
trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/security/MetadataCredentialResolver.java
trunk/opensaml-saml-impl/src/test/java/org/opensaml/saml/security/MetadataCredentialResolverTest.java
Modified: trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/ChainingMetadataResolver.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/ChainingMetadataResolver.java?rev=3432&r1=3431&r2=3432&view=diff
==============================================================================
--- trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/ChainingMetadataResolver.java (original)
+++ trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/ChainingMetadataResolver.java Fri Aug 23 23:17:50 2013
@@ -28,8 +28,8 @@
import javax.annotation.Nonnull;
import javax.xml.namespace.QName;
-import net.shibboleth.utilities.java.support.collection.ClassToInstanceMultiMap;
import net.shibboleth.utilities.java.support.collection.LazySet;
+import net.shibboleth.utilities.java.support.collection.LockableClassToInstanceMultiMap;
import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
import net.shibboleth.utilities.java.support.resolver.ResolverException;
@@ -526,7 +526,7 @@
}
/** {@inheritDoc} */
- @Nonnull public ClassToInstanceMultiMap<Object> getObjectMetadata() {
+ @Nonnull public LockableClassToInstanceMultiMap<Object> getObjectMetadata() {
// TODO Auto-generated method stub
return null;
}
Modified: trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/security/MetadataCredentialResolver.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/security/MetadataCredentialResolver.java?rev=3432&r1=3431&r2=3432&view=diff
==============================================================================
--- trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/security/MetadataCredentialResolver.java (original)
+++ trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/security/MetadataCredentialResolver.java Fri Aug 23 23:17:50 2013
@@ -21,15 +21,16 @@
import java.util.Collection;
import java.util.HashSet;
import java.util.List;
+import java.util.concurrent.locks.ReadWriteLock;
import javax.annotation.Nonnull;
import javax.xml.namespace.QName;
+import net.shibboleth.utilities.java.support.collection.LockableClassToInstanceMultiMap;
import net.shibboleth.utilities.java.support.logic.Constraint;
import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
import net.shibboleth.utilities.java.support.resolver.ResolverException;
-import org.opensaml.core.xml.XMLObject;
import org.opensaml.saml.criterion.EntityIdCriterion;
import org.opensaml.saml.criterion.EntityRoleCriterion;
import org.opensaml.saml.criterion.ProtocolCriterion;
@@ -162,13 +163,13 @@
throw new IllegalArgumentException("Entity criteria must be supplied");
}
if (mdCriteria == null) {
- throw new IllegalArgumentException("SAML entityDescriptorResolver criteria must be supplied");
+ throw new IllegalArgumentException("SAML entity metadata criteria must be supplied");
}
if (Strings.isNullOrEmpty(entityCriteria.getEntityID())) {
throw new IllegalArgumentException("Credential owner entity ID criteria value must be supplied");
}
if (mdCriteria.getRole() == null) {
- throw new IllegalArgumentException("Credential entityDescriptorResolver role criteria value must be supplied");
+ throw new IllegalArgumentException("Credential entity role criteria value must be supplied");
}
}
@@ -189,13 +190,9 @@
throws ResolverException {
log.debug("Attempting to retrieve credentials from entityDescriptorResolver for entity: {}", entityID);
- Collection<Credential> credentials = new HashSet<Credential>(3);
+ HashSet<Credential> credentials = new HashSet<Credential>(3);
Iterable<RoleDescriptor> roleDescriptors = getRoleDescriptors(entityID, role, protocol);
-
- // TODO call retrieve- and storeCachedCredentials on the KeyInfo objects here appropriately,
- // to check for and retrieve existing cached creds,
- // or store the ones resolved from processing the metadata document.
for (RoleDescriptor roleDescriptor : roleDescriptors) {
List<KeyDescriptor> keyDescriptors = roleDescriptor.getKeyDescriptors();
@@ -206,22 +203,7 @@
}
[... 180 lines stripped ...]
More information about the commits
mailing list