}
/** <p> Create an <code>SimpleMPSSolver</code> as a solver thread and starts it. </p> */
public void compute(String username, String problemName, HashMap<String, String> inputFiles, int inputType) throws java.rmi.RemoteException {
HashMap<String, NBOPlugin> threads = (users.get(username).getThreads());
NBOPlugin thread = null;
int uniqueHash = Integer.parseInt(inputFiles.get("properties.txt").split("hashcode: ")[1].split("\n")[0]);
if (inputType == NBOPlugin.LP)
thread = new SimpleMPSSolver(users.get(username), problemName, inputFiles);
if (inputType == NBOPlugin.MILP)
thread = new MILPSolver(users.get(username), problemName, inputFiles);
if (inputType == NBOPlugin.GEOM)
thread = new GEOMSolver(users.get(username), problemName, inputFiles);
if (inputType == NBOPlugin.RES_ALLOC)
thread = new ResourceAllocationSolver(users.get(username), problemName, inputFiles);
if (thread != null) {
thread.setName("ServerThread of " + username + "_" + uniqueHash);
threads.put(problemName, thread);
(threads.get(problemName)).start();
}
logger.info("THREAD (" + thread.getName() + ") started for " + username + "'s problem " + problemName + ".");
return;
}