Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 4 additions & 6 deletions src/Domain/Model/Identity/Administrator.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,8 @@

namespace PhpList\PhpList4\Domain\Model\Identity;

use Doctrine\ORM\Mapping;
use Doctrine\ORM\Mapping\Column;
use Doctrine\ORM\Mapping\Entity;
use Doctrine\ORM\Mapping\HasLifecycleCallbacks;
use Doctrine\ORM\Mapping\Table;
use PhpList\PhpList4\Domain\Model\Interfaces\CreationDate;
use PhpList\PhpList4\Domain\Model\Interfaces\DomainModel;
use PhpList\PhpList4\Domain\Model\Interfaces\Identity;
Expand All @@ -19,9 +17,9 @@
* This class represents an administrator who can log to the system, is allowed to administer
* selected lists (as the owner), send campaigns to these lists and edit subscribers.
*
* @Entity(repositoryClass="PhpList\PhpList4\Domain\Repository\Identity\AdministratorRepository")
* @Table(name="phplist_admin")
* @HasLifecycleCallbacks
* @Mapping\Entity(repositoryClass="PhpList\PhpList4\Domain\Repository\Identity\AdministratorRepository")
* @Mapping\Table(name="phplist_admin")
* @Mapping\HasLifecycleCallbacks
*
* @author Oliver Klee <oliver@phplist.com>
*/
Expand Down
16 changes: 6 additions & 10 deletions src/Domain/Model/Identity/AdministratorToken.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,8 @@

namespace PhpList\PhpList4\Domain\Model\Identity;

use Doctrine\ORM\Mapping;
use Doctrine\ORM\Mapping\Column;
use Doctrine\ORM\Mapping\Entity;
use Doctrine\ORM\Mapping\JoinColumn;
use Doctrine\ORM\Mapping\ManyToOne;
use Doctrine\ORM\Mapping\PrePersist;
use Doctrine\ORM\Mapping\Table;
use Doctrine\ORM\Proxy\Proxy;
use JMS\Serializer\Annotation\ExclusionPolicy;
use JMS\Serializer\Annotation\Expose;
Expand All @@ -20,8 +16,8 @@
/**
* This class represents an API authentication token for an administrator.
*
* @Entity(repositoryClass="PhpList\PhpList4\Domain\Repository\Identity\AdministratorTokenRepository")
* @Table(name="phplist_admintoken")
* @Mapping\Entity(repositoryClass="PhpList\PhpList4\Domain\Repository\Identity\AdministratorTokenRepository")
* @Mapping\Table(name="phplist_admintoken")
* @ExclusionPolicy("all")
*
* @author Oliver Klee <oliver@phplist.com>
Expand Down Expand Up @@ -57,8 +53,8 @@ class AdministratorToken implements DomainModel, Identity, CreationDate

/**
* @var Administrator|Proxy
* @ManyToOne(targetEntity="PhpList\PhpList4\Domain\Model\Identity\Administrator")
* @JoinColumn(name="adminid")
* @Mapping\ManyToOne(targetEntity="PhpList\PhpList4\Domain\Model\Identity\Administrator")
* @Mapping\JoinColumn(name="adminid")
*/
private $administrator = null;

Expand Down Expand Up @@ -98,7 +94,7 @@ private function setCreationDate(\DateTime $creationDate)
/**
* Updates the creation date to now.
*
* @PrePersist
* @Mapping\PrePersist
*
* @return void
*/
Expand Down
7 changes: 3 additions & 4 deletions src/Domain/Model/Interfaces/ModificationDate.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,7 @@

namespace PhpList\PhpList4\Domain\Model\Interfaces;

use Doctrine\ORM\Mapping\PrePersist;
use Doctrine\ORM\Mapping\PreUpdate;
use Doctrine\ORM\Mapping;

/**
* This interface communicates that a domain model has a modification date.
Expand All @@ -23,8 +22,8 @@ public function getModificationDate();
/**
* Updates the modification date to now.
*
* @PrePersist
* @PreUpdate
* @Mapping\PrePersist
* @Mapping\PreUpdate
*
* @return void
*/
Expand Down
32 changes: 14 additions & 18 deletions src/Domain/Model/Messaging/SubscriberList.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,8 @@

