public CRaSHSession createSession(Principal user) { return new CRaSHSession(this, user); }
CRaSHSession(final CRaSH crash, Principal user) { // Set variable available to all scripts put("crash", crash); // this.crash = crash; this.user = user; // ClassLoader previous = setCRaSHLoader(); try { for (Language manager : crash.langs) { manager.init(this); } } finally { setPreviousLoader(previous); } }
public void cancel() { ClassLoader previous = crash.setCRaSHLoader(); try { Thread t = thread; if (t != null) { t.interrupt(); } cancelled = true; } finally { crash.setPreviousLoader(previous); } } }
public void close() { ClassLoader previous = setCRaSHLoader(); try { GroovyScript logout = getLifeCycle("logout"); if (logout != null) { logout.setContext(this); logout.run(); } } catch (NoSuchCommandException e) { e.printStackTrace(); } finally { setPreviousLoader(previous); } }
private String eval(String name, String def) { ClassLoader previous = setCRaSHLoader(); try { GroovyShell shell = getGroovyShell(); Object ret = shell.getContext().getVariable(name); if (ret instanceof Closure) { log.log(Level.FINEST, "Invoking " + name + " closure"); Closure c = (Closure)ret; ret = c.call(); } else if (ret == null) { log.log(Level.FINEST, "No " + name + " will use empty"); return def; } return String.valueOf(ret); } catch (Exception e) { log.log(Level.SEVERE, "Could not get a " + name + " message, will use empty", e); return def; } finally { setPreviousLoader(previous); } }
CRaSHSession(final CRaSH crash, Principal user) { // Set variable available to all scripts put("crash", crash); // this.groovyShell = null; this.crash = crash; this.user = user; // try { GroovyScript login = getLifeCycle("login"); if (login != null) { login.setContext(this); login.run(); } } catch (NoSuchCommandException e) { e.printStackTrace(); } }
public String getWelcome() { return eval("welcome", ""); }
/** * For now basic implementation */ public CompletionMatch complete(final String prefix) { ClassLoader previous = setCRaSHLoader(); try { return repl.complete(this, prefix); } finally { setPreviousLoader(previous); } }
public String getPrompt() { return eval("prompt", "% "); }
public void close() { ClassLoader previous = setCRaSHLoader(); try { for (Language manager : crash.langs) { manager.destroy(this); } } finally { setPreviousLoader(previous); } }
CRaSHSession(final CRaSH crash, Principal user, AuthInfo authInfo) { // Set variable available to all scripts put("crash", crash); // this.crash = crash; this.user = user; this.authInfo = authInfo; // ClassLoader previous = setCRaSHLoader(); try { for (Language manager : crash.langs) { manager.init(this); } } finally { setPreviousLoader(previous); } }
public CRaSHSession createSession(Principal user) { return new CRaSHSession(this, user); }
public String getWelcome() { ClassLoader previous = setCRaSHLoader(); try { Compiler groovy = crash.scriptResolver.getCompiler("groovy"); if (groovy != null) { return groovy.doCallBack(this, "welcome", ""); } else { return ""; } } finally { setPreviousLoader(previous); } }
CRaSHSession(final CRaSH crash, Principal user) { // Set variable available to all scripts put("crash", crash); // this.crash = crash; this.user = user; // ClassLoader previous = setCRaSHLoader(); try { for (Language manager : crash.langs) { manager.init(this); } } finally { setPreviousLoader(previous); } }
public CRaSHSession createSession(Principal user, AuthInfo authInfo) { return new CRaSHSession(this, user, authInfo); }
public String getPrompt() { ClassLoader previous = setCRaSHLoader(); try { Compiler groovy = crash.scriptResolver.getCompiler("groovy"); if (groovy != null) { return groovy.doCallBack(this, "prompt", "% "); } else { return "% "; } } finally { setPreviousLoader(previous); } }
public CRaSHSession createSession(Principal user) { return new CRaSHSession(this, user); }
public void execute(ShellProcessContext processContext) { ClassLoader previous = crash.setCRaSHLoader(); try { ShellResponse resp; crash.setPreviousLoader(previous);
public void cancel() { ClassLoader previous = crash.setCRaSHLoader(); try { Thread t = thread; if (t != null) { t.interrupt(); } cancelled = true; } finally { crash.setPreviousLoader(previous); } } }
public void cancel() { ClassLoader previous = crash.setCRaSHLoader(); try { Thread t = thread; if (t != null) { t.interrupt(); } cancelled = true; } finally { crash.setPreviousLoader(previous); } } }