org.apache.xbean.spring.context.v2c
public class XBeanNamespaceHandler extends java.lang.Object implements org.springframework.beans.factory.xml.NamespaceHandler
Modifier and Type | Field and Description |
---|---|
protected NamedConstructorArgs |
namedConstructorArgs |
protected static java.lang.String[] |
RESERVED_BEAN_ATTRIBUTE_NAMES |
protected static java.lang.String[] |
RESERVED_ELEMENT_NAMES
All the reserved Spring XML element names which cannot be overloaded by
an XML extension
|
static java.lang.String |
SPRING_SCHEMA |
static java.lang.String |
SPRING_SCHEMA_COMPAT |
Constructor and Description |
---|
XBeanNamespaceHandler() |
Modifier and Type | Method and Description |
---|---|
protected void |
addAttributeProperties(org.springframework.beans.factory.config.BeanDefinitionHolder definition,
MappingMetaData metadata,
java.lang.String className,
org.w3c.dom.Element element)
Parses attribute names and values as being bean property expressions
|
protected void |
addAttributeProperty(org.springframework.beans.factory.config.BeanDefinitionHolder definition,
MappingMetaData metadata,
org.w3c.dom.Element element,
org.w3c.dom.Attr attribute) |
protected void |
addContentProperty(org.springframework.beans.factory.config.BeanDefinitionHolder definition,
MappingMetaData metadata,
org.w3c.dom.Element element) |
protected void |
addNestedPropertyElements(org.springframework.beans.factory.config.BeanDefinitionHolder definition,
MappingMetaData metadata,
java.lang.String className,
org.w3c.dom.Element element)
Lets iterate through the children of this element and create any nested
child properties
|
protected void |
addProperty(org.springframework.beans.factory.config.BeanDefinitionHolder definition,
MappingMetaData metadata,
org.w3c.dom.Element element,
java.lang.String localName,
java.lang.String value)
Add a property onto the current BeanDefinition.
|
protected void |
addSpringAttributeValues(java.lang.String className,
org.w3c.dom.Element element) |
protected void |
addValueToMap(java.util.Map map,
java.lang.Object keyValue,
java.lang.Object value,
java.lang.String dups) |
protected org.w3c.dom.Element |
cloneElement(org.w3c.dom.Element element)
Creates a clone of the element and its attribute (though not its content)
|
static void |
configure(org.springframework.context.support.AbstractApplicationContext context,
org.springframework.beans.factory.xml.XmlBeanDefinitionReader reader)
Configures the XmlBeanDefinitionReader to work nicely with extensible XML
using this reader implementation.
|
protected java.beans.PropertyEditor |
createPropertyEditor(java.lang.String propertyEditor) |
protected void |
declareLifecycleMethods(org.springframework.beans.factory.config.BeanDefinitionHolder definitionHolder,
MappingMetaData metaData,
org.w3c.dom.Element element) |
org.springframework.beans.factory.config.BeanDefinitionHolder |
decorate(org.w3c.dom.Node node,
org.springframework.beans.factory.config.BeanDefinitionHolder definition,
org.springframework.beans.factory.xml.ParserContext parserContext) |
protected MappingMetaData |
findNamespaceProperties(java.lang.String namespaceURI,
java.lang.String localName)
Uses META-INF/services discovery to find a Properties file with the XML
marshaling configuration
|
protected java.lang.String |
getElementText(org.w3c.dom.Element element)
Returns the text of the element
|
protected org.w3c.dom.Element |
getFirstChildElement(org.w3c.dom.Element element) |
protected java.lang.String |
getLocalName(org.w3c.dom.Element element) |
protected java.beans.PropertyDescriptor |
getPropertyDescriptor(java.lang.String className,
java.lang.String localName)
Looks up the property decriptor for the given class and property name
|
protected java.lang.Object |
getValue(java.lang.String value,
java.lang.String propertyEditor) |
void |
init() |
protected boolean |
isCollection(java.lang.Class type)
Returns true if the given type is a collection type or an array
|
protected boolean |
isDefaultNamespace(java.lang.String namespaceUri) |
protected boolean |
isEmpty(java.lang.String uri) |
protected boolean |
isMap(java.lang.Class type) |
protected java.io.InputStream |
loadResource(java.lang.String uri)
Loads the resource from the given URI
|
org.springframework.beans.factory.config.BeanDefinition |
parse(org.w3c.dom.Element element,
org.springframework.beans.factory.xml.ParserContext parserContext) |
protected org.springframework.beans.factory.config.BeanDefinitionHolder |
parseBeanFromExtensionElement(org.w3c.dom.Element element)
Parses the non-standard XML element as a Spring bean definition
|
protected org.springframework.beans.factory.config.BeanDefinitionHolder |
parseBeanFromExtensionElement(org.w3c.dom.Element element,
java.lang.String parentClass,
java.lang.String property)
Parses the non-standard XML element as a Spring bean definition
|
protected java.lang.Object |
parseChildExtensionBean(org.w3c.dom.Element element)
Iterates the children of this element to find the first nested bean
|
protected java.lang.Object |
parseCustomMapElement(MappingMetaData metadata,
org.w3c.dom.Element element,
java.lang.String name) |
protected java.lang.Object |
parseListElement(org.w3c.dom.Element element,
java.lang.String name) |
static void |
registerCustomEditors(org.springframework.beans.factory.support.DefaultListableBeanFactory beanFactory)
Registers whatever custom editors we need
|
protected java.lang.Class |
resolveBeanClass(org.springframework.beans.factory.support.AbstractBeanDefinition bd,
java.lang.String beanName) |
protected java.lang.Object |
tryParseNestedPropertyViaIntrospection(MappingMetaData metadata,
java.lang.String className,
org.w3c.dom.Element element)
Attempts to use introspection to parse the nested property element.
|
public static final java.lang.String SPRING_SCHEMA
public static final java.lang.String SPRING_SCHEMA_COMPAT
protected static final java.lang.String[] RESERVED_ELEMENT_NAMES
protected static final java.lang.String[] RESERVED_BEAN_ATTRIBUTE_NAMES
protected final NamedConstructorArgs namedConstructorArgs
public XBeanNamespaceHandler()
public void init()
init
in interface org.springframework.beans.factory.xml.NamespaceHandler
public org.springframework.beans.factory.config.BeanDefinition parse(org.w3c.dom.Element element, org.springframework.beans.factory.xml.ParserContext parserContext)
parse
in interface org.springframework.beans.factory.xml.NamespaceHandler
public org.springframework.beans.factory.config.BeanDefinitionHolder decorate(org.w3c.dom.Node node, org.springframework.beans.factory.config.BeanDefinitionHolder definition, org.springframework.beans.factory.xml.ParserContext parserContext)
decorate
in interface org.springframework.beans.factory.xml.NamespaceHandler
public static void configure(org.springframework.context.support.AbstractApplicationContext context, org.springframework.beans.factory.xml.XmlBeanDefinitionReader reader)
public static void registerCustomEditors(org.springframework.beans.factory.support.DefaultListableBeanFactory beanFactory)
protected org.springframework.beans.factory.config.BeanDefinitionHolder parseBeanFromExtensionElement(org.w3c.dom.Element element, java.lang.String parentClass, java.lang.String property)
protected java.lang.Class resolveBeanClass(org.springframework.beans.factory.support.AbstractBeanDefinition bd, java.lang.String beanName)
protected org.springframework.beans.factory.config.BeanDefinitionHolder parseBeanFromExtensionElement(org.w3c.dom.Element element)
protected void addSpringAttributeValues(java.lang.String className, org.w3c.dom.Element element)
protected org.w3c.dom.Element cloneElement(org.w3c.dom.Element element)
protected void addAttributeProperties(org.springframework.beans.factory.config.BeanDefinitionHolder definition, MappingMetaData metadata, java.lang.String className, org.w3c.dom.Element element)
protected void addContentProperty(org.springframework.beans.factory.config.BeanDefinitionHolder definition, MappingMetaData metadata, org.w3c.dom.Element element)
protected void addAttributeProperty(org.springframework.beans.factory.config.BeanDefinitionHolder definition, MappingMetaData metadata, org.w3c.dom.Element element, org.w3c.dom.Attr attribute)
protected void addProperty(org.springframework.beans.factory.config.BeanDefinitionHolder definition, MappingMetaData metadata, org.w3c.dom.Element element, java.lang.String localName, java.lang.String value)
protected java.lang.Object getValue(java.lang.String value, java.lang.String propertyEditor)
protected java.beans.PropertyEditor createPropertyEditor(java.lang.String propertyEditor)
protected java.lang.String getLocalName(org.w3c.dom.Element element)
protected void addNestedPropertyElements(org.springframework.beans.factory.config.BeanDefinitionHolder definition, MappingMetaData metadata, java.lang.String className, org.w3c.dom.Element element)
protected java.lang.Object tryParseNestedPropertyViaIntrospection(MappingMetaData metadata, java.lang.String className, org.w3c.dom.Element element)
protected java.beans.PropertyDescriptor getPropertyDescriptor(java.lang.String className, java.lang.String localName)
protected java.lang.Object parseListElement(org.w3c.dom.Element element, java.lang.String name)
protected java.lang.Object parseCustomMapElement(MappingMetaData metadata, org.w3c.dom.Element element, java.lang.String name)
protected void addValueToMap(java.util.Map map, java.lang.Object keyValue, java.lang.Object value, java.lang.String dups)
protected org.w3c.dom.Element getFirstChildElement(org.w3c.dom.Element element)
protected boolean isMap(java.lang.Class type)
protected boolean isCollection(java.lang.Class type)
protected java.lang.Object parseChildExtensionBean(org.w3c.dom.Element element)
protected MappingMetaData findNamespaceProperties(java.lang.String namespaceURI, java.lang.String localName)
namespaceURI
- the namespace URI of the elementlocalName
- the local name of the elementprotected java.io.InputStream loadResource(java.lang.String uri)
protected boolean isEmpty(java.lang.String uri)
protected boolean isDefaultNamespace(java.lang.String namespaceUri)
protected void declareLifecycleMethods(org.springframework.beans.factory.config.BeanDefinitionHolder definitionHolder, MappingMetaData metaData, org.w3c.dom.Element element)
protected java.lang.String getElementText(org.w3c.dom.Element element)
Copyright © 2005-2014. All Rights Reserved.