274 lines
6.0 KiB
Go
274 lines
6.0 KiB
Go
// package main
|
|
|
|
// import (
|
|
// "time"
|
|
|
|
// "github.com/aerogo/nano"
|
|
// "github.com/animenotifier/arn"
|
|
// "github.com/fatih/color"
|
|
// )
|
|
|
|
// func main() {
|
|
// arn.DB.SetScanPriority("high")
|
|
|
|
// aeroDB := nano.New(5000).Namespace("arn", arn.DBTypes...)
|
|
// defer aeroDB.Close()
|
|
|
|
// for typeName := range arn.DB.Types() {
|
|
// count := 0
|
|
|
|
// switch typeName {
|
|
// case "Anime":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.Anime) {
|
|
// aeroDB.Set(typeName, obj.ID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "AnimeEpisodes":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.AnimeEpisodes) {
|
|
// aeroDB.Set(typeName, obj.AnimeID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "AnimeList":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.AnimeList) {
|
|
// aeroDB.Set(typeName, obj.UserID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "AnimeCharacters":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.AnimeCharacters) {
|
|
// aeroDB.Set(typeName, obj.AnimeID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "AnimeRelations":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.AnimeRelations) {
|
|
// aeroDB.Set(typeName, obj.AnimeID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "Character":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.Character) {
|
|
// aeroDB.Set(typeName, obj.ID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "Purchase":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.Purchase) {
|
|
// aeroDB.Set(typeName, obj.ID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "PushSubscriptions":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.PushSubscriptions) {
|
|
// aeroDB.Set(typeName, obj.UserID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "User":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.User) {
|
|
// aeroDB.Set(typeName, obj.ID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "Post":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.Post) {
|
|
// aeroDB.Set(typeName, obj.ID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "Thread":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.Thread) {
|
|
// aeroDB.Set(typeName, obj.ID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "Analytics":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.Analytics) {
|
|
// aeroDB.Set(typeName, obj.UserID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "SoundTrack":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.SoundTrack) {
|
|
// aeroDB.Set(typeName, obj.ID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "Item":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.Item) {
|
|
// aeroDB.Set(typeName, obj.ID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "Inventory":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.Inventory) {
|
|
// aeroDB.Set(typeName, obj.UserID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "Settings":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.Settings) {
|
|
// aeroDB.Set(typeName, obj.UserID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "UserFollows":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.UserFollows) {
|
|
// aeroDB.Set(typeName, obj.UserID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "PayPalPayment":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.PayPalPayment) {
|
|
// aeroDB.Set(typeName, obj.ID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "AniListToAnime":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.AniListToAnime) {
|
|
// aeroDB.Set(typeName, obj.ServiceID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "MyAnimeListToAnime":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.MyAnimeListToAnime) {
|
|
// aeroDB.Set(typeName, obj.ServiceID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "SearchIndex":
|
|
// anime, _ := arn.DB.Get(typeName, "Anime")
|
|
// aeroDB.Set(typeName, "Anime", anime)
|
|
|
|
// users, _ := arn.DB.Get(typeName, "User")
|
|
// aeroDB.Set(typeName, "User", users)
|
|
|
|
// posts, _ := arn.DB.Get(typeName, "Post")
|
|
// aeroDB.Set(typeName, "Post", posts)
|
|
|
|
// threads, _ := arn.DB.Get(typeName, "Thread")
|
|
// aeroDB.Set(typeName, "Thread", threads)
|
|
|
|
// count += 4
|
|
|
|
// case "DraftIndex":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.DraftIndex) {
|
|
// aeroDB.Set(typeName, obj.UserID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "EmailToUser":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.EmailToUser) {
|
|
// if obj.Email == "" {
|
|
// continue
|
|
// }
|
|
|
|
// aeroDB.Set(typeName, obj.Email, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "FacebookToUser":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.FacebookToUser) {
|
|
// if obj.ID == "" {
|
|
// continue
|
|
// }
|
|
|
|
// aeroDB.Set(typeName, obj.ID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "GoogleToUser":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.GoogleToUser) {
|
|
// if obj.ID == "" {
|
|
// continue
|
|
// }
|
|
|
|
// aeroDB.Set(typeName, obj.ID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "TwitterToUser":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.TwitterToUser) {
|
|
// if obj.ID == "" {
|
|
// continue
|
|
// }
|
|
|
|
// aeroDB.Set(typeName, obj.ID, obj)
|
|
// count++
|
|
// }
|
|
|
|
// case "NickToUser":
|
|
// channel, _ := arn.DB.All(typeName)
|
|
|
|
// for obj := range channel.(chan *arn.NickToUser) {
|
|
// if obj.Nick == "" {
|
|
// continue
|
|
// }
|
|
|
|
// aeroDB.Set(typeName, obj.Nick, obj)
|
|
// count++
|
|
// }
|
|
|
|
// default:
|
|
// color.Yellow("Skipping %s", typeName)
|
|
// continue
|
|
// }
|
|
|
|
// color.Green("Export %d %s", count, typeName)
|
|
// }
|
|
|
|
// time.Sleep(1 * time.Second)
|
|
// }
|