當前位置: 首頁>>代碼示例>>Java>>正文


Java GroovyShell.setVariable方法代碼示例

本文整理匯總了Java中groovy.lang.GroovyShell.setVariable方法的典型用法代碼示例。如果您正苦於以下問題:Java GroovyShell.setVariable方法的具體用法?Java GroovyShell.setVariable怎麽用?Java GroovyShell.setVariable使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在groovy.lang.GroovyShell的用法示例。


在下文中一共展示了GroovyShell.setVariable方法的8個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: instantiateScriplet

import groovy.lang.GroovyShell; //導入方法依賴的package包/類
private Object instantiateScriplet(String scripletFilename)
		throws Exception {
	String[] tokens = SorcerUtil.tokenize(scripletFilename, "|");
	Object bean = null;
	Object configurator = null;
	GroovyShell shell = new GroovyShell();
	bean = shell.evaluate(new File(tokens[0]));
	for (int i = 1; i < tokens.length; i++) {
		configurator = shell.evaluate(new File(tokens[i]));
		if ((configurator instanceof Configurator)
				&& (bean instanceof Configurable)) {
			shell.setVariable("configurable", bean);
			bean = ((Configurator) configurator).configure();
		}
	}
	initBean(bean);
	return bean;
}
 
開發者ID:mwsobol,項目名稱:SORCER,代碼行數:19,代碼來源:ProviderDelegate.java

示例2: runGroovyScript

import groovy.lang.GroovyShell; //導入方法依賴的package包/類
private void runGroovyScript() {

        SwingWorker worker = new SwingWorker<String, String>() {
            PrintStream oout = System.out;
            PrintStream oerr = System.err;

            @Override
            protected String doInBackground() throws Exception {
                //JTextAreaWriter writer = new JTextAreaWriter(jTextArea_Output);
                JTextAreaPrintStream printStream = new JTextAreaPrintStream(System.out, jTextArea_Output);
                jTextArea_Output.setText("");

                // Create an instance of the PythonInterpreter                                
                //String[] roots = new String[]{"./src"};
                //GroovyScriptEngine gse = new GroovyScriptEngine(roots);   
                GroovyShell shell = new GroovyShell();
                System.setOut(printStream);
                System.setErr(printStream);
                shell.setVariable("miapp", _parent);

                TextEditorPane textArea = getActiveTextArea();
                String code = textArea.getText();
                try {
                    Script script = shell.parse(code);
                    script.run();
                } catch (Exception e) {
                }

                return "";
            }

            @Override
            protected void done() {
                System.setOut(oout);
                System.setErr(oerr);
            }
        };
        worker.execute();
    }
 
開發者ID:meteoinfo,項目名稱:MeteoInfoMap,代碼行數:40,代碼來源:FrmTextEditor.java

示例3: initialize

import groovy.lang.GroovyShell; //導入方法依賴的package包/類
/**
 * Initialize the engine.
 */
public void initialize(BSFManager mgr, String lang, Vector declaredBeans) throws BSFException {
    super.initialize(mgr, lang, declaredBeans);

    // create a shell
    shell = new GroovyShell(mgr.getClassLoader());

    // register the mgr with object name "bsf"
    shell.setVariable("bsf", new BSFFunctions(mgr, this));

    int size = declaredBeans.size();
    for (int i = 0; i < size; i++) {
        declareBean((BSFDeclaredBean) declaredBeans.elementAt(i));
    }
}
 
開發者ID:apache,項目名稱:groovy,代碼行數:18,代碼來源:GroovyEngine.java

示例4: testGroovy

import groovy.lang.GroovyShell; //導入方法依賴的package包/類
@org.junit.Test
public void testGroovy() throws Exception {
  GroovyShell shell = new GroovyShell();
  shell.setVariable("done", (Runnable) () -> {
    testComplete();
  });
  shell.evaluate(LangTest.class.getResource("/plain/timer.groovy").toURI());
  await();
}
 
開發者ID:vert-x3,項目名稱:vertx-unit,代碼行數:10,代碼來源:LangTest.java

示例5: doWork

import groovy.lang.GroovyShell; //導入方法依賴的package包/類
@Override
public void doWork() throws OperatorException {
	String script = getParameterAsString(PARAMETER_SCRIPT);
	if (getParameterAsBoolean(PARAMETER_STANDARD_IMPORTS)) {
		StringBuffer imports = new StringBuffer();
		imports.append("import com.rapidminer.example.*;\n");
		imports.append("import com.rapidminer.example.set.*;\n");
		imports.append("import com.rapidminer.example.table.*;\n");
		imports.append("import com.rapidminer.operator.*;\n");
		imports.append("import com.rapidminer.tools.Tools;\n");
		imports.append("import java.util.*;\n");

		script = imports.toString() + script;
	}

	Object result;
	try {
		GroovyShell shell = new GroovyShell(Plugin.getMajorClassLoader());
		// GroovyShell shell = new GroovyShell(ScriptingOperator.class.getClassLoader());
		List<IOObject> input = inExtender.getData(IOObject.class, false);
		shell.setVariable("input", input);
		shell.setVariable("operator", this);

		Script parsedScript = shell.parse(script);
		result = parsedScript.run();
	} catch (Throwable e) {
		throw new UserError(this, e, 945, "Groovy", e);
	}
	if (result instanceof Object[]) {
		outExtender.deliver(Arrays.asList((IOObject[]) result));
	} else if (result instanceof List) {
		List<IOObject> results = new LinkedList<IOObject>();
		for (Object single : (List) result) {
			if (single instanceof IOObject) {
				results.add((IOObject) single);
			} else {
				getLogger().warning("Unknown result type: " + single);
			}
		}
		outExtender.deliver(results);
	} else {
		if (result != null) {
			if (result instanceof IOObject) {
				outExtender.deliver(Collections.singletonList((IOObject) result));
				;
			} else {
				getLogger().warning("Unknown result: " + result.getClass() + ": " + result);
			}
		}
	}
}
 
開發者ID:transwarpio,項目名稱:rapidminer,代碼行數:52,代碼來源:ScriptingOperator.java

示例6: evaluate

import groovy.lang.GroovyShell; //導入方法依賴的package包/類
@Override public Object evaluate(Object data) {
    GroovyShell groovy = new GroovyShell();
    groovy.setVariable("data", data);
    return groovy.evaluate(expression);
}
 
開發者ID:cescoffier,項目名稱:fluid,代碼行數:6,代碼來源:GroovyDataExpression.java

示例7: main

import groovy.lang.GroovyShell; //導入方法依賴的package包/類
public static void main(String[] args) {
    if (args.length <= 0) {
        System.out.println("Usage: home [configuaration] [localcopy]");
        return;
    }

    String home = args[0];

    Properties p = new Properties();
    System.setProperty("openejb.home", home);
    p.put(Context.INITIAL_CONTEXT_FACTORY, "org.openejb.client.LocalInitialContextFactory");
    p.put("openejb.loader", "embed");
    p.put("openejb.home", home);

    if (args.length > 1) {
        String conf = args[1];
        System.setProperty("openejb.configuration", conf);
        p.put("openejb.configuration", conf);
    }
    if (args.length > 2) {
        String copy = args[2];
        System.setProperty("openejb.localcopy", copy);
        p.put("openejb.localcopy", copy);
    }
    try {
        InitialContext ctx = new InitialContext(p);

        GroovyShell shell = new GroovyShell();
        shell.setVariable("context", ctx);
        //shell.evaluate("src/test/groovy/j2ee/CreateData.groovy");

        //shell.evaluate("src/main/groovy/ui/Console.groovy");
        GroovyObject console = (GroovyObject) InvokerHelper.invokeConstructorOf("groovy.ui.Console", null);
        console.setProperty("shell", shell);
        console.invokeMethod("run", null);
        /*
        */
    }
    catch (Exception e) {
        System.out.println("Caught: " + e);
    }
}
 
開發者ID:apache,項目名稱:groovy,代碼行數:43,代碼來源:J2eeConsole.java

示例8: doWork

import groovy.lang.GroovyShell; //導入方法依賴的package包/類
@Override
public void doWork() throws OperatorException {		
	String script = getParameterAsString(PARAMETER_SCRIPT);
	if (getParameterAsBoolean(PARAMETER_STANDARD_IMPORTS)) {
		StringBuffer imports = new StringBuffer();
		imports.append("import com.rapidminer.example.*;\n");
		imports.append("import com.rapidminer.example.set.*;\n");
		imports.append("import com.rapidminer.example.table.*;\n");
		imports.append("import com.rapidminer.operator.*;\n");
		imports.append("import com.rapidminer.tools.Tools;\n");
		imports.append("import java.util.*;\n");

		script = imports.toString() + script;
	}

	Object result;
	try {	
		GroovyShell shell = new GroovyShell(Plugin.getMajorClassLoader());
		//GroovyShell shell = new GroovyShell(ScriptingOperator.class.getClassLoader());
		List<IOObject> input = inExtender.getData(IOObject.class, false);		
		shell.setVariable("input", input);
		shell.setVariable("operator", this);

		Script parsedScript = shell.parse(script);
		result = parsedScript.run();
	} catch (Throwable e) {
		throw new UserError(this, e, 945, "Groovy", e);
	}
	if (result instanceof Object[]) {
		outExtender.deliver(Arrays.asList((IOObject[])result));
	} else if (result instanceof List) {
		List<IOObject> results = new LinkedList<IOObject>();
		for (Object single : (List)result) {
			if (single instanceof IOObject) {
				results.add((IOObject)single);
			} else {
				getLogger().warning("Unknown result type: "+single);
			}
		}
		outExtender.deliver(results);			
	} else {
		if (result != null) {
			if (result instanceof IOObject) {
				outExtender.deliver(Collections.singletonList((IOObject)result));;
			} else {
				getLogger().warning("Unknown result: "+result.getClass()+": "+result);
			}
		}			
	}		
}
 
開發者ID:rapidminer,項目名稱:rapidminer-5,代碼行數:51,代碼來源:ScriptingOperator.java


注:本文中的groovy.lang.GroovyShell.setVariable方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。