protected AdminHelpCommand(Groovysh shell) { super(shell, "adminhelp", "\\ah"); //$NON-NLS-1$ //$NON-NLS-2$ //hook to introduce default imports final String[] imports = GroovyAdminConsole.IMPORTS.split("\n"); //$NON-NLS-1$ for(String aimport : imports){ shell.execute(aimport); } //for backwards compatibility add aliases to 1.7 Groovy commands for (Command cmd :new ArrayList<Command>(shell.getRegistry().commands())) { if (cmd.getHidden()) { continue; } String name = cmd.getName(); if (name.startsWith(":")) { //$NON-NLS-1$ shell.execute(":alias " + name.substring(1) + " " + name); //$NON-NLS-1$ //$NON-NLS-2$ String shortCut = cmd.getShortcut(); if (shortCut.startsWith(":")) { //$NON-NLS-1$ shell.execute(":alias \\" + shortCut.substring(1) + " " + name); //$NON-NLS-1$ //$NON-NLS-2$ } } } }
@SuppressWarnings({"unchecked", "serial"}) private void loadDefaultScripts(final Groovysh shell) { if (!defaultScripts.isEmpty()) { Closure<Groovysh> defaultResultHook = shell.getResultHook(); try { // Set a "no-op closure so we don't get per-line value output when evaluating the default script shell.setResultHook(new Closure<Groovysh>(this) { @Override public Groovysh call(Object... args) { return shell; } }); org.codehaus.groovy.tools.shell.Command cmd = shell.getRegistry().find(":load"); for (String script : defaultScripts) { cmd.execute(asList(script)); } } finally { // Restoring original result hook shell.setResultHook(defaultResultHook); } } }