|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.inria.ns.reflex.processor.ClassBuilder
public abstract class ClassBuilder
Represents the builder that delivers instances for a specific QName on behalf of a module.
Usually, a builder is used to serve only one kind of class, because a QName is used for only one type of object (an active tag, a property resolver, an XPath function, or a foreign attribute) ; in this case, a concrete implementation is used to deliver just one of this objects.
However, in some rare case, the same QName is used for more than one object. In this case, a builder specific for each object is chained as a back factory, each factory chained is serving one object. A maximum of 4 concrete implementations could be chained, each overrides one of the methods mentionned below.
The following methods of this implementation does nothing, exept looking if this builder is backed by another builder. To be useful, a concrete class must override at least one of the methods :
Constructor Summary | |
---|---|
ClassBuilder()
|
Method Summary | |
---|---|
void |
addBackFactory(ClassBuilder backFactory)
Adds a class factory used for backing this one. |
AbstractAction |
getActiveTag(AbstractAction parent,
Element element)
Return the action delivered by the back factory, or null. |
ForeignAttribute |
getForeignAttribute(String value)
Return the foreign attribute delivered by the back factory, or null. |
PropertyResolver |
getPropertyResolver(QName propertyName)
Return the predefined property delivered by the back factory, or null. |
XPathFunction |
getXPathFunction()
Return the XPath function delivered by the back factory, or null. |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ClassBuilder()
Method Detail |
---|
public void addBackFactory(ClassBuilder backFactory)
backFactory
- The class factory used for backing this one.public AbstractAction getActiveTag(AbstractAction parent, Element element) throws XMLException
parent
- The action depending from.element
- The element to unmarshall.
XMLException
public PropertyResolver getPropertyResolver(QName propertyName) throws ClassNotFoundException, InstantiationException, IllegalAccessException, XMLException
propertyName
- The name of the predefined property.
ClassNotFoundException
InstantiationException
IllegalAccessException
XMLException
public XPathFunction getXPathFunction() throws ClassNotFoundException, InstantiationException, IllegalAccessException, XMLException
ClassNotFoundException
InstantiationException
IllegalAccessException
XMLException
public ForeignAttribute getForeignAttribute(String value) throws ClassNotFoundException, InstantiationException, IllegalAccessException
value
- The value of the foreign attribute.
ClassNotFoundException
InstantiationException
IllegalAccessException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |