Merge pull request #257 from izderadicka/client-api-only
Add CLI parameter to allow send downloads to remote server
This commit is contained in:
commit
588e6cdd77
2 changed files with 13 additions and 2 deletions
|
|
@ -1365,7 +1365,9 @@ impl Session {
|
|||
}
|
||||
|
||||
pub async fn pause(&self, handle: &ManagedTorrentHandle) -> anyhow::Result<()> {
|
||||
handle.pause().map(|_| handle.locked.write().paused = true)?;
|
||||
handle
|
||||
.pause()
|
||||
.map(|_| handle.locked.write().paused = true)?;
|
||||
self.try_update_persistence_metadata(handle).await;
|
||||
Ok(())
|
||||
}
|
||||
|
|
|
|||
|
|
@ -301,6 +301,9 @@ struct DownloadOpts {
|
|||
|
||||
#[arg(long = "initial-peers")]
|
||||
initial_peers: Option<InitialPeers>,
|
||||
|
||||
#[arg(long = "server-url")]
|
||||
server_url: Option<String>,
|
||||
}
|
||||
|
||||
#[derive(Clone)]
|
||||
|
|
@ -634,7 +637,10 @@ async fn async_main(opts: Opts, cancel: CancellationToken) -> anyhow::Result<()>
|
|||
if download_opts.torrent_path.is_empty() {
|
||||
anyhow::bail!("you must provide at least one URL to download")
|
||||
}
|
||||
let http_api_url = format!("http://{}", opts.http_api_listen_addr);
|
||||
let http_api_url = download_opts
|
||||
.server_url
|
||||
.clone()
|
||||
.unwrap_or_else(|| format!("http://{}", opts.http_api_listen_addr));
|
||||
let client = http_api_client::HttpApiClient::new(&http_api_url)?;
|
||||
|
||||
let torrent_opts = |with_output_folder: bool| AddTorrentOptions {
|
||||
|
|
@ -662,6 +668,9 @@ async fn async_main(opts: Opts, cancel: CancellationToken) -> anyhow::Result<()>
|
|||
false
|
||||
}
|
||||
};
|
||||
if !connect_to_existing && download_opts.server_url.is_some() {
|
||||
anyhow::bail!("cannot connect to server at {}", client.base_url());
|
||||
}
|
||||
if connect_to_existing {
|
||||
for torrent_url in &download_opts.torrent_path {
|
||||
match client
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue