[java-opensaml COMMIT] in /trunk: opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/AbstractName...
noreply at shibboleth.net
noreply at shibboleth.net
Tue Mar 25 13:05:07 EDT 2014
Author: scantor
Date: Tue Mar 25 13:05:07 2014
New Revision: 3731
URL: http://svn.shibboleth.net/view/java-opensaml?rev=3731&view=rev
Log:
Revamp NameID policy predicate design again, more direct expression of target object.
Modified:
trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/AbstractNameIDPolicyPredicate.java
trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/NameIDPolicyPredicate.java
trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/profile/impl/AddNameIDToSubjects.java
trunk/opensaml-saml-impl/src/test/java/org/opensaml/saml/saml2/profile/impl/AddNameIDToSubjectsTest.java
Modified: trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/AbstractNameIDPolicyPredicate.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/AbstractNameIDPolicyPredicate.java?rev=3731&r1=3730&r2=3731&view=diff
==============================================================================
--- trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/AbstractNameIDPolicyPredicate.java (original)
+++ trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/common/profile/logic/AbstractNameIDPolicyPredicate.java Tue Mar 25 13:05:07 2014
@@ -21,28 +21,25 @@
import javax.annotation.Nullable;
import net.shibboleth.utilities.java.support.component.AbstractInitializableComponent;
+import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
import net.shibboleth.utilities.java.support.component.ComponentSupport;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-import org.opensaml.messaging.context.navigate.MessageLookup;
import org.opensaml.profile.context.ProfileRequestContext;
-import org.opensaml.profile.context.navigate.InboundMessageContextLookup;
-import org.opensaml.saml.saml2.core.AuthnRequest;
-import org.opensaml.saml.saml2.core.Issuer;
+import org.opensaml.saml.saml1.core.NameIdentifier;
import org.opensaml.saml.saml2.core.NameID;
-import org.opensaml.saml.saml2.core.RequestAbstractType;
+import org.opensaml.saml.saml2.core.NameIDPolicy;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.google.common.base.Function;
-import com.google.common.base.Functions;
+import com.google.common.base.Predicate;
/**
* Base class for implementations of {@link NameIDPolicyPredicate} that handles all the basic lookup
* functions and calls the {@link #doApply(String, String, String, String)} method to do actual work.
*/
public abstract class AbstractNameIDPolicyPredicate extends AbstractInitializableComponent
- implements NameIDPolicyPredicate {
+ implements Predicate<ProfileRequestContext> {
/** Class logger. */
@Nonnull private final Logger log = LoggerFactory.getLogger(AbstractNameIDPolicyPredicate.class);
@@ -53,17 +50,14 @@
/** Responder ID lookup function. */
@Nullable private Function<ProfileRequestContext,String> responderIdLookupStrategy;
- /** NameQualifier lookup function. */
- @Nullable private Function<ProfileRequestContext,String> nameQualifierLookupStrategy;
+ /** NameIDPolicy lookup function. */
+ @Nullable private Function<ProfileRequestContext,NameIDPolicy> nameIDPolicyLookupStrategy;
- /** SPNameQualifier lookup function. */
- @Nullable private Function<ProfileRequestContext,String> spNameQualifierLookupStrategy;
-
- /** Constructor. */
- public AbstractNameIDPolicyPredicate() {
- requesterIdLookupStrategy = new RequesterIdFromIssuerFunction();
- spNameQualifierLookupStrategy = new SPNameQualifierFromNameIDPolicyFunction();
- }
+ /** NameID lookup function. */
+ @Nullable private Function<ProfileRequestContext,NameID> nameIDLookupStrategy;
+
+ /** NameIdentifier lookup function. */
+ @Nullable private Function<ProfileRequestContext,NameIdentifier> nameIdentifierLookupStrategy;
/**
* Set the strategy used to locate the requester ID.
@@ -71,10 +65,10 @@
* @param strategy lookup strategy
*/
public synchronized void setRequesterIdLookupStrategy(
- @Nonnull final Function<ProfileRequestContext,String> strategy) {
+ @Nullable final Function<ProfileRequestContext,String> strategy) {
ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
- requesterIdLookupStrategy = Constraint.isNotNull(strategy, "Requester ID lookup strategy cannot be null");
+ requesterIdLookupStrategy = strategy;
}
/**
@@ -83,45 +77,65 @@
* @param strategy lookup strategy
*/
public synchronized void setResponderIdLookupStrategy(
- @Nonnull final Function<ProfileRequestContext,String> strategy) {
+ @Nullable final Function<ProfileRequestContext,String> strategy) {
ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
[... 336 lines stripped ...]
More information about the commits
mailing list