File: /home/assibfaf/public_html/prox-classes/Presenter/Deadline/DeadlineLazyArray.php
<?php
/**
* @package Proxim
* @author Davison Pro <davis@davisonpro.dev | https://davisonpro.dev>
* @copyright 2020 Proxim
* @version 1.0
* @since File available since Release 1.0
*/
namespace Proxim\Presenter\Deadline;
use Proxim\Presenter\AbstractLazyArray;
use Doctrine\Common\Annotations\AnnotationException;
use Proxim\Application;
use Proxim\Preference\Deadline;
class DeadlineLazyArray extends AbstractLazyArray {
/** @var Application */
private $application;
/** @var Deadline */
private $deadline;
/**
* DeadlineArray constructor.
*
* @throws AnnotationException
* @throws ReflectionException
*/
public function __construct(Deadline $deadline)
{
$this->application = Application::getInstance();
$this->deadline = $deadline;
parent::__construct();
}
/**
* @arrayAccess
*
* @return int
*/
public function getId()
{
return (int) $this->deadline->id;
}
/**
* @arrayAccess
*
* @return int
*/
public function getAcademicLevel()
{
return (int) $this->deadline->academic_level_id;
}
/**
* @arrayAccess
*
* @return string
*/
public function getName()
{
return $this->deadline->name;
}
/**
* @arrayAccess
*
* @return float
*/
public function getPricePerPage()
{
return (float) $this->deadline->price_per_page;
}
/**
* @arrayAccess
*
* @return int
*/
public function getHrs()
{
return (int) $this->deadline->hrs_customer;
}
/**
* @arrayAccess
*
* @return int
*/
public function getHrsWriter()
{
return (int) $this->deadline->hrs_writer;
}
/**
* @arrayAccess
*
* @return int
*/
public function getMinPages()
{
return (int) $this->deadline->min_pages;
}
}