feat(download-client): add support for Porla (#553)

* Add support for the 'Test' button to work

* Make Porla show up in filter actions select

* Add an empty Porla action

* Make Porla action find download client

* Make implementation actually add torrent to Porla

* Fix qBittorrent import

* Finish up Porla action

* Check length on commitish before slicing

* Move Porla to the other DL clients

* Add Porla to type name map

* Move Porla to beneath the other download clients
This commit is contained in:
Viktor Elofsson 2023-01-29 18:17:01 +01:00 committed by GitHub
parent b95c1e6913
commit 870e109f6c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
12 changed files with 271 additions and 2 deletions

43
pkg/porla/methods.go Normal file
View file

@ -0,0 +1,43 @@
package porla
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
err = response.GetObject(&versions)
if err != nil {
return nil, err
}
return &versions.Porla, nil
}
func (c *Client) TorrentsAdd(req *TorrentsAddReq) error {
response, err := c.rpcClient.Call("torrents.add", req)
if err != nil {
return err
}
if response.Error != nil {
return response.Error
}
var res *TorrentsAddRes
err = response.GetObject(&res)
if err != nil {
return err
}
return nil
}