public function after(CommandInterface $command, ResponseInterface $response, Parameter $model, &$result, array $context = []) { // Handle additional, undefined properties $additional = $model->getAdditionalProperties(); if (!$additional instanceof Parameter) { return; } // Use the model location as the default if one is not set on additional $addLocation = $additional->getLocation() ?: $model->getLocation(); if ($addLocation == $this->locationName) { foreach ($this->json as $prop => $val) { if (!isset($result[$prop])) { // Only recurse if there is a type specified $result[$prop] = $additional->getType() ? $this->recurse($additional, $val) : $val; } } } $this->json = []; }
private function visitOuterArray(Parameter $model, array &$result, GuzzleCommandInterface $command, ResponseInterface $response, array &$context) { // Use 'location' defined on the top of the model if (!($location = $model->getLocation())) { return; } if (!isset($foundVisitors[$location])) { $this->triggerBeforeVisitor($location, $model, $result, $command, $response, $context); } // Visit each item in the response $this->responseLocations[$location]->visit($command, $response, $model, $result, $context); }
public function testAllowsSimpleLocationValue() { $p = new Parameter(array('name' => 'myname', 'location' => 'foo', 'sentAs' => 'Hello')); $this->assertEquals('foo', $p->getLocation()); $this->assertEquals('Hello', $p->getSentAs()); }