internal/key.go
package internal
import (
"fmt"
"strings"
)
// List of cache key used in malscraper.
const (
KeyAnime = "mal:anime"
KeyAnimeVideo = "mal:anime-video"
KeyAnimeEpisode = "mal:anime-episode"
KeyAnimeReview = "mal:anime-review"
KeyAnimeRecommendation = "mal:anime-recommendation"
KeyAnimeStats = "mal:anime-stats"
KeyAnimeCharacter = "mal:anime-character"
KeyAnimeStaff = "mal:anime-staff"
KeyAnimeNews = "mal:anime-news"
KeyAnimeArticle = "mal:anime-article"
KeyAnimeClub = "mal:anime-club"
KeyAnimePicture = "mal:anime-picture"
KeyAnimeMoreInfo = "mal:anime-more-info"
KeyManga = "mal:manga"
KeyMangaReview = "mal:manga-review"
KeyMangaRecommendation = "mal:manga-recommendation"
KeyMangaStats = "mal:manga-stats"
KeyMangaCharacter = "mal:manga-character"
KeyMangaNews = "mal:manga-news"
KeyMangaArticle = "mal:manga-article"
KeyMangaClub = "mal:manga-club"
KeyMangaPicture = "mal:manga-picture"
KeyMangaMoreInfo = "mal:manga-more-info"
KeyCharacter = "mal:character"
KeyCharacterArticle = "mal:character-article"
KeyCharacterClub = "mal:character-club"
KeyCharacterPicture = "mal:character-picture"
KeyCharacterOgraphy = "mal:character-ography"
KeyCharacterVA = "mal:character-va"
KeyPeople = "mal:people"
KeyPeopleNews = "mal:people-news"
KeyPeopleArticle = "mal:people-article"
KeyPeoplePicture = "mal:people-picture"
KeyPeopleChar = "mal:people-character"
KeyPeopleStaff = "mal:people-staff"
KeyPeopleManga = "mal:people-manga"
KeyProducers = "mal:producers"
KeyProducer = "mal:producer"
KeyMagazines = "mal:magazines"
KeyMagazine = "mal:magazine"
KeyGenres = "mal:genres"
KeyAnimeWithGenre = "mal:anime-with-genre"
KeyMangaWithGenre = "mal:manga-with-genre"
KeyReviews = "mal:reviews"
KeyReview = "mal:review"
KeyRecommendations = "mal:recommendations"
KeyRecommendation = "mal:recommendation"
KeyUser = "mal:user"
KeyUserStats = "mal:user-stats"
KeyUserFavorite = "mal:user-favorite"
KeyUserFriend = "mal:user-friend"
KeyUserHistory = "mal:user-history"
KeyUserReview = "mal:user-review"
KeyUserRecommendation = "mal:user-recommendation"
KeyUserClub = "mal:user-club"
KeyUserAnime = "mal:user-anime"
KeyUserManga = "mal:user-manga"
KeySearchCharacter = "mal:search-character"
KeySearchPeople = "mal:search-people"
KeySearchUser = "mal:search-user"
KeySearchClub = "mal:search-club"
KeySeason = "mal:season"
KeyTopAnime = "mal:top-anime"
KeyTopManga = "mal:top-manga"
KeyTopCharacter = "mal:top-character"
KeyTopPeople = "mal:top-people"
KeyNewsList = "mal:news-list"
KeyNews = "mal:news"
KeyNewsTag = "mal:news-tag"
KeyArticle = "mal:article"
KeyArticleTag = "mal:article-tag"
KeyArticleList = "mal:article-list"
KeyClubs = "mal:clubs"
KeyClub = "mal:club"
KeyClubMember = "mal:club-member"
KeyClubPicture = "mal:club-picture"
KeyClubRelated = "mal:club-related"
KeyEmptyAnime = "mal:empty:anime"
KeyEmptyManga = "mal:empty:manga"
KeyEmptyChar = "mal:empty:character"
KeyEmptyPeople = "mal:empty:people"
KeyEmptyArticle = "mal:empty:article"
KeyEmptyClub = "mal:empty:club"
KeyEmptyNews = "mal:empty:news"
KeyEmptyReview = "mal:empty:review"
KeyEmptyUser = "mal:empty:user"
)
func GetKey(key string, params ...interface{}) string {
strParams := []string{key}
for _, p := range params {
strParams = append(strParams, fmt.Sprintf("%v", p))
}
return strings.Join(strParams, ":")
}