Registry
Описание и пример
Класс для хранения инстансов фабрик. Синглтон.
Сбор инстансов осуществляется через событие onGetUserFieldTypeFactory
.
Пример добавления своей фабрики
Полностью работающая схема есть в модуле RPA.
Bitrix\Main\EventManager::getInstance()->addEventHandler('main', 'onGetUserFieldTypeFactory', static function(){
return [
new MyFactory(),
];
});
Методы
Метод | Описание | С версии |
---|---|---|
public static function getInstance(): Registry | Возвращает инстанс | |
public function registerFactory(TypeFactory $factory) | Регистрирует новую фабрику | |
public function registerTypeByEntity(Entity $entity, array $type): void | Добавляет во внутреннее хранилище информацию о типе $type по скомпилированной сущности $entity таблета элементов. | |
public function getTypeByEntity(Entity $entity): ?array | Возвращает информацию о типе по скомпилированной сущности $entity таблета элементов | |
public function getFactoryByCode(string $code): ?TypeFactory | Возвращает инстанс фабрики по её строковому идентификатору $code | |
public function getFactoryByTypeDataClass($typeDataClass): ?TypeFactory | Возвращает инстанс фабрики по названию класса таблета для типов | |
public function getUserFieldEntityIdByItemEntity(Entity $entity): ?string | Возвращает строковый идентификатор пользовательских полей для скомпилированной сущности $entity |
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Пользовательские комментарии
Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.Для этого нужно всего лишь авторизоваться на сайте
Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.