org.apache.commons.betwixt.digester
Class AttributeRule

java.lang.Object
  extended byorg.apache.commons.digester.Rule
      extended byorg.apache.commons.betwixt.digester.RuleSupport
          extended byorg.apache.commons.betwixt.digester.AttributeRule

public class AttributeRule
extends RuleSupport

AttributeRule the digester Rule for parsing the <attribute> elements.

Version:
$Id: AttributeRule.java 438373 2006-08-30 05:17:21Z bayard $
Author:
James Strachan

Field Summary
private  java.lang.Class beanClass
          The Class whose .betwixt file is being digested
private  java.lang.ClassLoader classLoader
          This loads all classes created by name.
private static org.apache.commons.logging.Log log
          Logger
 
Fields inherited from class org.apache.commons.digester.Rule
digester, namespaceURI
 
Constructor Summary
AttributeRule()
          Base constructor
 
Method Summary
 void begin(java.lang.String name, java.lang.String namespace, org.xml.sax.Attributes attributes)
          Process the beginning of this element.
protected  void configureDescriptor(AttributeDescriptor attributeDescriptor)
          Set the Expression and Updater from a bean property name
private  void configureProperty(AttributeDescriptor attributeDescriptor, java.beans.PropertyDescriptor propertyDescriptor)
          Configure an AttributeDescriptor from a PropertyDescriptor
 void end(java.lang.String name, java.lang.String namespace)
          Process the end of this element.
protected  java.lang.Class loadClass(java.lang.String name)
          Loads a class (using the appropriate classloader)
 
Methods inherited from class org.apache.commons.betwixt.digester.RuleSupport
getBeanClass, getProcessedPropertyNameSet, getXMLInfoDigester, getXMLIntrospector
 
Methods inherited from class org.apache.commons.digester.Rule
begin, body, body, end, finish, getDigester, getNamespaceURI, setDigester, setNamespaceURI
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

private static final org.apache.commons.logging.Log log
Logger


classLoader

private java.lang.ClassLoader classLoader
This loads all classes created by name. Defaults to this class's classloader


beanClass

private java.lang.Class beanClass
The Class whose .betwixt file is being digested

Constructor Detail

AttributeRule

public AttributeRule()
Base constructor

Method Detail

begin

public void begin(java.lang.String name,
                  java.lang.String namespace,
                  org.xml.sax.Attributes attributes)
           throws org.xml.sax.SAXException
Process the beginning of this element.

Parameters:
attributes - The attribute list of this element
Throws:
org.xml.sax.SAXException - 1. If the attribute tag is not inside an element tag. 2. If the name attribute is not valid XML attribute name.

end

public void end(java.lang.String name,
                java.lang.String namespace)
Process the end of this element.


loadClass

protected java.lang.Class loadClass(java.lang.String name)
Loads a class (using the appropriate classloader)

Parameters:
name - the name of the class to load
Returns:
the class instance loaded by the appropriate classloader

configureDescriptor

protected void configureDescriptor(AttributeDescriptor attributeDescriptor)
Set the Expression and Updater from a bean property name

Parameters:
attributeDescriptor - configure this AttributeDescriptor from the property with a matching name in the bean class

configureProperty

private void configureProperty(AttributeDescriptor attributeDescriptor,
                               java.beans.PropertyDescriptor propertyDescriptor)
Configure an AttributeDescriptor from a PropertyDescriptor

Parameters:
attributeDescriptor - configure this AttributeDescriptor
propertyDescriptor - configure from this PropertyDescriptor