📄 monitor.java
字号:
package cn.edu.hust.cgcl.biogrid.monitor;
import java.net.InetAddress;
/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/
public class Monitor extends Thread
{
public String monitorId = "M01";
//public MonitorInfo mInfo;
//public MonitorConfiuration mConfiguration;
//public MonitorNode mNode;
public DispatcherGroup dGroup;
public MonitorGroup mGroup;
public int nodePort = 6000;
public LocalMonitorNode localnode;
MonitorNodeManagement nodeManager;
RPCComm mRPCComm;
MonitorJobManagement jobManagement;
private LogFile lf;
public Monitor()
{
}
public void run()
{
if(MonitorConfiuration.MonLogIsActive)
{
lf=new LogFile(MonitorConfiuration.logFileName);
try{
lf.logMonitor_login(InetAddress.getLocalHost().getHostAddress());
}catch(Exception e)
{
e.printStackTrace();
}
}
//monip=InetAddress.getLocalHost().getHostAddress();
//mInfo=new MonitorInfo(monitorId,0,0,0,0,0,0,true);
dGroup = new DispatcherGroup(monitorId, "");
localnode = new LocalMonitorNode();
/*
MonitorConfiuration mconfiguration=new MonitorConfiuration();
//mconfiguration=localnode.monConfig;
mconfiguration.monitorId=localnode.monitorInfo.getMonitorId();
mconfiguration.monitorIp=localnode.monConfig.getMonitorIp();
mconfiguration.joinPort=localnode.monConfig.getJoinPort();
mconfiguration.jobPort=localnode.monConfig.getJobPort();
mconfiguration.queryPort=localnode.monConfig.getQueryPort();
//mGroup = new MonitorGroup(localnode.monitorInfo, );
*/
nodeManager = new MonitorNodeManagement(dGroup,
mGroup,
localnode.monitorInfo,
nodePort,
localnode);
//mRPCComm = new RPCComm(dGroup, );
jobManagement = new MonitorJobManagement(mGroup,
localnode.monitorInfo,
localnode.monConfig.getJobPort());
this.mRPCComm=new RPCComm(this.dGroup, this.jobManagement);
nodeManager.start();
jobManagement.StartJobServer();
mRPCComm.start();
//log
if(MonitorConfiuration.MonLogIsActive)
{
lf=new LogFile(MonitorConfiuration.logFileName);
try{
lf.logMonitor_login_Succ(InetAddress.getLocalHost().getHostAddress(),this.monitorId);
}catch(Exception e)
{
e.printStackTrace();
}
}
try{
while (!interrupted()&&true)
{
Thread.sleep(1000 * 60);
} // while
}
catch(InterruptedException e)
{
System.out.println("Monitor start to quiting...");
quit();//stop the thread. and notify dispatcher and worker to deal with.
System.out.println("Monitor's quitting finished!");
return;
}
System.out.println("Monitor start to quiting...");
quit();
System.out.println("Monitor's quitting finished!");
return;
} // Monitor
public void quit()
{
nodeManager.quit();
jobManagement.quit();
mRPCComm.quit();
//log
if(MonitorConfiuration.MonLogIsActive)
{
lf=new LogFile(MonitorConfiuration.logFileName);
try{
lf.logMonitor_quit(InetAddress.getLocalHost().getHostAddress(),this.monitorId);
}catch(Exception e)
{
e.printStackTrace();
}
}
return;
}
public static void main(String args[])
{
System.out.print("begin\n");
Monitor monitor = new Monitor();
monitor.start();
} // main
} // Monitor
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -