|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object abbot.script.Step abbot.script.Call
public class Call
Class for script steps that want to invoke a method on a class. Subclasses may override getMethod and getTarget to customize behavior.
<call method="..." args="..." class="...">
Field Summary |
---|
Fields inherited from interface abbot.script.XMLConstants |
---|
TAG_ACTION, TAG_APPLETVIEWER, TAG_ARCHIVE, TAG_ARGS, TAG_ASSERT, TAG_AWT, TAG_AWTTESTSCRIPT, TAG_BORDER_TITLE, TAG_CALL, TAG_CLASS, TAG_CLASSPATH, TAG_CODE, TAG_CODEBASE, TAG_COMMENT, TAG_COMPONENT, TAG_COUNT, TAG_DELEGATE, TAG_DESC, TAG_DOCBASE, TAG_EVENT, TAG_EXPR, TAG_FILENAME, TAG_FIXTURE, TAG_FORKED, TAG_HEIGHT, TAG_HORDER, TAG_ICON, TAG_ID, TAG_INDEX, TAG_INVERT, TAG_INVOKER, TAG_KEYCHAR, TAG_KEYCODE, TAG_KIND, TAG_LABEL, TAG_LAUNCH, TAG_METHOD, TAG_MODIFIERS, TAG_NAME, TAG_PARAMS, TAG_PARENT, TAG_POLL_INTERVAL, TAG_PROPERTY, TAG_ROOT, TAG_SAMPLE, TAG_SCRIPT, TAG_SEQUENCE, TAG_SLOW, TAG_STOP_ON_ERROR, TAG_STOP_ON_FAILURE, TAG_TAG, TAG_TERMINATE, TAG_TEXT, TAG_THREADED, TAG_TIMEOUT, TAG_TITLE, TAG_TRIGGER, TAG_TYPE, TAG_VALUE, TAG_VMARGS, TAG_VORDER, TAG_WAIT, TAG_WEIGHTED, TAG_WIDTH, TAG_WINDOW, TAG_X, TAG_Y |
Constructor Summary | |
---|---|
Call(Resolver resolver,
Map attributes)
|
|
Call(Resolver resolver,
String description,
String className,
String methodName,
String[] args)
|
Method Summary | |
---|---|
protected Method |
disambiguateMethod(Method[] methods)
Try to distinguish betwenn the given methods. |
protected Object |
evaluateParameter(Method m,
String param,
Class type)
|
protected Object[] |
evaluateParameters(Method m,
String[] params)
Convert the String representation of the arguments into actual arguments. |
String[] |
getArgs()
Deprecated. use getArguments(). |
String[] |
getArguments()
Return the arguments as an array of String. |
protected String |
getArgumentsDescription()
|
Map |
getAttributes()
Attributes to save in script. |
String |
getDefaultDescription()
Return a reasonable default description for this script step. |
String |
getEncodedArguments()
Convert our argument vector into a single String. |
Method |
getMethod()
Return matching methods to be used for invocation. |
String |
getMethodName()
Method name to save in script. |
protected Method[] |
getMethods()
Return matching methods to be used for invocation. |
protected Object |
getTarget(Method m)
Return the target of the invocation. |
Class |
getTargetClass()
Get the class of the target of the method invocation. |
String |
getTargetClassName()
|
String |
getUsage()
Provide a usage String for this step. |
String |
getXMLTag()
Define the XML tag to use for this script step. |
protected Object |
invoke()
Make the target method invocation. |
protected Method |
resolveMethod(String name,
Class cls,
Class returnType)
Look up the given method name in the given class with the requested return type, having the number of arguments in this step. |
protected Method[] |
resolveMethods(String name,
Class cls,
Class returnType)
Look up all methods in the given class with the given name and return type, having the number of arguments in this step. |
protected void |
runStep()
Implement the step's behavior here. |
void |
setArguments(String encodedArgs)
Designate the arguments for this Call step. |
void |
setArguments(String[] args)
Set the String representation of the arguments for this Call step. |
void |
setMethodName(String mn)
|
void |
setTargetClassName(String cn)
|
Methods inherited from class abbot.script.Step |
---|
addAttributes, addContent, createAttributeMap, createStep, createStep, getDescription, getResolver, parseStepAttributes, resolveClass, resolveTester, run, setDescription, setScriptError, simpleClassName, toEditableString, toString, toXML, toXMLString, usage, usage |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public Call(Resolver resolver, Map attributes)
public Call(Resolver resolver, String description, String className, String methodName, String[] args)
Method Detail |
---|
public String getDefaultDescription()
Step
getDefaultDescription
in class Step
public String getUsage()
Step
getUsage
in class Step
public String getXMLTag()
Step
getXMLTag
in class Step
public String getEncodedArguments()
protected String getArgumentsDescription()
public void setArguments(String[] args)
public void setArguments(String encodedArgs)
for a description of the format.
,
for the preferred method of indicating
the argument list.
public void setMethodName(String mn)
public String getMethodName()
public String getTargetClassName()
public void setTargetClassName(String cn)
public Map getAttributes()
getAttributes
in class Step
public String[] getArgs()
public String[] getArguments()
protected void runStep() throws Throwable
Step
runStep
in class Step
Throwable
protected Object evaluateParameter(Method m, String param, Class type) throws Exception
Exception
protected Object[] evaluateParameters(Method m, String[] params) throws Exception
Exception
protected Object invoke() throws Throwable
evaluateParameters
to convert the String representation
of the arguments into actual arguments.
Tries all matching methods of N arguments.
Throwable
public Method getMethod() throws ClassNotFoundException, NoSuchMethodException
ClassNotFoundException
NoSuchMethodException
protected Method[] getMethods() throws ClassNotFoundException, NoSuchMethodException
ClassNotFoundException
NoSuchMethodException
public Class getTargetClass() throws ClassNotFoundException
ClassNotFoundException
protected Object getTarget(Method m) throws Throwable
Throwable
protected Method[] resolveMethods(String name, Class cls, Class returnType) throws NoSuchMethodException
NoSuchMethodException
- if no matching method is foundgetArguments()
protected Method resolveMethod(String name, Class cls, Class returnType) throws NoSuchMethodException
IllegalArgumentException
- if not exactly one match exists
NoSuchMethodException
getArguments()
protected Method disambiguateMethod(Method[] methods)
IllegalArgumentException
- indicating the appropriate target
method can't be distinguished.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |