[java-identity-provider COMMIT] in /trunk: idp-core/src/main/java/net/shibboleth/idp/spring/SpringSupport.java idp-pr...

noreply at shibboleth.net noreply at shibboleth.net
Fri May 2 05:18:43 EDT 2014


Author: rdw
Date: Fri May  2 05:18:43 2014
New Revision: 5826

URL: http://svn.shibboleth.net/view/java-identity-provider?rev=5826&view=rev
Log:
Remove useless provision of parent context from native bean parsing and instead add usefull addition of BeanRegistry.

Modified:
    trunk/idp-core/src/main/java/net/shibboleth/idp/spring/SpringSupport.java
    trunk/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/saml/BaseSAMLProfileConfigurationParser.java

Modified: trunk/idp-core/src/main/java/net/shibboleth/idp/spring/SpringSupport.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-core/src/main/java/net/shibboleth/idp/spring/SpringSupport.java?rev=5826&r1=5825&r2=5826&view=diff
==============================================================================
--- trunk/idp-core/src/main/java/net/shibboleth/idp/spring/SpringSupport.java (original)
+++ trunk/idp-core/src/main/java/net/shibboleth/idp/spring/SpringSupport.java Fri May  2 05:18:43 2014
@@ -37,6 +37,7 @@
 import org.springframework.beans.factory.BeanFactory;
 import org.springframework.beans.factory.NoSuchBeanDefinitionException;
 import org.springframework.beans.factory.config.BeanDefinition;
+import org.springframework.beans.factory.support.BeanDefinitionRegistry;
 import org.springframework.beans.factory.support.ManagedList;
 import org.springframework.beans.factory.xml.ParserContext;
 import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
@@ -55,7 +56,7 @@
  * Helper class for performing some common Spring-related functions.
  */
 public final class SpringSupport {
-    
+
     /** Spring beans element name. */
     public static final QName SPRING_BEANS_ELEMENT_NAME = new QName("http://www.springframework.org/schema/beans",
             "beans");
@@ -120,15 +121,29 @@
     }
 
     /**
+     * Parse the provided Element into the provided registry.
+     * @param springBeans the element to parse
+     * @param registry the registry to populate
+     */
+    public static void parseNativeElement(@Nonnull final Element springBeans, 
+            @Nullable BeanDefinitionRegistry registry) {
+        final XmlBeanDefinitionReader definitionReader = new XmlBeanDefinitionReader(registry);
+        definitionReader.setValidationMode(XmlBeanDefinitionReader.VALIDATION_XSD);
+        definitionReader.setNamespaceAware(true);
+        final ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
+        SerializeSupport.writeNode(springBeans, outputStream);
+        definitionReader.loadBeanDefinitions(new InputSource(new ByteArrayInputStream(outputStream.toByteArray())));
+
+    }
+
+    /**
      * Creates a Spring bean factory from the supplied Spring beans element.
      * 
      * @param springBeans to create bean factory from
-     * @param parentContext the parent context, if required
      * 
      * @return bean factory
      */
-    @Nonnull public static BeanFactory createBeanFactory(@Nonnull final Element springBeans,
-            @Nullable ApplicationContext parentContext) {
+    @Nonnull public static BeanFactory createBeanFactory(@Nonnull final Element springBeans) {
 
         // Pull in the closest xsi:schemaLocation attribute we can find.
         if (!springBeans.hasAttributeNS(XmlConstants.XSI_SCHEMA_LOCATION_ATTRIB_NAME.getNamespaceURI(),
@@ -151,15 +166,7 @@
         }
 
         final GenericApplicationContext ctx = new GenericApplicationContext();
-        if (null != parentContext) {
-            ctx.setParent(parentContext);
-        }
-        final XmlBeanDefinitionReader definitionReader = new XmlBeanDefinitionReader(ctx);
-        definitionReader.setValidationMode(XmlBeanDefinitionReader.VALIDATION_XSD);
-        definitionReader.setNamespaceAware(true);
-        final ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
-        SerializeSupport.writeNode(springBeans, outputStream);
-        definitionReader.loadBeanDefinitions(new InputSource(new ByteArrayInputStream(outputStream.toByteArray())));
+        parseNativeElement(springBeans, ctx);
         ctx.refresh();
         return ctx.getBeanFactory();
     }
@@ -174,8 +181,7 @@
      * 
      * @return spring bean
      */
-    @Nullable
-    public static <T> T getBean(@Nonnull final BeanFactory beanFactory, @Nonnull final Class<T> clazz) {
+    @Nullable public static <T> T getBean(@Nonnull final BeanFactory beanFactory, @Nonnull final Class<T> clazz) {
         T bean = null;
         try {
             bean = beanFactory.getBean(clazz);

Modified: trunk/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/saml/BaseSAMLProfileConfigurationParser.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-profile-spring/src/main/java/net/shibboleth/idp/profile/spring/relyingparty/saml/BaseSAMLProfileConfigurationParser.java?rev=5826&r1=5825&r2=5826&view=diff
==============================================================================

[... 12 lines stripped ...]


More information about the commits mailing list