Thread.State, Thread.UncaughtExceptionHandler
Modifier and Type | Field and Description |
---|---|
private Socket |
client |
Command |
closeConnCmd
Kommando zum schliessen der Verbindung (Server horcht weiter)
|
private boolean |
closeConnection |
private CmdMenu |
currentMenu |
private BufferedReader |
in |
private static Debug |
logger |
private BufferedWriter |
out |
private int |
port |
static String |
PROMPT
Das Prompt für die Darstellung einer Eingabeaufforderung an der Konsole
|
private CmdMenu |
rootMenu |
private ServerSocket |
serverSocket |
private boolean |
showHidden
True falls zusätzliche Kommandos angezeigt werden sollen.
|
private boolean |
stopServer |
Command |
stopServerCmd
Kommando zum beenden des Serverdienstes auf localhost
|
private int |
timeout |
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
Constructor and Description |
---|
CmdInterpreter(int port,
int timeOutMinutes)
Erzeugt den Telnet-Server
|
CmdInterpreter(int port,
int timeOutMinutes,
boolean showHidden)
Erzeugt den Telnet-Server
|
CmdInterpreter(int port,
int timeOutMinutes,
CmdMenu root)
Erzeugt den Telnet-Server
|
Modifier and Type | Method and Description |
---|---|
private String |
getHelp(String ind)
Hilfe für Menüeintrag zurückgeben
|
private String |
getUserInput()
Benutzereingabe vom In-Stream lesen und z.B.
|
void |
menuLoop()
Menü anzeigen, Navigation durchführen, Kommandos ausführen
|
void |
println(String str)
Einen Text in den Out-Stream (z.B.
|
private void |
processConnections()
Warten auf Verbindung, Menü in Loop anzeigen, Verbindung schliessen
|
void |
run() |
void |
setMenu(CmdMenu root)
Menü für den Interpreter setzen (falls noch nicht geschehen)
|
private void |
showMenu()
Aktuelles Menü darstellen
|
void |
stopServerCmd()
Beendet den Telnet-Servers.
|
private void |
waitForConnection()
Socket-Verbindung (Telnet) akzeptieren und Timeout setzen
|
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield
private static final Debug logger
public static String PROMPT
private boolean closeConnection
private boolean stopServer
private int port
private int timeout
private CmdMenu currentMenu
private CmdMenu rootMenu
private Socket client
private ServerSocket serverSocket
private BufferedReader in
private BufferedWriter out
private boolean showHidden
public Command closeConnCmd
public Command stopServerCmd
public CmdInterpreter(int port, int timeOutMinutes)
port
- der Port auf dem der Server horchttimeOutMinutes
- Timeout für eine Socket-Verbindungpublic CmdInterpreter(int port, int timeOutMinutes, CmdMenu root)
port
- Port auf dem der Server horchtroot
- das HauptmenütimeOutMinutes
- Timeout für eine Socket-Verbindungpublic CmdInterpreter(int port, int timeOutMinutes, boolean showHidden)
port
- Port auf dem der Server horchttimeOutMinutes
- Timeout für eine Socket-VerbindungshowHidden
- true
falls zusätzliche Kommandos angezeigt werden sollenpublic void run()
run
in interface Runnable
run
in class Thread
Runnable.run()
private void processConnections() throws UnknownHostException, IOException
IOException
UnknownHostException
private void waitForConnection() throws IOException
IOException
public void menuLoop()
private String getUserInput() throws Exception
menuLoop()
zurückgeben, Abbruch bei Überschreitung des Server-TimeoutException
private String getHelp(String ind)
ind
- Index des Menüeintrags (Submenü oder Kommando)public void println(String str) throws Exception
str
- der darzustellende StringException
public void setMenu(CmdMenu root)
root
- das Menüpublic void stopServerCmd() throws IOException
IOException