package com.github.martinprillard.shavadoop.network;
import com.jcabi.ssh.Shell;
import com.github.martinprillard.shavadoop.util.Constant;
import com.github.martinprillard.shavadoop.util.PropReader;
/**
*
* @author martin prillard
*
*/
public class ShellThread extends Thread {
protected int shellPort;
protected String distantHost;
protected String fileToTreat;
protected String dsaKey;
protected Shell shell;
protected int nbWorkerMax;
protected String username;
protected SSHManager sm;
public ShellThread(SSHManager _sm, String _distantHost, String _fileToTreat) {
sm = _sm;
distantHost = _distantHost;
fileToTreat = _fileToTreat;
username = sm.getUsername();
shellPort = sm.getShellPort();
dsaKey = sm.getDsaKey();
PropReader prop = new PropReader();
nbWorkerMax = Integer.parseInt(prop.getPropValues(PropReader.WORKER_MAX));
}
/**
* Generate a cmd command to execute the shavadoop's jar
*
* @param pathJar
* @param nbWorker
* @param host
* @param method
* @param fileToTreat
* @param idWorker
* @return cmd shavadoop jar
*/
public String getCmdJar(String pathJar, String nbWorker, String host, String method, String fileToTreat, String idWorker) {
return "java -jar" + Constant.SEP_WORD + pathJar + Constant.SEP_WORD + nbWorker + Constant.SEP_WORD + idWorker + Constant.SEP_WORD + host + Constant.SEP_WORD + method + Constant.SEP_WORD + fileToTreat;
}
}