Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace JuanPescador\Domain\Person\Command;
- use IctWorks\SharedKernel\Domain\ValueObject\Date\ImmutableDateTime;
- use IctWorks\SharedKernel\Domain\ValueObject\Email;
- use IctWorks\SharedKernel\Domain\ValueObject\Language;
- use IctWorks\SharedKernel\Domain\ValueObject\PersonName;
- use IctWorks\SharedKernel\Domain\ValueObject\PhoneNumber;
- use JuanPescador\Domain\Person\Gender;
- use JuanPescador\Domain\Person\PersonType;
- use JuanPescador\Domain\Person\Picture;
- use Rhumsaa\Uuid\Uuid;
- /**
- * Class RegisterPersonCommand
- * @package JuanPescador\Domain\Person\Command
- * @author Dariusz Gafka <dgafka.mail@gmail.com>
- */
- class RegisterPersonCommand
- {
- /**
- * @var Uuid
- */
- private $personId;
- /**
- * @var Email
- */
- private $email;
- /**
- * @var PersonType
- */
- private $personType;
- /**
- * @var PersonName
- */
- private $personName;
- /**
- * @var Gender
- */
- private $gender;
- /**
- * @var Language
- */
- private $primaryLanguage;
- /**
- * @var PhoneNumber|null
- */
- private $phoneNumber;
- /**
- * @var Picture|null
- */
- private $picture;
- /**
- * @var ImmutableDateTime|null
- */
- private $dateOfBirth;
- /**
- * RegisterPersonCommand constructor.
- *
- * @param Uuid $personId
- * @param Email $email
- * @param PersonType $personType
- * @param PersonName $personName
- * @param Gender $gender
- * @param Language $primaryLanguage
- * @param PhoneNumber|null $phoneNumber
- * @param Picture|null $picture
- * @param ImmutableDateTime|null $dateOfBirth
- */
- public function __construct(Uuid $personId, Email $email, PersonType $personType, PersonName $personName, Gender $gender, Language $primaryLanguage, ?PhoneNumber $phoneNumber, ?Picture $picture, ?ImmutableDateTime $dateOfBirth)
- {
- $this->personId = $personId;
- $this->email = $email;
- $this->personType = $personType;
- $this->personName = $personName;
- $this->gender = $gender;
- $this->primaryLanguage = $primaryLanguage;
- $this->phoneNumber = $phoneNumber;
- $this->picture = $picture;
- $this->dateOfBirth = $dateOfBirth;
- }
- /**
- * @return Uuid
- */
- public function getPersonId(): Uuid
- {
- return $this->personId;
- }
- /**
- * @return Email
- */
- public function getEmail(): Email
- {
- return $this->email;
- }
- /**
- * @return PersonType
- */
- public function getPersonType(): PersonType
- {
- return $this->personType;
- }
- /**
- * @return PersonName
- */
- public function getPersonName(): PersonName
- {
- return $this->personName;
- }
- /**
- * @return Gender
- */
- public function getGender(): Gender
- {
- return $this->gender;
- }
- /**
- * @return PhoneNumber|null
- */
- public function getPhoneNumber() : ?PhoneNumber
- {
- return $this->phoneNumber;
- }
- /**
- * @return Picture|null
- */
- public function getPicture() : ?Picture
- {
- return $this->picture;
- }
- /**
- * @return ImmutableDateTime|null
- */
- public function getDateOfBirth() : ?ImmutableDateTime
- {
- return $this->dateOfBirth;
- }
- /**
- * @return Language
- */
- public function getPrimaryLanguage(): Language
- {
- return $this->primaryLanguage;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement