#include "./exit.hpp" namespace lsp::provider { std::string Exit::GetMethod() const { return "exit"; } std::string Exit::GetProviderName() const { return "Exit"; } void Exit::HandleNotification(const protocol::NotificationMessage& notification, ExecutionContext& context) { spdlog::debug("ExitProvider: Providing response for method {}", notification.method); spdlog::info("Exit notification received"); // 触发生命周期事件 context.TriggerLifecycleEvent(ServerLifecycleEvent::kShuttingDown); // 给一些时间完成清理 std::this_thread::sleep_for(std::chrono::milliseconds(100)); context.TriggerLifecycleEvent(ServerLifecycleEvent::kShutdown); std::exit(0); } }