pub struct CacheMiddleware { /* private fields */ }Expand description
Cache middleware for automatic caching
Implementations§
Source§impl CacheMiddleware
impl CacheMiddleware
Sourcepub fn new(cache: Arc<ResponseCache>) -> Self
pub fn new(cache: Arc<ResponseCache>) -> Self
Create new cache middleware
Sourcepub fn with_operations(self, operations: Vec<String>) -> Self
pub fn with_operations(self, operations: Vec<String>) -> Self
Set specific operations to cache
Sourcepub fn should_cache(&self, operation_name: Option<&str>) -> bool
pub fn should_cache(&self, operation_name: Option<&str>) -> bool
Check if an operation should be cached
Sourcepub fn get_cached(&self, key: &CacheKey) -> Option<Response>
pub fn get_cached(&self, key: &CacheKey) -> Option<Response>
Get cached response if available
Sourcepub fn cache_response(&self, key: CacheKey, response: Response)
pub fn cache_response(&self, key: CacheKey, response: Response)
Cache a response
Auto Trait Implementations§
impl Freeze for CacheMiddleware
impl !RefUnwindSafe for CacheMiddleware
impl Send for CacheMiddleware
impl Sync for CacheMiddleware
impl Unpin for CacheMiddleware
impl !UnwindSafe for CacheMiddleware
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
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request