#pragma once

#include "Message.h"
#include <memory>

class WebsocketSession; // 前向声明

class ChannelHandler {
public:
    virtual ~ChannelHandler() = default;
    // 当接收到消息时调用
    virtual void handle(const std::shared_ptr<WebsocketSession>& session, const Message& msg) = 0;

    // 当连接关闭时调用（类似 channelInactive）
    virtual void channelInactive(const std::shared_ptr<WebsocketSession>& session) {}
};
