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

📄 probe.java

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

import java.io.Serializable;

import com.ict.netcom2.task.*;
import com.ict.netcom2.result.*;
import com.ict.netcom2.message.*;
import com.ict.netcom2.net.*;

public class Probe {

	private String ip;
	
	private TaskManager tm;
	private ResultManager2 rm;
	private Communicator2 comm;
	private PasvTaskDaemon2 pDaemon;
	private ActiveTaskDaemon2 aDaemon;

	public Probe(String ip) {
		this.ip = ip;
		comm = new Communicator2(ip, 4, "justatest");
		tm = new TaskManager();
		rm = new ResultManager2();
		pDaemon = new PasvTaskDaemon2(tm, comm, rm, 15);
		aDaemon = new ActiveTaskDaemon2(tm, comm, rm);
	}

	public Probe(String ip, TaskManager tm) {
		this.ip = ip;
		comm = new Communicator2(ip, 4, "justatest");
		this.tm = tm;
		rm = new ResultManager2();
		pDaemon = new PasvTaskDaemon2(tm, comm, rm, 15);
		aDaemon = new ActiveTaskDaemon2(tm, comm, rm);
	}
	
	public String getIp() {
		return ip;
	}
	
	public TaskManager getTaskManager() {
		return tm;
	}
	
	public ActiveTaskDaemon2 getActiveDaemon() {
		return aDaemon;
	}
	
	public int register(int netproId, String netcomIp) {
		return comm.register(netproId, netcomIp);
	}
	
	public void unRegister(String netcomIp) {
		comm.unRegister(netcomIp);
	}
	
	public boolean checkLiving() {
		return comm.checkLiving();
	}

	public int setComm(String old, String newComm) {
		return comm.setComm(old, newComm);
	}
	
	
	public String querySysInfo() {
		SysInfo info = comm.querySysInfo();
		rm.storeSysInfo(info);
		return info.toString();
	}
	
	public String queryTask() {
		QueryTaskRep[] reps = comm.queryTask();
		rm.storeTaskInfo(reps[0]);
		rm.storeTaskInfo(reps[1]);
		return reps[0].toString()+"\n"
			+reps[1].toString();
	}
	
	public String queryTask(int type) {
		QueryTaskRep rep = comm.queryTask(type);
		rm.storeTaskInfo(rep);
		return rep.toString();
	}
	
	public String queryThreads() {
		QueryThreadRep rep = comm.queryThreads();
		rm.storeThreadInfo(rep);
		return rm.toString();
	} 
	
	
	public int[] addTask(long delay, boolean isRoutine,
			TaskParam param) {
		Task task = tm.createTask(delay, isRoutine, param);
		return comm.addTask(task);
	}
	
	public int[] stopTask(int taskId) {
		return comm.stopTask(taskId);
	}
	
	public String getResult(int taskId) {
		GetResultAck ack = comm.getResult(tm.getTask(taskId));
		rm.storeResult(ack);
		return ack.toString();
	}
	
}

⌨️ 快捷键说明

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