140 lines
4.7 KiB
Go
140 lines
4.7 KiB
Go
// Code generated by github.com/99designs/gqlgen, DO NOT EDIT.
|
|
|
|
package graphql
|
|
|
|
import (
|
|
"time"
|
|
|
|
"git.kmsign.ru/royalcat/tstor/daemons/atorrent"
|
|
"git.kmsign.ru/royalcat/tstor/src/delivery/graphql/model"
|
|
"github.com/anacrolix/torrent"
|
|
"github.com/anacrolix/torrent/types"
|
|
)
|
|
|
|
type CleanupResponse struct {
|
|
Count int64 `json:"count"`
|
|
List []string `json:"list"`
|
|
}
|
|
|
|
type DownloadTorrentResponse struct {
|
|
TaskID string `json:"taskID"`
|
|
}
|
|
|
|
type Torrent struct {
|
|
Name string `json:"name"`
|
|
Infohash string `json:"infohash"`
|
|
BytesCompleted int64 `json:"bytesCompleted"`
|
|
TorrentFilePath string `json:"torrentFilePath"`
|
|
BytesMissing int64 `json:"bytesMissing"`
|
|
Priority types.PiecePriority `json:"priority"`
|
|
Files []*TorrentFile `json:"files"`
|
|
ExcludedFiles []*TorrentFile `json:"excludedFiles"`
|
|
Peers []*TorrentPeer `json:"peers"`
|
|
T *atorrent.Controller `json:"-"`
|
|
}
|
|
|
|
type TorrentClientStats struct {
|
|
BytesWritten int64 `json:"bytesWritten"`
|
|
BytesWrittenData int64 `json:"bytesWrittenData"`
|
|
BytesRead int64 `json:"bytesRead"`
|
|
BytesReadData int64 `json:"bytesReadData"`
|
|
BytesReadUsefulData int64 `json:"bytesReadUsefulData"`
|
|
BytesReadUsefulIntendedData int64 `json:"bytesReadUsefulIntendedData"`
|
|
ChunksWritten int64 `json:"chunksWritten"`
|
|
ChunksRead int64 `json:"chunksRead"`
|
|
ChunksReadUseful int64 `json:"chunksReadUseful"`
|
|
ChunksReadWasted int64 `json:"chunksReadWasted"`
|
|
MetadataChunksRead int64 `json:"metadataChunksRead"`
|
|
PiecesDirtiedGood int64 `json:"piecesDirtiedGood"`
|
|
PiecesDirtiedBad int64 `json:"piecesDirtiedBad"`
|
|
}
|
|
|
|
type TorrentDaemonMutation struct {
|
|
ValidateTorrent bool `json:"validateTorrent"`
|
|
SetTorrentPriority bool `json:"setTorrentPriority"`
|
|
Cleanup *CleanupResponse `json:"cleanup"`
|
|
}
|
|
|
|
type TorrentDaemonQuery struct {
|
|
Torrents []*Torrent `json:"torrents"`
|
|
ClientStats *TorrentClientStats `json:"clientStats"`
|
|
StatsHistory []*TorrentStats `json:"statsHistory"`
|
|
}
|
|
|
|
type TorrentFs struct {
|
|
Name string `json:"name"`
|
|
Torrent *Torrent `json:"torrent"`
|
|
Entries []model.FsEntry `json:"entries"`
|
|
FS *atorrent.TorrentFS `json:"-"`
|
|
}
|
|
|
|
func (TorrentFs) IsDir() {}
|
|
|
|
func (TorrentFs) IsFsEntry() {}
|
|
|
|
type TorrentFile struct {
|
|
Filename string `json:"filename"`
|
|
Size int64 `json:"size"`
|
|
BytesCompleted int64 `json:"bytesCompleted"`
|
|
Priority types.PiecePriority `json:"priority"`
|
|
F *atorrent.FileController `json:"-"`
|
|
}
|
|
|
|
type TorrentFileEntry struct {
|
|
Name string `json:"name"`
|
|
Torrent *Torrent `json:"torrent"`
|
|
Size int64 `json:"size"`
|
|
}
|
|
|
|
func (TorrentFileEntry) IsFile() {}
|
|
|
|
func (TorrentFileEntry) IsFsEntry() {}
|
|
|
|
type TorrentFilter struct {
|
|
Everything *bool `json:"everything,omitempty"`
|
|
Infohash *string `json:"infohash,omitempty"`
|
|
}
|
|
|
|
type TorrentPeer struct {
|
|
IP string `json:"ip"`
|
|
DownloadRate float64 `json:"downloadRate"`
|
|
Discovery string `json:"discovery"`
|
|
Port int64 `json:"port"`
|
|
ClientName string `json:"clientName"`
|
|
F *torrent.PeerConn `json:"-"`
|
|
}
|
|
|
|
type TorrentPriorityFilter struct {
|
|
Eq *types.PiecePriority `json:"eq,omitempty"`
|
|
Gt *types.PiecePriority `json:"gt,omitempty"`
|
|
Lt *types.PiecePriority `json:"lt,omitempty"`
|
|
Gte *types.PiecePriority `json:"gte,omitempty"`
|
|
Lte *types.PiecePriority `json:"lte,omitempty"`
|
|
In []types.PiecePriority `json:"in,omitempty"`
|
|
}
|
|
|
|
type TorrentProgress struct {
|
|
Torrent *Torrent `json:"torrent"`
|
|
Current int64 `json:"current"`
|
|
Total int64 `json:"total"`
|
|
}
|
|
|
|
func (TorrentProgress) IsProgress() {}
|
|
|
|
type TorrentStats struct {
|
|
Timestamp time.Time `json:"timestamp"`
|
|
DownloadedBytes uint `json:"downloadedBytes"`
|
|
UploadedBytes uint `json:"uploadedBytes"`
|
|
TotalPeers uint `json:"totalPeers"`
|
|
ActivePeers uint `json:"activePeers"`
|
|
ConnectedSeeders uint `json:"connectedSeeders"`
|
|
}
|
|
|
|
type TorrentsFilter struct {
|
|
Infohash *model.StringFilter `json:"infohash,omitempty"`
|
|
Name *model.StringFilter `json:"name,omitempty"`
|
|
BytesCompleted *model.IntFilter `json:"bytesCompleted,omitempty"`
|
|
BytesMissing *model.IntFilter `json:"bytesMissing,omitempty"`
|
|
PeersCount *model.IntFilter `json:"peersCount,omitempty"`
|
|
Priority *TorrentPriorityFilter `json:"priority,omitempty"`
|
|
}
|