/**
  * @param string $className of the property
  * @param string $propertyName
  * @param array $types constrains
  * @param mixed $value of the property
  */
 public function __construct($className, $propertyName, $types = null, $value = null)
 {
     $this->className = $className;
     $this->propertyName = $propertyName;
     $this->value = $value;
     $this->types = $types;
     parent::__construct($this->customMessage());
 }
 public function __construct($body, $status)
 {
     $this->body = $body;
     $this->status = $status;
     parent::__construct($this->customMessage());
 }
 public function __construct($exceptions)
 {
     $this->exceptions = $exceptions;
     parent::__construct($this->customMessage());
 }
 public function __construct($body, $status)
 {
     $this->jsonResponse = $body;
     $this->statusCode = $status;
     parent::__construct($this->customMessage());
 }
 public function __construct($headers, $body)
 {
     $this->headers = $headers;
     $this->body = $body;
     parent::__construct($this->customMessage());
 }