--- /dev/null
+package de.hacksaar.javatuer;
+
+import com.jcraft.jsch.UserInfo;
+
+public abstract class InteractiveLogin implements UserInfo {
+ private String password;
+ private String passphrase;
+
+ @Override
+ public String getPassphrase() {
+ return passphrase;
+ }
+
+ @Override
+ public String getPassword() {
+ return password;
+ }
+
+ public abstract String promptKeyPassphrase(String question);
+
+ @Override
+ public boolean promptPassphrase(String s) {
+ passphrase = promptKeyPassphrase(s);
+ return passphrase != null;
+ }
+
+ @Override
+ public boolean promptPassword(String s) {
+ password = promptUserPassword(s);
+ return password != null;
+ }
+
+ public abstract String promptUserPassword(String question);
+}