Documentation
¶
Index ¶
- Constants
- Variables
- type Anime
- type AnimeDetails
- type AnimeService
- func (s *AnimeService) CustomAnimePayload(payload JsonPayload) ([]Anime, error)
- func (s *AnimeService) GetAnimeDetails(animeID int) (AnimeDetails, error)
- func (s *AnimeService) GetAnimeListBySeason(offset, limit int, season season, orderBy order, releaseYear int) ([]Anime, error)
- func (s *AnimeService) GetLatestAnimes(offset, limit int) ([]Anime, error)
- func (s *AnimeService) OrderBy(offset, limit int, orderBy order) ([]Anime, error)
- func (s *AnimeService) SearchByName(offset, limit int, animeName string, orderBy order) ([]Anime, error)
- type BackupLinks
- type Config
- type DownloadInfo
- type DownloadInfos
- type DownloadLinks
- type Episode
- type EpisodeService
- func (s *EpisodeService) GetBackupLinks(animeName string, episodeNb int) (DownloadInfos, error)
- func (s *EpisodeService) GetDirectDownloadInfos(animeName string, episodeNb int) (DownloadInfos, error)
- func (s *EpisodeService) GetDirectDownloadInfosWithMax(animeName string, episodeNb int, maxNbOfLinks int) (DownloadInfos, error)
- func (s *EpisodeService) GetDownloadLinks(animeName string, episodeNb int) (DownloadLinks, error)
- func (s *EpisodeService) GetEpisodeDetails(animeID, episodeID int) (Episode, error)
- func (s *EpisodeService) GetEpisodesList(animeID int) ([]Episode, error)
- func (s *EpisodeService) GetFirstDirectDownloadInfo(animeName string, episodeNb int) (DownloadInfo, error)
- type JsonPayload
- func (p *JsonPayload) ToJson() (string, error)
- func (p *JsonPayload) WithAnimeId(id int) error
- func (p *JsonPayload) WithEpisodeId(id int) error
- func (p *JsonPayload) WithJustInfo(info string) error
- func (p *JsonPayload) WithLimit(limit int) error
- func (p *JsonPayload) WithListType(l listType) error
- func (p *JsonPayload) WithN(animeName string, episodeNb int) error
- func (p *JsonPayload) WithName(name string)
- func (p *JsonPayload) WithOffset(offset int) error
- func (p *JsonPayload) WithOrder(o order) error
- func (p *JsonPayload) WithReleaseYear(year int) error
- func (p *JsonPayload) WithSeason(s season) error
- type News
- type RelatedAnimes
- type RelatedNews
- type TohruClient
Constants ¶
View Source
const ( PublishedAnimesPath = "anime/public/animes/get-published-animes" GetAnimeDetailsPath = "anime/public/anime/get-anime-details" )
View Source
const ( GetEpisodePath = "/anime/public/episodes/get-episodes-new" EpisodeDownloadPath = "/la/public/api/fw" BackupLinksPath = "/anime/public/v-qs.php" )
View Source
const ( CustomList listType = "custom_list" AnimeList listType = "anime_list" CurrentlyAiring listType = "currently_airing" LatestUpdatedEpisode listType = "latest_updated_episode" LatestUpdatedEpisodeNew listType = "latest_updated_episode_new" TopAnime listType = "top_anime" TopCurrentlyAiring listType = "top_currently_airing" TopTv listType = "top_tv" TopMovie listType = "top_movie" Featured listType = "featured" Filter listType = "filter" Favoirtes listType = "watching" PlanToWatch listType = "plan_to_watch" Watched listType = "watched" Dropped listType = "dropped" OnHold listType = "on_hold" WatchedHistory listType = "watched_history" Schedule listType = "schedule" LastAddedTv listType = "last_added_tv" LastAddedMovie listType = "last_added_movie" TopAnimeMal listType = "top_anime_mal" CurrentlyAiringMal listType = "top_currently_airing_mal" TopTvMal listType = "top_tv_mal" AnimeCharacters listType = "anime_characters" TopUpcoming listType = "top_upcoming" )
View Source
const ( AnimeNameAsc order = "anime_name_asc" AnimeNameDesc order = "anime_name_desc" AnimeYearAsc order = "anime_year_asc" AnimeYearDesc order = "anime_year_desc" LatestFirst order = "latest_first" EarlierFirst order = "earliest_first" RatingDesc order = "anime_rating_desc" )
View Source
const ( Fall season = "Fall" Summer season = "Summer" Winter season = "Winter" Spring season = "Spring" )
View Source
const (
BaseAPI = "https://anslayer.com"
)
Variables ¶
View Source
var (
ErrBackupLink = fmt.Errorf("error while getting backup links")
)
Functions ¶
This section is empty.
Types ¶
type Anime ¶
type Anime struct {
AnimeID string `json:"anime_id"`
AnimeName string `json:"anime_name"`
AnimeType string `json:"anime_type"`
AnimeStatus string `json:"anime_status"`
JustInfo string `json:"just_info"`
AnimeSeason string `json:"anime_season"`
AnimeReleaseYear string `json:"anime_release_year"`
AnimeRating string `json:"anime_rating"`
LatestEpisodeID string `json:"latest_episode_id"`
LatestEpisodeName string `json:"latest_episode_name"`
AnimeGenres string `json:"anime_genres"`
AnimeCoverImageURL string `json:"anime_cover_image_url"`
AnimeTrailerURL string `json:"anime_trailer_url"`
AnimeReleaseDay string `json:"anime_release_day"`
}
type AnimeDetails ¶
type AnimeDetails struct {
AnimeID string `json:"anime_id"`
AnimeName string `json:"anime_name"`
AnimeType string `json:"anime_type"`
AnimeStatus string `json:"anime_status"`
AnimeSeason string `json:"anime_season"`
AnimeReleaseYear string `json:"anime_release_year"`
AnimeAgeRating string `json:"anime_age_rating"`
AnimeRating string `json:"anime_rating"`
AnimeRatingUserCount string `json:"anime_rating_user_count"`
AnimeDescription string `json:"anime_description"`
AnimeCoverImage string `json:"anime_cover_image"`
AnimeTrailerURL string `json:"anime_trailer_url"`
AnimeEnglishTitle string `json:"anime_english_title"`
AnimeKeywords string `json:"anime_keywords"`
AnimeUpdatedAt string `json:"anime_updated_at"`
AnimeCreatedAt string `json:"anime_created_at"`
AnimeGenreIds string `json:"anime_genre_ids"`
AnimeGenres string `json:"anime_genres"`
AnimeReleaseDay string `json:"anime_release_day"`
AnimeCoverImageURL string `json:"anime_cover_image_url"`
AnimeUpdatedAtFormat string `json:"anime_updated_at_format"`
AnimeCreatedAtFormat string `json:"anime_created_at_format"`
MoreInfoResult moreInfoResult `json:"more_info_result"`
RelatedAnimes interface{} `json:"related_animes"`
RelatedNews interface{} `json:"related_news"`
CommentFlagReasons []commentFlagReasons `json:"comment_flag_reasons"`
ContentRating []contentRating `json:"content_rating"`
Role string `json:"role"`
}
func (*AnimeDetails) UnmarshalJSON ¶
func (ad *AnimeDetails) UnmarshalJSON(b []byte) error
UnmarshalJSON Implements a custom marsheler Because API have bad design and need to check edge cases
type AnimeService ¶
type AnimeService service
func (*AnimeService) CustomAnimePayload ¶
func (s *AnimeService) CustomAnimePayload(payload JsonPayload) ([]Anime, error)
func (*AnimeService) GetAnimeDetails ¶
func (s *AnimeService) GetAnimeDetails(animeID int) (AnimeDetails, error)
func (*AnimeService) GetAnimeListBySeason ¶
func (s *AnimeService) GetAnimeListBySeason(offset, limit int, season season, orderBy order, releaseYear int) ([]Anime, error)
func (*AnimeService) GetLatestAnimes ¶
func (s *AnimeService) GetLatestAnimes(offset, limit int) ([]Anime, error)
func (*AnimeService) OrderBy ¶
func (s *AnimeService) OrderBy(offset, limit int, orderBy order) ([]Anime, error)
func (*AnimeService) SearchByName ¶
func (s *AnimeService) SearchByName(offset, limit int, animeName string, orderBy order) ([]Anime, error)
type BackupLinks ¶
type DownloadInfo ¶
type DownloadInfos ¶
type DownloadInfos []DownloadInfo
type DownloadLinks ¶
type DownloadLinks []string
type Episode ¶
type Episode struct {
EpisodeID string `json:"episode_id"`
EpisodeName string `json:"episode_name"`
EpisodeNumber string `json:"episode_number"`
AllowComment string `json:"allow_comment"`
SkipFrom string `json:"skip_from"`
SkipTo string `json:"skip_to"`
EpisodeRating string `json:"episode_rating"`
EpisodeRatingUserCount string `json:"episode_rating_user_count"`
EpisodeWatchedHistory interface{} `json:"episode_watched_history"`
EpisodeAlreadyRatedByUser interface{} `json:"episode_already_rated_by_user"`
EpisodeRatingByUser interface{} `json:"episode_rating_by_user"`
EpisodeUrls []episodeUrls `json:"episode_urls"`
NextEpisode []nextEpisode `json:"next_episode"`
PreviousEpisode []interface{} `json:"previous_episode"`
}
type EpisodeService ¶
type EpisodeService service
func (*EpisodeService) GetBackupLinks ¶
func (s *EpisodeService) GetBackupLinks(animeName string, episodeNb int) (DownloadInfos, error)
func (*EpisodeService) GetDirectDownloadInfos ¶
func (s *EpisodeService) GetDirectDownloadInfos(animeName string, episodeNb int) (DownloadInfos, error)
func (*EpisodeService) GetDirectDownloadInfosWithMax ¶
func (s *EpisodeService) GetDirectDownloadInfosWithMax(animeName string, episodeNb int, maxNbOfLinks int) (DownloadInfos, error)
func (*EpisodeService) GetDownloadLinks ¶
func (s *EpisodeService) GetDownloadLinks(animeName string, episodeNb int) (DownloadLinks, error)
func (*EpisodeService) GetEpisodeDetails ¶
func (s *EpisodeService) GetEpisodeDetails(animeID, episodeID int) (Episode, error)
func (*EpisodeService) GetEpisodesList ¶
func (s *EpisodeService) GetEpisodesList(animeID int) ([]Episode, error)
func (*EpisodeService) GetFirstDirectDownloadInfo ¶
func (s *EpisodeService) GetFirstDirectDownloadInfo(animeName string, episodeNb int) (DownloadInfo, error)
type JsonPayload ¶
type JsonPayload map[string]interface{}
func (*JsonPayload) ToJson ¶
func (p *JsonPayload) ToJson() (string, error)
func (*JsonPayload) WithAnimeId ¶
func (p *JsonPayload) WithAnimeId(id int) error
func (*JsonPayload) WithEpisodeId ¶
func (p *JsonPayload) WithEpisodeId(id int) error
func (*JsonPayload) WithJustInfo ¶
func (p *JsonPayload) WithJustInfo(info string) error
func (*JsonPayload) WithLimit ¶
func (p *JsonPayload) WithLimit(limit int) error
func (*JsonPayload) WithListType ¶
func (p *JsonPayload) WithListType(l listType) error
func (*JsonPayload) WithName ¶
func (p *JsonPayload) WithName(name string)
func (*JsonPayload) WithOffset ¶
func (p *JsonPayload) WithOffset(offset int) error
func (*JsonPayload) WithOrder ¶
func (p *JsonPayload) WithOrder(o order) error
func (*JsonPayload) WithReleaseYear ¶
func (p *JsonPayload) WithReleaseYear(year int) error
func (*JsonPayload) WithSeason ¶
func (p *JsonPayload) WithSeason(s season) error
type News ¶
type News struct {
NewsID string `json:"news_id"`
AnimeID string `json:"anime_id"`
AnimeName string `json:"anime_name"`
NewsTitle string `json:"news_title"`
NewsDescription string `json:"news_description"`
NewsDescriptionHTML interface{} `json:"news_description_html"`
NewsImage string `json:"news_image"`
NewsSourceLink string `json:"news_source_link"`
NewsVideoLink string `json:"news_video_link"`
NewsPublished string `json:"news_published"`
NewsCreatedAt string `json:"news_created_at"`
NewsUpdatedAt interface{} `json:"news_updated_at"`
NewsImageURL string `json:"news_image_url"`
NewsUpdatedAtFormat string `json:"news_updated_at_format"`
NewsCreatedAtFormat string `json:"news_created_at_format"`
}
type RelatedAnimes ¶
type RelatedAnimes struct {
Animes []Anime `json:"data"`
}
type RelatedNews ¶
type RelatedNews struct {
Data []News `json:"data"`
}
type TohruClient ¶
type TohruClient struct {
AnimeService *AnimeService
EpisodeService *EpisodeService
// contains filtered or unexported fields
}
func NewTohruClient ¶
func NewTohruClient(cfg *Config) *TohruClient
Click to show internal directories.
Click to hide internal directories.