for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
declare(strict_types=1);
namespace Application\Service;
use Application\Model\Message;
use Doctrine\ORM\EntityManager;
use Ecodev\Felix\Service\Mailer;
use Psr\Container\ContainerInterface;
use Symfony\Component\Mailer\Transport\TransportInterface;
class MailerFactory
{
/**
* Return a configured mailer.
*/
public function __invoke(ContainerInterface $container): Mailer
$entityManager = $container->get(EntityManager::class);
$transport = $container->get(TransportInterface::class);
$config = $container->get('config');
$messageRepository = $entityManager->getRepository(Message::class);
return new Mailer(
$entityManager,
$messageRepository,
$transport,
$config['phpPath'],
$config['email']['toOverride'] ?? null,
$config['email']['from'],
'Artisans',
);
}