* @copyright 2015 - 2016 Timothy J. Warren * @license http://www.opensource.org/licenses/mit-license.html MIT License * @version 4.0 * @link https://github.com/timw4mail/HummingBirdAnimeClient */ namespace Aviat\AnimeClient\API\Kitsu; use Aviat\AnimeClient\API\AbstractListItem; use Aviat\Ion\Di\ContainerAware; use Aviat\Ion\Json; use GuzzleHttp\Exception\ClientException; use GuzzleHttp\Psr7\Response; use RuntimeException; /** * CRUD operations for Kitsu list items */ class ListItem extends AbstractListItem { use ContainerAware; use KitsuTrait; public function __construct() { $this->init(); } public function create(array $data): bool { // TODO: Implement create() method. return false; } public function delete(string $id): bool { // TODO: Implement delete() method. return false; } public function get(string $id): array { return $this->getRequest("library-entries/{$id}", [ 'query' => [ 'include' => 'media' ] ]); } public function update(string $id, array $data): Response { $requestData = [ 'data' => [ 'id' => $id, 'type' => 'libraryEntries', 'attributes' => $data ] ]; $response = $this->getResponse('PATCH', "library-entries/{$id}", [ 'body' => JSON::encode($requestData) ]); return $response; } }