Make Kitsu auth token error easier to recover from
timw4mail/HummingBirdAnimeClient/pipeline/head This commit looks good Details

This commit is contained in:
Timothy Warren 2022-01-06 12:50:26 -05:00
parent ecf09b5641
commit c23001e7b1
2 changed files with 9 additions and 3 deletions

View File

@ -44,6 +44,7 @@ use Aviat\Ion\{
use Generator;
use function Amp\Promise\wait;
use function Aviat\AnimeClient\getApiClient;
use const Aviat\AnimeClient\SESSION_SEGMENT;
/**
* Kitsu API Model
@ -707,9 +708,14 @@ final class Model {
$rawData = Json::decode($json);
$data = $rawData['data']['findProfileBySlug']['library']['all'] ?? [];
$page = $data['pageInfo'];
$page = $data['pageInfo'] ?? [];
if (empty($data))
{
// Clear session, in case the error is an invalid token.
$segment = $this->container->get('session')
->getSegment(SESSION_SEGMENT);
$segment->clear();
// @TODO Proper Error logging
dump($rawData);
die();
@ -719,7 +725,7 @@ final class Model {
yield $emit($data['nodes']);
if ($page['hasNextPage'] === FALSE)
if ($page['hasNextPage'] !== TRUE)
{
break;
}

View File

@ -136,7 +136,7 @@ final class AnimeTransformer extends AbstractTransformer {
'show_type' => $base['subtype'],
'status' => Kitsu::getAiringStatus($base['startDate'], $base['endDate']),
'streaming_links' => Kitsu::parseStreamingLinks($base['streamingLinks']['nodes'] ?? []),
'synopsis' => $base['description']['en'],
'synopsis' => $base['description']['en'] ?? '',
'title' => $title,
'titles' => $titles,
'titles_more' => $titles_more,