📄 serverthread.java
字号:
package com.ict.netcom2.net;
import java.io.*;
import java.net.*;
import com.ict.netcom2.hardware.Card;
import com.ict.netcom2.kernel.*;
public class ServerThread extends Thread {
private Socket skt;
private BufferedReader in;
private PrintWriter out;
private Kernel2 core;
public ServerThread(Socket skt, Kernel2 core) {
this.skt = skt;
this.core = core;
}
public void run() {
try {
in = new BufferedReader(new InputStreamReader(
skt.getInputStream()));
out = new PrintWriter(skt.getOutputStream(), true);
String cmd;
while (true) {
cmd = in.readLine();
System.out.println("Get: "+cmd);
if (cmd.startsWith("exit")) {
break;
}
else if (cmd.startsWith("addprobe")) {
String ret = core.addProbe(cmd);
out.println(ret);
out.println("EOF");
}
else if (cmd.startsWith("register")) {
String str = core.register(cmd);
if (str == null) {
out.println("Usage: register [ip] [netproId] [netcomIp]");
out.println("EOF");
continue;
}
out.println(str);
out.println("EOF");
}
else if (cmd.startsWith("addtask")) {
String str = core.selectTaskType(cmd);
if (str == null) {
out.println("Usage: addtask [ip] [delay] [isRoutine]");
out.println("EOF");
continue;
}
out.println(str);
out.println("EOF");
cmd = in.readLine();
str = core.inputTaskParam(cmd);
if (str == null) {
out.println("Type is wrong.");
out.println("EOF");
continue;
}
out.println(str);
out.println("EOF");
cmd = in.readLine();
str = core.addTask(cmd);
if (str == null) {
out.println("Parameter is wrong.");
out.println("EOF");
continue;
}
out.println(str);
out.println("EOF");
}
else if (cmd.startsWith("querytask")) {
String str = core.queryTask(cmd);
if (str == null) {
out.println("Usage: querytask [ip]");
out.println("EOF");
continue;
}
out.println(str);
out.println("EOF");
}
else if (cmd.startsWith("stoptask")) {
String str = core.stopTask(cmd);
if (str == null) {
out.println("Usage: stoptask [ip] [taskId]");
out.println("EOF");
continue;
}
out.println(str);
out.println("EOF");
}
else if (cmd.startsWith("getresult")) {
String str = core.getResult(cmd);
if (str == null) {
out.println("Usage: getresult [ip] [taskId]");
out.println("EOF");
continue;
}
out.println(str);
out.println("EOF");
}
else {
out.println(cmd+ " not supported.");
out.println("EOF");
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -