001 package org.crsh.command;
002
003 import groovy.lang.Closure;
004
005 /** @author <a href="mailto:julien.viet@exoplatform.com">Julien Viet</a> */
006 class CommandClosure extends Closure {
007
008
009 /** . */
010 private final CommandDispatcher dispatcher;
011
012 /** . */
013 private final String name;
014
015 CommandClosure(CommandDispatcher dispatcher, String name) {
016 super(dispatcher);
017
018 //
019 this.dispatcher = dispatcher;
020 this.name = name;
021 }
022
023 @Override
024 public Object call(Object[] args) {
025 return dispatcher.dispatch(name, args);
026 }
027 }
028
029
030