use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping;
use Doctrine\ORM\Mapping\Column;
use Doctrine\ORM\Mapping\Entity;
use Doctrine\ORM\Mapping\HasLifecycleCallbacks;
use Doctrine\ORM\Mapping\JoinColumn;
use Doctrine\ORM\Mapping\JoinTable;
use Doctrine\ORM\Mapping\ManyToMany;
use Doctrine\ORM\Mapping\ManyToOne;
use Doctrine\ORM\Mapping\OneToMany;
use Doctrine\ORM\Mapping\Table;
use Doctrine\ORM\Proxy\Proxy;
use JMS\Serializer\Annotation\ExclusionPolicy;
use JMS\Serializer\Annotation\Expose;
Expand All @@ -30,9 +23,9 @@
* This class represents an administrator who can log to the system, is allowed to administer
* selected lists (as the owner), send campaigns to these lists and edit subscribers.
*
* @Entity(repositoryClass="PhpList\PhpList4\Domain\Repository\Messaging\SubscriberListRepository")
* @Table(name="phplist_list")
* @HasLifecycleCallbacks
* @Mapping\Entity(repositoryClass="PhpList\PhpList4\Domain\Repository\Messaging\SubscriberListRepository")
* @Mapping\Table(name="phplist_list")
* @Mapping\HasLifecycleCallbacks
* @ExclusionPolicy("all")
*
* @author Oliver Klee <oliver@phplist.com>
Expand Down Expand Up @@ -100,14 +93,14 @@ class SubscriberList implements DomainModel, Identity, CreationDate, Modificatio

/**
* @var Administrator
* @ManyToOne(targetEntity="PhpList\PhpList4\Domain\Model\Identity\Administrator")
* @JoinColumn(name="owner")
* @Mapping\ManyToOne(targetEntity="PhpList\PhpList4\Domain\Model\Identity\Administrator")
* @Mapping\JoinColumn(name="owner")
*/
private $owner = null;

/**
* @var Collection
* @OneToMany(
* @Mapping\OneToMany(
* targetEntity="PhpList\PhpList4\Domain\Model\Subscription\Subscription",
* mappedBy="subscriberList",
* cascade={"remove"}
Expand All @@ -117,10 +110,13 @@ class SubscriberList implements DomainModel, Identity, CreationDate, Modificatio

/**
* @var Collection
* @ManyToMany(targetEntity="PhpList\PhpList4\Domain\Model\Subscription\Subscriber", inversedBy="subscribedLists")
* @JoinTable(name="phplist_listuser",
* joinColumns={@JoinColumn(name="listid")},
* inverseJoinColumns={@JoinColumn(name="userid")}
* @Mapping\ManyToMany(
* targetEntity="PhpList\PhpList4\Domain\Model\Subscription\Subscriber",
* inversedBy="subscribedLists"
* )
* @Mapping\JoinTable(name="phplist_listuser",
* joinColumns={@Mapping\JoinColumn(name="listid")},
* inverseJoinColumns={@Mapping\JoinColumn(name="userid")}
* )
*/
private $subscribers = null;
Expand Down
27 changes: 10 additions & 17 deletions src/Domain/Model/Subscription/Subscriber.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,8 @@

use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping;
use Doctrine\ORM\Mapping\Column;
use Doctrine\ORM\Mapping\Entity;
use Doctrine\ORM\Mapping\HasLifecycleCallbacks;
use Doctrine\ORM\Mapping\JoinColumn;
use Doctrine\ORM\Mapping\JoinTable;
use Doctrine\ORM\Mapping\ManyToMany;
use Doctrine\ORM\Mapping\OneToMany;
use Doctrine\ORM\Mapping\PrePersist;
use Doctrine\ORM\Mapping\Table;
use JMS\Serializer\Annotation\ExclusionPolicy;
use JMS\Serializer\Annotation\Expose;
use PhpList\PhpList4\Domain\Model\Interfaces\CreationDate;
Expand All @@ -28,9 +21,9 @@
* This class represents asubscriber who can subscribe to multiple subscriber lists and can receive email messages from
* campaigns for those subscriber lists.
*
* @Entity(repositoryClass="PhpList\PhpList4\Domain\Repository\Subscription\SubscriberRepository")
* @Table(name="phplist_user_user")
* @HasLifecycleCallbacks
* @Mapping\Entity(repositoryClass="PhpList\PhpList4\Domain\Repository\Subscription\SubscriberRepository")
* @Mapping\Table(name="phplist_user_user")
* @Mapping\HasLifecycleCallbacks
* @ExclusionPolicy("all")
*
* @author Oliver Klee <oliver@phplist.com>
Expand Down Expand Up @@ -108,7 +101,7 @@ class Subscriber implements DomainModel, Identity, CreationDate, ModificationDat

