|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object SK.gnome.dwarf.GenericService SK.gnome.dwarf.thread.ThreadService SK.gnome.dwarf.main.Command
Defines abstract console command.
Command services may be added (plugged-in) to any Server
implementation.
The Console
service then makes them accessible to the end-user through one of the
input channels (e.g. an interactive command prompt, a remote network connection, etc.),
or they can be executed directly by an other service.
The abstract getDescription()
and execute(Subject, Service, String[], Writer)
methods must be implemented by the subclasses.
The printHelp(PrintWriter)
method may be overriden to provide a detailed instructions
on the command usage.
Field Summary |
Fields inherited from class SK.gnome.dwarf.thread.ThreadService |
daemon, thread |
Fields inherited from class SK.gnome.dwarf.GenericService |
initParameters, parent |
Fields inherited from interface SK.gnome.dwarf.Service |
INITIALIZED, LOG_DEBUG, LOG_ERROR, LOG_FATAL, LOG_INFO, LOG_TRACE, LOG_WARN, LOG_XFER, SHUTDOWN, STARTED, STOPPED |
Constructor Summary | |
Command(java.lang.String name)
Creates a new Command. |
Method Summary | |
protected abstract void |
execute(javax.security.auth.Subject subject,
Service service,
java.lang.String[] args,
java.io.Writer out)
Executes the command. |
abstract java.lang.String |
getDescription()
Returns the command description. |
void |
printHelp(java.io.PrintWriter out)
Prints the command help. |
Methods inherited from class SK.gnome.dwarf.thread.ThreadService |
enableThread, finish, loop, run, setDaemon, shutdown, start, stop |
Methods inherited from class SK.gnome.dwarf.GenericService |
getAuthenticator, getAuthFacility, getFullName, getInitParameter, getInitParameterNames, getLogFacility, getLogger, getName, getParameters, getPrincipal, getShutdownTimeout, getState, init, log, log, login, logout, setAuthFacility, setInitParameters, setLogFacility, toString |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
public Command(java.lang.String name)
The name of the command is typically a name by which the command will be invoked.
Method Detail |
public abstract java.lang.String getDescription()
It should return a short one-line command description.
public void printHelp(java.io.PrintWriter out)
By default it prints the string returned from the getDescription()
method.
It may be overriden to provide more detailed help on the command usage.
out
- the output Writerprotected abstract void execute(javax.security.auth.Subject subject, Service service, java.lang.String[] args, java.io.Writer out) throws CommandException
Executes the command action. This method is called by the console's
Console.execute(Subject, String, Writer)
method. The service parameter
contains a reference to the current working service of the subject executing the
command. Command arguments are passed in via the string array args and the command
output is redirected to the out stream. The command should throw a
CommandException
in the case of an error.
subject
- the subject executing the commandservice
- the current working serviceargs
- the command argumentsout
- the output stream
CommandException
- if the command fails for any reason
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |