dev-master
9999999-devComrade, an API reader that takes care about the proper deserialization and hydration
LGPLv3
The Requires
The Development Requires
Wallogit.com
2017 © Pedro PelĂĄez
Comrade, an API reader that takes care about the proper deserialization and hydration
Makes requests to API and allows to decode response to objects, (*2)
Written for WolnoĆciowiec as a bridge between microservices and comrades who wants to share the anarchist events, articles and news., (*3)
http://wolnosciowiec.net, (*4)
composer require wolnosciowiec/comrade-reader composer dump-autoload -o
Given we have an API method "/colors/by-name/{{ colorName }}" on external server that is returning:, (*5)
{
"success": true,
"data": {
"id": 1,
"color": "Black & Red"
}
}
<?php
namespace Example;
// Color.php
class Color
{
protected $id;
protected $colorName;
// getter, setter...
}
// ColorRepository.php
class ColorRepository extends AbstractApiRepository
{
public function getColorByName($colorName)
{
return $this->reader->request('GET', '/colors/by-name/' . $this->escape($colorName), '', 3600)
->decode(Color::class);
}
}
// ExampleController.php
class ExampleController extends AbstractController
{
public function viewAction()
{
$color = $this->getRepository()->getColorByName('Red & Black');
dump($color);
}
}
The result of our dump() should be an outputted object of Color type to the screen with private properties filled up., (*6)
Comrade, an API reader that takes care about the proper deserialization and hydration
LGPLv3