|
9 | 9 | use Spiral\Boot\Bootloader\Bootloader; |
10 | 10 | use Spiral\Boot\EnvironmentInterface; |
11 | 11 | use Spiral\Config\ConfiguratorInterface; |
12 | | -use Spiral\Core\BinderInterface; |
13 | 12 | use Spiral\Logger\LogsInterface; |
14 | 13 | use Spiral\Mailer\MailerInterface; |
15 | 14 | use Spiral\Queue\Bootloader\QueueBootloader; |
|
31 | 30 | */ |
32 | 31 | class MailerBootloader extends Bootloader |
33 | 32 | { |
34 | | - protected const DEPENDENCIES = [ |
35 | | - QueueBootloader::class, |
36 | | - BuilderBootloader::class, |
37 | | - ]; |
38 | | - protected const SINGLETONS = [ |
39 | | - MailJob::class => MailJob::class, |
40 | | - MailQueue::class => [self::class, 'initMailQueue'], |
41 | | - MailerInterface::class => MailQueue::class, |
42 | | - SymfonyMailer::class => [self::class, 'mailer'], |
43 | | - TransportResolver::class => [self::class, 'initTransportResolver'], |
44 | | - TransportResolverInterface::class => TransportResolver::class, |
45 | | - TransportRegistryInterface::class => TransportResolver::class, |
46 | | - TransportInterface::class => [self::class, 'initTransport'], |
47 | | - ]; |
48 | | - |
49 | 33 | public function __construct( |
50 | 34 | private readonly ConfiguratorInterface $config, |
51 | 35 | ) {} |
52 | 36 |
|
| 37 | + public function defineDependencies(): array |
| 38 | + { |
| 39 | + return [ |
| 40 | + QueueBootloader::class, |
| 41 | + BuilderBootloader::class, |
| 42 | + ]; |
| 43 | + } |
| 44 | + |
| 45 | + public function defineSingletons(): array |
| 46 | + { |
| 47 | + return [ |
| 48 | + MailJob::class => MailJob::class, |
| 49 | + MailQueue::class => [self::class, 'initMailQueue'], |
| 50 | + MailerInterface::class => MailQueue::class, |
| 51 | + SymfonyMailer::class => [self::class, 'mailer'], |
| 52 | + TransportResolver::class => [self::class, 'initTransportResolver'], |
| 53 | + TransportResolverInterface::class => TransportResolver::class, |
| 54 | + TransportRegistryInterface::class => TransportResolver::class, |
| 55 | + TransportInterface::class => [self::class, 'initTransport'], |
| 56 | + ]; |
| 57 | + } |
| 58 | + |
53 | 59 | public function init(EnvironmentInterface $env): void |
54 | 60 | { |
55 | 61 | $this->config->setDefaults(MailerConfig::CONFIG, [ |
|
0 commit comments