autobrr/pkg/porla/methods.go
ze0s 45b522abf8
chore: update license header year (#1332)
* chore: update license header year

* chore: update license header year tsx files

* chore: update license header
2024-01-01 16:21:02 +01:00

60 lines
1.2 KiB
Go

// Copyright (c) 2021 - 2024, Ludvig Lundgren and the autobrr contributors.
// SPDX-License-Identifier: GPL-2.0-or-later
package porla
import "context"
func (c *Client) Version() (*SysVersionsPorla, error) {
response, err := c.rpcClient.Call("sys.versions")
if err != nil {
return nil, err
}
if response.Error != nil {
return nil, response.Error
}
var versions *SysVersions
if err = response.GetObject(&versions); err != nil {
return nil, err
}
return &versions.Porla, nil
}
func (c *Client) TorrentsAdd(ctx context.Context, req *TorrentsAddReq) error {
response, err := c.rpcClient.CallCtx(ctx, "torrents.add", req)
if err != nil {
return err
}
if response.Error != nil {
return response.Error
}
var res *TorrentsAddRes
if err = response.GetObject(&res); err != nil {
return err
}
return nil
}
func (c *Client) TorrentsList(ctx context.Context, filters *TorrentsListFilters) (*TorrentsListRes, error) {
response, err := c.rpcClient.CallCtx(ctx, "torrents.list", TorrentsListReq{Filters: filters})
if err != nil {
return nil, err
}
if response.Error != nil {
return nil, response.Error
}
var res *TorrentsListRes
if err = response.GetObject(&res); err != nil {
return nil, err
}
return res, nil
}