Documentation
¶
Index ¶
- Variables
- func ClientExists(name string) bool
- func GenerateNameWithMeta(name string, meta map[string](int64)) string
- func GenerateTorrentTagFromCategory(category string) string
- func GenerateTorrentTagFromSite(site string) string
- func IsCategoryTag(tag string) bool
- func IsSiteTag(tag string) bool
- func IsValidInfoHash(infoHash string) bool
- func IsValidInfoHashOrStateFilter(stateFilter string) bool
- func ParseMetaFromName(fullname string) (name string, meta map[string](int64))
- func PrintTorrent(torrent *Torrent)
- func PrintTorrentFiles(files []TorrentContentFile)
- func PrintTorrentTrackers(trackers []TorrentTracker)
- func PrintTorrents(torrents []Torrent, filter string)
- func Register(regInfo *RegInfo)
- func SelectTorrents(clientInstance Client, category string, tag string, filter string, ...) ([]string, error)
- func TorrentStateIconText(torrent *Torrent) string
- func XseedCheckTorrentContents(clientTorrentContents []TorrentContentFile, ...) int64
- type Client
- type ClientCreator
- type RegInfo
- type Status
- type Torrent
- func (torrent *Torrent) GetCategoryFromTag() string
- func (torrent *Torrent) GetMetaFromTag(meta string) string
- func (torrent *Torrent) GetSiteFromTag() string
- func (torrent *Torrent) HasTag(tag string) bool
- func (torrent *Torrent) IsComplete() bool
- func (torrent *Torrent) IsFull() bool
- func (torrent *Torrent) IsFullComplete() bool
- func (torrent *Torrent) MatchStateFilter(stateFilter string) bool
- type TorrentContentFile
- type TorrentOption
- type TorrentTracker
Constants ¶
This section is empty.
Variables ¶
Functions ¶
func ClientExists ¶
func GenerateTorrentTagFromCategory ¶ added in v0.1.2
func IsCategoryTag ¶ added in v0.1.2
func IsValidInfoHash ¶ added in v0.1.2
func IsValidInfoHashOrStateFilter ¶ added in v0.1.2
func ParseMetaFromName ¶
func PrintTorrent ¶ added in v0.1.1
func PrintTorrent(torrent *Torrent)
func PrintTorrentFiles ¶ added in v0.1.1
func PrintTorrentFiles(files []TorrentContentFile)
func PrintTorrentTrackers ¶ added in v0.1.1
func PrintTorrentTrackers(trackers []TorrentTracker)
func PrintTorrents ¶
func SelectTorrents ¶ added in v0.1.1
func SelectTorrents(clientInstance Client, category string, tag string, filter string, hashOrStateFilters ...string) ([]string, error)
parse torrents that meet criterion. specially, return nil slice if all torrents selected
func TorrentStateIconText ¶
func XseedCheckTorrentContents ¶
func XseedCheckTorrentContents(clientTorrentContents []TorrentContentFile, torrentContents []*goTorrentParser.File) int64
return 0 if equal; 1 if clientTorrentContents contains all files of torrentContents. return -2 if the ROOT folder(file) of two torrents are different, but all innner files are SAME. return -1 if contents of two torrents are NOT same. inputed slices of filenames MUST be lexicographic ordered.
Types ¶
type Client ¶
type Client interface {
GetTorrent(infoHash string) (*Torrent, error)
// stateFilter: _all|_active|_done, or any state value (possibly with a _ prefix)
GetTorrents(stateFilter string, category string, showAll bool) ([]Torrent, error)
AddTorrent(torrentContent []byte, option *TorrentOption, meta map[string](int64)) error
ModifyTorrent(infoHash string, option *TorrentOption, meta map[string](int64)) error
DeleteTorrents(infoHashes []string, deleteFiles bool) error
PauseTorrents(infoHashes []string) error
ResumeTorrents(infoHashes []string) error
RecheckTorrents(infoHashes []string) error
ReannounceTorrents(infoHashes []string) error
AddTagsToTorrents(infoHashes []string, tags []string) error
RemoveTagsFromTorrents(infoHashes []string, tags []string) error
SetTorrentsSavePath(infoHashes []string, savePath string) error
PauseAllTorrents() error
ResumeAllTorrents() error
RecheckAllTorrents() error
ReannounceAllTorrents() error
AddTagsToAllTorrents(tags []string) error
RemoveTagsFromAllTorrents(tags []string) error
SetAllTorrentsSavePath(savePath string) error
GetTags() ([]string, error)
CreateTags(tags ...string) error
DeleteTags(tags ...string) error
GetCategories() ([]string, error)
SetTorrentsCatetory(infoHashes []string, category string) error
SetAllTorrentsCatetory(category string) error
TorrentRootPathExists(rootFolder string) bool
GetTorrentContents(infoHash string) ([]TorrentContentFile, error)
PurgeCache()
GetStatus() (*Status, error)
GetName() string
GetClientConfig() *config.ClientConfigStruct
SetConfig(variable string, value string) error
GetConfig(variable string) (string, error)
GetTorrentTrackers(infoHash string) ([]TorrentTracker, error)
EditTorrentTracker(infoHash string, oldTracker string, newTracker string, replaceHost bool) error
AddTorrentTrackers(infoHash string, trackers []string) error
RemoveTorrentTrackers(infoHash string, trackers []string) error
Close()
}
func CreateClient ¶
type ClientCreator ¶
type RegInfo ¶
type RegInfo struct {
Name string
Creator func(string, *config.ClientConfigStruct, *config.ConfigStruct) (Client, error)
}
type Torrent ¶
type Torrent struct {
InfoHash string
Name string
TrackerDomain string
Tracker string
State string // simplified state: seeding|downloading|completed|paused|checking|error|unknown
LowLevelState string // original state value returned by bt client
Atime int64 // timestamp torrent added
Ctime int64 // timestamp torrent completed. <=0 if not completed.
Category string
SavePath string
ContentPath string
Tags []string
Downloaded int64
DownloadSpeed int64
DownloadSpeedLimit int64 // -1 means no limit
Uploaded int64
UploadSpeed int64
UploadedSpeedLimit int64 // -1 means no limit
Size int64 // size of torrent files that selected for downloading
SizeTotal int64 // Total size of all file in the torrent (including unselected ones)
SizeCompleted int64
Seeders int64
Leechers int64
Meta map[string](int64)
}
func QueryTorrents ¶ added in v0.1.1
func (*Torrent) GetCategoryFromTag ¶ added in v0.1.2
func (*Torrent) GetMetaFromTag ¶ added in v0.1.2
func (*Torrent) GetSiteFromTag ¶
func (*Torrent) IsComplete ¶
func (*Torrent) IsFullComplete ¶
func (*Torrent) MatchStateFilter ¶ added in v0.1.1
type TorrentContentFile ¶
type TorrentOption ¶
type TorrentTracker ¶ added in v0.1.1
Click to show internal directories.
Click to hide internal directories.