* Copyright (c), Huawei Technologies Co., Ltd. 2024-2024.All rights reserved.
*/
#ifndef MSINSIGHT_BASEMODULE_H_
#define MSINSIGHT_BASEMODULE_H_
#include "ProtocolUtil.h"
#include "ModuleRequestHeadler.h"
namespace Dic::Module {
class BaseModule {
public:
BaseModule() = default;
virtual ~BaseModule() = default;
virtual void RegisterRequestHandlers() = 0;
virtual void OnRequest(std::unique_ptr<Protocol::Request> request);
protected:
std::string moduleName = MODULE_UNKNOWN;
std::map<std::string, std::unique_ptr<ModuleRequestHandler> > requestHandlerMap;
};
}
#endif