From f3d3ab1267f35a6d4b22b7a34f5f94bb733cd513 Mon Sep 17 00:00:00 2001
From: zengh <123456>
Date: Wed, 07 Apr 2021 17:39:43 +0800
Subject: [PATCH] 点对点websocket实现

---
 blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/nettyServer/NettyConfig.java |   33 +++++++++++++++++++++++++++++++++
 1 files changed, 33 insertions(+), 0 deletions(-)

diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/nettyServer/NettyConfig.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/nettyServer/NettyConfig.java
index ad82647..cbe126b 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/nettyServer/NettyConfig.java
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/nettyServer/NettyConfig.java
@@ -1,7 +1,10 @@
 package org.springblade.jfpt.nettyServer;
+import io.netty.channel.Channel;
 import io.netty.channel.group.ChannelGroup;
 import io.netty.channel.group.DefaultChannelGroup;
 import io.netty.util.concurrent.GlobalEventExecutor;
+
+import java.util.concurrent.ConcurrentHashMap;
 
 
 public class NettyConfig {
@@ -9,4 +12,34 @@
 	 * 存储每一个客户端接入进来时的channel对象
 	 */
 	public static ChannelGroup group = new DefaultChannelGroup(GlobalEventExecutor.INSTANCE);
+
+	/**
+	 * 定义一个channel组,管理所有channel
+	 * GlobalEventExecutor.INSTANCE 是全局的事件执行器,是一个单例
+	 */
+	private static ChannelGroup channelGroup = new DefaultChannelGroup("用户管理组",GlobalEventExecutor.INSTANCE);
+
+	/**
+	 * 存放用户与chanel 的对应的信息,用于给指定用户发送信息
+	 */
+	private static ConcurrentHashMap<String, Channel> userChannelMap = new ConcurrentHashMap<>();
+
+	public NettyConfig() {
+	}
+
+	/**
+	 * 获取用户channel 组
+	 * @return
+	 */
+	public static ChannelGroup getChannelGroup() {
+		return channelGroup;
+	}
+
+	/**
+	 * 获取用户channel map
+	 * @return
+	 */
+	public static ConcurrentHashMap<String, Channel> getUserChannelMap() {
+		return userChannelMap;
+	}
 }

--
Gitblit v1.9.3