Класс TransportFactory
Класс-фабрика для создания экземпляров транспортных средств электронной почты.
Краткое описание свойств
- $_config protected static
array<string, mixed>Наборы конфигурации.
- $_dsnClassMap protected static
array<string, string>Массив, сопоставляющий схемы URL полным именам классов Transport.
- $_registry protected static
Cake\Mailer\TransportRegistry|nullТранспортный реестр, используемый для создания и использования экземпляров транспортных средств.
Краткое описание методов
-
_buildTransport() protected static
Находит и создаёт экземпляр требуемого класса транспорта.
-
configured() public static
Возвращает массив, содержащий именованные конфигурации.
-
drop() public static
Удаляет созданный адаптер.
-
get() public static
Получить экземпляр транспорта.
-
getConfig() public static
Читает существующую конфигурацию.
-
getConfigOrFail() public static
Читает существующую конфигурацию для определенного ключа.
-
getDsnClassMap() public static
Возвращает карту сопоставления DSN для данного класса.
-
getRegistry() public static
Возвращает реестр транспорта, используемый для создания и использования экземпляров транспорта.
-
parseDsn() public static
Парсит DSN в корректную конфигурацию подключения.
-
setConfig() public static
Этот метод может быть использован для определения адаптеров конфигурации для приложения.
-
setDsnClassMap() public static
Обновляет карту класса DSN для этого класса.
-
setRegistry() public static
Устанавливает экземпляр реестра транспорта, используемый для создания и использования экземпляров транспорта.
Подробное описание методов
_buildTransport() protected static
_buildTransport(string $name): void
Находит и создаёт экземпляр требуемого класса транспорта.
Параметры
-
string$name Имя конфигурационного массива, для которого требуется создать экземпляр транспорта.
Возвращает
voidИсключения
InvalidArgumentExceptionПри невозможности создания транспорта.
configured() public static
configured(): array<string>
Возвращает массив, содержащий именованные конфигурации.
Возвращает
array<string>drop() public static
drop(string $config): bool
Удаляет созданный адаптер.
Если требуется изменить существующую конфигурацию, необходимо удалить её, изменить конфигурацию и затем повторно добавить.
Если реализующий объект поддерживает объект $_registry, именованная конфигурация также будет выгружена из реестра.
Параметры
-
string$config Существующая конфигурация, которую требуется удалить.
Возвращает
boolget() public static
get(string $name): Cake\Mailer\AbstractTransport
Получить экземпляр транспорта.
Параметры
-
string$name Имя конфигурации.
Возвращает
Cake\Mailer\AbstractTransportgetConfig() public static
getConfig(string $key): mixed|null
Читает существующую конфигурацию.
Параметры
-
string$key Имя конфигурации.
Возвращает
mixed|nullgetConfigOrFail() public static
getConfigOrFail(string $key): mixed
Считывает существующую конфигурацию для определенного ключа.
Значение конфигурации для этого ключа должно существовать, оно никогда не может быть null.
Параметры
-
string$key Имя конфигурации.
Возвращает
mixedИсключение
InvalidArgumentExceptionЕсли значение не существует.
getDsnClassMap() public static
getDsnClassMap(): array<string, string>
Возвращает карту классов DSN для этого класса.
Возвращает
array<string, string>getRegistry() public static
getRegistry(): Cake\Mailer\TransportRegistry
Возвращает реестр транспорта, используемый для создания и использования экземпляров транспорта.
Возвращает
Cake\Mailer\TransportRegistryparseDsn() public static
parseDsn(string $dsn): array<string, mixed>
Парсит DSN в корректную конфигурацию соединения
Этот метод позволяет задать DSN с использованием формата, аналогичного формату, используемому PEAR::DB. Следующее является примером его использования:
$dsn = 'mysql://user:pass@localhost/database?'; $config = ConnectionManager::parseDsn($dsn); $dsn = 'Cake\Log\Engine\FileLog://?types=notice,info,debug&file=debug&path=LOGS'; $config = Log::parseDsn($dsn); $dsn = 'smtp://user:secret@localhost:25?timeout=30&client=null&tls=null'; $config = Email::parseDsn($dsn); $dsn = 'file:///?className=\My\Cache\Engine\FileEngine'; $config = Cache::parseDsn($dsn); $dsn = 'File://?prefix=myapp_cake_core_&serialize=true&duration=+2 minutes&path=/tmp/persistent/'; $config = Cache::parseDsn($dsn);
Для всех классов значение scheme устанавливается как значение как className, если не указано иное.
Обратите внимание, что аргументы запроса также анализируются и устанавливаются как значения в возвращенной конфигурации.
Параметры
-
string$dsn Строка DSN для преобразования в массив конфигурации
Возвращает
array<string, mixed>Исключение
InvalidArgumentExceptionЕсли не передана строка или передана недопустимая строка
setConfig() public static
setConfig(array<string, mixed>|string $key, object|array<string, mixed>|null $config = null): void
Этот метод можно использовать для определения адаптеров конфигурации для приложения.
Чтобы изменить конфигурацию адаптера во время выполнения, сначала удалите адаптер, а затем переконфигурируйте его.
Адаптеры не будут созданы, пока не будет выполнена первая операция.
Использование
Предполагая, что имя класса Cache, поддерживаются следующие сценарии:
Настройка кеш-движка.
Cache::setConfig('default', $settings); Ввод сконструированного адаптера:
Cache::setConfig('default', $instance); Конфигурация нескольких адаптеров одновременно:
Cache::setConfig($arrayOfConfig);
Параметры
-
array<string, mixed>|string$key Имя конфигурации или массив нескольких конфигураций.
-
object|array<string, mixed>|null$config optional Массив пар «имя => данные конфигурации» для адаптера.
Возвращаемое значение
voidИсключения
BadMethodCallExceptionПри попытке изменить существующую конфигурацию.
LogicExceptionПри попытке сохранить массив некорректной структурированной конфигурации.
setDsnClassMap() public static
setDsnClassMap(array<string, string> $map): void
Обновляет карту соответствия DSN для этого класса.
Параметры
-
array<string, string>$map Добавления/изменения в карте классов для применения.
Возвращаемое значение
voidsetRegistry() public static
setRegistry(Cake\Mailer\TransportRegistry $registry): void
Устанавливает экземпляр Реестра Транспорта, используемый для создания и использования экземпляров транспорта.
Также позволяет вводить новый экземпляр реестра.
Параметры
-
Cake\Mailer\TransportRegistry$registry Вводимый объект реестра.
Возвращаемое значение
voidПодробное описание свойств
$_config protected static
Настройки.
Тип
array<string, mixed>$_dsnClassMap protected static
Массив, сопоставляющий схемы URL полным именам классов Транспорта.
Тип
array<string, string>$_registry protected static
Регистр Транспорта, используемый для создания и использования экземпляров транспорта.
Тип
Cake\Mailer\TransportRegistry|null
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.3/class-Cake.Mailer.TransportFactory.html