/*
* Copyright (c), Huawei Technologies Co., Ltd. 2025-2025.All rights reserved.
 */
#include "WebSocketExampleHandler.h"

#include "WebSocketPluginExampleProtocol.h"
#include "WsSender.h"
using namespace Insight::Example;
using namespace Dic;

WebSocketExampleHandler::WebSocketExampleHandler()
{
    moduleName = "WebSocketExample";
    command = "WebSocketExample/test";
    async = false;
}

void WebSocketExampleHandler::HandleRequest(std::unique_ptr<Dic::Protocol::Request> requestPtr)
{
    auto& request = dynamic_cast<WebSocketPluginExampleRequest&>(*requestPtr);
    auto responsePtr = std::make_unique<WebSocketPluginExampleResponse>();
    auto& response = *responsePtr;
    SetBaseResponse(request, response);
    response.message = request.message;
    SendResponse(std::move(responsePtr), true);
}