To create a new builder like a the MarkupBuilder or AntBuilder, you have to implement in java (in groovy later too) a subclass of the groovy.util.BuilderSupport class.
The main methods to be implemnted are the following :
- protected abstract void setParent(Object parent, Object child);
- protected abstract Object createNode(Object name);
- protected abstract Object createNode(Object name, Object value);
- protected abstract Object createNode(Object name, Map attributes);
- protected abstract Object createNode(Object name, Map attributes, Object value);
- protected Object getName(String methodName)
The BuilderSupport.java class
The NodeBuilder example
The MarkupBuilder.java class as second example
Labels