rename : DocumentManager

This commit is contained in:
csh 2025-07-12 11:02:33 +08:00
parent 7255cd68f5
commit aad4917fc0
5 changed files with 15 additions and 16 deletions

View File

@ -19,10 +19,10 @@ namespace lsp::core
spdlog::debug("RequestScheduler set in dispatcher"); spdlog::debug("RequestScheduler set in dispatcher");
} }
void RequestDispatcher::SetDocumentManager(services::DocumentManager* document_manager) void RequestDispatcher::SetDocumentService(services::DocumentService* document_manager)
{ {
document_manager_ = document_manager; document_service_ = document_manager;
spdlog::debug("DocumentManager is set in dispatcher"); spdlog::debug("DocumentService is set in dispatcher");
} }
void RequestDispatcher::RegisterRequestProvider(std::shared_ptr<providers::IRequestProvider> provider) void RequestDispatcher::RegisterRequestProvider(std::shared_ptr<providers::IRequestProvider> provider)
@ -52,7 +52,7 @@ namespace lsp::core
std::string RequestDispatcher::Dispatch(const protocol::RequestMessage& request) std::string RequestDispatcher::Dispatch(const protocol::RequestMessage& request)
{ {
providers::ExecutionContext context(scheduler_, context_lifecycle_callback_, document_manager_); providers::ExecutionContext context(scheduler_, context_lifecycle_callback_, document_service_);
std::shared_lock<std::shared_mutex> lock(providers_mutex_); std::shared_lock<std::shared_mutex> lock(providers_mutex_);
auto it = providers_.find(request.method); auto it = providers_.find(request.method);
@ -76,7 +76,7 @@ namespace lsp::core
void RequestDispatcher::Dispatch(const protocol::NotificationMessage& notification) void RequestDispatcher::Dispatch(const protocol::NotificationMessage& notification)
{ {
providers::ExecutionContext context(scheduler_, context_lifecycle_callback_, document_manager_); providers::ExecutionContext context(scheduler_, context_lifecycle_callback_, document_service_);
std::shared_lock<std::shared_mutex> lock(notification_providers_mutex_); std::shared_lock<std::shared_mutex> lock(notification_providers_mutex_);
// 先尝试精确匹配 // 先尝试精确匹配

View File

@ -15,7 +15,7 @@ namespace lsp::core
~RequestDispatcher() = default; ~RequestDispatcher() = default;
void SetRequestScheduler(scheduler::RequestScheduler* scheduler); void SetRequestScheduler(scheduler::RequestScheduler* scheduler);
void SetDocumentManager(services::DocumentManager* document_manager); void SetDocumentService(services::DocumentService* document_manager);
void RegisterRequestProvider(std::shared_ptr<providers::IRequestProvider> provider); void RegisterRequestProvider(std::shared_ptr<providers::IRequestProvider> provider);
void RegisterNotificationProvider(std::shared_ptr<providers::INotificationProvider> provider); void RegisterNotificationProvider(std::shared_ptr<providers::INotificationProvider> provider);
@ -52,7 +52,6 @@ namespace lsp::core
// 服务引用 // 服务引用
scheduler::RequestScheduler* scheduler_ = nullptr; scheduler::RequestScheduler* scheduler_ = nullptr;
services::DocumentManager* document_manager_ = nullptr; services::DocumentService* document_service_ = nullptr;
}; };
} }

View File

@ -300,8 +300,8 @@ namespace lsp::core
{ {
spdlog::debug("Initializing extension services..."); spdlog::debug("Initializing extension services...");
document_manager_ = std::make_unique<services::DocumentManager>(); document_service_ = std::make_unique<services::DocumentService>();
dispatcher_.SetDocumentManager(document_manager_.get()); dispatcher_.SetDocumentService(document_service_.get());
spdlog::debug("Extension services initialized"); spdlog::debug("Extension services initialized");
} }

View File

@ -55,7 +55,7 @@ namespace lsp::core
scheduler::RequestScheduler scheduler_; scheduler::RequestScheduler scheduler_;
// 可选/扩展组件 -- 所以用智能指针 // 可选/扩展组件 -- 所以用智能指针
std::unique_ptr<services::DocumentManager> document_manager_; std::unique_ptr<services::DocumentService> document_service_;
std::atomic<bool> is_initialized_ = false; std::atomic<bool> is_initialized_ = false;
std::atomic<bool> is_shutting_down_ = false; std::atomic<bool> is_shutting_down_ = false;

View File

@ -21,12 +21,12 @@ namespace lsp::providers
class ExecutionContext class ExecutionContext
{ {
public: public:
ExecutionContext(scheduler::RequestScheduler* scheduler, LifecycleCallback lifecycle_callback, services::DocumentManager* document_manager = nullptr) : ExecutionContext(scheduler::RequestScheduler* scheduler, LifecycleCallback lifecycle_callback, services::DocumentService* document_manager = nullptr) :
scheduler_(scheduler), lifecycle_callback_(lifecycle_callback), document_manager_(document_manager) {} scheduler_(scheduler), lifecycle_callback_(lifecycle_callback), document_service_(document_manager) {}
scheduler::RequestScheduler* GetScheduler() const { return scheduler_; } scheduler::RequestScheduler* GetScheduler() const { return scheduler_; }
services::DocumentManager* GetDocumentManager() const { return document_manager_; } services::DocumentService* GetDocumentService() const { return document_service_; }
void TriggerLifecycleEvent(ServerLifecycleEvent event) const void TriggerLifecycleEvent(ServerLifecycleEvent event) const
{ {
@ -37,7 +37,7 @@ namespace lsp::providers
private: private:
scheduler::RequestScheduler* scheduler_; scheduler::RequestScheduler* scheduler_;
LifecycleCallback lifecycle_callback_; LifecycleCallback lifecycle_callback_;
services::DocumentManager* document_manager_; services::DocumentService* document_service_;
}; };
// LSP请求提供者接口基类 // LSP请求提供者接口基类