package JpLAN;
import api.MachineGroup;
import edu.ucsb.jpregel.system.ClientToMaster;
import edu.ucsb.jpregel.system.Master;
import java.io.IOException;
import java.rmi.Naming;
/**
*
* @author charlesmunger
*/
class LANMasterMachineGroup extends MachineGroup<ClientToMaster>
{
public LANMasterMachineGroup()
{
}
@Override
public String getHostname()
{
return "127.0.0.1";
}
@Override
public void reset() throws IOException
{
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public void terminate() throws IOException
{
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public ClientToMaster syncDeploy(String... args)
{
// new Thread(new Runnable()
// {
//
// @Override
// public void run()
// {
// try
// {
// System.out.println("Deploying Master");
// Runtime.getRuntime().exec("java -server -cp ./dist/jpregel-aws.jar:./dist/lib/* -Djava.security.policy=policy JpLAN.LANMaster");
// } catch (IOException ex)
// {
// System.out.println("Failed to start java process." + ex.getLocalizedMessage());
// }
// }
// }).start();
String url = "//" + getHostname() + ":" + Master.PORT + "/" + Master.CLIENT_SERVICE_NAME;
ClientToMaster remoteObject = null;
for (int i = 0;; i += 300)
{
try
{
remoteObject = (ClientToMaster) Naming.lookup(url);
} catch (Exception ex)
{
try
{
Thread.sleep(300);
} catch (InterruptedException ex1)
{
}
continue;
}
break;
}
return remoteObject;
}
}