Skip to content

Класс ФабрикаФлагов

Дуб, который регистрирует провайдера OpenFeature по настройкам и отдаёт клиента оценки завязью FeatureClient.

Исходник: src/Классы/ФабрикаФлагов.os

Зависимости

ПолеТипНазначение
НастройкиФлаговНастройкиФлаговСекция openfeature файла настроек

FeatureClient

bsl
&Завязь
Функция FeatureClient() Экспорт

Возвращает клиента оценки флагов для домена из настроек.

Возвращаемое значение

FeatureClient - клиент библиотеки openfeature.

Побочный эффект

При первом вызове регистрируется провайдер:

Провайдер()Что устанавливается
jsonJsonFileProvider(НастройкиФлагов.ПутьКФайлу())
memoryInMemoryProvider()
none или любое другое значениеНичего: остаётся NoopProvider

Регистрация выполняется здесь, а не в конструкторе, потому что поле &Пластилин НастройкиФлагов к моменту конструктора ещё не заполнено. Повторный вызов провайдера не меняет: проверяется имя уже установленного, и NoopProvider считается признаком «ещё не настроен».

Из-за этой проверки провайдер, установленный приложением вручную до первого обращения к завязи, стартер не перетирает.

bsl
&Пластилин Перем FeatureClient;

Процедура Показать() Экспорт

	Детали = FeatureClient.ПолучитьЛогическоеСДеталями("new-checkout", Ложь);

	Сообщить(Детали.Значение);   // Истина
	Сообщить(Детали.Причина);    // TARGETING_MATCH

КонецПроцедуры