mentre la seconda classe per reperire le credenziali utente è :
codice:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import com.jcraft.jsch.UserInfo;
public class SshClientUserInfo implements UserInfo {
private String password;
private String passphrase;
/**
* Restituisco la passphrase
* salvata in precedenza
*/
@Override
public String getPassphrase() {
return passphrase;
}
/**
* Restituisco la password
* salvata in precedenza
*/
@Override
public String getPassword() {
return password;
}
/**
* Chiedo all'utente di inserire la passphrase
*/
@Override
public boolean promptPassphrase(String message) {
/**
* Resetto la passphrase precedente
*/
passphrase = null;
/**
* Stampo il messaggio
*/
System.out.println(message);
/**
* Leggo la passphrase
*/
passphrase = readOneLine();
/**
* Controllo l'input
*/
if (passphrase != null && passphrase.length() > 0) {
return true;
} else {
return false;
}
}
/**
* Chiedo all'utente di inserire la password
*/
@Override
public boolean promptPassword(String message) {
/**
* Resetto la passphrase password
*/
password = null;
/**
* Stampo il messaggio
*/
System.out.println(message);
/**
* Leggo la password
*/
password = readOneLine();
/**
* Controllo l'input
*/
if (password != null && password.length() > 0) {
return true;
} else {
return false;
}
}
/**
* Chiedo all'utente di dare l'autorizzazione
* per la connessione ad un host non verificato
*/
@Override
public boolean promptYesNo(String message) {
/**
* Stampo il messaggio
*/
System.out.println(message);
/**
* Verifico se l'utente ha inserito yes
*/
String s = readOneLine();
if ("yes".equalsIgnoreCase(s)) {
return true;
}
return false;
}
/**
* Stampo un messaggio del framework
*/
@Override
public void showMessage(String message) {
System.out.println(message);
}
/**
* Metodo di utility per leggere l'input dell'utente
*/
private String readOneLine() {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
try {
return in.readLine();
} catch (IOException e) {
e.printStackTrace();
return null;
}
}
}