Feature/s9pk sideload (#808)

* adds rpc continuations endpoint, rewires websocket endpoint

* sideload processor finished

* cli portion

* bugfixes

* moar bugfixes

* cleanup

* unfuck rust

Co-authored-by: Aiden McClelland <3732071+dr-bonez@users.noreply.github.com>

* fixes url source

Co-authored-by: Aiden McClelland <3732071+dr-bonez@users.noreply.github.com>
This commit is contained in:
Keagan McClelland
2021-11-19 12:31:22 -07:00
committed by Aiden McClelland
parent fd07d0208d
commit 18e9d260d0
8 changed files with 317 additions and 18 deletions

View File

@@ -19,6 +19,7 @@ use tokio::fs::File;
use tokio::sync::{broadcast, oneshot, Mutex, RwLock};
use tracing::instrument;
use crate::core::rpc_continuations::{RequestGuid, RpcContinuation};
use crate::db::model::Database;
use crate::hostname::{get_hostname, get_id};
use crate::manager::ManagerMap;
@@ -122,6 +123,7 @@ pub struct RpcContextSeed {
pub tor_socks: SocketAddr,
pub notification_manager: NotificationManager,
pub open_authed_websockets: Mutex<BTreeMap<HashSessionToken, Vec<oneshot::Sender<()>>>>,
pub rpc_stream_continuations: Mutex<BTreeMap<RequestGuid, RpcContinuation>>,
}
#[derive(Clone)]
@@ -187,6 +189,7 @@ impl RpcContext {
))),
notification_manager,
open_authed_websockets: Mutex::new(BTreeMap::new()),
rpc_stream_continuations: Mutex::new(BTreeMap::new()),
});
let metrics_seed = seed.clone();
tokio::spawn(async move {