[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
Wed May 7 05:33:06 EDT 2014
Author: rdw
Date: Wed May 7 05:33:06 2014
New Revision: 5866
URL: http://svn.shibboleth.net/view/java-identity-provider?rev=5866&view=rev
Log:
IDP-280 Checkpoint Selective resolution plugin configuration. The predicate can be specified by reference on any plugin. Context navigation for non default cases is still pending
Added:
trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/attribute-resolver-selective.xml (with props)
trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/predicates.xml (with props)
Modified:
trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/BaseResolverPluginParser.java
trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/AttributeResolverTest.java
trunk/idp-schema/src/main/resources/schema/shibboleth-attribute-resolver.xsd
Modified: trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/BaseResolverPluginParser.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/BaseResolverPluginParser.java?rev=5866&r1=5865&r2=5866&view=diff
==============================================================================
--- trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/BaseResolverPluginParser.java (original)
+++ trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/BaseResolverPluginParser.java Wed May 7 05:33:06 2014
@@ -63,6 +63,10 @@
}
builder.setInitMethodName("initialize");
builder.setDestroyMethodName("destroy");
+
+ if (config.hasAttributeNS(null, "activationPredicateRef")) {
+ builder.addPropertyReference("activationCriteria", config.getAttributeNS(null, "activationPredicateRef"));
+ }
List<Element> dependencyElements =
ElementSupport.getChildElements(config, ResolverPluginDependencyParser.ELEMENT_NAME);
Modified: trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/AttributeResolverTest.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/AttributeResolverTest.java?rev=5866&r1=5865&r2=5866&view=diff
==============================================================================
--- trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/AttributeResolverTest.java (original)
+++ trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/AttributeResolverTest.java Wed May 7 05:33:06 2014
@@ -20,6 +20,7 @@
import java.util.Map;
import java.util.Set;
+import javax.annotation.Nullable;
import javax.security.auth.Subject;
import javax.sql.DataSource;
@@ -39,25 +40,30 @@
import net.shibboleth.idp.spring.SchemaTypeAwareXMLBeanDefinitionReader;
import net.shibboleth.idp.testing.DatabaseTestingSupport;
import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
+import net.shibboleth.utilities.java.support.logic.Constraint;
import org.opensaml.core.OpenSAMLInitBaseTestCase;
+import org.opensaml.profile.context.ProfileRequestContext;
import org.opensaml.saml.saml2.core.NameID;
import org.opensaml.saml.saml2.core.impl.NameIDBuilder;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.support.GenericApplicationContext;
+import org.springframework.core.io.ClassPathResource;
import org.testng.Assert;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;
+import com.google.common.base.Function;
+import com.google.common.base.Predicate;
import com.unboundid.ldap.listener.InMemoryDirectoryServer;
import com.unboundid.ldap.listener.InMemoryDirectoryServerConfig;
import com.unboundid.ldap.listener.InMemoryListenerConfig;
import com.unboundid.ldap.sdk.LDAPException;
/** A work in progress to test the attribute resolver service. */
-// TODO incomplete
+
public class AttributeResolverTest extends OpenSAMLInitBaseTestCase {
/** Class logger. */
@@ -293,6 +299,53 @@
serviceableComponent.unpinComponent();
}
}
-
+ }
+
+ @Test public void selective() throws ResolutionException {
+ GenericApplicationContext context = new GenericApplicationContext();
+ context.setDisplayName("ApplicationContext: " + AttributeResolverTest.class);
+
+ SchemaTypeAwareXMLBeanDefinitionReader beanDefinitionReader =
+ new SchemaTypeAwareXMLBeanDefinitionReader(context);
+
+ beanDefinitionReader.loadBeanDefinitions(new ClassPathResource(
+ "net/shibboleth/idp/attribute/resolver/spring/attribute-resolver-selective.xml"),
[... 77 lines stripped ...]
More information about the commits
mailing list