org.mule.config.spring.parsers
Class AbstractHierarchicalDefinitionParser

java.lang.Object
  extended by org.springframework.beans.factory.xml.AbstractBeanDefinitionParser
      extended by org.mule.config.spring.parsers.AbstractMuleBeanDefinitionParser
          extended by org.mule.config.spring.parsers.AbstractHierarchicalDefinitionParser
All Implemented Interfaces:
MuleDefinitionParser, MuleDefinitionParserConfiguration, org.springframework.beans.factory.xml.BeanDefinitionParser
Direct Known Subclasses:
AbstractChildDefinitionParser, ParentDefinitionParser

public abstract class AbstractHierarchicalDefinitionParser
extends AbstractMuleBeanDefinitionParser

This definition parser introduces the notion of Hierarchical processing to nested XML elements. Definition parsers that extend this can refer to parent beans. It does not assume that the parser is restricted to a single property. Calling classes must set the registry at the start of processing.

See Also:
ChildDefinitionParser, ChildMapEntryDefinitionParser.KeyValuePair, AbstractMuleBeanDefinitionParser

Field Summary
 
Fields inherited from class org.mule.config.spring.parsers.AbstractMuleBeanDefinitionParser
ATTRIBUTE_CLASS, ATTRIBUTE_ID, ATTRIBUTE_NAME, ATTRIBUTE_REF, ATTRIBUTE_REF_SUFFIX, ATTRIBUTE_REFS, ATTRIBUTE_REFS_SUFFIX, beanPropertyConfiguration, logger, ROOT_ELEMENT, singleton
 
Fields inherited from class org.springframework.beans.factory.xml.AbstractBeanDefinitionParser
ID_ATTRIBUTE, NAME_ATTRIBUTE
 
Constructor Summary
AbstractHierarchicalDefinitionParser()
           
 
Method Summary
 void forceParent(org.springframework.beans.factory.config.BeanDefinition parent)
           
protected  BeanAssembler getBeanAssembler(Element element, org.springframework.beans.factory.support.BeanDefinitionBuilder bean)
          The bean assembler gives more reliable/automatic processing of collections, maps, etc.
protected  BeanAssembler getOrphanBeanAssembler(Element element, org.springframework.beans.factory.support.BeanDefinitionBuilder bean)
          Deprecated.  
 org.springframework.beans.factory.config.BeanDefinition getParentBeanDefinition(Element element)
           
protected  String getParentBeanName(Element element)
           
 PropertyConfiguration getTargetPropertyConfiguration()
           
protected  void postProcess(org.springframework.beans.factory.xml.ParserContext context, BeanAssembler assembler, Element element)
          Hook method that derived classes can implement to inspect/change a bean definition after parsing is complete.
protected  void preProcess(Element element)
          Hook method that derived classes can implement to modify internal state before processing.
 
Methods inherited from class org.mule.config.spring.parsers.AbstractMuleBeanDefinitionParser
addAlias, addBeanFlag, addCollection, addIgnored, addMapping, addMapping, addMapping, addReference, checkElementNameUnique, createBeanDefinitionBuilder, doParse, getBeanAssemblerFactory, getBeanClass, getBeanClassFromAttribute, getBeanName, getClassConstraint, getClassInternal, getParserContext, getRegistry, isAllowClassAttribute, isSingleton, isTopLevel, muleParse, parseInternal, processProperty, registerPostProcessor, registerPreProcessor, removeIgnored, resolveId, setAllowClassAttribute, setBeanAssemblerFactory, setClassConstraint, setDeprecationWarning, setIgnoredDefault, setParserContext, setRegistry
 
Methods inherited from class org.springframework.beans.factory.xml.AbstractBeanDefinitionParser
parse, postProcessComponentDefinition, registerBeanDefinition, shouldFireEvents, shouldGenerateId, shouldGenerateIdAsFallback
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.springframework.beans.factory.xml.BeanDefinitionParser
parse
 

Constructor Detail

AbstractHierarchicalDefinitionParser

public AbstractHierarchicalDefinitionParser()
Method Detail

getTargetPropertyConfiguration

public PropertyConfiguration getTargetPropertyConfiguration()

getParentBeanName

protected String getParentBeanName(Element element)

getParentBeanDefinition

public org.springframework.beans.factory.config.BeanDefinition getParentBeanDefinition(Element element)

getBeanAssembler

protected BeanAssembler getBeanAssembler(Element element,
                                         org.springframework.beans.factory.support.BeanDefinitionBuilder bean)
The bean assembler gives more reliable/automatic processing of collections, maps, etc.

Overrides:
getBeanAssembler in class AbstractMuleBeanDefinitionParser
Parameters:
element - The current element
bean - The bean being constructed
Returns:
An assembler that includes Mule-specific construction logic

getOrphanBeanAssembler

protected BeanAssembler getOrphanBeanAssembler(Element element,
                                               org.springframework.beans.factory.support.BeanDefinitionBuilder bean)
Deprecated. 

Provide access to bean assembler from non-hierarchical case. Legacy support for "mixed" definition parsers.

Parameters:
element -
bean -

forceParent

public void forceParent(org.springframework.beans.factory.config.BeanDefinition parent)

preProcess

protected void preProcess(Element element)
Description copied from class: AbstractMuleBeanDefinitionParser
Hook method that derived classes can implement to modify internal state before processing. Here we make sure that the internal property configuration state is reset to the initial configuration for each element (it may be modified by the BeanAssembler) and that other mutable instance variables are cleared.

Overrides:
preProcess in class AbstractMuleBeanDefinitionParser

postProcess

protected void postProcess(org.springframework.beans.factory.xml.ParserContext context,
                           BeanAssembler assembler,
                           Element element)
Description copied from class: AbstractMuleBeanDefinitionParser
Hook method that derived classes can implement to inspect/change a bean definition after parsing is complete.

Overrides:
postProcess in class AbstractMuleBeanDefinitionParser
assembler - the parsed (and probably totally defined) bean definition being built
element - the XML element that was the source of the bean definition's metadata


Copyright © 2003-2012 MuleSoft, Inc.. All Rights Reserved.