feat: add logger

This commit is contained in:
k0t9i
2023-10-17 20:20:25 +04:00
parent 03e61a9b9a
commit ab85800275
12 changed files with 248 additions and 1 deletions

View File

@@ -0,0 +1,39 @@
#pragma once
#include "Domain/Enums/ChatChannelEnum.h"
#include "Domain/Events/ChatMessageCreatedEvent.h"
#include "Domain/Logger/LogChannel.h"
#include "Domain/Services/ServiceLocator.h"
using namespace L2Bot::Domain;
class ChatLogChannel : public Logger::LogChannel
{
public:
ChatLogChannel(const Enums::ChatChannelEnum chatChannel, const std::vector<Logger::LogLevel> levels) :
Logger::LogChannel(levels),
m_ChatChannel(chatChannel)
{
};
virtual ~ChatLogChannel() = default;
protected:
void DoSendToChannel(const std::wstring& logEntry) override
{
Services::ServiceLocator::GetInstance().GetEventDispatcher()->Dispatch(
Events::ChatMessageCreatedEvent
{
DTO::ChatMessageData
{
0,
static_cast<uint8_t>(m_ChatChannel),
L"",
GetCurrentDateTime() + logEntry
}
}
);
}
private:
const Enums::ChatChannelEnum m_ChatChannel;
};