public abstract class BuilderSupport extends GroovyObjectSupport
Constructor and Description |
---|
BuilderSupport() |
BuilderSupport(BuilderSupport proxyBuilder) |
BuilderSupport(Closure nameMappingClosure,
BuilderSupport proxyBuilder) |
Modifier and Type | Method and Description |
---|---|
protected abstract Object |
createNode(Object name) |
protected abstract Object |
createNode(Object name,
Map attributes) |
protected abstract Object |
createNode(Object name,
Map attributes,
Object value) |
protected abstract Object |
createNode(Object name,
Object value) |
protected Object |
doInvokeMethod(String methodName,
Object name,
Object args) |
protected Object |
getCurrent() |
protected Object |
getName(String methodName)
A hook to allow names to be converted into some other object
such as a QName in XML or ObjectName in JMX.
|
Object |
invokeMethod(String methodName)
Convenience method when no arguments are required
|
Object |
invokeMethod(String methodName,
Object args)
Invokes the given method.
|
protected void |
nodeCompleted(Object parent,
Object node)
A hook to allow nodes to be processed once they have had all of their
children applied.
|
protected Object |
postNodeCompletion(Object parent,
Object node)
A hook to allow nodes to be processed once they have had all of their
children applied and allows the actual node object that represents
the Markup element to be changed
|
protected void |
setClosureDelegate(Closure closure,
Object node)
A strategy method to allow derived builders to use
builder-trees and switch in different kinds of builders.
|
protected void |
setCurrent(Object current) |
protected abstract void |
setParent(Object parent,
Object child) |
getMetaClass, getProperty, setMetaClass, setProperty
public BuilderSupport()
public BuilderSupport(BuilderSupport proxyBuilder)
public BuilderSupport(Closure nameMappingClosure, BuilderSupport proxyBuilder)
public Object invokeMethod(String methodName)
methodName
- the name of the method to invokepublic Object invokeMethod(String methodName, Object args)
GroovyObject
invokeMethod
in interface GroovyObject
invokeMethod
in class GroovyObjectSupport
methodName
- the name of the method to callargs
- the arguments to use for the method callprotected void setClosureDelegate(Closure closure, Object node)
closure
- the closure on which to call setDelegate()node
- the node value that we've just created, which could be
a builderprotected Object getName(String methodName)
methodName
- the name of the desired methodprotected void nodeCompleted(Object parent, Object node)
node
- the current node being processedparent
- the parent of the node being processedprotected Object postNodeCompletion(Object parent, Object node)
node
- the current node being processedparent
- the parent of the node being processedprotected Object getCurrent()
protected void setCurrent(Object current)