summaryrefslogtreecommitdiff
path: root/client-native-rift/src
diff options
context:
space:
mode:
Diffstat (limited to 'client-native-rift/src')
-rw-r--r--client-native-rift/src/main.rs17
1 files changed, 10 insertions, 7 deletions
diff --git a/client-native-rift/src/main.rs b/client-native-rift/src/main.rs
index 9d97b8e..613a4e6 100644
--- a/client-native-rift/src/main.rs
+++ b/client-native-rift/src/main.rs
@@ -8,7 +8,7 @@
use bytes::Bytes;
use clap::{Parser, Subcommand};
use client_native_lib::{
- peer::Peer, state::State, webrtc::data_channel::RTCDataChannel, Config, EventHandler,
+ instance::Instance, peer::Peer, webrtc::data_channel::RTCDataChannel, Config, EventHandler,
};
use log::{error, info};
use std::{future::Future, pin::Pin, sync::Arc};
@@ -48,7 +48,7 @@ pub struct Args {
async fn run() {
let args = Args::parse();
- let state = State::new(
+ let inst = Instance::new(
Config {
secret: args.secret.clone(),
signaling_uri: args.signaling_uri.clone(),
@@ -58,7 +58,7 @@ async fn run() {
)
.await;
- state.receive_loop().await;
+ inst.receive_loop().await;
tokio::signal::ctrl_c().await.unwrap();
error!("interrupt received, exiting");
@@ -69,18 +69,21 @@ struct Handler {}
impl EventHandler for Handler {
fn remote_resource_added(
&self,
- peer: &Peer,
+ peer: Arc<Peer>,
info: client_native_lib::protocol::ProvideInfo,
) -> Pin<Box<dyn Future<Output = ()>>> {
- todo!()
+ let id = info.id.clone();
+ Box::pin(async move {
+ peer.request_resource(id).await;
+ })
}
fn remote_resource_removed(
&self,
- peer: &Peer,
+ peer: Arc<Peer>,
id: String,
) -> Pin<Box<dyn Future<Output = ()>>> {
- todo!()
+ Box::pin(async {})
}
}