use crate::{common::config::ConfigurationWebsocketApi, models::WebsocketApiConnectConfig};
use super::WebsocketApi;
#[derive(Clone)]
pub struct WebsocketApiHandle {
configuration: ConfigurationWebsocketApi,
}
impl WebsocketApiHandle {
pub fn new(configuration: ConfigurationWebsocketApi) -> Self {
Self { configuration }
}
pub async fn connect(&self) -> anyhow::Result<WebsocketApi> {
self.connect_with_config(Default::default()).await
}
pub async fn connect_with_config(
&self,
cfg: WebsocketApiConnectConfig,
) -> anyhow::Result<WebsocketApi> {
WebsocketApi::connect(self.configuration.clone(), cfg.mode).await
}
}