Класс ФабрикаФлагов
Дуб, который регистрирует провайдера OpenFeature по настройкам и отдаёт клиента оценки завязью FeatureClient.
Исходник: src/Классы/ФабрикаФлагов.os
Зависимости
| Поле | Тип | Назначение |
|---|---|---|
НастройкиФлагов | НастройкиФлагов | Секция openfeature файла настроек |
FeatureClient
bsl
&Завязь
Функция FeatureClient() ЭкспортВозвращает клиента оценки флагов для домена из настроек.
Возвращаемое значение
FeatureClient - клиент библиотеки openfeature.
Побочный эффект
При первом вызове регистрируется провайдер:
Провайдер() | Что устанавливается |
|---|---|
json | JsonFileProvider(НастройкиФлагов.ПутьКФайлу()) |
memory | InMemoryProvider() |
none или любое другое значение | Ничего: остаётся NoopProvider |
Регистрация выполняется здесь, а не в конструкторе, потому что поле &Пластилин НастройкиФлагов к моменту конструктора ещё не заполнено. Повторный вызов провайдера не меняет: проверяется имя уже установленного, и NoopProvider считается признаком «ещё не настроен».
Из-за этой проверки провайдер, установленный приложением вручную до первого обращения к завязи, стартер не перетирает.
bsl
&Пластилин Перем FeatureClient;
Процедура Показать() Экспорт
Детали = FeatureClient.ПолучитьЛогическоеСДеталями("new-checkout", Ложь);
Сообщить(Детали.Значение); // Истина
Сообщить(Детали.Причина); // TARGETING_MATCH
КонецПроцедуры