vendor/sulu/sulu/src/Sulu/Bundle/ContactBundle/Entity/ContactTitle.php line 19

  1. <?php
  2. /*
  3.  * This file is part of Sulu.
  4.  *
  5.  * (c) Sulu GmbH
  6.  *
  7.  * This source file is subject to the MIT license that is bundled
  8.  * with this source code in the file LICENSE.
  9.  */
  10. namespace Sulu\Bundle\ContactBundle\Entity;
  11. use JMS\Serializer\Annotation\Groups;
  12. /**
  13.  * ContactTitle.
  14.  */
  15. class ContactTitle implements \JsonSerializable
  16. {
  17.     public const RESOURCE_KEY 'contact_titles';
  18.     /**
  19.      * @var string
  20.      *
  21.      * @Groups({"fullContact", "partialContact"})
  22.      */
  23.     private $title;
  24.     /**
  25.      * @var int
  26.      *
  27.      * @Groups({"fullContact", "partialContact"})
  28.      */
  29.     private $id;
  30.     /**
  31.      * Set title.
  32.      *
  33.      * @param string $title
  34.      *
  35.      * @return ContactTitle
  36.      */
  37.     public function setTitle($title)
  38.     {
  39.         $this->title $title;
  40.         return $this;
  41.     }
  42.     /**
  43.      * Get title.
  44.      *
  45.      * @return string
  46.      */
  47.     public function getTitle()
  48.     {
  49.         return $this->title;
  50.     }
  51.     /**
  52.      * Get id.
  53.      *
  54.      * @return int
  55.      */
  56.     public function getId()
  57.     {
  58.         return $this->id;
  59.     }
  60.     /**
  61.      * (PHP 5 &gt;= 5.4.0)<br/>
  62.      * Specify data which should be serialized to JSON.
  63.      *
  64.      * @see http://php.net/manual/en/jsonserializable.jsonserialize.php
  65.      *
  66.      * @return mixed data which can be serialized by <b>json_encode</b>,
  67.      *               which is a value of any type other than a resource
  68.      */
  69.     #[\ReturnTypeWillChange]
  70.     public function jsonSerialize()
  71.     {
  72.         return [
  73.             'id' => $this->getId(),
  74.             'title' => $this->getTitle(),
  75.         ];
  76.     }
  77.     /**
  78.      * Return the string representation of this title.
  79.      *
  80.      * @return string
  81.      */
  82.     public function __toString()
  83.     {
  84.         return (string) $this->getTitle();
  85.     }
  86. }