[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 21 21:47:26 EDT 2014


Author: scantor
Date: Tue Oct 21 21:47:26 2014
New Revision: 6764

URL: http://svn.shibboleth.net/view/java-identity-provider?rev=6764&view=rev
Log:
Add external bean support for subsets of RDBMS connector features.

Added:
    trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/rdbms/rdbms-attribute-resolver-v2-hybrid.xml   (with props)
Modified:
    trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/ManagedConnectionParser.java
    trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/rdbms/RDBMSDataConnectorParser.java
    trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/rdbms/RdbmsDataConnectorParserTest.java
    trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/dc/rdbms/rdbms-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/ManagedConnectionParser.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/ManagedConnectionParser.java?rev=6764&r1=6763&r2=6764&view=diff
==============================================================================
--- trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/ManagedConnectionParser.java (original)
+++ trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/ManagedConnectionParser.java Tue Oct 21 21:47:26 2014
@@ -62,7 +62,7 @@
      * 
      * @return data source bean definition
      */
-    public BeanDefinition createDataSource() {
+    @Nullable public BeanDefinition createDataSource() {
         final Element containerManagedElement =
                 ElementSupport.getFirstChildElement(configElement, new QName(DataConnectorNamespaceHandler.NAMESPACE,
                         "ContainerManagedConnection"));
@@ -73,7 +73,11 @@
         final Element applicationManagedElement =
                 ElementSupport.getFirstChildElement(configElement, new QName(DataConnectorNamespaceHandler.NAMESPACE,
                         "ApplicationManagedConnection"));
-        return createApplicationManagedDataSource(applicationManagedElement);
+        if (applicationManagedElement != null) {
+            return createApplicationManagedDataSource(applicationManagedElement);
+        }
+        
+        return null;
     }
 
     /**

Modified: trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/rdbms/RDBMSDataConnectorParser.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/rdbms/RDBMSDataConnectorParser.java?rev=6764&r1=6763&r2=6764&view=diff
==============================================================================
--- trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/rdbms/RDBMSDataConnectorParser.java (original)
+++ trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/dc/rdbms/RDBMSDataConnectorParser.java Tue Oct 21 21:47:26 2014
@@ -110,16 +110,31 @@
 
         final V2Parser v2Parser = new V2Parser(config);
 
-        builder.addPropertyValue("DataSource", v2Parser.createDataSource());
+        final String dataSourceID = v2Parser.getBeanDataSourceID();
+        if (dataSourceID != null) {
+            builder.addPropertyReference("DataSource", dataSourceID);
+        } else {
+            builder.addPropertyValue("DataSource", v2Parser.createManagedDataSource());
+        }
 
         builder.addPropertyValue("executableSearchBuilder", v2Parser.createTemplateBuilder());
 
-        final BeanDefinition def = v2Parser.createMappingStrategy();
-        if (def != null) {
-            builder.addPropertyValue("mappingStrategy", def);
-        }
-        
-        builder.addPropertyValue("resultsCache", v2Parser.createCache());
+        final String mappingStrategyID = v2Parser.getBeanMappingStrategyID();
+        if (mappingStrategyID != null) {
+            builder.addPropertyReference("mappingStrategy", mappingStrategyID);
+        } else {
+            final BeanDefinition def = v2Parser.createMappingStrategy();
+            if (def != null) {
+                builder.addPropertyValue("mappingStrategy", def);
+            }
+        }
+        
+        final String resultCacheID = v2Parser.getBeanResultCacheID();
+        if (resultCacheID != null) {
+            builder.addPropertyReference("resultsCache", resultCacheID);
+        } else {
+            builder.addPropertyValue("resultsCache", v2Parser.createCache());
+        }
 

[... 163 lines stripped ...]


More information about the commits mailing list