[−][src]Crate shared_expiry_get
shared-expiry-get
shared-expiry-get
is a wrapper for accessing and caching a remote data source with some
expiration criteria.
A basic Example
use futures::executor::block_on; use futures::future; use futures::future::FutureExt; use futures::future::IntoFuture; use futures::future::TryFutureExt; use futures::Future; use std::pin::Pin; use shared_expiry_get::Expiry; use shared_expiry_get::ExpiryFut; use shared_expiry_get::ExpiryGetError; use shared_expiry_get::Provider; use shared_expiry_get::RemoteStore; #[derive(Clone)] struct MyProvider {} #[derive(Clone)] struct Payload {} impl Expiry for Payload { fn valid(&self) -> bool { true } } impl Provider<Payload> for MyProvider { fn update(&self) -> ExpiryFut<Payload> { future::ok::<Payload, ExpiryGetError>(Payload {}).into_future().boxed() } } let rs = RemoteStore::new(MyProvider {}); let payload = block_on(rs.get()); assert!(payload.is_ok());
Structs
RemoteStore | A remote store wrapping an updated provider ( |
Enums
ExpiryGetError | Various internal errors. |
Traits
Expiry | Used to determine whether the remote data is still valid. |
Provider | Provides updates to get remote data. |
Type Definitions
ExpiryFut |