Spaces:
No application file
No application file
File size: 2,556 Bytes
d2897cd |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 |
<?php
namespace Mautic\CampaignBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Mautic\ApiBundle\Serializer\Driver\ApiMetadataDriver;
use Mautic\CoreBundle\Doctrine\Mapping\ClassMetadataBuilder;
class FailedLeadEventLog
{
/**
* @var LeadEventLog
*/
private $log;
/**
* @var \DateTimeInterface
*/
private $dateAdded;
/**
* @var string|null
*/
private $reason;
public static function loadMetadata(ORM\ClassMetadata $metadata): void
{
$builder = new ClassMetadataBuilder($metadata);
$builder->setTable('campaign_lead_event_failed_log')
->setCustomRepositoryClass(FailedLeadEventLogRepository::class)
->addIndex(['date_added'], 'campaign_event_failed_date');
$builder->createOneToOne('log', 'LeadEventLog')
->makePrimaryKey()
->inversedBy('failedLog')
->addJoinColumn('log_id', 'id', false, false, 'CASCADE')
->build();
$builder->addDateAdded();
$builder->addNullableField('reason', 'text');
}
/**
* Prepares the metadata for API usage.
*/
public static function loadApiMetadata(ApiMetadataDriver $metadata): void
{
$metadata->setGroupPrefix('campaignEventFailedLog')
->addProperties(
[
'dateAdded',
'reason',
]
)
->build();
}
/**
* @return LeadEventLog
*/
public function getLog()
{
return $this->log;
}
/**
* @return FailedLeadEventLog
*/
public function setLog(LeadEventLog $log = null)
{
$this->log = $log;
if ($log) {
$log->setFailedLog($this);
}
return $this;
}
/**
* @return \DateTimeInterface
*/
public function getDateAdded()
{
return $this->dateAdded;
}
/**
* @return FailedLeadEventLog
*/
public function setDateAdded(\DateTime $dateAdded = null)
{
if (null === $dateAdded) {
$dateAdded = new \DateTime();
}
$this->dateAdded = $dateAdded;
return $this;
}
/**
* @return string
*/
public function getReason()
{
return $this->reason;
}
/**
* @param string $reason
*
* @return FailedLeadEventLog
*/
public function setReason($reason)
{
$this->reason = $reason;
return $this;
}
}
|