Spaces:
No application file
No application file
| namespace Mautic\PluginBundle\Entity; | |
| use Doctrine\Common\Collections\ArrayCollection; | |
| use Doctrine\ORM\Mapping as ORM; | |
| use Mautic\CoreBundle\Doctrine\Mapping\ClassMetadataBuilder; | |
| use Mautic\CoreBundle\Entity\CommonEntity; | |
| class IntegrationEntity extends CommonEntity | |
| { | |
| /** | |
| * @var int | |
| */ | |
| private $id; | |
| /** | |
| * @var string|null | |
| */ | |
| private $integration; | |
| /** | |
| * @var string|null | |
| */ | |
| private $integrationEntity; | |
| /** | |
| * @var string|null | |
| */ | |
| private $integrationEntityId; | |
| /** | |
| * @var \DateTimeInterface | |
| */ | |
| private $dateAdded; | |
| /** | |
| * @var \DateTimeInterface | |
| */ | |
| private $lastSyncDate; | |
| /** | |
| * @var string|null | |
| */ | |
| private $internalEntity; | |
| /** | |
| * @var int|null | |
| */ | |
| private $internalEntityId; | |
| /** | |
| * @var array | |
| */ | |
| private $internal; | |
| public function __construct() | |
| { | |
| $this->internal = new ArrayCollection(); | |
| } | |
| public static function loadMetadata(ORM\ClassMetadata $metadata): void | |
| { | |
| $builder = new ClassMetadataBuilder($metadata); | |
| $builder->setTable('integration_entity') | |
| ->setCustomRepositoryClass(IntegrationEntityRepository::class) | |
| ->addIndex(['integration', 'integration_entity', 'integration_entity_id'], 'integration_external_entity') | |
| ->addIndex(['integration', 'internal_entity', 'internal_entity_id'], 'integration_internal_entity') | |
| ->addIndex(['integration', 'internal_entity', 'integration_entity'], 'integration_entity_match') | |
| ->addIndex(['integration', 'last_sync_date'], 'integration_last_sync_date') | |
| ->addIndex(['internal_entity_id', 'integration_entity_id', 'internal_entity', 'integration_entity'], 'internal_integration_entity'); | |
| $builder->addId(); | |
| $builder->addDateAdded(); | |
| $builder->addNullableField('integration', 'string'); | |
| $builder->createField('integrationEntity', 'string') | |
| ->columnName('integration_entity') | |
| ->nullable() | |
| ->build(); | |
| $builder->createField('integrationEntityId', 'string') | |
| ->columnName('integration_entity_id') | |
| ->nullable() | |
| ->build(); | |
| $builder->createField('internalEntity', 'string') | |
| ->columnName('internal_entity') | |
| ->nullable() | |
| ->build(); | |
| $builder->createField('internalEntityId', 'integer') | |
| ->columnName('internal_entity_id') | |
| ->nullable() | |
| ->build(); | |
| $builder->createField('lastSyncDate', 'datetime') | |
| ->columnName('last_sync_date') | |
| ->nullable() | |
| ->build(); | |
| $builder->addNullableField('internal', 'array'); | |
| } | |
| /** | |
| * @return int | |
| */ | |
| public function getId() | |
| { | |
| return $this->id; | |
| } | |
| /** | |
| * @return string | |
| */ | |
| public function getIntegration() | |
| { | |
| return $this->integration; | |
| } | |
| /** | |
| * @param string $integration | |
| * | |
| * @return IntegrationEntity | |
| */ | |
| public function setIntegration($integration) | |
| { | |
| $this->integration = $integration; | |
| return $this; | |
| } | |
| /** | |
| * @return string | |
| */ | |
| public function getIntegrationEntity() | |
| { | |
| return $this->integrationEntity; | |
| } | |
| /** | |
| * @param string $integrationEntity | |
| * | |
| * @return IntegrationEntity | |
| */ | |
| public function setIntegrationEntity($integrationEntity) | |
| { | |
| $this->integrationEntity = $integrationEntity; | |
| return $this; | |
| } | |
| /** | |
| * @return string | |
| */ | |
| public function getIntegrationEntityId() | |
| { | |
| return $this->integrationEntityId; | |
| } | |
| /** | |
| * @param string $integrationEntityId | |
| * | |
| * @return IntegrationEntity | |
| */ | |
| public function setIntegrationEntityId($integrationEntityId) | |
| { | |
| $this->integrationEntityId = $integrationEntityId; | |
| return $this; | |
| } | |
| /** | |
| * @return \DateTimeInterface | |
| */ | |
| public function getDateAdded() | |
| { | |
| return $this->dateAdded; | |
| } | |
| /** | |
| * @param \DateTime $dateAdded | |
| * | |
| * @return IntegrationEntity | |
| */ | |
| public function setDateAdded($dateAdded) | |
| { | |
| $this->dateAdded = $dateAdded; | |
| return $this; | |
| } | |
| /** | |
| * @return \DateTimeInterface | |
| */ | |
| public function getLastSyncDate() | |
| { | |
| return $this->lastSyncDate; | |
| } | |
| /** | |
| * @param \DateTime $lastSyncDate | |
| * | |
| * @return IntegrationEntity | |
| */ | |
| public function setLastSyncDate($lastSyncDate) | |
| { | |
| $this->lastSyncDate = $lastSyncDate; | |
| return $this; | |
| } | |
| /** | |
| * @return string | |
| */ | |
| public function getInternalEntity() | |
| { | |
| return $this->internalEntity; | |
| } | |
| /** | |
| * @param string $internalEntity | |
| * | |
| * @return IntegrationEntity | |
| */ | |
| public function setInternalEntity($internalEntity) | |
| { | |
| $this->internalEntity = $internalEntity; | |
| return $this; | |
| } | |
| /** | |
| * @return int | |
| */ | |
| public function getInternalEntityId() | |
| { | |
| return $this->internalEntityId; | |
| } | |
| /** | |
| * @param int $internalEntityId | |
| * | |
| * @return IntegrationEntity | |
| */ | |
| public function setInternalEntityId($internalEntityId) | |
| { | |
| $this->internalEntityId = $internalEntityId; | |
| return $this; | |
| } | |
| /** | |
| * @return array | |
| */ | |
| public function getInternal() | |
| { | |
| return $this->internal; | |
| } | |
| /** | |
| * @param array $internal | |
| * | |
| * @return IntegrationEntity | |
| */ | |
| public function setInternal($internal) | |
| { | |
| $this->internal = $internal; | |
| return $this; | |
| } | |
| } | |