Нет описания

ScheduledTaskSubscriberEntity.php 2.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. <?php
  2. namespace MailPoet\Entities;
  3. if (!defined('ABSPATH')) exit;
  4. use MailPoet\Doctrine\EntityTraits\CreatedAtTrait;
  5. use MailPoet\Doctrine\EntityTraits\SafeToOneAssociationLoadTrait;
  6. use MailPoet\Doctrine\EntityTraits\UpdatedAtTrait;
  7. use MailPoetVendor\Doctrine\ORM\Mapping as ORM;
  8. /**
  9. * @ORM\Entity()
  10. * @ORM\Table(name="scheduled_task_subscribers")
  11. */
  12. class ScheduledTaskSubscriberEntity {
  13. use CreatedAtTrait;
  14. use UpdatedAtTrait;
  15. use SafeToOneAssociationLoadTrait;
  16. /**
  17. * @ORM\Column(type="integer")
  18. * @var int
  19. */
  20. private $processed;
  21. /**
  22. * @ORM\Column(type="integer")
  23. * @var int
  24. */
  25. private $failed;
  26. /**
  27. * @ORM\Column(type="text", nullable=true)
  28. * @var string|null
  29. */
  30. private $error;
  31. /**
  32. * @ORM\Id @ORM\ManyToOne(targetEntity="MailPoet\Entities\ScheduledTaskEntity")
  33. * @var ScheduledTaskEntity|null
  34. */
  35. private $task;
  36. /**
  37. * @ORM\Id @ORM\ManyToOne(targetEntity="MailPoet\Entities\SubscriberEntity")
  38. * @var SubscriberEntity|null
  39. */
  40. private $subscriber;
  41. public function __construct(
  42. ScheduledTaskEntity $task,
  43. SubscriberEntity $subscriber,
  44. int $processed = 0,
  45. int $failed = 0,
  46. string $error = null
  47. ) {
  48. $this->task = $task;
  49. $this->subscriber = $subscriber;
  50. $this->processed = $processed;
  51. $this->failed = $failed;
  52. $this->error = $error;
  53. }
  54. public function getProcessed(): int {
  55. return $this->processed;
  56. }
  57. public function setProcessed(int $processed) {
  58. $this->processed = $processed;
  59. }
  60. public function getFailed(): int {
  61. return $this->failed;
  62. }
  63. public function setFailed(int $failed) {
  64. $this->failed = $failed;
  65. }
  66. /**
  67. * @return string|null
  68. */
  69. public function getError() {
  70. return $this->error;
  71. }
  72. /**
  73. * @param string|null $error
  74. */
  75. public function setError($error) {
  76. $this->error = $error;
  77. }
  78. /**
  79. * @return ScheduledTaskEntity|null
  80. */
  81. public function getTask() {
  82. $this->safelyLoadToOneAssociation('task');
  83. return $this->task;
  84. }
  85. public function setTask(ScheduledTaskEntity $task) {
  86. $this->task = $task;
  87. }
  88. /**
  89. * @return SubscriberEntity|null
  90. */
  91. public function getSubscriber() {
  92. $this->safelyLoadToOneAssociation('subscriber');
  93. return $this->subscriber;
  94. }
  95. public function setSubscriber(SubscriberEntity $subscriber) {
  96. $this->subscriber = $subscriber;
  97. }
  98. }