Package org.apache.ivy.util
Class Configurator
- java.lang.Object
-
- org.apache.ivy.util.Configurator
-
public class Configurator extends java.lang.ObjectAnt 1.6.1 like ConfiguratorThis configurator is used to configure elements (initialised with setRoot) using the behaviour defined by ant for its tasks.
Example (based on Ant Example):
Configurator conf = new Configurator(); conf.typeDef("buildpath", "Sample$BuildPath"); conf.typeDef("xinterface", "Sample$XInterface"); Sample.MyFileSelector mfs = new Sample.MyFileSelector(); conf.setRoot(mfs); conf.startCreateChild("buildpath"); conf.setAttribute("path", "."); conf.setAttribute("url", "abc"); conf.startCreateChild("xinterface"); conf.setAttribute("count", "4"); conf.endCreateChild(); // xinterface conf.endCreateChild(); // buildpath
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classConfigurator.Attributestatic classConfigurator.Elementstatic classConfigurator.Macrostatic classConfigurator.MacroDefstatic classConfigurator.MacroRecordprivate static classConfigurator.ObjectDescriptor
-
Field Summary
Fields Modifier and Type Field Description private FileResolverfileResolverprivate java.util.Map<java.lang.String,Configurator.MacroDef>macrodefsprivate java.util.Stack<Configurator.ObjectDescriptor>objectStackprivate static java.util.List<java.lang.String>TRUE_VALUESprivate java.util.Map<java.lang.String,java.lang.Class<?>>typedefs
-
Constructor Summary
Constructors Constructor Description Configurator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddChild(java.lang.String name, java.lang.Object child)private java.lang.ObjectaddChild(Configurator.ObjectDescriptor parentOD, java.lang.Class<?> childClass, java.lang.String name, java.lang.Object child)voidaddConfiguredMacrodef(Configurator.MacroDef macrodef)voidaddMacroAttribute(java.lang.String attName, java.lang.String attDefaultValue)voidaddMacroElement(java.lang.String elementName, boolean optional)voidaddText(java.lang.String text)voidclear()java.lang.ObjectendCreateChild()voidendMacroDef()java.lang.ObjectgetCurrent()intgetDepth()FileResolvergetFileResolver()java.lang.Class<?>getTypeDef(java.lang.String name)booleanisTopLevelMacroRecord()voidsetAttribute(java.lang.String attributeName, java.lang.String value)private voidsetCurrent(java.lang.Object object, java.lang.String name)voidsetFileResolver(FileResolver fileResolver)voidsetRoot(java.lang.Object root)java.lang.ObjectstartCreateChild(java.lang.String name)Configurator.MacroDefstartMacroDef(java.lang.String macroName)voidtypeDef(java.lang.String name, java.lang.Class<?> clazz)voidtypeDef(java.lang.String name, java.lang.String className)
-
-
-
Field Detail
-
fileResolver
private FileResolver fileResolver
-
typedefs
private java.util.Map<java.lang.String,java.lang.Class<?>> typedefs
-
macrodefs
private java.util.Map<java.lang.String,Configurator.MacroDef> macrodefs
-
objectStack
private java.util.Stack<Configurator.ObjectDescriptor> objectStack
-
TRUE_VALUES
private static final java.util.List<java.lang.String> TRUE_VALUES
-
-
Method Detail
-
typeDef
public void typeDef(java.lang.String name, java.lang.String className) throws java.lang.ClassNotFoundException- Throws:
java.lang.ClassNotFoundException
-
typeDef
public void typeDef(java.lang.String name, java.lang.Class<?> clazz)
-
setRoot
public void setRoot(java.lang.Object root)
-
clear
public void clear()
-
setCurrent
private void setCurrent(java.lang.Object object, java.lang.String name)
-
startCreateChild
public java.lang.Object startCreateChild(java.lang.String name)
-
addChild
public void addChild(java.lang.String name, java.lang.Object child)
-
addChild
private java.lang.Object addChild(Configurator.ObjectDescriptor parentOD, java.lang.Class<?> childClass, java.lang.String name, java.lang.Object child) throws java.lang.InstantiationException, java.lang.IllegalAccessException, java.lang.reflect.InvocationTargetException
- Throws:
java.lang.InstantiationExceptionjava.lang.IllegalAccessExceptionjava.lang.reflect.InvocationTargetException
-
isTopLevelMacroRecord
public boolean isTopLevelMacroRecord()
-
setAttribute
public void setAttribute(java.lang.String attributeName, java.lang.String value)
-
addText
public void addText(java.lang.String text)
-
endCreateChild
public java.lang.Object endCreateChild()
- Returns:
- the finished child
-
getCurrent
public java.lang.Object getCurrent()
-
getDepth
public int getDepth()
-
startMacroDef
public Configurator.MacroDef startMacroDef(java.lang.String macroName)
-
addMacroAttribute
public void addMacroAttribute(java.lang.String attName, java.lang.String attDefaultValue)
-
addMacroElement
public void addMacroElement(java.lang.String elementName, boolean optional)
-
endMacroDef
public void endMacroDef()
-
addConfiguredMacrodef
public void addConfiguredMacrodef(Configurator.MacroDef macrodef)
-
getTypeDef
public java.lang.Class<?> getTypeDef(java.lang.String name)
-
getFileResolver
public FileResolver getFileResolver()
-
setFileResolver
public void setFileResolver(FileResolver fileResolver)
-
-