クラス org.objectweb.cjdbc.console.text.module.AbstractConsoleModule

org.objectweb.cjdbc.console.text.module.AbstractConsoleModuleに対する継承グラフ

Inheritance graph
[凡例]
org.objectweb.cjdbc.console.text.module.AbstractConsoleModuleのコラボレーション図

Collaboration graph
[凡例]
すべてのメンバ一覧

説明

This class defines a AbstractConsoleModule

作者:
Nicolas Modrzyk

Mathieu Peltier

バージョン:
1.0

AbstractConsoleModule.java49 行で定義されています。

Public メソッド

 AbstractConsoleModule (Console console)
abstract String getDescriptionString ()
void help ()
void quit ()
TreeSet getCommands ()
abstract String getPromptString ()
void handlePrompt ()
final Hashtable getHashCommands ()
final void handleCommandLine (String commandLine, Hashtable hashCommands) throws Exception
final void manageHistory (String command)
abstract void login (String[] params) throws Exception
Console getConsole ()
LinkedList getHistory ()

Protected メソッド

abstract void loadCommands ()

変数

Console console
TreeSet commands
boolean quit
LinkedList history

Static Private 変数

final int HISTORY_MAX = 10


コンストラクタとデストラクタ

org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.AbstractConsoleModule Console  console  ) 
 

Creates a new AbstractConsoleModule.java object

引数:
console to refer from
AbstractConsoleModule.java62 行で定義されています。

参照先 org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.commands, org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.getDescriptionString(), と org.objectweb.cjdbc.console.text.Console.println().

00063 { 00064 this.console = console; 00065 this.commands = new TreeSet(); 00066 this.history = new LinkedList(); 00067 commands.add(new Help(this)); 00068 commands.add(new History(this)); 00069 commands.add(new Quit(this)); 00070 console.println(ConsoleTranslate.get("module.loading", 00071 getDescriptionString())); 00072 this.loadCommands(); 00073 }


メソッド

TreeSet org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.getCommands  ) 
 

Get all the commands for this module

戻り値:
TreeSet of commands (commandName|commandObject)
AbstractConsoleModule.java118 行で定義されています。

参照先 org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.commands.

00119 { 00120 return commands; 00121 }

Console org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.getConsole  ) 
 

Get access to the console

戻り値:
Console instace
AbstractConsoleModule.java254 行で定義されています。
00255 { 00256 return console; 00257 }

abstract String org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.getDescriptionString  )  [pure virtual]
 

Text description of this module

戻り値:
String description to display

org.objectweb.cjdbc.console.text.module.ControllerConsole, org.objectweb.cjdbc.console.text.module.MonitorConsole, org.objectweb.cjdbc.console.text.module.VirtualDatabaseAdmin, と org.objectweb.cjdbc.console.text.module.VirtualDatabaseConsoleで実装されています.

参照元 org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.AbstractConsoleModule(), org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.handlePrompt(), と org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.help().

final Hashtable org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.getHashCommands  ) 
 

Get the list of commands as strings for this module

戻り値:
Hashtable list of String objects
AbstractConsoleModule.java177 行で定義されています。

参照先 org.objectweb.cjdbc.console.text.commands.ConsoleCommand.getCommandName().

参照元 org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.handlePrompt(), と org.objectweb.cjdbc.console.text.commands.History.parse().

00178 { 00179 Hashtable hashCommands = new Hashtable(); 00180 ConsoleCommand consoleCommand; 00181 Iterator it = commands.iterator(); 00182 while (it.hasNext()) 00183 { 00184 consoleCommand = (ConsoleCommand) it.next(); 00185 hashCommands.put(consoleCommand.getCommandName(), consoleCommand); 00186 } 00187 return hashCommands; 00188 }

LinkedList org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.getHistory  ) 
 

Returns the history value.

戻り値:
Returns the history.
AbstractConsoleModule.java263 行で定義されています。

参照元 org.objectweb.cjdbc.console.text.commands.History.parse().

00264 { 00265 return history; 00266 }

abstract String org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.getPromptString  )  [pure virtual]
 

Get the prompt string for this module

戻り値:
String to place before prompt

org.objectweb.cjdbc.console.text.module.ControllerConsole, org.objectweb.cjdbc.console.text.module.MonitorConsole, org.objectweb.cjdbc.console.text.module.VirtualDatabaseAdmin, と org.objectweb.cjdbc.console.text.module.VirtualDatabaseConsoleで実装されています.

参照元 org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.handlePrompt().

final void org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.handleCommandLine String  commandLine,
Hashtable  hashCommands
throws Exception
 

Handle module command

引数:
commandLine the command line to handle
hashCommands the list of commands available for this module
例外:
Exception if fails
AbstractConsoleModule.java197 行で定義されています。

参照先 org.objectweb.cjdbc.console.text.commands.ConsoleCommand.execute().

参照元 org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.handlePrompt(), と org.objectweb.cjdbc.console.text.commands.History.parse().

00198 { 00199 ConsoleCommand consoleCommand; 00200 StringTokenizer st = new StringTokenizer(commandLine); 00201 if (!st.hasMoreTokens()) 00202 { 00203 console.printError(ConsoleTranslate.get( 00204 "module.command.not.supported", "")); 00205 return; 00206 } 00207 String command = st.nextToken(); 00208 consoleCommand = null; // reinit 00209 try 00210 { 00211 consoleCommand = (ConsoleCommand) hashCommands.get(command); 00212 } 00213 catch (NoSuchElementException e) 00214 { 00215 consoleCommand = null; 00216 } 00217 if (consoleCommand == null) 00218 { 00219 console.printError(ConsoleTranslate.get( 00220 "module.command.not.supported", command)); 00221 } 00222 else 00223 { 00224 consoleCommand.execute(commandLine.substring(command.length())); 00225 } 00226 }

void org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.handlePrompt  ) 
 

