Class CachePathProvider
java.lang.Object
com.github._1c_syntax.bsl.languageserver.infrastructure.CachePathProvider
Компонент для определения пути к персистентному кэшу ehcache.
Кэш размещается в каталоге пользователя в подкаталоге, имя которого вычисляется на основе MD5-хэша текущей рабочей директории. Это позволяет избежать конфликтов при работе с разными проектами и не захламлять git-репозитории.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetCachePath(String basePath, String fullPath) Возвращает путь к каталогу персистентного кэша для текущей рабочей директории.getCachePath(String basePath, String fullPath, int instanceNumber) Возвращает путь к каталогу персистентного кэша для текущей рабочей директории с учётом номера экземпляра.
-
Constructor Details
-
CachePathProvider
public CachePathProvider()
-
-
Method Details
-
getCachePath
Возвращает путь к каталогу персистентного кэша для текущей рабочей директории.Если fullPath не пустой, возвращает его напрямую. Иначе формирует путь по шаблону:
${basePath}/.bsl-language-server/cache/<md5-hash>/где md5-hash - это MD5-хэш абсолютного пути текущей рабочей директории.- Parameters:
basePath- базовый путь к каталогу (обычно user.home)fullPath- полный путь к каталогу кэша (если задан, используется напрямую)- Returns:
- путь к каталогу кэша
-
getCachePath
Возвращает путь к каталогу персистентного кэша для текущей рабочей директории с учётом номера экземпляра.Если fullPath не пустой, возвращает его напрямую (instanceNumber игнорируется). Иначе формирует путь по шаблону:
- При instanceNumber = 0:
${basePath}/.bsl-language-server/cache/<md5-hash>/ - При instanceNumber > 0:
${basePath}/.bsl-language-server/cache/<md5-hash>@<instanceNumber>/
Суффикс с номером экземпляра позволяет нескольким экземплярам BSL LS работать в одной директории с отдельными персистентными кэшами.
- Parameters:
basePath- базовый путь к каталогу (обычно user.home)fullPath- полный путь к каталогу кэша (если задан, используется напрямую)instanceNumber- номер экземпляра (0 для основного, 1+ для дополнительных)- Returns:
- путь к каталогу кэша
- При instanceNumber = 0:
-