Documentation ¶
Index ¶
Constants ¶
View Source
const (
CustomCategoryOffset = 100000
)
Variables ¶
View Source
var ( CategoryOther = Category{0, "Other"} CategoryOther_Misc = Category{10, "Other/Misc"} CategoryOther_Hashed = Category{20, "Other/Hashed"} CategoryConsole = Category{1000, "Console"} CategoryConsole_NDS = Category{1010, "Console/NDS"} CategoryConsole_PSP = Category{1020, "Console/PSP"} CategoryConsole_Wii = Category{1030, "Console/Wii"} CategoryConsole_XBOX = Category{1040, "Console/Xbox"} CategoryConsole_XBOX360 = Category{1050, "Console/Xbox360"} CategoryConsole_WiiwareVC = Category{1060, "Console/Wiiware/V"} CategoryConsole_XBOX360DLC = Category{1070, "Console/Xbox360"} CategoryConsole_PS3 = Category{1080, "Console/PS3"} CategoryConsole_Other = Category{1999, "Console/Other"} CategoryConsole_3DS = Category{1110, "Console/3DS"} CategoryConsole_PSVita = Category{1120, "Console/PS Vita"} CategoryConsole_WiiU = Category{1130, "Console/WiiU"} CategoryConsole_XBOXOne = Category{1140, "Console/XboxOne"} CategoryConsole_PS4 = Category{1180, "Console/PS4"} CategoryMovies = Category{2000, "Movies"} CategoryMovies_Foreign = Category{2010, "Movies/Foreign"} CategoryMovies_Other = Category{2020, "Movies/Other"} CategoryMovies_SD = Category{2030, "Movies/SD"} CategoryMovies_HD = Category{2040, "Movies/HD"} CategoryMovies_3D = Category{2050, "Movies/3D"} CategoryMovies_BluRay = Category{2060, "Movies/BluRay"} CategoryMovies_DVD = Category{2070, "Movies/DVD"} CategoryMovies_WEBDL = Category{2080, "Movies/WEBDL"} CategoryAudio = Category{3000, "Audio"} CategoryAudio_MP3 = Category{3010, "Audio/MP3"} CategoryAudio_Video = Category{3020, "Audio/Video"} CategoryAudio_Audiobook = Category{3030, "Audio/Audiobook"} CategoryAudio_Lossless = Category{3040, "Audio/Lossless"} CategoryAudio_Other = Category{3999, "Audio/Other"} CategoryAudio_Foreign = Category{3060, "Audio/Foreign"} CategoryPC = Category{4000, "PC"} CategoryPC_0day = Category{4010, "PC/0day"} CategoryPC_ISO = Category{4020, "PC/ISO"} CategoryPC_Mac = Category{4030, "PC/Mac"} CategoryPC_PhoneOther = Category{4040, "PC/Phone-Other"} CategoryPC_Games = Category{4050, "PC/Games"} CategoryPC_PhoneIOS = Category{4060, "PC/Phone-IOS"} CategoryPC_PhoneAndroid = Category{4070, "PC/Phone-Android"} CategoryTV = Category{5000, "TV"} CategoryTV_WEBDL = Category{5010, "TV/WEB-DL"} CategoryTV_FOREIGN = Category{5020, "TV/Foreign"} CategoryTV_SD = Category{5030, "TV/SD"} CategoryTV_HD = Category{5040, "TV/HD"} CategoryTV_Other = Category{5999, "TV/Other"} CategoryTV_Sport = Category{5060, "TV/Sport"} CategoryTV_Anime = Category{5070, "TV/Anime"} CategoryTV_Documentary = Category{5080, "TV/Documentary"} CategoryXXX = Category{6000, "XXX"} CategoryXXX_DVD = Category{6010, "XXX/DVD"} CategoryXXX_WMV = Category{6020, "XXX/WMV"} CategoryXXX_XviD = Category{6030, "XXX/XviD"} CategoryXXX_x264 = Category{6040, "XXX/x264"} CategoryXXX_Other = Category{6999, "XXX/Other"} CategoryXXX_Imageset = Category{6060, "XXX/Imageset"} CategoryXXX_Packs = Category{6070, "XXX/Packs"} CategoryBooks = Category{7000, "Books"} CategoryBooks_Magazines = Category{7010, "Books/Magazines"} CategoryBooks_Ebook = Category{7020, "Books/Ebook"} CategoryBooks_Comics = Category{7030, "Books/Comics"} CategoryBooks_Technical = Category{7040, "Books/Technical"} CategoryBooks_Foreign = Category{7060, "Books/Foreign"} CategoryBooks_Unknown = Category{7999, "Books/Unknown"} )
Categories from the Newznab spec https://github.com/nZEDb/nZEDb/blob/0.x/docs/newznab_api_specification.txt#L627
View Source
var ( ErrIncorrectUserCreds = err{100, "Incorrect user credentials"} ErrAccountSuspended = err{101, "Account suspended"} ErrInsufficientPrivs = err{102, "Insufficient privileges/not authorized"} ErrRegistrationDenied = err{103, "Registration denied"} ErrRegistrationsAreClosed = err{104, "Registrations are closed"} ErrEmailAddressTaken = err{105, "Invalid registration (Email Address Taken)"} ErrEmailAddressBadFormat = err{106, "Invalid registration (Email Address Bad Format)"} ErrRegistrationFailed = err{107, "Registration Failed (Data error)"} ErrMissingParameter = err{200, "Missing parameter"} ErrIncorrectParameter = err{201, "Incorrect parameter"} ErrNoSuchFunction = err{202, "No such function. (Function not defined in this specification)."} ErrFunctionNotAvailable = err{203, "Function not available. (Optional function is not implemented)."} ErrNoSuchItem = err{300, "No such item."} ErrItemAlreadyExists = err{300, "Item already exists."} ErrUnknownError = err{900, "Unknown error"} ErrAPIDisabled = err{910, "API Disabled"} )
View Source
var AllCategories = Categories{ CategoryOther, CategoryOther_Misc, CategoryOther_Hashed, CategoryConsole, CategoryConsole_NDS, CategoryConsole_PSP, CategoryConsole_Wii, CategoryConsole_XBOX, CategoryConsole_XBOX360, CategoryConsole_WiiwareVC, CategoryConsole_XBOX360DLC, CategoryConsole_PS3, CategoryConsole_Other, CategoryConsole_3DS, CategoryConsole_PSVita, CategoryConsole_WiiU, CategoryConsole_XBOXOne, CategoryConsole_PS4, CategoryMovies, CategoryMovies_Foreign, CategoryMovies_Other, CategoryMovies_SD, CategoryMovies_HD, CategoryMovies_3D, CategoryMovies_BluRay, CategoryMovies_DVD, CategoryMovies_WEBDL, CategoryAudio, CategoryAudio_MP3, CategoryAudio_Video, CategoryAudio_Audiobook, CategoryAudio_Lossless, CategoryAudio_Other, CategoryAudio_Foreign, CategoryPC, CategoryPC_0day, CategoryPC_ISO, CategoryPC_Mac, CategoryPC_PhoneOther, CategoryPC_Games, CategoryPC_PhoneIOS, CategoryPC_PhoneAndroid, CategoryTV, CategoryTV_WEBDL, CategoryTV_FOREIGN, CategoryTV_SD, CategoryTV_HD, CategoryTV_Other, CategoryTV_Sport, CategoryTV_Anime, CategoryTV_Documentary, CategoryXXX, CategoryXXX_DVD, CategoryXXX_WMV, CategoryXXX_XviD, CategoryXXX_x264, CategoryXXX_Other, CategoryXXX_Imageset, CategoryXXX_Packs, CategoryBooks, CategoryBooks_Magazines, CategoryBooks_Ebook, CategoryBooks_Comics, CategoryBooks_Technical, CategoryBooks_Foreign, CategoryBooks_Unknown, }
Functions ¶
func Error ¶
func Error(w http.ResponseWriter, description string, err err)
Types ¶
type Capabilities ¶
type Capabilities struct { SearchModes []SearchMode Categories Categories }
func (Capabilities) HasSearchMode ¶
func (c Capabilities) HasSearchMode(key string) (bool, []string)
func (Capabilities) MarshalXML ¶
func (c Capabilities) MarshalXML(e *xml.Encoder, start xml.StartElement) error
func (Capabilities) ServeHTTP ¶
func (c Capabilities) ServeHTTP(w http.ResponseWriter, r *http.Request)
type Categories ¶
type Categories []Category
func (Categories) Len ¶
func (slice Categories) Len() int
func (Categories) Less ¶
func (slice Categories) Less(i, j int) bool
func (Categories) Subset ¶
func (slice Categories) Subset(ids ...int) Categories
func (Categories) Swap ¶
func (slice Categories) Swap(i, j int)
type Category ¶
func ParentCategory ¶
type Indexer ¶
type Indexer interface { Info() Info Search(query Query) ([]ResultItem, error) Download(urlStr string) (io.ReadCloser, http.Header, error) Capabilities() Capabilities }
type Query ¶
type Query struct { Type string Q, Ep, Season string Limit, Offset int Extended bool Categories []int APIKey string }
Query represents a torznab query
func ParseQuery ¶
ParseQuery takes the query string parameters for a torznab query and parses them
func (Query) Episode ¶
Episode returns either the season + episode in the format S00E00 or just the season as S00 if no episode has been specified.
type ResultFeed ¶
type ResultFeed struct { Info Info Items []ResultItem }
func (ResultFeed) MarshalXML ¶
func (rf ResultFeed) MarshalXML(e *xml.Encoder, start xml.StartElement) error
type ResultItem ¶
type ResultItem struct { Site string Title string Description string GUID string Comments string Link string Category int Size uint64 PublishDate time.Time Seeders int Peers int MinimumRatio float64 MinimumSeedTime time.Duration }
func (ResultItem) MarshalXML ¶
func (ri ResultItem) MarshalXML(e *xml.Encoder, start xml.StartElement) error
type SearchMode ¶
Click to show internal directories.
Click to hide internal directories.