Handle a serie of commands

org.objectweb.cjdbc.console.text.module.VirtualDatabaseConsoleで再定義されています。

AbstractConsoleModule.java133 行で定義されています。

参照先 org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.console, org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.getDescriptionString(), org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.getHashCommands(), org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.getPromptString(), org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.handleCommandLine(), org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.manageHistory(), org.objectweb.cjdbc.console.text.Console.printError(), org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.quit, と org.objectweb.cjdbc.console.text.Console.readLine().

00134 { 00135 if (quit) 00136 { 00137 console.printError(ConsoleTranslate.get("module.quitting", 00138 getDescriptionString())); 00139 return; 00140 } 00141 00142 Hashtable hashCommands = getHashCommands(); 00143 00144 //login(); 00145 quit = false; 00146 while (!quit) 00147 { 00148 try 00149 { 00150 String commandLine = console.readLine(getPromptString()); 00151 if (commandLine == null) 00152 { 00153 quit = true; 00154 break; 00155 } 00156 if (commandLine.equals("")) 00157 continue; 00158 else 00159 manageHistory(commandLine); 00160 00161 handleCommandLine(commandLine,hashCommands); 00162 00163 } 00164 catch (Exception e) 00165 { 00166 console.printError(ConsoleTranslate.get("module.command.got.error", 00167 new Object[]{e.getClass(), e.getMessage()}), e); 00168 } 00169 } 00170 }

void org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.help  ) 
 

Display help for this module

org.objectweb.cjdbc.console.text.module.VirtualDatabaseConsoleで再定義されています。

AbstractConsoleModule.java90 行で定義されています。

参照先 org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.commands, org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.console, org.objectweb.cjdbc.console.text.commands.ConsoleCommand.getCommandDescription(), org.objectweb.cjdbc.console.text.commands.ConsoleCommand.getCommandName(), org.objectweb.cjdbc.console.text.commands.ConsoleCommand.getCommandParameters(), org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.getDescriptionString(), と org.objectweb.cjdbc.console.text.Console.println().

参照元 org.objectweb.cjdbc.console.text.commands.Help.parse().

00091 { 00092 console.println(ConsoleTranslate.get("module.commands.available", 00093 getDescriptionString())); 00094 ConsoleCommand command; 00095 Iterator it = commands.iterator(); 00096 while (it.hasNext()) 00097 { 00098 command = (ConsoleCommand) it.next(); 00099 console.println(command.getCommandName() + " " 00100 + command.getCommandParameters(),ColorPrinter.INFO); 00101 console.println(" " + command.getCommandDescription()); 00102 } 00103 }

abstract void org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.loadCommands  )  [protected, pure virtual]
 

Loads the commands for this module

org.objectweb.cjdbc.console.text.module.ControllerConsole, org.objectweb.cjdbc.console.text.module.MonitorConsole, org.objectweb.cjdbc.console.text.module.VirtualDatabaseAdmin, と org.objectweb.cjdbc.console.text.module.VirtualDatabaseConsoleで実装されています.

abstract void org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.login String[]  params  )  throws Exception [pure virtual]
 

Handles login in this module

引数:
params parameters to use to login in this module
例外:
Exception if fails

org.objectweb.cjdbc.console.text.module.ControllerConsole, org.objectweb.cjdbc.console.text.module.MonitorConsole, org.objectweb.cjdbc.console.text.module.VirtualDatabaseAdmin, と org.objectweb.cjdbc.console.text.module.VirtualDatabaseConsoleで実装されています.

final void org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.manageHistory String  command  ) 
 

Add the command to the history. Removes the first item in the list if the history is too large.

引数:
command taken from the command line
AbstractConsoleModule.java234 行で定義されています。

参照元 org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.handlePrompt().

00235 { 00236 history.add(command); 00237 if(history.size()>HISTORY_MAX) 00238 history.removeFirst(); 00239 }

void org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.quit  ) 
 

Quit this module

org.objectweb.cjdbc.console.text.module.ControllerConsole, org.objectweb.cjdbc.console.text.module.VirtualDatabaseAdmin, と org.objectweb.cjdbc.console.text.module.VirtualDatabaseConsoleで再定義されています。

AbstractConsoleModule.java108 行で定義されています。

00109 { 00110 this.quit = true; 00111 }


変数

TreeSet org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.commands [package]
 

AbstractConsoleModule.java52 行で定義されています。

参照元 org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.AbstractConsoleModule(), org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.getCommands(), と org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.help().

Console org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.console [package]
 

AbstractConsoleModule.java51 行で定義されています。

参照元 org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.handlePrompt(), と org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.help().

LinkedList org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.history [package]
 

AbstractConsoleModule.java54 行で定義されています。

final int org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.HISTORY_MAX = 10 [static, private]
 

AbstractConsoleModule.java55 行で定義されています。

boolean org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.quit [package]
 

AbstractConsoleModule.java53 行で定義されています。

参照元 org.objectweb.cjdbc.console.text.module.AbstractConsoleModule.handlePrompt(), と org.objectweb.cjdbc.console.text.commands.Quit.parse().


このクラスの説明は次のファイルから生成されました:
CJDBCversion1.0.4に対してTue Oct 12 15:16:32 2004に生成されました。 doxygen 1.3.8