<?php
namespace App\Entity\Core\Log;
use DateTime;
use Doctrine\ORM\Mapping as ORM;
#[ORM\Table('log_events')]
#[ORM\Entity(repositoryClass: LogEventRepository::class)]
class LogEvent
{
/**
* @var int
*/
#[ORM\Column(name: 'id', type: 'integer')]
#[ORM\Id]
#[ORM\GeneratedValue(strategy: 'AUTO')]
private $id;
/**
* @var DateTime
*/
#[ORM\Column(name: 'timestamp', type: 'datetime')]
private $timestamp;
/**
* @var string
*/
#[ORM\Column(name: 'event', type: 'text')]
private $event;
/**
* @var string
*/
#[ORM\Column(name: 'username', type: 'text')]
private $username;
/**
* @var string
*/
#[ORM\Column(name: 'institution', type: 'text', nullable: true)]
private $institution;
/**
* @var bool
*/
#[ORM\Column(name: 'is_teacher', type: 'boolean')]
private $isTeacher;
/**
* @var string|null
*/
#[ORM\Column(name: 'serialized_request_data', type: 'text', nullable: true)]
private ?string $serializedRequestData;
/**
* @var DateTime|null
*/
#[ORM\Column(name: 'dispatched_at', type: 'datetime', nullable: true)]
private ?DateTime $dispatchedAt;
/**
* @var string|null
*/
#[ORM\Column(name: 'not_dispatched_cause', type: 'text', nullable: true)]
private ?string $notDispatchedCause;
public function __construct($timestamp, $event, $username, $institution, $isTeacher, $dispatchedAt, $serializedRequestData, $notDispatchedCause = '')
{
$this->timestamp = $timestamp;
$this->event = $event;
$this->username = $username;
$this->institution = $institution;
$this->isTeacher = $isTeacher;
$this->dispatchedAt = $dispatchedAt;
$this->serializedRequestData = $serializedRequestData;
$this->notDispatchedCause = $notDispatchedCause;
}
public function getId(): int
{
return $this->id;
}
public function setId(int $id): void
{
$this->id = $id;
}
public function getTimestamp(): DateTime
{
return $this->timestamp;
}
public function setTimestamp(DateTime $timestamp): void
{
$this->timestamp = $timestamp;
}
public function getEvent(): ?string
{
return $this->event;
}
public function setEvent(string $event): void
{
$this->event = $event;
}
public function getUsername(): ?string
{
return $this->username;
}
public function setUsername(string $username): void
{
$this->username = $username;
}
public function getInstitution(): string
{
return $this->institution;
}
public function setInstitution(string $institution): void
{
$this->institution = $institution;
}
public function isTeacher(): bool
{
return $this->isTeacher;
}
public function setIsTeacher(bool $isTeacher): void
{
$this->isTeacher = $isTeacher;
}
public function getDispatchedAt(): ?DateTime
{
return $this->dispatchedAt;
}
public function setDispatchedAt(?DateTime $dispatchedAt): void
{
$this->dispatchedAt = $dispatchedAt;
}
public function getSerializedRequestData(): ?string
{
return $this->serializedRequestData;
}
public function setSerializedRequestData(?string $data): void
{
$this->serializedRequestData = $data;
}
public function getNotDispatchedCause(): ?string
{
return $this->notDispatchedCause;
}
public function setNotDispatchedCause(?string $notDispatchedCause): void
{
$this->notDispatchedCause = $notDispatchedCause;
}
}