【修改】 名称替换
This commit is contained in:
@@ -25,7 +25,7 @@ import java.util.function.Consumer;
|
||||
*
|
||||
* 基于 {@link JsonWebSocketMessage#getType()} 消息类型,调度到对应的 {@link WebSocketMessageListener} 监听器。
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
@Slf4j
|
||||
public class JsonWebSocketMessageHandler extends TextWebSocketHandler {
|
||||
|
@@ -8,7 +8,7 @@ import java.io.Serializable;
|
||||
/**
|
||||
* JSON 格式的 WebSocket 消息帧
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
@Data
|
||||
public class JsonWebSocketMessage implements Serializable {
|
||||
|
@@ -19,7 +19,7 @@ import java.util.Map;
|
||||
* 1. 前端连接 websocket 时,会通过拼接 ?token={token} 到 ws:// 连接后,这样它可以被 {@link TokenAuthenticationFilter} 所认证通过
|
||||
* 2. {@link LoginUserHandshakeInterceptor} 负责把 {@link LoginUser} 添加到 {@link WebSocketSession} 中
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
public class LoginUserHandshakeInterceptor implements HandshakeInterceptor {
|
||||
|
||||
|
@@ -9,7 +9,7 @@ import org.springframework.security.config.annotation.web.configurers.AuthorizeH
|
||||
/**
|
||||
* WebSocket 的权限自定义
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
public class WebSocketAuthorizeRequestsCustomizer extends AuthorizeRequestsCustomizer {
|
||||
|
@@ -18,7 +18,7 @@ import java.util.List;
|
||||
/**
|
||||
* WebSocketMessageSender 实现类
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
|
@@ -5,7 +5,7 @@ import pc.exam.pp.framework.common.util.json.JsonUtils;
|
||||
/**
|
||||
* WebSocket 消息的发送器接口
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
public interface WebSocketMessageSender {
|
||||
|
||||
|
@@ -5,7 +5,7 @@ import lombok.Data;
|
||||
/**
|
||||
* Kafka 广播 WebSocket 的消息
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
@Data
|
||||
public class KafkaWebSocketMessage {
|
||||
|
@@ -7,7 +7,7 @@ import org.springframework.kafka.annotation.KafkaListener;
|
||||
/**
|
||||
* {@link KafkaWebSocketMessage} 广播消息的消费者,真正把消息发送出去
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
public class KafkaWebSocketMessageConsumer {
|
||||
|
@@ -11,7 +11,7 @@ import java.util.concurrent.ExecutionException;
|
||||
/**
|
||||
* 基于 Kafka 的 {@link WebSocketMessageSender} 实现类
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
@Slf4j
|
||||
public class KafkaWebSocketMessageSender extends AbstractWebSocketMessageSender {
|
||||
|
@@ -9,7 +9,7 @@ import pc.exam.pp.framework.websocket.core.session.WebSocketSessionManager;
|
||||
*
|
||||
* 注意:仅仅适合单机场景!!!
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
public class LocalWebSocketMessageSender extends AbstractWebSocketMessageSender {
|
||||
|
||||
|
@@ -7,7 +7,7 @@ import java.io.Serializable;
|
||||
/**
|
||||
* RabbitMQ 广播 WebSocket 的消息
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
@Data
|
||||
public class RabbitMQWebSocketMessage implements Serializable {
|
||||
|
@@ -7,7 +7,7 @@ import org.springframework.amqp.rabbit.annotation.*;
|
||||
/**
|
||||
* {@link RabbitMQWebSocketMessage} 广播消息的消费者,真正把消息发送出去
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
@RabbitListener(
|
||||
bindings = @QueueBinding(
|
||||
|
@@ -10,7 +10,7 @@ import org.springframework.amqp.rabbit.core.RabbitTemplate;
|
||||
/**
|
||||
* 基于 RabbitMQ 的 {@link WebSocketMessageSender} 实现类
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
@Slf4j
|
||||
public class RabbitMQWebSocketMessageSender extends AbstractWebSocketMessageSender {
|
||||
|
@@ -6,7 +6,7 @@ import lombok.RequiredArgsConstructor;
|
||||
/**
|
||||
* {@link RedisWebSocketMessage} 广播消息的消费者,真正把消息发送出去
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
public class RedisWebSocketMessageConsumer extends AbstractRedisChannelMessageListener<RedisWebSocketMessage> {
|
||||
|
@@ -9,7 +9,7 @@ import lombok.extern.slf4j.Slf4j;
|
||||
/**
|
||||
* 基于 Redis 的 {@link WebSocketMessageSender} 实现类
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
@Slf4j
|
||||
public class RedisWebSocketMessageSender extends AbstractWebSocketMessageSender {
|
||||
|
@@ -5,7 +5,7 @@ import lombok.Data;
|
||||
/**
|
||||
* RocketMQ 广播 WebSocket 的消息
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
@Data
|
||||
public class RocketMQWebSocketMessage {
|
||||
|
@@ -8,7 +8,7 @@ import org.apache.rocketmq.spring.core.RocketMQListener;
|
||||
/**
|
||||
* {@link RocketMQWebSocketMessage} 广播消息的消费者,真正把消息发送出去
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
@RocketMQMessageListener( // 重点:添加 @RocketMQMessageListener 注解,声明消费的 topic
|
||||
topic = "${exam.websocket.sender-rocketmq.topic}",
|
||||
|
@@ -9,7 +9,7 @@ import org.apache.rocketmq.spring.core.RocketMQTemplate;
|
||||
/**
|
||||
* 基于 RocketMQ 的 {@link WebSocketMessageSender} 实现类
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
@Slf4j
|
||||
public class RocketMQWebSocketMessageSender extends AbstractWebSocketMessageSender {
|
||||
|
@@ -12,7 +12,7 @@ import org.springframework.web.socket.handler.WebSocketHandlerDecorator;
|
||||
* 1. {@link WebSocketSession} 连接或关闭时,使用 {@link #sessionManager} 进行管理
|
||||
* 2. 封装 {@link WebSocketSession} 支持并发操作
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
public class WebSocketSessionHandlerDecorator extends WebSocketHandlerDecorator {
|
||||
|
||||
|
@@ -7,7 +7,7 @@ import java.util.Collection;
|
||||
/**
|
||||
* {@link WebSocketSession} 管理器的接口
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
public interface WebSocketSessionManager {
|
||||
|
||||
|
@@ -17,7 +17,7 @@ import java.util.concurrent.CopyOnWriteArrayList;
|
||||
/**
|
||||
* 默认的 {@link WebSocketSessionManager} 实现类
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
public class WebSocketSessionManagerImpl implements WebSocketSessionManager {
|
||||
|
||||
|
@@ -8,7 +8,7 @@ import java.util.Map;
|
||||
/**
|
||||
* 专属于 web 包的工具类
|
||||
*
|
||||
* @author 芋道源码
|
||||
* @author 朋辰
|
||||
*/
|
||||
public class WebSocketFrameworkUtils {
|
||||
|
||||
|
Reference in New Issue
Block a user