org.springframework.beans.factory.xml
Interface BeanDefinitionParser

All Known Implementing Classes:
AbstractBeanDefinitionParser, AbstractHttpRequestHandlerBeanDefinitionParser, AbstractJndiLocatingBeanDefinitionParser, AbstractListenerContainerParser, AbstractPropertyLoadingBeanDefinitionParser, AbstractSimpleBeanDefinitionParser, AbstractSingleBeanDefinitionParser, AnnotationConfigBeanDefinitionParser, AnnotationDrivenBeanDefinitionParser, AnnotationDrivenBeanDefinitionParser, AnnotationDrivenBeanDefinitionParser, AspectJAutoProxyBeanDefinitionParser, ComponentScanBeanDefinitionParser, ConfigBeanDefinitionParser, DefaultServletHandlerBeanDefinitionParser, EmbeddedDatabaseBeanDefinitionParser, ExecutorBeanDefinitionParser, InitializeDatabaseBeanDefinitionParser, InterceptorsBeanDefinitionParser, Jaxb2MarshallerBeanDefinitionParser, JcaListenerContainerParser, JibxMarshallerBeanDefinitionParser, JmsListenerContainerParser, JndiLookupBeanDefinitionParser, JtaTransactionManagerBeanDefinitionParser, LoadTimeWeaverBeanDefinitionParser, LocalStatelessSessionBeanDefinitionParser, MBeanExportBeanDefinitionParser, MBeanServerBeanDefinitionParser, PropertyOverrideBeanDefinitionParser, PropertyPlaceholderBeanDefinitionParser, RemoteStatelessSessionBeanDefinitionParser, ResourcesBeanDefinitionParser, ScheduledTasksBeanDefinitionParser, SchedulerBeanDefinitionParser, ScriptBeanDefinitionParser, ScriptingDefaultsParser, SpringConfiguredBeanDefinitionParser, SpringConfiguredBeanDefinitionParser, TxAdviceBeanDefinitionParser, UtilNamespaceHandler.ConstantBeanDefinitionParser, UtilNamespaceHandler.ListBeanDefinitionParser, UtilNamespaceHandler.MapBeanDefinitionParser, UtilNamespaceHandler.PropertiesBeanDefinitionParser, UtilNamespaceHandler.PropertyPathBeanDefinitionParser, UtilNamespaceHandler.SetBeanDefinitionParser, ViewControllerBeanDefinitionParser, XmlBeansMarshallerBeanDefinitionParser

public interface BeanDefinitionParser

Interface used by the DefaultBeanDefinitionDocumentReader to handle custom, top-level (directly under <beans>) tags.

Implementations are free to turn the metadata in the custom tag into as many BeanDefinitions as required.

The parser locates a BeanDefinitionParser from the associated NamespaceHandler for the namespace in which the custom tag resides.

Since:
2.0
Author:
Rob Harrop
See Also:
NamespaceHandler, BeanDefinitionDecorator, AbstractBeanDefinitionParser

Method Summary
 BeanDefinition parse(org.w3c.dom.Element element, ParserContext parserContext)
          Parse the specified Element and register the resulting BeanDefinition(s) with the ParserContext.getRegistry() BeanDefinitionRegistry} embedded in the supplied ParserContext.
 

Method Detail

parse

BeanDefinition parse(org.w3c.dom.Element element,
                     ParserContext parserContext)
Parse the specified Element and register the resulting BeanDefinition(s) with the ParserContext.getRegistry() BeanDefinitionRegistry} embedded in the supplied ParserContext.

Implementations must return the primary BeanDefinition that results from the parse if they will ever be used in a nested fashion (for example as an inner tag in a <property/> tag). Implementations may return null if they will not be used in a nested fashion.

Parameters:
element - the element that is to be parsed into one or more BeanDefinitions
parserContext - the object encapsulating the current state of the parsing process; provides access to a BeanDefinitionRegistry
Returns:
the primary BeanDefinition