adams.core.scripting
Class Groovy

java.lang.Object
  extended by adams.core.scripting.Groovy
All Implemented Interfaces:
Serializable

public class Groovy
extends Object
implements Serializable

A helper class for Groovy.

Version:
$Revision: 6842 $
Author:
fracpete (fracpete at waikato dot ac dot nz)
See Also:
scripting.Groovy, Serialized Form

Field Summary
static String CLASS_GROOVYCLASSLOADER
          the classname of the Groovy classloader.
protected  Object m_ClassLoader
          the classloader.
protected static boolean m_Present
          whether the Groovy classes are in the Classpath.
 
Constructor Summary
Groovy()
          default constructor, tries to instantiate a Groovy classloader.
 
Method Summary
 Object getClassLoader()
          returns the currently used Groovy classloader.
static Object invoke(Object o, String methodName, Class[] paramClasses, Object[] paramValues)
          executes the specified method and returns the result, if any.
 Object invoke(String methodName, Class[] paramClasses, Object[] paramValues)
          executes the specified method on the current interpreter and returns the result, if any.
static boolean isPresent()
          returns whether the Groovy classes are present or not, i.e.
static Object[] loadScriptObject(Class cls, adams.core.io.PlaceholderFile scriptFile, GroovyScript inlineScript, String scriptOptions, adams.core.Variables vars)
          Loads the scripts object and sets its options.
static void main(String[] args)
          If no arguments are given, it just prints the presence of the Groovy classes, otherwise it expects a Groovy filename to execute.
static Object newClassLoader()
          initializes and returns a Groovy Interpreter.
static Object newInstance(File file, Class template)
          loads the module and returns a new instance of it as instance of the provided Java class template.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CLASS_GROOVYCLASSLOADER

public static final String CLASS_GROOVYCLASSLOADER
the classname of the Groovy classloader.

See Also:
Constant Field Values

m_Present

protected static boolean m_Present
whether the Groovy classes are in the Classpath.


m_ClassLoader

protected Object m_ClassLoader
the classloader.

Constructor Detail

Groovy

public Groovy()
default constructor, tries to instantiate a Groovy classloader.

Method Detail

getClassLoader

public Object getClassLoader()
returns the currently used Groovy classloader.

Returns:
the classloader, can be null

invoke

public Object invoke(String methodName,
                     Class[] paramClasses,
                     Object[] paramValues)
executes the specified method on the current interpreter and returns the result, if any.

Parameters:
methodName - the name of the method
paramClasses - the classes of the parameters
paramValues - the values of the parameters
Returns:
the return value of the method, if any (in that case null)

isPresent

public static boolean isPresent()
returns whether the Groovy classes are present or not, i.e. whether the classes are in the classpath or not

Returns:
whether the Groovy classes are available

newClassLoader

public static Object newClassLoader()
initializes and returns a Groovy Interpreter.

Returns:
the interpreter or null if Groovy classes not present

newInstance

public static Object newInstance(File file,
                                 Class template)
loads the module and returns a new instance of it as instance of the provided Java class template.

Parameters:
file - the Groovy module file
template - the template for the returned Java object
Returns:
the Groovy object

invoke

public static Object invoke(Object o,
                            String methodName,
                            Class[] paramClasses,
                            Object[] paramValues)
executes the specified method and returns the result, if any.

Parameters:
o - the object the method should be called from, e.g., a Groovy Interpreter
methodName - the name of the method
paramClasses - the classes of the parameters
paramValues - the values of the parameters
Returns:
the return value of the method, if any (in that case null)

loadScriptObject

public static Object[] loadScriptObject(Class cls,
                                        adams.core.io.PlaceholderFile scriptFile,
                                        GroovyScript inlineScript,
                                        String scriptOptions,
                                        adams.core.Variables vars)
Loads the scripts object and sets its options.

Parameters:
cls - the class to instantiate
scriptFile - the external file to load
inlineScript - the inline script to load if external file points to a directory
scriptOptions - the options to set
vars - the variables to use for expanding
Returns:
element 0: error messsage (null if ok), element 1: script object

main

public static void main(String[] args)
If no arguments are given, it just prints the presence of the Groovy classes, otherwise it expects a Groovy filename to execute.

Parameters:
args - commandline arguments


Copyright © 2013 University of Waikato, Hamilton, NZ. All Rights Reserved.