com.sshtools.j2ssh.session

Class SessionOutputReader


public class SessionOutputReader
extends java.lang.Object

This class provides a utility to read and parse the output a session, providing methods to wait for specific strings such as the prompt or command input requests.
Version:
$Revision: 1.13 $
Author:
Lee David Painter
Since:
0.2.1

Constructor Summary

SessionOutputReader(SessionChannelClient session)
Contructs the session reader.

Method Summary

void
echoLineByLineToClose(SessionOutputEcho echo)
String
getMarkedOutput()
Returns a string containing the session output from the current marked position to the end of the output.
String
getOutput()
Returns the output of the entire session.
int
getPosition()
Returns the current position of the session input pointer.
void
markCurrentPosition()
Marks the current position.
void
markPosition(int mark)
Mark the postion specified for filtering session output.
boolean
waitForString(String str)
Wait for a given String in the output buffer.
boolean
waitForString(String str, SessionOutputEcho echo)
Wait for a given String in the output buffer.
boolean
waitForString(String str, int timeout)
Wait for a given String in the output buffer.
boolean
waitForString(String str, int timeout, SessionOutputEcho echo)
Wait for a given String in the output buffer.

Constructor Details

SessionOutputReader

public SessionOutputReader(SessionChannelClient session)
Contructs the session reader.
Parameters:
session - the to read

Method Details

echoLineByLineToClose

public void echoLineByLineToClose(SessionOutputEcho echo)
            throws InterruptedException
Parameters:
echo -

getMarkedOutput

public String getMarkedOutput()
Returns a string containing the session output from the current marked position to the end of the output.
Returns:
a string containing the session output from the marked position to current position

getOutput

public String getOutput()
Returns the output of the entire session.
Returns:
a string containing the entire output of the session so far.

getPosition

public int getPosition()
Returns the current position of the session input pointer. This pointer is set to the position of the matched string everytime a match is found during a call by waitForString
Returns:
the current input reader pointer

markCurrentPosition

public void markCurrentPosition()
Marks the current position.

markPosition

public void markPosition(int mark)
Mark the postion specified for filtering session output.
Parameters:
mark - output position to mark

waitForString

public boolean waitForString(String str)
            throws InterruptedException
Wait for a given String in the output buffer. This method will block until the string is found.
Parameters:
str - the string to wait for
Returns:
true if the string was found, otherwise false
See Also:
waitForString(String, int, SessionOutputEcho)

waitForString

public boolean waitForString(String str,
                             SessionOutputEcho echo)
            throws InterruptedException
Wait for a given String in the output buffer.
Parameters:
str - the string to wait for
echo - a callback interface to receive the session output whilst the no match for the string is found
Returns:
true if the string was found, otherwise false
See Also:
waitForString(String, int, SessionOutputEcho)

waitForString

public boolean waitForString(String str,
                             int timeout)
            throws InterruptedException
Wait for a given String in the output buffer.
Parameters:
str - the string to wait for
timeout - the number of milliseconds to wait
Returns:
true if the string was found, otherwise false
See Also:
waitForString(String, int, SessionOutputEcho)

waitForString

public boolean waitForString(String str,
                             int timeout,
                             SessionOutputEcho echo)
            throws InterruptedException
Wait for a given String in the output buffer. When this method is called the method will block unitil either the String arrives in the input buffer or the timeout specified has elasped.
Parameters:
str - the string to wait for
timeout - the number of milliseconds to wait, 0=infinite
echo - a callback interface to receive the session output whilst the no match for the string is found
Returns:
true if the string was found, otherwise false

Copyright © 2002-2003 Lee David Painter & Contributors. All Rights Reserved.