]> git.lizzy.rs Git - go-anidb.git/blob - mylist.go
Modernize
[go-anidb.git] / mylist.go
1 package anidb
2
3 import (
4         "time"
5 )
6
7 type LID int64
8
9 type MyListState int
10
11 const (
12         MyListStateUnknown = MyListState(iota)
13         MyListStateHDD
14         MyListStateCD
15         MyListStateDeleted
16 )
17
18 type FileState int
19
20 const (
21         FileStateOriginal = FileState(iota)
22         FileStateCorrupted
23         FileStateEdited
24
25         FileStateOther = 100
26 )
27 const (
28         FileStateSelfRip = FileState(10 + iota)
29         FileStateDVD
30         FileStateVHS
31         FileStateTV
32         FileStateTheaters
33         FileStateStreamed
34 )
35
36 type MyListEntry struct {
37         LID LID
38
39         FID FID
40         EID EID
41         AID AID
42         GID GID
43
44         DateAdded   time.Time
45         DateWatched time.Time
46
47         State       FileState
48         MyListState MyListState
49
50         Storage string
51         Source  string
52         Other   string
53
54         Cached time.Time
55 }
56
57 func (e *MyListEntry) File() *File {
58         return e.FID.File()
59 }
60
61 func (e *MyListEntry) Episode() *Episode {
62         return e.EID.Episode()
63 }
64
65 func (e *MyListEntry) Anime() *Anime {
66         return e.AID.Anime()
67 }
68
69 func (e *MyListEntry) Group() *Group {
70         return e.GID.Group()
71 }