tsl-devkit/lsp-server/src/provider/window/log_message.cppm

42 lines
1.1 KiB
C++

module;
export module lsp.provider.window.log_message;
import spdlog;
import std;
import lsp.protocol;
import lsp.codec.facade;
import lsp.provider.base.interface;
export namespace lsp::provider::window
{
class LogMessage : public AutoRegisterProvider<LogMessage, INotificationProvider>
{
public:
static constexpr std::string_view kMethod = "window/logMessage";
static constexpr std::string_view kProviderName = "WindowLogMessage";
LogMessage() = default;
void HandleNotification(const protocol::NotificationMessage& notification, ExecutionContext& context) override;
};
}
namespace lsp::provider::window
{
void LogMessage::HandleNotification(const protocol::NotificationMessage& notification, [[maybe_unused]] ExecutionContext& context)
{
spdlog::debug("WindowLogMessageProvider: Handling notification for method {}", notification.method);
// TODO: Implement the actual notification handling logic
// 1. Parse notification parameters
// 2. Update appropriate services/state
// 3. Trigger any necessary side effects
}
}