TransportServiceFactory.php
Namespace
Drupal\Core\MailerFile
-
core/
lib/ Drupal/ Core/ Mailer/ TransportServiceFactory.php
View source
<?php
declare (strict_types=1);
namespace Drupal\Core\Mailer;
use Drupal\Core\Config\ConfigFactoryInterface;
use Symfony\Component\DependencyInjection\Attribute\AutowireIterator;
use Symfony\Component\Mailer\Transport\Dsn;
use Symfony\Component\Mailer\Transport\TransportInterface;
/**
* The default mailer transport service factory.
*/
class TransportServiceFactory implements TransportServiceFactoryInterface {
use TransportServiceFactoryTrait;
/**
* Constructs a new transport service factory.
*
* @param Iterable<TransportFactoryInterface> $factories
* A list of transport factories.
* @param \Drupal\Core\Config\ConfigFactoryInterface $configFactory
* The config factory service.
*/
public function __construct(iterable $factories, ConfigFactoryInterface $configFactory) {
$this->factories = $factories;
}
/**
* {@inheritdoc}
*/
public function createTransport() : TransportInterface {
$dsn = $this->configFactory
->get('system.mail')
->get('mailer_dsn');
$dsnObject = new Dsn(...$dsn);
return $this->fromDsnObject($dsnObject);
}
}
Classes
Title | Deprecated | Summary |
---|---|---|
TransportServiceFactory | The default mailer transport service factory. |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.