From 34e454267496aea7721b50e50025e5d55b9a3a32 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期二, 04 八月 2020 17:15:08 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/ThreadHandler.java | 7 ++
src/main/java/com/zy/core/thread/CrnThread.java | 22 +++++++
src/main/java/com/zy/core/thread/DevpThread.java | 13 ++++
src/main/java/com/zy/core/ServerBootstrap.java | 25 ++++++++
src/main/java/com/zy/core/cache/SlaveConnection.java | 55 ++++++++++++++++++
5 files changed, 121 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/zy/core/ServerBootstrap.java b/src/main/java/com/zy/core/ServerBootstrap.java
index b532458..af7d7e1 100644
--- a/src/main/java/com/zy/core/ServerBootstrap.java
+++ b/src/main/java/com/zy/core/ServerBootstrap.java
@@ -1,7 +1,10 @@
package com.zy.core;
import com.alibaba.fastjson.JSON;
+import com.core.common.Cools;
import com.zy.core.properties.SlaveProperties;
+import com.zy.core.thread.CrnThread;
+import com.zy.core.thread.DevpThread;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@@ -22,10 +25,30 @@
@PostConstruct
public void init(){
- System.out.println(JSON.toJSONString(slaveProperties));
+ // 鍒濆鍖栦笅浣嶆満绾跨▼
+ initThread();
+ }
+
+
+ private void initThread(){
+ // 鍒濆鍖栧爢鍨涙満绾跨▼
+ if (!Cools.isEmpty(slaveProperties.getCrn())) {
+ for (Slave crn : slaveProperties.getCrn()) {
+ CrnThread crnThread = new CrnThread(crn);
+ new Thread(crnThread).start();
+ }
+ }
+// // 鍒濆鍖栫珯鐐圭嚎绋�
+// if (!Cools.isEmpty(slaveProperties.getDevp())) {
+// for (Slave devo : slaveProperties.getDevp()) {
+// DevpThread devpThread = new DevpThread(crn);
+// new Thread(devpThread).start();
+// }
+// }
}
+
@PreDestroy
public void destroy() {
}
diff --git a/src/main/java/com/zy/core/ThreadHandler.java b/src/main/java/com/zy/core/ThreadHandler.java
new file mode 100644
index 0000000..c4911f4
--- /dev/null
+++ b/src/main/java/com/zy/core/ThreadHandler.java
@@ -0,0 +1,7 @@
+package com.zy.core;
+
+public interface ThreadHandler {
+
+ void close();
+
+}
diff --git a/src/main/java/com/zy/core/cache/SlaveConnection.java b/src/main/java/com/zy/core/cache/SlaveConnection.java
new file mode 100644
index 0000000..a3dbdea
--- /dev/null
+++ b/src/main/java/com/zy/core/cache/SlaveConnection.java
@@ -0,0 +1,55 @@
+package com.zy.core.cache;
+
+import com.zy.core.ThreadHandler;
+
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+
+/**
+ * Created by vincent on 2020/8/4
+ */
+public class SlaveConnection {
+
+ public static final String CRN_PREFIX = "CRN_";
+
+ public static final String DEVP_PREFIX = "DEVP_";
+
+ private static Map<String, ThreadHandler> conContain = new ConcurrentHashMap<>();
+
+ public static void put(String key, ThreadHandler threadHandler) {
+
+ }
+
+ public static ThreadHandler get(String key) {
+ return conContain.get(key);
+ }
+
+ public static void remove(String key) {
+ ThreadHandler threadHandler = get(key);
+ if (null == threadHandler) {
+ return;
+ }
+ conContain.remove(key);
+ threadHandler.close();
+ }
+
+ public static String remove(ThreadHandler threadHandler) {
+ if (null == threadHandler) {
+ return null;
+ }
+ String key = null;
+ for (Map.Entry<String, ThreadHandler> entry : conContain.entrySet()){
+ if (entry.getValue() == threadHandler) {
+ key = entry.getKey();
+ break;
+ }
+ }
+ if (null != key) {
+ remove(key);
+ return key;
+ } else {
+ return null;
+ }
+ }
+
+}
diff --git a/src/main/java/com/zy/core/thread/CrnThread.java b/src/main/java/com/zy/core/thread/CrnThread.java
new file mode 100644
index 0000000..f798804
--- /dev/null
+++ b/src/main/java/com/zy/core/thread/CrnThread.java
@@ -0,0 +1,22 @@
+package com.zy.core.thread;
+
+import com.zy.core.Slave;
+import com.zy.core.ThreadHandler;
+
+/**
+ * Created by vincent on 2020/8/4
+ */
+public class CrnThread implements Runnable, ThreadHandler {
+
+ private Slave slave;
+
+ public CrnThread(Slave slave) {
+ this.slave = slave;
+ }
+
+ @Override
+ public void run() {
+
+ }
+
+}
diff --git a/src/main/java/com/zy/core/thread/DevpThread.java b/src/main/java/com/zy/core/thread/DevpThread.java
new file mode 100644
index 0000000..8f99511
--- /dev/null
+++ b/src/main/java/com/zy/core/thread/DevpThread.java
@@ -0,0 +1,13 @@
+package com.zy.core.thread;
+
+/**
+ * Created by vincent on 2020/8/4
+ */
+public class DevpThread implements Runnable {
+
+ @Override
+ public void run() {
+
+ }
+
+}
--
Gitblit v1.9.1