summaryrefslogtreecommitdiffstats
path: root/database/postgres/torrent.go
blob: 77bfc6903912c9ce24e7585ed9538430800ae133 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package postgres

import (
	"github.com/NyaaPantsu/nyaa/model"

	"database/sql"
)

func (db *Database) GetAllTorrents(offset, limit uint32) (torrents []model.Torrent, err error) {
	err = db.queryWithPrepared(queryGetAllTorrents, func(rows *sql.Rows) error {
		torrents = make([]model.Torrent, 0, limit)
		var idx uint64
		for rows.Next() {
			rows.Scan(torrents[idx])
		}
		return nil
	}, offset, limit)
	return
}

func (db *Database) GetTorrentByID(id uint32) (torrent model.Torrent, has bool, err error) {
	err = db.queryWithPrepared(queryGetTorrentByID, func(rows *sql.Rows) error {
		rows.Next()
		scanTorrentColumnsFull(rows, &torrent)
		has = true
		return nil
	}, id)
	return
}

func (db *Database) UpsertTorrent(t *model.Torrent) (err error) {
	return
}