X-Git-Url: https://git.ralfj.de/saartuer.git/blobdiff_plain/56645e3cebe9fd8a49c60d1e7969fe6754625dfd..a7c0b8e1ba3fc6170f14bb0c964e5ac9e9ba4881:/JavaTuer/src/de/hacksaar/javatuer/SshClient.java diff --git a/JavaTuer/src/de/hacksaar/javatuer/SshClient.java b/JavaTuer/src/de/hacksaar/javatuer/SshClient.java deleted file mode 100644 index 7e63d31..0000000 --- a/JavaTuer/src/de/hacksaar/javatuer/SshClient.java +++ /dev/null @@ -1,158 +0,0 @@ -package de.hacksaar.javatuer; - -import com.jcraft.jsch.*; - -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; - -public class SshClient { - private static final String TAG = "SshClient"; - private final String host; - private final String username; - private final int port; - private final JSch jSch; - private final TuerLogging log; - private Session session; - private Channel channel; - - public SshClient(String host, String username, int port, TuerLogging log) { - this.host = host; - this.username = username; - this.port = port; - this.log = log; - JSch.setLogger(log); - jSch = new JSch(); - } - - public void addPrivateKey(String keyFilePath) throws JSchException { - jSch.addIdentity(keyFilePath); - } - - public void addPrivateKey(String keyFilePath, String passphrase) throws JSchException { - jSch.addIdentity(keyFilePath, passphrase); - } - - public void disconnect() { - channel.disconnect(); - channel = null; - session.disconnect(); - session = null; - } - - public String getHost() { - return host; - } - - public InputStream getInputStream() throws IOException { - if (channel == null) { - return null; - } - return channel.getInputStream(); - } - - public OutputStream getOutputStream() throws IOException { - if (channel == null) { - return null; - } - return channel.getOutputStream(); - } - - public int getPort() { - return port; - } - - public String getUsername() { - return username; - } - - public boolean isConnected() { - return channel != null && channel.isConnected() && session != null && session.isConnected(); - } - - public void login(final String password) throws JSchException { - login(new UserInfo() { - - @Override - public String getPassphrase() { - return null; - } - - @Override - public String getPassword() { - return password; - } - - @Override - public boolean promptPassphrase(String s) { - return false; - } - - @Override - public boolean promptPassword(String s) { - return true; - } - - @Override - public boolean promptYesNo(String s) { - return false; - } - - @Override - public void showMessage(String s) { - log.info(TAG, s); - } - }); - } - - public void login() throws JSchException { - login(new UserInfo() { - - @Override - public String getPassphrase() { - return null; - } - - @Override - public String getPassword() { - return null; - } - - @Override - public boolean promptPassphrase(String s) { - return false; - } - - @Override - public boolean promptPassword(String s) { - return false; - } - - @Override - public boolean promptYesNo(String s) { - return false; - } - - @Override - public void showMessage(String s) { - log.info(TAG, s); - } - }); - } - - public void login(UserInfo userInfo) throws JSchException { - log.debug(TAG, "Creating session"); - if (session == null) { - session = jSch.getSession(username, host, port); - } - if (!session.isConnected()) { - session.setUserInfo(userInfo); - log.debug(TAG, "Connecting"); - session.connect(); - log.debug(TAG, "Opening channel"); - channel = session.openChannel("shell"); - channel.connect(); - } - } - -}