xdoclet.ant
Class AntProxy

java.lang.Object
  |
  +--xdoclet.ant.AntProxy
All Implemented Interfaces:
DynamicConfigurator

public class AntProxy
extends Object
implements DynamicConfigurator

When XDoclet is invoked via Ant, Ant will only deal with AntProxy objects (except for the XDocletTask). Any sub element (plugin, predicates...) AntProxy objects will have a reference to the *real* object, and all calls initiated by Ant will be forwarded to these objects via Ant's introspection mechanism.

This means that any class that should be available from Ant must follow Ant's naming conventions for setXxx methods. Any class that wish to have child elements should implement a public Object createElement(String) method (which will be called via reflection by the AntProxy objects). This way XDoclet can maintain Ant compatibility without having any compile-time or runtime dependencies to Ant. The only classes that are tied to Ant in XDoclet are in this package.

Version:
$Revision: 1.7 $
Author:
Aslak Hellesøy
See Also:
XDocletTask

Constructor Summary
AntProxy(XDoclet xdoclet, Object target, Project project, String elementName)
          Constructs a new AntProxy.
 
Method Summary
 Object createDynamicElement(String elementName)
           
 void setDynamicAttribute(String attributeName, String value)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AntProxy

public AntProxy(XDoclet xdoclet,
                Object target,
                Project project,
                String elementName)
         throws BuildException
Constructs a new AntProxy.

Parameters:
target - the object the proxy should act upon.
project - the project that contains the attributes.
elementName - name of the element we're representing.
Method Detail

setDynamicAttribute

public final void setDynamicAttribute(String attributeName,
                                      String value)
                               throws BuildException
Specified by:
setDynamicAttribute in interface DynamicConfigurator
BuildException

createDynamicElement

public final Object createDynamicElement(String elementName)
                                  throws BuildException
Specified by:
createDynamicElement in interface DynamicConfigurator
BuildException


Copyright © 2000-2003 XDoclet Team. All Rights Reserved.