]> git.lizzy.rs Git - go-anidb.git/blob - anidb.go
anidb: Check the HTTP API error as well for deleting invalid Anime
[go-anidb.git] / anidb.go
1 // Attempt at high level client library for AniDB's APIs
2 package anidb
3
4 import (
5         "time"
6 )
7
8 // Main struct for the client, contains all non-shared state.
9 //
10 // All ObjectByKey methods (AnimeByID, GroupByName, etc) first try to read
11 // from the cache. If the sought object isn't cached, or if the cache is
12 // stale, then the appropriate API is queried.
13 type AniDB struct {
14         Timeout time.Duration // Timeout for the various calls (default: 45s)
15
16         udp *udpWrap
17 }
18
19 // Initialises a new AniDB.
20 func NewAniDB() *AniDB {
21         return &AniDB{
22                 Timeout: 45 * time.Second,
23                 udp:     newUDPWrap(),
24         }
25 }