Groovy Documentation

groovy.util
[Java] Class BuilderSupport

java.lang.Object
  groovy.lang.GroovyObjectSupport
      groovy.util.BuilderSupport

public abstract class BuilderSupport
extends GroovyObjectSupport

An abstract base class for creating arbitrary nested trees of objects or events

Authors:
James Strachan
Version:
\$Revision\$


Constructor Summary
BuilderSupport()

BuilderSupport(BuilderSupport proxyBuilder)

BuilderSupport(Closure nameMappingClosure, BuilderSupport proxyBuilder)

 
Method Summary
protected java.lang.Object createNode(java.lang.Object name)

protected java.lang.Object createNode(java.lang.Object name, java.lang.Object value)

protected java.lang.Object createNode(java.lang.Object name, java.util.Map attributes)

protected java.lang.Object createNode(java.lang.Object name, java.util.Map attributes, java.lang.Object value)

protected java.lang.Object doInvokeMethod(java.lang.String methodName, java.lang.Object name, java.lang.Object args)

protected java.lang.Object getCurrent()

protected java.lang.Object getName(java.lang.String methodName)

java.lang.Object invokeMethod(java.lang.String methodName)

Convenience method when no arguments are required

java.lang.Object invokeMethod(java.lang.String methodName, java.lang.Object args)

protected void nodeCompleted(java.lang.Object parent, java.lang.Object node)

A hook to allow nodes to be processed once they have had all of their children applied.

protected java.lang.Object postNodeCompletion(java.lang.Object parent, java.lang.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, java.lang.Object node)

A strategy method to allow derived builders to use builder-trees and switch in different kinds of builders.

protected void setCurrent(java.lang.Object current)

protected void setParent(java.lang.Object parent, java.lang.Object child)

 
Methods inherited from class GroovyObjectSupport
getMetaClass, getProperty, invokeMethod, setMetaClass, setProperty
 
Methods inherited from class java.lang.Object
java.lang.Object#wait(long, int), java.lang.Object#wait(long), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()
 

Constructor Detail

BuilderSupport

public BuilderSupport()


BuilderSupport

public BuilderSupport(BuilderSupport proxyBuilder)


BuilderSupport

public BuilderSupport(Closure nameMappingClosure, BuilderSupport proxyBuilder)


 
Method Detail

createNode

protected java.lang.Object createNode(java.lang.Object name)


createNode

protected java.lang.Object createNode(java.lang.Object name, java.lang.Object value)


createNode

protected java.lang.Object createNode(java.lang.Object name, java.util.Map attributes)


createNode

protected java.lang.Object createNode(java.lang.Object name, java.util.Map attributes, java.lang.Object value)


doInvokeMethod

protected java.lang.Object doInvokeMethod(java.lang.String methodName, java.lang.Object name, java.lang.Object args)


getCurrent

protected java.lang.Object getCurrent()


getName

protected java.lang.Object getName(java.lang.String methodName)


invokeMethod

public java.lang.Object invokeMethod(java.lang.String methodName)
Convenience method when no arguments are required
Parameters:
methodName - the name of the method to invoke
Returns:
the result of the call


invokeMethod

public java.lang.Object invokeMethod(java.lang.String methodName, java.lang.Object args)


nodeCompleted

protected void nodeCompleted(java.lang.Object parent, java.lang.Object node)
A hook to allow nodes to be processed once they have had all of their children applied.
Parameters:
node - the current node being processed
parent - the parent of the node being processed


postNodeCompletion

protected java.lang.Object postNodeCompletion(java.lang.Object parent, java.lang.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
Parameters:
node - the current node being processed
parent - the parent of the node being processed
Returns:
the node, possibly new, that represents the markup element


setClosureDelegate

protected void setClosureDelegate(Closure closure, java.lang.Object node)
A strategy method to allow derived builders to use builder-trees and switch in different kinds of builders. This method should call the setDelegate() method on the closure which by default passes in this but if node is-a builder we could pass that in instead (or do something wacky too)
Parameters:
closure - the closure on which to call setDelegate()
node - the node value that we've just created, which could be a builder


setCurrent

protected void setCurrent(java.lang.Object current)


setParent

protected void setParent(java.lang.Object parent, java.lang.Object child)


 

Groovy Documentation