[java-identity-provider COMMIT] in /trunk/idp-core/src/main/java/net/shibboleth/idp/spring: SchemaTypeAwareBeanDefini...
noreply at shibboleth.net
noreply at shibboleth.net
Thu Mar 7 18:03:46 EST 2013
Author: tzeller
Date: Thu Mar 7 18:03:45 2013
New Revision: 4306
URL: http://svn.shibboleth.net/view/java-identity-provider?rev=4306&view=rev
Log:
Moved inner classes out of the custom bean definition reader since spring was having some problems during runtime, this may be reverted in the future.
Added:
trunk/idp-core/src/main/java/net/shibboleth/idp/spring/SchemaTypeAwareBeanDefinitionDocumentReader.java (with props)
trunk/idp-core/src/main/java/net/shibboleth/idp/spring/SchemaTypeAwareBeanDefinitionParserDelegate.java (with props)
Modified:
trunk/idp-core/src/main/java/net/shibboleth/idp/spring/SchemaTypeAwareXMLBeanDefinitionReader.java
Modified: trunk/idp-core/src/main/java/net/shibboleth/idp/spring/SchemaTypeAwareXMLBeanDefinitionReader.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-core/src/main/java/net/shibboleth/idp/spring/SchemaTypeAwareXMLBeanDefinitionReader.java?rev=4306&r1=4305&r2=4306&view=diff
==============================================================================
--- trunk/idp-core/src/main/java/net/shibboleth/idp/spring/SchemaTypeAwareXMLBeanDefinitionReader.java (original)
+++ trunk/idp-core/src/main/java/net/shibboleth/idp/spring/SchemaTypeAwareXMLBeanDefinitionReader.java Thu Mar 7 18:03:45 2013
@@ -17,22 +17,13 @@
package net.shibboleth.idp.spring;
-import net.shibboleth.utilities.java.support.xml.DomTypeSupport;
-
-import org.springframework.beans.factory.config.BeanDefinition;
import org.springframework.beans.factory.support.BeanDefinitionRegistry;
-import org.springframework.beans.factory.xml.BeanDefinitionParserDelegate;
-import org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader;
-import org.springframework.beans.factory.xml.NamespaceHandler;
-import org.springframework.beans.factory.xml.ParserContext;
import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
-import org.springframework.beans.factory.xml.XmlReaderContext;
-import org.w3c.dom.Element;
/**
* An extension to the standard {@link XmlBeanDefinitionReader} that defaults some settings.
* <ul>
- * <li>documentReaderClass property is set to {@link SchemaTypeAwareBeanDefinitionDocmentReader}</li>
+ * <li>documentReaderClass property is set to {@link SchemaTypeAwareBeanDefinitionDocumentReader}</li>
* <li>namespaceAware property is set to true</li>
* <li>validating property is set to false</li>
* </ul>
@@ -47,62 +38,9 @@
public SchemaTypeAwareXMLBeanDefinitionReader(BeanDefinitionRegistry beanRegistry) {
super(beanRegistry);
- setDocumentReaderClass(SchemaTypeAwareBeanDefinitionDocmentReader.class);
+ setDocumentReaderClass(SchemaTypeAwareBeanDefinitionDocumentReader.class);
// this also sets namespaceAware to true
setValidating(false);
}
-
- /**
- * An extension to the standard {@link DefaultBeanDefinitionDocumentReader} that uses the
- * {@link SchemaTypeAwareBeanDefinitionParserDelegate} delegate for processing bean definitions.
- */
- protected class SchemaTypeAwareBeanDefinitionDocmentReader extends DefaultBeanDefinitionDocumentReader {
-
- /** {@inheritDoc} */
- protected BeanDefinitionParserDelegate createHelper(XmlReaderContext readerContext, Element root) {
- BeanDefinitionParserDelegate delegate = new SchemaTypeAwareBeanDefinitionParserDelegate(readerContext);
- delegate.initDefaults(root);
- return delegate;
- }
- }
-
- /**
- * An extension to the standard {@link BeanDefinitionParserDelegate} that adds support for retrieving
- * {@link NamespaceHandler} by schema type, as well as element QName, when resolving custom elements. In the case
- * where a {@link NamespaceHandler} is registered for both the schema type and element QName for a custom element
- * the schema registered handler is preferred.
- */
- protected class SchemaTypeAwareBeanDefinitionParserDelegate extends BeanDefinitionParserDelegate {
-
- /**
- * Constructor.
- *
- * @param readerContext current XML reader context
- */
- public SchemaTypeAwareBeanDefinitionParserDelegate(XmlReaderContext readerContext) {
- super(readerContext);
- }
-
- /** {@inheritDoc} */
- public BeanDefinition parseCustomElement(Element element) {
- return parseCustomElement(element, null);
- }
-
- /** {@inheritDoc} */
- public BeanDefinition parseCustomElement(Element element, BeanDefinition containingBd) {
- String namespaceUri = element.getNamespaceURI();
- if (DomTypeSupport.hasXSIType(element)) {
- namespaceUri = DomTypeSupport.getXSIType(element).getNamespaceURI();
- }
-
- NamespaceHandler handler = getReaderContext().getNamespaceHandlerResolver().resolve(namespaceUri);
- if (handler == null) {
- error("Unable to locate NamespaceHandler for namespace [" + namespaceUri + "]", element);
- return null;
- }
-
[... 5 lines stripped ...]
More information about the commits
mailing list