|
@@ -15,6 +15,7 @@ import io.netty.channel.socket.nio.NioSocketChannel;
|
|
import io.netty.util.concurrent.Future;
|
|
import io.netty.util.concurrent.Future;
|
|
import io.netty.util.concurrent.GenericFutureListener;
|
|
import io.netty.util.concurrent.GenericFutureListener;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
|
import java.net.InetSocketAddress;
|
|
import java.net.InetSocketAddress;
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
@@ -75,7 +76,7 @@ public class Iec104Session implements Runnable {
|
|
case 0x13: //停止命令
|
|
case 0x13: //停止命令
|
|
state = SessionState.STOP104;
|
|
state = SessionState.STOP104;
|
|
//todo: 停止数据的发送
|
|
//todo: 停止数据的发送
|
|
-
|
|
|
|
|
|
+ this.stop();
|
|
return BasicInstruction104.createSysMessage(UControlEnum.STOPDT_YES);
|
|
return BasicInstruction104.createSysMessage(UControlEnum.STOPDT_YES);
|
|
default:
|
|
default:
|
|
return null;
|
|
return null;
|
|
@@ -134,12 +135,17 @@ public class Iec104Session implements Runnable {
|
|
public void run() {
|
|
public void run() {
|
|
try {
|
|
try {
|
|
isRunning = true;
|
|
isRunning = true;
|
|
- //todo: 从redis读取数据,发送到客户端
|
|
|
|
- //1、从redis读取数据,填充aiMap、diMap中,point的value,consumed,lastUpdateTime;
|
|
|
|
|
|
+ while(isRunning) {
|
|
|
|
+ //todo: 从redis读取数据,发送到客户端
|
|
|
|
+ //1、从redis读取数据,填充aiMap、diMap中,point的value,consumed,lastUpdateTime;
|
|
|
|
+
|
|
|
|
+ //2、如果SessionState.CALL_ALL, 全量传输
|
|
|
|
|
|
- //2、如果SessionState.CALL_ALL, 全量传输
|
|
|
|
|
|
+ //3、如果SessionState.CALL_ALL_END,变化传输
|
|
|
|
+
|
|
|
|
+ Thread.sleep(100);
|
|
|
|
+ }
|
|
|
|
|
|
- //3、如果SessionState.CALL_ALL_END,变化传输
|
|
|
|
|
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
|
|