Mercurial > hg > isophonics-drupal-site
view vendor/jcalderonzumba/gastonjs/src/NetworkTraffic/Request.php @ 19:fa3358dc1485 tip
Add ndrum files
author | Chris Cannam |
---|---|
date | Wed, 28 Aug 2019 13:14:47 +0100 |
parents | 4c8ae668cc8c |
children |
line wrap: on
line source
<?php namespace Zumba\GastonJS\NetworkTraffic; /** * Class Request * @package Zumba\GastonJS\NetworkTraffic */ class Request { /** @var array */ protected $data; /** @var array */ protected $responseParts; /** * @param array $data * @param array $responseParts */ public function __construct($data, $responseParts = null) { $this->data = $data; $this->responseParts = $this->createResponseParts($responseParts); } /** * Creates an array of Response objects from a given response array * @param $responseParts * @return array */ protected function createResponseParts($responseParts) { if ($responseParts === null) { return array(); } $responses = array(); foreach ($responseParts as $responsePart) { $responses[] = new Response($responsePart); } return $responses; } /** * @return array */ public function getResponseParts() { return $this->responseParts; } /** * @param array $responseParts */ public function setResponseParts($responseParts) { $this->responseParts = $responseParts; } /** * Returns the url where the request is going to be made * @return string */ public function getUrl() { //TODO: add isset maybe? return $this->data['url']; } /** * Returns the request method * @return string */ public function getMethod() { return $this->data['method']; } /** * Gets the request headers * @return array */ public function getHeaders() { //TODO: Check if the data is actually an array, else make it array and see implications return $this->data['headers']; } /** * Returns if exists the request time * @return \DateTime */ public function getTime() { if (isset($this->data['time'])) { $requestTime = new \DateTime(); //TODO: fix the microseconds to miliseconds $requestTime->createFromFormat("Y-m-dTH:i:s.uZ", $this->data["time"]); return $requestTime; } return null; } }