[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
Tue Oct 28 00:17:05 EDT 2014
Author: dfisher
Date: Tue Oct 28 00:17:04 2014
New Revision: 6793
URL: http://svn.shibboleth.net/view/java-identity-provider?rev=6793&view=rev
Log:
Add external bean support for mapping strategy and result cache in the LDAP connector.
Added:
trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/ldap-attribute-resolver-v2-hybrid.xml
Modified:
trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LDAPDataConnectorParser.java
trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LdapDataConnectorParserTest.java
trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/ldap-attribute-resolver-spring-context.xml
trunk/idp-schema/src/main/resources/schema/shibboleth-attribute-resolver-dc.xsd
Modified: trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LDAPDataConnectorParser.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/ldap/LDAPDataConnectorParser.java?rev=6793&r1=6792&r2=6793&view=diff
==============================================================================
--- trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LDAPDataConnectorParser.java (original)
+++ trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LDAPDataConnectorParser.java Tue Oct 28 00:17:04 2014
@@ -214,12 +214,24 @@
final BeanDefinition searchExecutor = v2Parser.createSearchExecutor();
builder.addPropertyValue("searchExecutor", searchExecutor);
- final BeanDefinition def = v2Parser.createMappingStrategy();
- if (def != null) {
- builder.addPropertyValue("mappingStrategy", def);
- }
-
- builder.addPropertyValue("resultsCache", v2Parser.createCache());
+ final String mappingStrategyID = AttributeSupport.getAttributeValue(config, new QName("mappingStrategyRef"));
+ if (mappingStrategyID != null) {
+ builder.addPropertyReference("mappingStrategy", mappingStrategyID);
+ } else {
+ final BeanDefinition def = v2Parser.createMappingStrategy();
+ if (def != null) {
+ builder.addPropertyValue("mappingStrategy", def);
+ }
+ }
+
+ final Element resultCacheBean =
+ ElementSupport.getFirstChildElement(config, new QName(
+ DataConnectorNamespaceHandler.NAMESPACE, "ResultCacheBean"));
+ if (resultCacheBean != null) {
+ builder.addPropertyReference("resultsCache", resultCacheBean.getTextContent().trim());
+ } else {
+ builder.addPropertyValue("resultsCache", v2Parser.createCache());
+ }
final String noResultIsError = AttributeSupport.getAttributeValue(config, new QName("noResultIsError"));
if (noResultIsError != null) {
Modified: trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LdapDataConnectorParserTest.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/ldap/LdapDataConnectorParserTest.java?rev=6793&r1=6792&r2=6793&view=diff
==============================================================================
--- trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LdapDataConnectorParserTest.java (original)
+++ trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LdapDataConnectorParserTest.java Tue Oct 28 00:17:04 2014
@@ -103,8 +103,7 @@
@Test public void v2Config() throws ComponentInitializationException, ServiceException, ResolutionException {
LDAPDataConnector dataConnector =
- getLdapDataConnector(
- new String[] {"net/shibboleth/idp/attribute/resolver/spring/dc/ldap/ldap-attribute-resolver-v2.xml"});
+ getLdapDataConnector(new String[] {"net/shibboleth/idp/attribute/resolver/spring/dc/ldap/ldap-attribute-resolver-v2.xml"});
Assert.assertNotNull(dataConnector);
doTest(dataConnector);
final StringAttributeValueMappingStrategy mappingStrategy =
@@ -122,8 +121,7 @@
@Test public void v2PropsConfig() throws ComponentInitializationException, ServiceException, ResolutionException {
LDAPDataConnector dataConnector =
- getLdapDataConnector(
- new String[] {
+ getLdapDataConnector(new String[] {
"net/shibboleth/idp/attribute/resolver/spring/dc/ldap/ldap-attribute-resolver-v2-props.xml",
"net/shibboleth/idp/attribute/resolver/spring/dc/ldap/PropertyPlaceholder.xml"});
[... 124 lines stripped ...]
More information about the commits
mailing list