use crate::{connector::Connector, ConnectorStream};
use async_stream::stream;
use std::io::Result;
#[derive(Debug)]
pub struct Once {}
impl Once {
#[instrument(name = "once::paginate")]
pub async fn paginate(&self, connector: &dyn Connector) -> Result<ConnectorStream> {
let new_connector = connector.clone_box();
Ok(Box::pin(stream! {
trace!(connector = format!("{:?}", new_connector).as_str(), "Yield a new connector");
yield Ok(new_connector);
trace!("Stop yielding new connector");
}))
}
}