annotate vendor/jcalderonzumba/gastonjs/src/NetworkTraffic/Response.php @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 4c8ae668cc8c
children
rev   line source
Chris@0 1 <?php
Chris@0 2 namespace Zumba\GastonJS\NetworkTraffic;
Chris@0 3
Chris@0 4 /**
Chris@0 5 * Class Response
Chris@0 6 * @package Zumba\GastonJS\NetworkTraffic
Chris@0 7 */
Chris@0 8 class Response {
Chris@0 9 /** @var array */
Chris@0 10 protected $data;
Chris@0 11
Chris@0 12 /**
Chris@0 13 * @param $data
Chris@0 14 */
Chris@0 15 public function __construct($data) {
Chris@0 16 $this->data = $data;
Chris@0 17 }
Chris@0 18
Chris@0 19 /**
Chris@0 20 * Gets Response url
Chris@0 21 * @return string
Chris@0 22 */
Chris@0 23 public function getUrl() {
Chris@0 24 return $this->data['url'];
Chris@0 25 }
Chris@0 26
Chris@0 27 /**
Chris@0 28 * Gets the response status code
Chris@0 29 * @return int
Chris@0 30 */
Chris@0 31 public function getStatus() {
Chris@0 32 return intval($this->data['status']);
Chris@0 33 }
Chris@0 34
Chris@0 35 /**
Chris@0 36 * Gets the status text of the response
Chris@0 37 * @return string
Chris@0 38 */
Chris@0 39 public function getStatusText() {
Chris@0 40 return $this->data['statusText'];
Chris@0 41 }
Chris@0 42
Chris@0 43 /**
Chris@0 44 * Gets the response headers
Chris@0 45 * @return array
Chris@0 46 */
Chris@0 47 public function getHeaders() {
Chris@0 48 return $this->data['headers'];
Chris@0 49 }
Chris@0 50
Chris@0 51 /**
Chris@0 52 * Get redirect url if response is a redirect
Chris@0 53 * @return string
Chris@0 54 */
Chris@0 55 public function getRedirectUrl() {
Chris@0 56 if (isset($this->data['redirectUrl']) && !empty($this->data['redirectUrl'])) {
Chris@0 57 return $this->data['redirectUrl'];
Chris@0 58 }
Chris@0 59 return null;
Chris@0 60 }
Chris@0 61
Chris@0 62 /**
Chris@0 63 * Returns the size of the response body
Chris@0 64 * @return int
Chris@0 65 */
Chris@0 66 public function getBodySize() {
Chris@0 67 if (isset($this->data['bodySize'])) {
Chris@0 68 return intval($this->data['bodySize']);
Chris@0 69 }
Chris@0 70 return 0;
Chris@0 71 }
Chris@0 72
Chris@0 73 /**
Chris@0 74 * Returns the content type of the response
Chris@0 75 * @return string
Chris@0 76 */
Chris@0 77 public function getContentType() {
Chris@0 78 if (isset($this->data['contentType'])) {
Chris@0 79 return $this->data['contentType'];
Chris@0 80 }
Chris@0 81 return null;
Chris@0 82 }
Chris@0 83
Chris@0 84 /**
Chris@0 85 * Returns if exists the response time
Chris@0 86 * @return \DateTime
Chris@0 87 */
Chris@0 88 public function getTime() {
Chris@0 89 if (isset($this->data['time'])) {
Chris@0 90 $requestTime = new \DateTime();
Chris@0 91 //TODO: fix the microseconds to miliseconds
Chris@0 92 $requestTime->createFromFormat("Y-m-dTH:i:s.uZ", $this->data["time"]);
Chris@0 93 return $requestTime;
Chris@0 94 }
Chris@0 95 return null;
Chris@0 96 }
Chris@0 97 }