refactor: split jikan client into smaller domain files

This commit is contained in:
2026-04-06 22:29:34 +02:00
parent a7e941b563
commit efeaef21a1
5 changed files with 181 additions and 170 deletions

19
internal/jikan/anime.go Normal file
View File

@@ -0,0 +1,19 @@
package jikan
import "fmt"
// GetAnimeByID fetches full details for a single anime
func (c *Client) GetAnimeByID(id int) (Anime, error) {
if cached, ok := c.animeCache.Get(id); ok {
return cached, nil
}
var result AnimeResponse
reqURL := fmt.Sprintf("%s/anime/%d/full", c.baseURL, id)
if err := c.fetchWithRetry(reqURL, &result); err != nil {
return Anime{}, err
}
c.animeCache.Add(id, result.Data)
return result.Data, nil
}