/**
* @var Collection
* @OneToMany(
* @Mapping\OneToMany(
* targetEntity="PhpList\PhpList4\Domain\Model\Subscription\Subscription",
* mappedBy="subscriber",
* cascade={"remove"}
Expand All @@ -118,10 +111,10 @@ class Subscriber implements DomainModel, Identity, CreationDate, ModificationDat

/**
* @var Collection
* @ManyToMany(targetEntity="PhpList\PhpList4\Domain\Model\Messaging\SubscriberList", inversedBy="subscribers")
* @JoinTable(name="phplist_listuser",
* joinColumns={@JoinColumn(name="userid")},
* inverseJoinColumns={@JoinColumn(name="listid")}
* @Mapping\ManyToMany(targetEntity="PhpList\PhpList4\Domain\Model\Messaging\SubscriberList", inversedBy="subscribers")
* @Mapping\JoinTable(name="phplist_listuser",
* joinColumns={@Mapping\JoinColumn(name="userid")},
* inverseJoinColumns={@Mapping\JoinColumn(name="listid")}
* )
*/
private $subscribedLists = null;
Expand Down Expand Up @@ -220,7 +213,7 @@ public function setUniqueId(string $uniqueId)
/**
* Generates and sets a (new) random unique ID.
*
* @PrePersist
* @Mapping\PrePersist
*
* @return void
*/
Expand Down
31 changes: 16 additions & 15 deletions src/Domain/Model/Subscription/Subscription.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,8 @@

namespace PhpList\PhpList4\Domain\Model\Subscription;

use Doctrine\ORM\Mapping;
use Doctrine\ORM\Mapping\Column;
use Doctrine\ORM\Mapping\Entity;
use Doctrine\ORM\Mapping\HasLifecycleCallbacks;
use Doctrine\ORM\Mapping\Id;
use Doctrine\ORM\Mapping\JoinColumn;
use Doctrine\ORM\Mapping\ManyToOne;
use Doctrine\ORM\Mapping\Table;
use Doctrine\ORM\Proxy\Proxy;
use JMS\Serializer\Annotation\ExclusionPolicy;
use JMS\Serializer\Annotation\Expose;
Expand All @@ -24,9 +19,9 @@
* This class represents asubscriber who can subscribe to multiple subscriber lists and can receive email messages from
* campaigns for those subscriber lists.
*
* @Entity(repositoryClass="PhpList\PhpList4\Domain\Repository\Subscription\SubscriptionRepository")
* @Table(name="phplist_listuser")
* @HasLifecycleCallbacks
* @Mapping\Entity(repositoryClass="PhpList\PhpList4\Domain\Repository\Subscription\SubscriptionRepository")
* @Mapping\Table(name="phplist_listuser")
* @Mapping\HasLifecycleCallbacks
* @ExclusionPolicy("all")
*
* @author Oliver Klee <oliver@phplist.com>
Expand All @@ -51,17 +46,23 @@ class Subscription implements DomainModel, CreationDate, ModificationDate

/**
* @var Subscriber|Proxy|null
* @Id
* @ManyToOne(targetEntity="PhpList\PhpList4\Domain\Model\Subscription\Subscriber", inversedBy="subscriptions")
* @JoinColumn(name="userid")
* @Mapping\Id
* @Mapping\ManyToOne(
* targetEntity="PhpList\PhpList4\Domain\Model\Subscription\Subscriber",
* inversedBy="subscriptions"
* )
* @Mapping\JoinColumn(name="userid")
*/
private $subscriber = null;

/**
* @var SubscriberList|Proxy|null
* @Id
* @ManyToOne(targetEntity="PhpList\PhpList4\Domain\Model\Messaging\SubscriberList", inversedBy="subscriptions")
* @JoinColumn(name="listid")
* @Mapping\Id
* @Mapping\ManyToOne(
* targetEntity="PhpList\PhpList4\Domain\Model\Messaging\SubscriberList",
* inversedBy="subscriptions"
* )
* @Mapping\JoinColumn(name="listid")
*/
private $subscriberList = null;

Expand Down
10 changes: 4 additions & 6 deletions src/Domain/Model/Traits/IdentityTrait.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,7 @@

namespace PhpList\PhpList4\Domain\Model\Traits;

use Doctrine\ORM\Mapping\Column;
use Doctrine\ORM\Mapping\GeneratedValue;
use Doctrine\ORM\Mapping\Id;
use Doctrine\ORM\Mapping;
use JMS\Serializer\Annotation\Expose;

/**
Expand All @@ -19,9 +17,9 @@ trait IdentityTrait
{
/**
* @var int
* @Id
* @Column(type="integer")
* @GeneratedValue
* @Mapping\Id
* @Mapping\Column(type="integer")
* @Mapping\GeneratedValue
* @Expose
*/
private $id = 0;
Expand Down
7 changes: 3 additions & 4 deletions src/Domain/Model/Traits/ModificationDateTrait.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,7 @@

namespace PhpList\PhpList4\Domain\Model\Traits;

use Doctrine\ORM\Mapping\PrePersist;
use Doctrine\ORM\Mapping\PreUpdate;
use Doctrine\ORM\Mapping;

/**
* This trait provides an automatic modification date for models.
Expand Down Expand Up @@ -39,8 +38,8 @@ private function setModificationDate(\DateTime $modificationDate)
/**
* Updates the modification date to now.
*
* @PrePersist
* @PreUpdate
* @Mapping\PrePersist
* @Mapping\PreUpdate
*
* @return void
*/
Expand Down