public class CommandLineSession
extends java.lang.Object
implements java.lang.Runnable
Modifier and Type | Field and Description |
---|---|
protected java.lang.StringBuffer |
buffer |
protected long |
commandDelay |
protected boolean |
confmode |
protected boolean |
connected |
protected boolean |
debug |
protected boolean |
disconnect_after_read |
static int |
DO |
static int |
DONT |
protected boolean |
enabled |
protected java.lang.StringBuffer |
fullBuffer |
static int |
IAC |
protected java.io.InputStream |
in |
protected boolean |
isIOS |
protected boolean |
loggedin |
protected long |
maxWaitTime |
protected java.io.PrintWriter |
pw |
protected int |
searchIndex |
protected boolean |
sendCtrlC |
protected boolean |
sendMarker |
protected ConnectionIf |
transport |
static int |
WILL |
static int |
WONT |
Constructor and Description |
---|
CommandLineSession(ConnectionIf trans) |
CommandLineSession(ConnectionIf trans,
boolean disconnect_after_read) |
Modifier and Type | Method and Description |
---|---|
protected void |
_connect() |
void |
clearBuffer() |
void |
connect() |
void |
disconnect() |
boolean |
doCatOSLoginByExclusion(java.lang.String login,
java.lang.String password,
java.lang.String prompt)
Do login sequence with IOS-like Telnet Servers by exclusion.
|
boolean |
doEnable(java.lang.String enablePassword) |
boolean |
doIOSLogin(java.lang.String login,
java.lang.String password,
java.lang.String prompt)
Do login sequence with IOS-like Telnet Servers
|
boolean |
doLinuxApplianceLogin(java.lang.String login,
java.lang.String password,
java.lang.String prompt) |
boolean |
doLinuxLogin(java.lang.String login,
java.lang.String password)
Do login sequence with linux based Telnet Servers
|
boolean |
doLogin(java.lang.String login,
java.lang.String password,
java.lang.String prompt) |
static void |
doTelnetNegotiations(ConnectionIf trans) |
void |
dumpBuffer() |
java.lang.String |
executeAndGetOutput(java.lang.String command) |
java.lang.String |
executeAndGetOutput(java.lang.String command,
long delay) |
java.lang.String |
executeAndGetOutputForNexus(java.lang.String command,
long resDelay) |
java.lang.String |
executeAndGetOutputIOS(java.lang.String command) |
java.lang.String |
executeCLIAndGetOutput(java.lang.String command,
boolean firstCLI) |
int |
expect(java.lang.String token) |
int |
expect(java.lang.String[] token) |
java.lang.String |
getBuffer() |
java.lang.String |
getBufferAndClear() |
long |
getCommandDelay() |
int |
getExitCode() |
int |
getSearchIndex() |
boolean |
handleTerminalServer() |
boolean |
isConfMode() |
boolean |
isConnected() |
boolean |
isDebugEnabled() |
boolean |
isEnableMode() |
boolean |
isIOS() |
boolean |
isLoggedIn() |
boolean |
isSendCtrlC() |
boolean |
isSendMarker() |
void |
logDebug(java.lang.String msg) |
static void |
logError(java.lang.String msg) |
static void |
logInfo(java.lang.String msg) |
static void |
logWarn(java.lang.String msg) |
static void |
main(java.lang.String[] args) |
static void |
main1(java.lang.String[] args)
SSH test routine
|
static void |
main2(java.lang.String[] args) |
void |
resetSearchIndex() |
void |
run() |
void |
send(java.lang.String s) |
void |
sendCtrlC() |
void |
sendCtrlC(boolean flush) |
void |
sendCtrlX() |
void |
sendln(java.lang.String s) |
void |
setCommandDelay(long commandDelay) |
void |
setConfMode(boolean isConfMode) |
void |
setIOS(boolean isIOS) |
void |
setMaxWaitTime(long waitTimeMilliSec) |
void |
setSendCtrlC(boolean sendCtrlC) |
void |
setSendMarker(boolean sendMarker) |
void |
setupTerminal() |
void |
setupTerminal(java.lang.String setupCommand) |
static boolean |
verifyLogin(ConnectionIf trans,
java.lang.String login,
java.lang.String password)
Utility class to verify login in a TELNET session from outside.
|
public static final int WILL
public static final int WONT
public static final int DO
public static final int DONT
public static final int IAC
protected ConnectionIf transport
protected java.lang.StringBuffer fullBuffer
protected java.lang.StringBuffer buffer
protected int searchIndex
protected java.io.InputStream in
protected java.io.PrintWriter pw
protected boolean connected
protected boolean loggedin
protected boolean enabled
protected boolean confmode
protected boolean sendCtrlC
protected long maxWaitTime
protected boolean disconnect_after_read
protected boolean isIOS
protected boolean sendMarker
protected long commandDelay
protected boolean debug
public CommandLineSession(ConnectionIf trans)
public CommandLineSession(ConnectionIf trans, boolean disconnect_after_read)
public long getCommandDelay()
public void setCommandDelay(long commandDelay)
commandDelay
- the commandDelay to setpublic boolean isSendMarker()
public void setSendMarker(boolean sendMarker)
sendMarker
- the sendMarker to setpublic void setMaxWaitTime(long waitTimeMilliSec)
public boolean isLoggedIn()
public boolean isConnected()
public boolean isEnableMode()
public boolean isConfMode()
public void connect() throws java.lang.Exception
java.lang.Exception
protected void _connect() throws java.lang.Exception
java.lang.Exception
public static void doTelnetNegotiations(ConnectionIf trans) throws java.lang.Exception
java.lang.Exception
public static boolean verifyLogin(ConnectionIf trans, java.lang.String login, java.lang.String password) throws java.lang.Exception
java.lang.Exception
public void disconnect() throws java.lang.Exception
java.lang.Exception
public void run()
run
in interface java.lang.Runnable
public void setConfMode(boolean isConfMode)
public int getSearchIndex()
public void resetSearchIndex()
public void sendCtrlX()
public void sendCtrlC()
public void sendCtrlC(boolean flush)
public boolean isIOS()
public void setIOS(boolean isIOS)
isIOS
- the isIOS to setpublic java.lang.String executeAndGetOutput(java.lang.String command, long delay)
public java.lang.String executeAndGetOutput(java.lang.String command)
public java.lang.String executeAndGetOutputIOS(java.lang.String command)
public java.lang.String executeAndGetOutputForNexus(java.lang.String command, long resDelay)
public void send(java.lang.String s)
public void sendln(java.lang.String s)
public java.lang.String getBuffer()
public java.lang.String getBufferAndClear()
public void clearBuffer()
public void dumpBuffer()
public int expect(java.lang.String token)
public int expect(java.lang.String[] token)
public void setupTerminal()
public void setupTerminal(java.lang.String setupCommand)
public boolean doLogin(java.lang.String login, java.lang.String password, java.lang.String prompt)
public boolean doLinuxApplianceLogin(java.lang.String login, java.lang.String password, java.lang.String prompt)
public boolean handleTerminalServer()
public boolean doLinuxLogin(java.lang.String login, java.lang.String password)
public java.lang.String executeCLIAndGetOutput(java.lang.String command, boolean firstCLI)
public boolean doCatOSLoginByExclusion(java.lang.String login, java.lang.String password, java.lang.String prompt)
public boolean doIOSLogin(java.lang.String login, java.lang.String password, java.lang.String prompt)
public boolean doEnable(java.lang.String enablePassword)
public void logDebug(java.lang.String msg)
public static void logInfo(java.lang.String msg)
public static void logWarn(java.lang.String msg)
public static void logError(java.lang.String msg)
public boolean isDebugEnabled()
public static void main1(java.lang.String[] args)
public static void main2(java.lang.String[] args)
public static void main(java.lang.String[] args)
public boolean isSendCtrlC()
public void setSendCtrlC(boolean sendCtrlC)
public int getExitCode()