| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159 |
- <?php
- namespace MailPoet\Entities;
- if (!defined('ABSPATH')) exit;
- use DateTimeInterface;
- use MailPoet\Doctrine\EntityTraits\AutoincrementedIdTrait;
- use MailPoet\Doctrine\EntityTraits\CreatedAtTrait;
- use MailPoet\Doctrine\EntityTraits\DeletedAtTrait;
- use MailPoet\Doctrine\EntityTraits\UpdatedAtTrait;
- use MailPoetVendor\Doctrine\ORM\Mapping as ORM;
- /**
- * @ORM\Entity()
- * @ORM\Table(name="scheduled_tasks")
- */
- class ScheduledTaskEntity {
- const STATUS_COMPLETED = 'completed';
- const STATUS_SCHEDULED = 'scheduled';
- const STATUS_PAUSED = 'paused';
- const STATUS_INVALID = 'invalid';
- const VIRTUAL_STATUS_RUNNING = 'running'; // For historical reasons this is stored as null in DB
- const PRIORITY_HIGH = 1;
- const PRIORITY_MEDIUM = 5;
- const PRIORITY_LOW = 10;
- use AutoincrementedIdTrait;
- use CreatedAtTrait;
- use UpdatedAtTrait;
- use DeletedAtTrait;
- /**
- * @ORM\Column(type="string", nullable=true)
- * @var string|null
- */
- private $type;
- /**
- * @ORM\Column(type="string", nullable=true)
- * @var string|null
- */
- private $status;
- /**
- * @ORM\Column(type="integer")
- * @var int
- */
- private $priority = 0;
- /**
- * @ORM\Column(type="datetimetz", nullable=true)
- * @var DateTimeInterface|null
- */
- private $scheduledAt;
- /**
- * @ORM\Column(type="datetimetz", nullable=true)
- * @var DateTimeInterface|null
- */
- private $processedAt;
- /**
- * @ORM\Column(type="json", nullable=true)
- * @var array|null
- */
- private $meta;
- /**
- * @ORM\OneToMany(targetEntity="MailPoet\Entities\ScheduledTaskSubscriberEntity", mappedBy="task", fetch="EXTRA_LAZY")
- */
- public $subscribers;
- /**
- * @return string|null
- */
- public function getType() {
- return $this->type;
- }
- /**
- * @param string|null $type
- */
- public function setType($type) {
- $this->type = $type;
- }
- /**
- * @return string|null
- */
- public function getStatus() {
- return $this->status;
- }
- /**
- * @param string|null $status
- */
- public function setStatus($status) {
- $this->status = $status;
- }
- /**
- * @return int
- */
- public function getPriority() {
- return $this->priority;
- }
- /**
- * @param int $priority
- */
- public function setPriority($priority) {
- $this->priority = $priority;
- }
- /**
- * @return DateTimeInterface|null
- */
- public function getScheduledAt() {
- return $this->scheduledAt;
- }
- /**
- * @param DateTimeInterface|null $scheduledAt
- */
- public function setScheduledAt($scheduledAt) {
- $this->scheduledAt = $scheduledAt;
- }
- /**
- * @return DateTimeInterface|null
- */
- public function getProcessedAt() {
- return $this->processedAt;
- }
- /**
- * @param DateTimeInterface|null $processedAt
- */
- public function setProcessedAt($processedAt) {
- $this->processedAt = $processedAt;
- }
- /**
- * @return array|null
- */
- public function getMeta() {
- return $this->meta;
- }
- /**
- * @param array|null $meta
- */
- public function setMeta($meta) {
- $this->meta = $meta;
- }
- }
|