<?php
namespace CoreBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use UserBundle\Entity\User;
/**
* @ORM\Table("reading_test_unit")
* @ORM\Entity(repositoryClass="CoreBundle\Entity\ReadingTestUnitRepository")
*/
class ReadingTestUnit
{
/**
* @var int
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var ReadingTestSession
*
* @ORM\ManyToOne(targetEntity="CoreBundle\Entity\ReadingTestSession", inversedBy="readingTestUnits")
* @ORM\JoinColumn(name="reading_test_session", referencedColumnName="id", onDelete="CASCADE")
*/
private $readingTestSession;
/**
* @var User
*
* @ORM\ManyToOne(targetEntity="UserBundle\Entity\User")
* @ORM\JoinColumn(name="student", referencedColumnName="id")
*/
private $student;
/**
* @var \DateTime
* @ORM\Column(name="deadline", type="datetime", nullable=true)
*/
private $deadline;
/**
* @var bool
* @ORM\Column(name="finished", type="boolean", options={"default" : false})
*/
private $finished;
/**
* @var \DateTime
* @ORM\Column(name="reading_start_time", type="datetime", nullable=true)
*/
private $readingStartTime;
/**
* @var \DateTime
* @ORM\Column(name="reading_stop_time", type="datetime", nullable=true)
*/
private $readingStopTime;
/**
* @var float
* @ORM\Column(name="words_per_minute", type="float", nullable=true)
*/
private $wordsPerMinute;
/**
* @var ReadingTestResponse[]
*
* @ORM\OneToMany(targetEntity="CoreBundle\Entity\ReadingTestResponse", mappedBy="readingTestUnit", cascade={"persist"})
*/
private $readingTestResponses;
/**
* @var \DateTime
*
* @ORM\Column(name="extended_deadline", type="datetime", nullable=true)
*/
private $extendedDeadline;
/**
* @return int
*/
public function getId(): int
{
return $this->id;
}
/**
* @param int $id
*/
public function setId(int $id): void
{
$this->id = $id;
}
/**
* @return ReadingTestSession
*/
public function getReadingTestSession(): ReadingTestSession
{
return $this->readingTestSession;
}
/**
* @param ReadingTestSession $readingTestSession
*/
public function setReadingTestSession(ReadingTestSession $readingTestSession): void
{
$this->readingTestSession = $readingTestSession;
}
/**
* @return User
*/
public function getStudent(): User
{
return $this->student;
}
/**
* @param User $student
*/
public function setStudent(User $student): void
{
$this->student = $student;
}
/**
* @return \DateTime
*/
public function getDeadline(): ?\DateTime
{
return $this->deadline;
}
/**
* @param \DateTime $deadline
*/
public function setDeadline(?\DateTime $deadline): void
{
$this->deadline = $deadline;
}
/**
* @return bool
*/
public function isFinished(): bool
{
return $this->finished;
}
/**
* @param bool $finished
*/
public function setFinished(bool $finished): void
{
$this->finished = $finished;
}
/**
* @return \DateTime
*/
public function getReadingStartTime(): ?\DateTime
{
return $this->readingStartTime;
}
/**
* @param \DateTime $readingStartTime
*/
public function setReadingStartTime(?\DateTime $readingStartTime): void
{
$this->readingStartTime = $readingStartTime;
}
/**
* @return \DateTime
*/
public function getReadingStopTime(): ?\DateTime
{
return $this->readingStopTime;
}
/**
* @param \DateTime $readingStopTime
*/
public function setReadingStopTime(?\DateTime $readingStopTime): void
{
$this->readingStopTime = $readingStopTime;
}
/**
* @return float
*/
public function getWordsPerMinute(): ?float
{
return $this->wordsPerMinute;
}
/**
* @param float $wordsPerMinute
*/
public function setWordsPerMinute(?float $wordsPerMinute): void
{
$this->wordsPerMinute = $wordsPerMinute;
}
/**
* @return ReadingTestResponse[]
*/
public function getReadingTestResponses()
{
return $this->readingTestResponses;
}
public function getExtendedDeadline(): ?\DateTime
{
return $this->extendedDeadline;
}
public function setExtendedDeadline(\DateTime $extendedDeadline): void
{
$this->extendedDeadline = $extendedDeadline;
}
}