Skip to content

Commit ed63830

Browse files
committed
make sse::Sender::send take an id arg
1 parent 0549ecb commit ed63830

File tree

3 files changed

+25
-24
lines changed

3 files changed

+25
-24
lines changed

examples/sse.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ use tide::sse;
44
async fn main() -> Result<(), std::io::Error> {
55
let mut app = tide::new();
66
app.at("/sse").get(sse::endpoint(|_req, sender| async move {
7-
sender.send("fruit", "banana").await;
8-
sender.send("fruit", "apple").await;
7+
sender.send("fruit", "banana", None).await;
8+
sender.send("fruit", "apple", None).await;
99
Ok(())
1010
}));
1111
app.listen("localhost:8080").await?;

src/sse/mod.rs

Lines changed: 4 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -18,36 +18,18 @@
1818
//!
1919
//! let mut app = tide::new();
2020
//! app.at("/sse").get(sse::endpoint(|_req, sender| async move {
21-
//! sender.send("fruit", "banana").await;
22-
//! sender.send("fruit", "apple").await;
21+
//! sender.send("fruit", "banana", None).await;
22+
//! sender.send("fruit", "apple", None).await;
2323
//! Ok(())
2424
//! }));
2525
//! app.listen("localhost:8080").await?;
2626
//! # Ok(()) }) }
2727
//! ```
2828
2929
mod endpoint;
30+
mod sender;
3031
mod upgrade;
3132

3233
pub use endpoint::{endpoint, SseEndpoint};
34+
pub use sender::Sender;
3335
pub use upgrade::upgrade;
34-
35-
/// An SSE message sender.
36-
#[derive(Debug)]
37-
pub struct Sender {
38-
sender: async_sse::Sender,
39-
}
40-
41-
impl Sender {
42-
/// Create a new instance of `Sender`.
43-
fn new(sender: async_sse::Sender) -> Self {
44-
Self { sender }
45-
}
46-
47-
/// Send data from the SSE channel.
48-
///
49-
/// Each message constists of a "name" and "data".
50-
pub async fn send(&self, name: &str, data: impl AsRef<[u8]>) {
51-
self.sender.send(name, data.as_ref(), None).await;
52-
}
53-
}

src/sse/sender.rs

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
/// An SSE message sender.
2+
#[derive(Debug)]
3+
pub struct Sender {
4+
sender: async_sse::Sender,
5+
}
6+
7+
impl Sender {
8+
/// Create a new instance of `Sender`.
9+
pub(crate) fn new(sender: async_sse::Sender) -> Self {
10+
Self { sender }
11+
}
12+
13+
/// Send data from the SSE channel.
14+
///
15+
/// Each message constists of a "name" and "data".
16+
pub async fn send(&self, name: &str, data: impl AsRef<str>, id: Option<&str>) {
17+
self.sender.send(name, data.as_ref().as_bytes(), id).await;
18+
}
19+
}

0 commit comments

Comments
 (0)