<?php
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
use Gedmo\Mapping\Annotation as Gedmo;
use App\Repository\AccessTokenRepository;
use ApiPlatform\Core\Annotation\ApiResource;
use App\Entity\Interfaces\ContainerMappedInterface;
/**
* @ApiResource()
* @ORM\Entity(repositoryClass=AccessTokenRepository::class)
*/
class AccessToken implements ContainerMappedInterface
{
/**
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
private $id;
/**
* @var \DateTime
* @Gedmo\Timestampable(on="create")
* @ORM\Column(type="datetime")
*/
protected $createdAt;
/**
* @ORM\Column(type="text")
*/
private $token;
/**
* @ORM\Column(type="datetime")
*/
private $expireAt;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $isActive;
/**
* @ORM\ManyToOne(targetEntity=User::class)
* @ORM\JoinColumn(nullable=false, onDelete="CASCADE")
*/
private $user;
/**
* @ORM\ManyToOne(targetEntity=Container::class)
* @ORM\JoinColumn(nullable=false, onDelete="CASCADE")
*/
private $container;
/**
* @ORM\Column(type="string", length=255)
*/
private $refreshToken;
/**
* @ORM\Column(type="datetime")
*/
private $rtExpireAt;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $shortToken;
public function setCreatedAt(\DateTime $createdAt)
{
$this->createdAt = $createdAt;
return $this;
}
public function getCreatedAt()
{
return $this->createdAt;
}
public function getId(): ?int
{
return $this->id;
}
public function getToken(): ?string
{
return $this->token;
}
public function setToken(string $token): self
{
$this->token = $token;
return $this;
}
public function getExpireAt(): ?\DateTimeInterface
{
return $this->expireAt;
}
public function setExpireAt(\DateTimeInterface $expireAt): self
{
$this->expireAt = $expireAt;
return $this;
}
public function getIsActive(): ?bool
{
return $this->isActive;
}
public function setIsActive(?bool $isActive): self
{
$this->isActive = $isActive;
return $this;
}
public function getUser(): ?User
{
return $this->user;
}
public function setUser(?User $user): self
{
$this->user = $user;
return $this;
}
public function getContainer(): ?Container
{
return $this->container;
}
public function setContainer(?Container $container): self
{
$this->container = $container;
return $this;
}
public function getRefreshToken(): ?string
{
return $this->refreshToken;
}
public function setRefreshToken(string $refreshToken): self
{
$this->refreshToken = $refreshToken;
return $this;
}
public function getRtExpireAt(): ?\DateTimeInterface
{
return $this->rtExpireAt;
}
public function setRtExpireAt(\DateTimeInterface $rtExpireAt): self
{
$this->rtExpireAt = $rtExpireAt;
return $this;
}
public function getShortToken(): ?string
{
return $this->shortToken;
}
public function setShortToken(?string $shortToken): self
{
$this->shortToken = $shortToken;
return $this;
}
}