<?phpnamespace App\Entity;use SymfonyCasts\Bundle\ResetPassword\Model\ResetPasswordRequestInterface;use App\Repository\ResetPasswordRequestRepository;use Doctrine\ORM\Mapping as ORM;/** * @ORM\Entity(repositoryClass=ResetPasswordRequestRepository::class) */class ResetPasswordRequest implements ResetPasswordRequestInterface{ /** * @ORM\Id * @ORM\GeneratedValue * @ORM\Column(type="integer") */ private ?int $id = null; /** * @ORM\ManyToOne(targetEntity="App\Entity\User") * @ORM\JoinColumn(nullable=false) */ private ?User $user = null; /** * @ORM\Column(type="datetime") */ private $expiresAt = null; /** * @ORM\Column(type="datetime") */ private $requestedAt = null; /** * @ORM\Column(type="string", length=20) */ private ?string $selector = null; /** * @ORM\Column(type="string", length=255) */ private ?string $hashedToken = null; public function getId(): ?int { return $this->id; } public function getUser(): object { return $this->user; } public function setUser(?User $user): self { $this->user = $user; return $this; } public function getExpiresAt(): \DateTimeInterface { return $this->expiresAt; } public function setExpiresAt(?\DateTimeInterface $expiresAt): self { $this->expiresAt = $expiresAt; return $this; } public function getRequestedAt(): \DateTimeInterface { return $this->requestedAt; } public function setRequestedAt(?\DateTimeInterface $requestedAt): self { $this->requestedAt = $requestedAt; return $this; } public function getSelector(): ?string { return $this->selector; } public function setSelector(string $selector): self { $this->selector = $selector; return $this; } public function getHashedToken(): string { return $this->hashedToken; } public function setHashedToken(string $hashedToken): self { $this->hashedToken = $hashedToken; return $this; } public function isExpired(): bool { return $this->expiresAt < new \DateTime(); }}