com.norbl.util.ssh
Class Ssh
java.lang.Object
com.norbl.util.ssh.Ssh
public class Ssh
- extends java.lang.Object
Creates an ssh connection using Ganymed.
Constructor Summary |
Ssh()
|
Method Summary |
static void |
closeConnections(java.util.HashMap<java.lang.String,ch.ethz.ssh2.Connection> ht)
|
static java.util.HashMap<java.lang.String,ch.ethz.ssh2.Connection> |
connect(java.util.List<java.lang.String> hosts,
java.lang.String user,
java.io.File pemFile,
long maxWait)
|
static java.util.HashMap<java.lang.String,ch.ethz.ssh2.Connection> |
connect(java.util.List<java.lang.String> hosts,
java.lang.String user,
java.io.File pemFile,
long maxWait,
long maxTotalWait)
|
static ch.ethz.ssh2.Connection |
connect(java.lang.String hostname,
java.lang.String user,
java.io.File pemFile,
long maxWait)
Creates an authenticated connection to ssh, retrying at intervals
if necessary. |
static boolean |
pingSsh(java.lang.String host)
Uses ch.ethz.ssh2.Connection.connect() to test whether
the host is reachable (since InetAddress.isReachable()
does not work). |
static void |
waitForPingSsh(java.lang.String host,
long maxWaitMillis)
Blocks until pingSsh(java.lang.String) }
is successful or we time out. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
N_MAX_RETRIES
public static int N_MAX_RETRIES
RETRY_INTERVAL
public static long RETRY_INTERVAL
Ssh
public Ssh()
connect
public static ch.ethz.ssh2.Connection connect(java.lang.String hostname,
java.lang.String user,
java.io.File pemFile,
long maxWait)
throws ConnectFailureException
- Creates an authenticated connection to ssh, retrying at intervals
if necessary.
- Parameters:
hostname
- user
- pemFile
- maxWait
-
- Returns:
-
- Throws:
ConnectFailureException
- if max wait is reached without a
successful connections and authorization.
connect
public static java.util.HashMap<java.lang.String,ch.ethz.ssh2.Connection> connect(java.util.List<java.lang.String> hosts,
java.lang.String user,
java.io.File pemFile,
long maxWait)
throws ConnectFailureException
- Parameters:
-
- Returns:
- hosts connections keyed by host name;
- Throws:
ConnectFailureException
connect
public static java.util.HashMap<java.lang.String,ch.ethz.ssh2.Connection> connect(java.util.List<java.lang.String> hosts,
java.lang.String user,
java.io.File pemFile,
long maxWait,
long maxTotalWait)
throws ConnectFailureException
- Throws:
ConnectFailureException
closeConnections
public static void closeConnections(java.util.HashMap<java.lang.String,ch.ethz.ssh2.Connection> ht)
pingSsh
public static boolean pingSsh(java.lang.String host)
- Uses ch.ethz.ssh2.Connection.connect() to test whether
the host is reachable (since InetAddress.isReachable()
does not work).
- Parameters:
host
-
- Returns:
waitForPingSsh
public static void waitForPingSsh(java.lang.String host,
long maxWaitMillis)
throws SshPingFailureException
- Blocks until
pingSsh(java.lang.String)
}
is successful or we time out.
- Parameters:
host
-
- Throws:
SshPingFailureException