pub struct RefreshTrigger { /* private fields */ }Expand description
A trigger that can be cloned and triggered multiple times Similar to oneshot but reusable
Implementations§
Source§impl RefreshTrigger
impl RefreshTrigger
pub fn new() -> Self
Sourcepub fn trigger(&self)
pub fn trigger(&self)
Trigger a cache refresh
Examples found in repository?
examples/library_usage.rs (line 19)
5async fn main() {
6 // Initialize tracing (optional but recommended)
7 // tracing_subscriber::fmt::init();
8
9 // Create proxy - proxy_url is the backend server to proxy requests to
10 let (proxy_app, refresh_trigger): (Router, RefreshTrigger) =
11 create_proxy("http://localhost:8080".to_string());
12
13 // You can clone and use the refresh_trigger in your code
14 let trigger_clone = refresh_trigger.clone();
15
16 // Example: Trigger cache refresh from another part of your application
17 tokio::spawn(async move {
18 tokio::time::sleep(tokio::time::Duration::from_secs(60)).await;
19 trigger_clone.trigger();
20 println!("Cache refreshed!");
21 });
22
23 // Start the proxy server
24 let listener = tokio::net::TcpListener::bind("0.0.0.0:3000").await.unwrap();
25
26 println!("Proxy server listening on http://0.0.0.0:3000");
27
28 axum::serve(listener, proxy_app).await.unwrap();
29}Trait Implementations§
Source§impl Clone for RefreshTrigger
impl Clone for RefreshTrigger
Source§fn clone(&self) -> RefreshTrigger
fn clone(&self) -> RefreshTrigger
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for RefreshTrigger
impl !RefUnwindSafe for RefreshTrigger
impl Send for RefreshTrigger
impl Sync for RefreshTrigger
impl Unpin for RefreshTrigger
impl !UnwindSafe for RefreshTrigger
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more