ForgotPasswordResetEmail   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 33
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 4

Importance

Changes 0
Metric Value
wmc 2
lcom 1
cbo 4
dl 0
loc 33
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A send() 0 12 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace SixtyEightPublishers\User\ForgotPassword\Mail;
6
7
use Nette\SmartObject;
8
use SixtyEightPublishers\User\Common\Mail\Address;
9
use SixtyEightPublishers\User\Common\Mail\MailSenderInterface;
10
use SixtyEightPublishers\User\ForgotPassword\Entity\PasswordRequestInterface;
11
12
final class ForgotPasswordResetEmail implements ForgotPasswordResetEmailInterface
13
{
14
	use SmartObject;
15
16
	public const NAME = 'forgot_password_reset_email';
17
18
	/** @var \SixtyEightPublishers\User\Common\Mail\MailSenderInterface  */
19
	private $mailSender;
20
21
	/**
22
	 * @param \SixtyEightPublishers\User\Common\Mail\MailSenderInterface $mailSender
23
	 */
24
	public function __construct(MailSenderInterface $mailSender)
25
	{
26
		$this->mailSender = $mailSender;
27
	}
28
29
	/**
30
	 * {@inheritdoc}
31
	 */
32
	public function send(PasswordRequestInterface $request): void
33
	{
34
		$this->mailSender->send(
35
			self::NAME,
36
			[
37
				new Address($request->getUser()->getEmail()),
38
			],
39
			[
40
				'request' => $request,
41
			]
42
		);
43
	}
44
}
45