From 2165a9bd9a68d72ab31f2c4c6f07e276736509da Mon Sep 17 00:00:00 2001 From: =?utf8?q?Rapha=C3=ABl=20Gertz?= Date: Wed, 21 Feb 2024 12:44:58 +0100 Subject: [PATCH] Strict types Add google token Reflect updates on owning side --- Entity/User.php | 146 ++++++++++++++++++++++++++++++++---------------- 1 file changed, 97 insertions(+), 49 deletions(-) diff --git a/Entity/User.php b/Entity/User.php index 5738c3a..387b196 100644 --- a/Entity/User.php +++ b/Entity/User.php @@ -11,65 +11,71 @@ namespace Rapsys\AirBundle\Entity; +use Doctrine\Common\Collections\Collection; use Doctrine\Common\Collections\ArrayCollection; use Rapsys\UserBundle\Entity\User as BaseUser; class User extends BaseUser { /** - * @var string + * @var ?string */ - protected $city; + private ?string $city; /** - * @var string + * @var ?string */ - protected $phone; + private ?string $phone; /** * @var Country */ - protected $country; + private ?Country $country; /** - * @var string + * @var ?string */ - protected $pseudonym; + private ?string $pseudonym; /** - * @var string + * @var ?string */ - protected $zipcode; + private ?string $zipcode; /** - * @var ArrayCollection + * @var \Doctrine\Common\Collections\Collection */ - private $applications; + private Collection $applications; /** - * @var ArrayCollection + * @var \Doctrine\Common\Collections\Collection */ - private $dances; + private Collection $dances; /** - * @var ArrayCollection + * @var \Doctrine\Common\Collections\Collection */ - private $locations; + private Collection $locations; /** - * @var ArrayCollection + * @var \Doctrine\Common\Collections\Collection */ - private $snippets; + private Collection $snippets; /** - * @var ArrayCollection + * @var \Doctrine\Common\Collections\Collection */ - private $subscribers; + private Collection $subscribers; /** - * @var ArrayCollection + * @var \Doctrine\Common\Collections\Collection */ - private $subscriptions; + private Collection $subscriptions; + + /** + * @var \Doctrine\Common\Collections\Collection + */ + private Collection $googleTokens; /** * Constructor @@ -94,50 +100,51 @@ class User extends BaseUser { $this->snippets = new ArrayCollection(); $this->subscribers = new ArrayCollection(); $this->subscriptions = new ArrayCollection(); + $this->googleTokens = new ArrayCollection(); } /** - * Set country + * Set city * - * @param Country $country + * @param string $city * * @return User */ - public function setCountry(Country $country) { - $this->country = $country; + public function setCity(?string $city): User { + $this->city = $city; return $this; } /** - * Get country + * Get city * - * @return Country + * @return string */ - public function getCountry() { - return $this->country; + public function getCity(): ?string { + return $this->city; } /** - * Set city + * Set country * - * @param string $city + * @param Country $country * * @return User */ - public function setCity(?string $city): User { - $this->city = $city; + public function setCountry(?Country $country): User { + $this->country = $country; return $this; } /** - * Get city + * Get country * - * @return string + * @return Country */ - public function getCity(): ?string { - return $this->city; + public function getCountry(): ?Country { + return $this->country; } /** @@ -231,9 +238,9 @@ class User extends BaseUser { /** * Get applications * - * @return ArrayCollection + * @return \Doctrine\Common\Collections\Collection */ - public function getApplications(): ArrayCollection { + public function getApplications(): Collection { return $this->applications; } @@ -264,9 +271,9 @@ class User extends BaseUser { /** * Get dances * - * @return ArrayCollection + * @return \Doctrine\Common\Collections\Collection */ - public function getDances(): ArrayCollection { + public function getDances(): Collection { return $this->dances; } @@ -295,9 +302,9 @@ class User extends BaseUser { /** * Get locations * - * @return ArrayCollection + * @return \Doctrine\Common\Collections\Collection */ - public function getLocations(): ArrayCollection { + public function getLocations(): Collection { return $this->locations; } @@ -326,9 +333,9 @@ class User extends BaseUser { /** * Get snippets * - * @return ArrayCollection + * @return \Doctrine\Common\Collections\Collection */ - public function getSnippets(): ArrayCollection { + public function getSnippets(): Collection { return $this->snippets; } @@ -357,9 +364,9 @@ class User extends BaseUser { /** * Get subscribers * - * @return ArrayCollection + * @return \Doctrine\Common\Collections\Collection */ - public function getSubscribers(): ArrayCollection { + public function getSubscribers(): Collection { return $this->subscribers; } @@ -371,6 +378,9 @@ class User extends BaseUser { * @return User */ public function addSubscription(User $subscription): User { + //Add from owning side + $subscription->addSubscriber($this); + $this->subscriptions[] = $subscription; return $this; @@ -382,15 +392,53 @@ class User extends BaseUser { * @param User $subscription */ public function removeSubscription(User $subscription): bool { + if (!$this->users->contains($user)) { + return true; + } + + //Remove from owning side + $subscription->removeSubscriber($this); + return $this->subscriptions->removeElement($subscription); } /** * Get subscriptions * - * @return ArrayCollection + * @return \Doctrine\Common\Collections\Collection */ - public function getSubscriptions(): ArrayCollection { + public function getSubscriptions(): Collection { return $this->subscriptions; } + + /** + * Add google token + * + * @param GoogleToken $googleToken + * + * @return User + */ + public function addGoogleToken(GoogleToken $googleToken): User { + $this->googleTokens[] = $googleToken; + + return $this; + } + + /** + * Remove google token + * + * @param GoogleToken $googleToken + */ + public function removeGoogleToken(GoogleToken $googleToken): bool { + return $this->googleTokens->removeElement($googleToken); + } + + /** + * Get googleTokens + * + * @return \Doctrine\Common\Collections\Collection + */ + public function getGoogleTokens(): Collection { + return $this->googleTokens; + } } -- 2.41.1