use std::convert::Infallible;
use ruststream::SubscriptionSource;
use ruststream::memory::{MemoryBroker, MemorySubscriber};
pub(crate) struct OrdersStream {
name: String,
group: String,
}
impl OrdersStream {
pub(crate) fn new(name: &str, group: &str) -> Self {
Self {
name: name.to_owned(),
group: group.to_owned(),
}
}
}
impl SubscriptionSource<MemoryBroker> for OrdersStream {
type Subscriber = MemorySubscriber;
fn name(&self) -> &str {
&self.name
}
async fn subscribe(self, broker: &MemoryBroker) -> Result<MemorySubscriber, Infallible> {
let _ = &self.group; Ok(broker.subscribe(&self.name))
}
}