⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 probemanager.java

📁 利用Java Socket写的一段通讯协议
💻 JAVA
字号:
package com.ict.netcom2.trash;

import java.util.*;
import com.ict.netcom2.message.*;
import com.ict.netcom2.net.*;
import com.ict.netcom2.task.*;

public class ProbeManager {

	private Vector<Communicator> probes = new Vector<Communicator>();
	
	public synchronized void addProbe(String ip) {
		Communicator c;
		if ((c = getCommunicator(ip)) != null) {
			probes.removeElement(c);
		}
		c = new Communicator(ip);
		probes.add(c);
	}
	
	public int register(String ip, int netproId, String netcomIp) {
		try {
			return getCommunicator(ip).register(netproId, netcomIp);
		} catch (NullPointerException e) {
			return -1;
		}
	}
	
	public void unRegister(String ip, String netcomIp) {
		try {
			getCommunicator(ip).unRegister(netcomIp);
		} catch (NullPointerException e) {}
	}
	
	public boolean checkLiving(String ip) {
		try {
			return getCommunicator(ip).checkLiving();
		} catch (NullPointerException e) {
			return false;
		}
	}

	public int setComm(String ip, String old, String newComm) {
		try {
			return getCommunicator(ip).setComm(old, newComm);
		} catch (NullPointerException e) {
			return -1;
		}
	}
	
	public SysInfo querySysInfo(String ip) {
		try {
			return getCommunicator(ip).querySysInfo();
		} catch (NullPointerException e) {
			return null;
		}
	}
	
	public QueryTaskRep[] queryTask(String ip) {
		try {
			return getCommunicator(ip).queryTask();
		} catch (NullPointerException e) {
			return null;
		}
	}
	
	public QueryTaskRep queryTask(String ip, int type) {
		try {
			return getCommunicator(ip).queryTask(type);
		} catch (NullPointerException e) {
			return null;
		}
	}
	
	public QueryThreadRep queryThreads(String ip) {
		try {
			return getCommunicator(ip).queryThreads();
		} catch (NullPointerException e) {
			return null;
		}
	} 
	
	public int[] addTask(String ip, Task task) {
		try {
			return getCommunicator(ip).addTask(task);
		} catch(NullPointerException e) {
			return null;
		}
	}
	
	public void stopTask(String ip, int taskId) {
		try {
			getCommunicator(ip).stopTask(taskId);
		} catch(NullPointerException e) {}
	}
	
	public GetResultAck getResult(String ip, Task task) {
		try {
			return getCommunicator(ip).getResult(task);
		} catch(NullPointerException e) {
			return null;
		}
	}
	
	public void notifyTaskStatus(String ip, int netproId, 
			int taskId,	int statusInfo) {
		try {
			getCommunicator(ip).notifyTaskStatus(
					netproId, taskId, statusInfo);
		} catch(NullPointerException e) {}
	}
	
	public void notifyEvent(String ip, int netproId, int priority,
			int eventCode, String value){
		try {
			getCommunicator(ip).notifyEvent(
					netproId, priority, eventCode, value);
		} catch(NullPointerException e) {}
	}
	
	public Vector<Communicator> getProbes() {
		return probes;
	}
	
	private Communicator getCommunicator(String ip) {
		for (int i=0; i<probes.size(); i++) {
			if (probes.elementAt(i).ip.equalsIgnoreCase(ip)) {
				return probes.elementAt(i);
			}
		}
		return null;
	}
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -