|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser
org.apache.xbean.spring.context.impl.XBeanXmlBeanDefinitionParser
An enhanced XML parser capable of handling custom XML schemas.
Field Summary | |
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
|
Fields inherited from class org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser |
ABSTRACT_ATTRIBUTE, ALIAS_ATTRIBUTE, ALIAS_ELEMENT, ARG_TYPE_ELEMENT, ARG_TYPE_MATCH_ATTRIBUTE, AUTOWIRE_ATTRIBUTE, AUTOWIRE_AUTODETECT_VALUE, AUTOWIRE_BY_NAME_VALUE, AUTOWIRE_BY_TYPE_VALUE, AUTOWIRE_CONSTRUCTOR_VALUE, BEAN_ELEMENT, BEAN_NAME_DELIMITERS, BEAN_REF_ATTRIBUTE, CLASS_ATTRIBUTE, CONSTRUCTOR_ARG_ELEMENT, DEFAULT_AUTOWIRE_ATTRIBUTE, DEFAULT_DEPENDENCY_CHECK_ATTRIBUTE, DEFAULT_DESTROY_METHOD_ATTRIBUTE, DEFAULT_INIT_METHOD_ATTRIBUTE, DEFAULT_LAZY_INIT_ATTRIBUTE, DEFAULT_VALUE, DEPENDENCY_CHECK_ALL_ATTRIBUTE_VALUE, DEPENDENCY_CHECK_ATTRIBUTE, DEPENDENCY_CHECK_OBJECTS_ATTRIBUTE_VALUE, DEPENDENCY_CHECK_SIMPLE_ATTRIBUTE_VALUE, DEPENDS_ON_ATTRIBUTE, DESCRIPTION_ELEMENT, DESTROY_METHOD_ATTRIBUTE, ENTRY_ELEMENT, FACTORY_BEAN_ATTRIBUTE, FACTORY_METHOD_ATTRIBUTE, ID_ATTRIBUTE, IDREF_ELEMENT, IMPORT_ELEMENT, INDEX_ATTRIBUTE, INIT_METHOD_ATTRIBUTE, KEY_ATTRIBUTE, KEY_ELEMENT, KEY_REF_ATTRIBUTE, LAZY_INIT_ATTRIBUTE, LIST_ELEMENT, LOCAL_REF_ATTRIBUTE, logger, LOOKUP_METHOD_ELEMENT, MAP_ELEMENT, NAME_ATTRIBUTE, NULL_ELEMENT, PARENT_ATTRIBUTE, PARENT_REF_ATTRIBUTE, PROP_ELEMENT, PROPERTY_ELEMENT, PROPS_ELEMENT, REF_ATTRIBUTE, REF_ELEMENT, REPLACED_METHOD_ELEMENT, REPLACER_ATTRIBUTE, RESOURCE_ATTRIBUTE, SET_ELEMENT, SINGLETON_ATTRIBUTE, TRUE_VALUE, TYPE_ATTRIBUTE, VALUE_ATTRIBUTE, VALUE_ELEMENT, VALUE_REF_ATTRIBUTE |
Constructor Summary | |
XBeanXmlBeanDefinitionParser()
|
Method Summary | |
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 org.w3c.dom.Element |
cloneElement(org.w3c.dom.Element element)
Creates a clone of the element and its attribute (though not its content) |
protected void |
coerceNamespaceAwarePropertyValues(org.springframework.beans.factory.config.BeanDefinitionHolder definitionHolder,
org.w3c.dom.Element element)
Any namespace aware property values (such as QNames) need to be coerced while we still have access to the XML Element from which its value comes - so lets do that now before we trash the DOM and just have the bean definition. |
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 void |
declareLifecycleMethods(org.springframework.beans.factory.config.BeanDefinitionHolder definitionHolder,
MappingMetaData metaData,
org.w3c.dom.Element element)
|
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.beans.BeanInfo |
getBeanInfo(java.lang.String className)
|
protected java.lang.String |
getElementText(org.w3c.dom.Element element)
Returns the text of the 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)
|
protected boolean |
isCollection(java.lang.Class type)
Returns true if the given type is a collection type or an array |
protected boolean |
isEmpty(java.lang.String uri)
|
protected boolean |
isMap(java.lang.Class type)
|
protected boolean |
isQnameIsOnClassPath()
|
protected java.lang.Class |
loadClass(java.lang.String name)
Attempts to load the class on the current thread context class loader or the class loader which loaded us |
protected java.io.InputStream |
loadResource(java.lang.String uri)
Loads the resource from the given URI |
protected org.springframework.beans.factory.config.BeanDefinitionHolder |
parseBeanDefinitionElement(org.w3c.dom.Element ele,
boolean isInnerBean)
|
protected int |
parseBeanDefinitions(org.w3c.dom.Element root)
|
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 |
parseNestedPropertyViaIntrospection(MappingMetaData metadata,
java.lang.String className,
org.w3c.dom.Element element,
java.beans.PropertyDescriptor descriptor)
Attempts to use introspection to parse the nested property element. |
protected java.lang.Object |
parsePropertySubElement(org.w3c.dom.Element element,
java.lang.String beanName)
|
protected java.lang.Object |
parseQNameElement(org.w3c.dom.Element element)
|
static void |
registerCustomEditors(org.springframework.beans.factory.support.DefaultListableBeanFactory beanFactory)
Registers whatever custom editors we need |
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. |
Methods inherited from class org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser |
getAutowireMode, getBeanDefinitionReader, getDefaultAutowire, getDefaultDependencyCheck, getDefaultDestroyMethod, getDefaultInitMethod, getDefaultLazyInit, getDependencyCheck, getResource, importBeanDefinitionResource, initDefaults, parseBeanDefinitionElement, parseConstructorArgElement, parseConstructorArgElements, parseKeyElement, parseListElement, parseLookupOverrideSubElements, parseMapElement, parsePropertyElement, parsePropertyElements, parsePropertyValue, parsePropsElement, parseReplacedMethodSubElements, parseSetElement, postProcessXml, preProcessXml, registerBeanDefinitions, setDefaultAutowire, setDefaultDependencyCheck, setDefaultDestroyMethod, setDefaultInitMethod, setDefaultLazyInit |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
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
Constructor Detail |
public XBeanXmlBeanDefinitionParser()
Method Detail |
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 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)
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 void coerceNamespaceAwarePropertyValues(org.springframework.beans.factory.config.BeanDefinitionHolder definitionHolder, org.w3c.dom.Element element)
protected boolean isQnameIsOnClassPath()
protected java.beans.BeanInfo getBeanInfo(java.lang.String className) throws org.springframework.beans.factory.BeanDefinitionStoreException
org.springframework.beans.factory.BeanDefinitionStoreException
protected java.beans.PropertyDescriptor getPropertyDescriptor(java.lang.String className, java.lang.String localName)
protected java.lang.Object parseNestedPropertyViaIntrospection(MappingMetaData metadata, java.lang.String className, org.w3c.dom.Element element, java.beans.PropertyDescriptor descriptor)
protected java.lang.Object parseCustomMapElement(MappingMetaData metadata, org.w3c.dom.Element element, java.lang.String name)
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 element
protected java.io.InputStream loadResource(java.lang.String uri)
protected java.lang.Class loadClass(java.lang.String name) throws java.lang.ClassNotFoundException
java.lang.ClassNotFoundException
protected boolean isEmpty(java.lang.String uri)
protected void declareLifecycleMethods(org.springframework.beans.factory.config.BeanDefinitionHolder definitionHolder, MappingMetaData metaData, org.w3c.dom.Element element)
protected int parseBeanDefinitions(org.w3c.dom.Element root) throws org.springframework.beans.factory.BeanDefinitionStoreException
org.springframework.beans.factory.BeanDefinitionStoreException
protected org.springframework.beans.factory.config.BeanDefinitionHolder parseBeanDefinitionElement(org.w3c.dom.Element ele, boolean isInnerBean) throws org.springframework.beans.factory.BeanDefinitionStoreException
org.springframework.beans.factory.BeanDefinitionStoreException
protected java.lang.Object parsePropertySubElement(org.w3c.dom.Element element, java.lang.String beanName) throws org.springframework.beans.factory.BeanDefinitionStoreException
org.springframework.beans.factory.BeanDefinitionStoreException
protected java.lang.Object parseQNameElement(org.w3c.dom.Element element)
protected java.lang.String getElementText(org.w3c.dom.Element element)
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |