Skip to content

Commit

Permalink
refactor user anime/manga reviews + update schema [ci skip]
Browse files Browse the repository at this point in the history
  • Loading branch information
Irfan committed Aug 1, 2020
1 parent 01d6357 commit 732dcbf
Show file tree
Hide file tree
Showing 18 changed files with 171 additions and 116 deletions.
2 changes: 1 addition & 1 deletion src/Model/Anime/AnimeReview.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
use Jikan\Parser\Reviews\AnimeReviewParser;

/**
* Class AnimeReview
* Class UserAnimeReview
*
* @package Jikan\Model
*/
Expand Down
2 changes: 1 addition & 1 deletion src/Model/Manga/MangaReview.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
use Jikan\Parser\Reviews\MangaReviewParser;

/**
* Class MangaReview
* Class UserMangaReview
*
* @package Jikan\Model
*/
Expand Down
4 changes: 2 additions & 2 deletions src/Model/Recommendations/RecentRecommendations.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@

use Jikan\Model\Common\Collection\Pagination;
use Jikan\Model\Common\Collection\Results;
use Jikan\Model\User\Reviews;
use Jikan\Model\User\UserReviews;
use Jikan\Parser;

/**
* Class RecentRecommendations
*
* @package Jikan\Model\ReviewsParser\RecentReviews
* @package Jikan\Model\UserReviewsParser\RecentReviews
*/
class RecentRecommendations extends Results implements Pagination
{
Expand Down
2 changes: 1 addition & 1 deletion src/Model/Recommendations/UserRecommendations.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
/**
* Class UserRecommendations
*
* @package Jikan\Model\ReviewsParser\RecentReviews
* @package Jikan\Model\UserReviewsParser\RecentReviews
*/
class UserRecommendations extends Results implements Pagination
{
Expand Down
2 changes: 1 addition & 1 deletion src/Model/Reviews/AnimeReview.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
use Jikan\Model\Anime\AnimeReviewScores;

/**
* Class AnimeReview
* Class UserAnimeReview
*
* @package Jikan\Model
*/
Expand Down
2 changes: 1 addition & 1 deletion src/Model/Reviews/MangaReview.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
use Jikan\Model\Manga\MangaReviewScores;

/**
* Class AnimeReview
* Class UserAnimeReview
*
* @package Jikan\Model
*/
Expand Down
2 changes: 1 addition & 1 deletion src/Model/Reviews/Recent/RecentAnimeReview.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
use Jikan\Parser\Reviews\AnimeReviewParser;

/**
* Class AnimeReview
* Class UserAnimeReview
*
* @package Jikan\Model
*/
Expand Down
2 changes: 1 addition & 1 deletion src/Model/Reviews/Recent/RecentMangaReview.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
use Jikan\Parser\Reviews\MangaReviewParser;

/**
* Class MangaReview
* Class UserMangaReview
*
* @package Jikan\Model
*/
Expand Down
2 changes: 1 addition & 1 deletion src/Model/Reviews/RecentReviews.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
/**
* Class RecentReviews
*
* @package Jikan\Model\ReviewsParser\RecentReviews
* @package Jikan\Model\UserReviewsParser\RecentReviews
*/
class RecentReviews extends Results implements Pagination
{
Expand Down
51 changes: 0 additions & 51 deletions src/Model/User/Reviews/MangaReview.php

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -3,49 +3,42 @@
namespace Jikan\Model\User\Reviews;

use Jikan\Model\Common\AnimeMeta;
use Jikan\Model\Resource\CommonImageResource\CommonImageResource;
use Jikan\Parser\Anime\AnimeReviewParser;
use Jikan\Model\Reviews\AnimeReview;
use Jikan\Model\Reviews\Reviewer;
use Jikan\Parser\Reviews\AnimeReviewParser;

/**
* Class AnimeReview
* Class UserAnimeReview
*
* @package Jikan\Model
*/
class AnimeReview extends \Jikan\Model\Reviews\AnimeReview
class UserAnimeReview extends AnimeReview
{

/**
* @var string
* @var AnimeMeta
*/
private $title;
/**
* @var CommonImageResource
*/
private $images;
private $anime;


/**
* Create an instance from an AnimeReviewParser parser
*
* @param AnimeReviewParser $parser
*
* @return AnimeReview
* @return UserAnimeReview
* @throws \Exception
* @throws \RuntimeException
* @throws \InvalidArgumentException
*/
public static function fromParser(AnimeReviewParser $parser): AnimeReview
public static function fromParser(AnimeReviewParser $parser): UserAnimeReview
{
$instance = new self();

$instance->anime = $parser->getAnime();
$instance->malId = $parser->getId();
$instance->url = $parser->getUrl();
$instance->title = $parser->getTitle();
$instance->images = CommonImageResource::factory($parser->getImageUrl());
$instance->type = $parser->getType();
$instance->votes = $parser->getHelpfulCount();
$instance->date = $parser->getDate();
$instance->scores = $parser->getAnimeScores();
$instance->review = $parser->getContent();
$instance->episodesWatched = $parser->getEpisodesWatched();

return $instance;
}
Expand Down
116 changes: 116 additions & 0 deletions src/Model/User/Reviews/UserMangaReview.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
<?php

namespace Jikan\Model\User\Reviews;


use Jikan\Model\Common\MangaMeta;
use Jikan\Model\Manga\MangaReviewScores;
use Jikan\Model\Reviews\MangaReview;
use Jikan\Parser\Reviews\MangaReviewParser;

/**
* Class UserAnimeReview
*
* @package Jikan\Model
*/
class UserMangaReview extends MangaReview
{
/**
* @return string
*/
public function getChaptersRead(): string
{
return $this->chaptersRead;
}

/**
* @return MangaReviewScores
*/
public function getScores(): MangaReviewScores
{
return $this->scores;
}

/**
* @return int
*/
public function getMalId(): int
{
return $this->malId;
}

/**
* @return string
*/
public function getUrl(): string
{
return $this->url;
}

/**
* @return string
*/
public function getType(): string
{
return $this->type;
}

/**
* @return int
*/
public function getVotes(): int
{
return $this->votes;
}

/**
* @return \DateTimeImmutable
*/
public function getDate(): \DateTimeImmutable
{
return $this->date;
}

/**
* @return string
*/
public function getReview(): string
{
return $this->review;
}

/**
* @return MangaMeta
*/
public function getManga(): MangaMeta
{
return $this->manga;
}

/**
* @var MangaMeta
*/
private $manga;

/**
* @param MangaReviewParser $parser
* @return UserAnimeReview
* @throws \Exception
*/
public static function fromParser(MangaReviewParser $parser): UserMangaReview
{
$instance = new self();

$instance->manga = $parser->getManga();
$instance->malId = $parser->getId();
$instance->url = $parser->getUrl();
$instance->type = $parser->getType();
$instance->votes = $parser->getHelpfulCount();
$instance->date = $parser->getDate();
$instance->scores = $parser->getMangaScores();
$instance->review = $parser->getContent();
$instance->chaptersRead = $parser->getChaptersRead();

return $instance;
}
}
Original file line number Diff line number Diff line change
@@ -1,19 +1,17 @@
<?php

namespace Jikan\Model\User;
namespace Jikan\Model\User\Reviews;

use Jikan\Model\Common\Collection\Pagination;
use Jikan\Model\Common\Collection\Results;
use Jikan\Model\Reviews\RecentReviews;
use Jikan\Parser\Reviews\RecentReviewsParser;
use Jikan\Parser\User\ReviewsParser;
use Jikan\Parser\User\Reviews\UserReviewsParser;

/**
* Class ReviewsParser
* Class UserReviewsParser
*
* @package Jikan\Model
*/
class Reviews extends Results implements Pagination
class UserReviews extends Results implements Pagination
{

/**
Expand All @@ -27,10 +25,10 @@ class Reviews extends Results implements Pagination
private $lastVisiblePage = 1;

/**
* @param ReviewsParser $parser
* @return Reviews
* @param UserReviewsParser $parser
* @return UserReviews
*/
public static function fromParser(ReviewsParser $parser): Reviews
public static function fromParser(UserReviewsParser $parser): UserReviews
{
$instance = new self();
$instance->results = $parser->getReviews();
Expand Down
7 changes: 3 additions & 4 deletions src/MyAnimeList/MalClient.php
Original file line number Diff line number Diff line change
Expand Up @@ -1168,16 +1168,15 @@ public function getUsernameById(Request\User\UsernameByIdRequest $request) : Mod

/**
* @param Request\User\UserReviewsRequest $request
* @return Model\User\Reviews
* @return Model\User\Reviews\UserReviews
* @throws BadResponseException
* @throws ParserException
*/
public function getUserReviews(Request\User\UserReviewsRequest $request) : Model\User\Reviews
public function getUserReviews(Request\User\UserReviewsRequest $request) : Model\User\Reviews\UserReviews
{
$crawler = $this->ghoutte->request('GET', $request->getPath());
try {
$parser = new Parser\User\ReviewsParser($crawler);

$parser = new Parser\User\Reviews\UserReviewsParser($crawler);
return $parser->getModel();
} catch (\Exception $e) {
throw ParserException::fromRequest($request, $e);
Expand Down
Loading

0 comments on commit 732dcbf

Please sign in to comment.