Class WorkspaceThreadLocalAccessor

java.lang.Object
com.github._1c_syntax.bsl.languageserver.infrastructure.WorkspaceThreadLocalAccessor
All Implemented Interfaces:
ThreadLocalAccessor<URI>

public class WorkspaceThreadLocalAccessor extends Object implements ThreadLocalAccessor<URI>
Micrometer SPI для автоматической пропагации workspace URI через executors.

При восстановлении snapshot на новом потоке (метод setValue(URI)) workspace может оказаться уже снятым с регистрации — например, когда @Scheduled-задача запускается после того, как тест или пользователь удалил workspace. В этом случае метод логирует предупреждение и очищает контекст, не бросая исключение. Само по себе это не ошибка: задача, не нуждающаяся в workspace-контексте (например, ConfigurationFileSystemWatcher.watch()), самостоятельно устанавливает нужный контекст через WorkspaceContextHolder.run(URI, Runnable).