<?php // phpcs:ignore SlevomatCodingStandard.TypeHints.DeclareStrictTypes.DeclareStrictTypesMissing namespace MailPoet\Entities; if (!defined('ABSPATH')) exit; use MailPoet\Doctrine\EntityTraits\AutoincrementedIdTrait; use MailPoet\Doctrine\EntityTraits\CreatedAtTrait; use MailPoet\Doctrine\EntityTraits\SafeToOneAssociationLoadTrait; use MailPoet\Doctrine\EntityTraits\UpdatedAtTrait; use MailPoetVendor\Doctrine\ORM\Mapping as ORM; /** * @ORM\Entity() * @ORM\Table(name="newsletter_segment") */ class NewsletterSegmentEntity { use AutoincrementedIdTrait; use CreatedAtTrait; use UpdatedAtTrait; use SafeToOneAssociationLoadTrait; /** * @ORM\ManyToOne(targetEntity="MailPoet\Entities\NewsletterEntity", inversedBy="newsletterSegments") * @var NewsletterEntity|null */ private $newsletter; /** * @ORM\ManyToOne(targetEntity="MailPoet\Entities\SegmentEntity") * @var SegmentEntity|null */ private $segment; public function __construct( NewsletterEntity $newsletter, SegmentEntity $segment ) { $this->newsletter = $newsletter; $this->segment = $segment; } /** * @return NewsletterEntity|null */ public function getNewsletter() { $this->safelyLoadToOneAssociation('newsletter'); return $this->newsletter; } /** * @return SegmentEntity|null */ public function getSegment() { $this->safelyLoadToOneAssociation('segment'); return $this->segment; } }