vendor/gollumsf/rest-doc-bundle/src/Annotation/ApiDescribe.php line 11

Open in your IDE?
  1. <?php
  2. namespace GollumSF\RestDocBundle\Annotation;
  3. use Sensio\Bundle\FrameworkExtraBundle\Configuration\ConfigurationAnnotation;
  4. /**
  5.  * @Annotation
  6.  * @Target({"CLASS", "METHOD"})
  7.  */
  8. class ApiDescribe extends ConfigurationAnnotation {
  9.     
  10.     const ALIAS_NAME 'gsf_api_describe';
  11.     
  12.     /** @var string */
  13.     private $entity;
  14.     /** @var bool */
  15.     private $collection false;
  16.     /** @var string[] */
  17.     private $serializeGroups = [];
  18.     /** @var string[] */
  19.     private $unserializeGroups = [];
  20.     /** @var array */
  21.     private $request = [];
  22.     /** @var array */
  23.     private $response = [];
  24.     private $summary null;
  25.     
  26.     /////////////
  27.     // Getters //
  28.     /////////////
  29.     public function getEntity(): ?string {
  30.         return $this->entity;
  31.     }
  32.     public function isCollection(): bool {
  33.         return $this->collection;
  34.     }
  35.     public function getSerializeGroups(): array {
  36.         return $this->serializeGroups;
  37.     }
  38.     public function getUnserializeGroups(): array {
  39.         return $this->unserializeGroups;
  40.     }
  41.     public function getRequest(): array {
  42.         return $this->request;
  43.     }
  44.     public function getResponse(): array {
  45.         return $this->response;
  46.     }
  47.     public function getSummary(): ?string {
  48.         return $this->summary;
  49.     }
  50.     public function getAliasName() {
  51.         return self::ALIAS_NAME;
  52.     }
  53.     public function allowArray() {
  54.         return true;
  55.     }
  56.     /////////////
  57.     // Setters //
  58.     /////////////
  59.     public function setEntity(?string $entity): self {
  60.         $this->entity $entity;
  61.         return $this;
  62.     }
  63.     public function setCollection(bool $collection): self {
  64.         $this->collection $collection;
  65.         return $this;
  66.     }
  67.     public function setSerializeGroups($serializeGroups): self {
  68.         if (!is_array($serializeGroups)) {
  69.             $serializeGroups = [$serializeGroups];
  70.         }
  71.         $this->serializeGroups $serializeGroups;
  72.         return $this;
  73.     }
  74.     public function setUnserializeGroups($unserializeGroups): self {
  75.         if (!is_array($unserializeGroups)) {
  76.             $unserializeGroups = [$unserializeGroups];
  77.         }
  78.         $this->unserializeGroups $unserializeGroups;
  79.         return $this;
  80.     }
  81.     public function setRequest(array $request): self {
  82.         $this->request $request;
  83.         return $this;
  84.     }
  85.     public function setResponse(array $response): self {
  86.         $this->response $response;
  87.         return $this;
  88.     }
  89.     public function setSummary(?string $summary): self {
  90.         $this->summary $summary;
  91.         return $this;
  92.     }
  93.     public function setValue(?string $entity): self {
  94.         $this->entity $entity;
  95.         return $this;
  96.     }
  97. }