/** {@inheritDoc} */ @Override public BeanDefinition parseCustomElement(final Element element) { return parseCustomElement(element, null); }
/** {@inheritDoc} */ @Override public BeanDefinition parseCustomElement(final Element element, final BeanDefinition containingBd) { String namespaceUri = element.getNamespaceURI(); if (DOMTypeSupport.hasXSIType(element)) { namespaceUri = DOMTypeSupport.getXSIType(element).getNamespaceURI(); } final NamespaceHandler handler = getReaderContext().getNamespaceHandlerResolver().resolve(namespaceUri); if (handler == null) { error("Unable to locate NamespaceHandler for namespace [" + namespaceUri + "]", element); return null; } return handler.parse(element, new ParserContext(getReaderContext(), this, containingBd)); } }
/** {@inheritDoc} */ @Override protected BeanDefinitionParserDelegate createDelegate(final XmlReaderContext readerContext, final Element root, final BeanDefinitionParserDelegate parentDelegate) { final BeanDefinitionParserDelegate delegate = new SchemaTypeAwareBeanDefinitionParserDelegate(readerContext); delegate.initDefaults(root, parentDelegate); return delegate; }