pub struct InMemoryPushConfigStore { /* private fields */ }Expand description
In-memory PushConfigStore backed by a HashMap.
Uses a secondary index (task_counts) to track the number of configs per
task, avoiding an O(n) scan of all keys when enforcing per-task limits.
Implementations§
Source§impl InMemoryPushConfigStore
impl InMemoryPushConfigStore
Sourcepub fn with_max_configs_per_task(max: usize) -> Self
pub fn with_max_configs_per_task(max: usize) -> Self
Creates a new push config store with a custom per-task config limit.
Sourcepub const fn with_max_total_configs(self, max: usize) -> Self
pub const fn with_max_total_configs(self, max: usize) -> Self
Sets the global maximum number of push configs across all tasks.
Prevents unbounded memory growth when many tasks register configs. Default: 100,000.
Trait Implementations§
Source§impl Debug for InMemoryPushConfigStore
impl Debug for InMemoryPushConfigStore
Source§impl Default for InMemoryPushConfigStore
impl Default for InMemoryPushConfigStore
Source§impl PushConfigStore for InMemoryPushConfigStore
impl PushConfigStore for InMemoryPushConfigStore
Source§fn set<'a>(
&'a self,
config: TaskPushNotificationConfig,
) -> Pin<Box<dyn Future<Output = A2aResult<TaskPushNotificationConfig>> + Send + 'a>>
fn set<'a>( &'a self, config: TaskPushNotificationConfig, ) -> Pin<Box<dyn Future<Output = A2aResult<TaskPushNotificationConfig>> + Send + 'a>>
Stores (creates or updates) a push notification config. Read more
Source§fn get<'a>(
&'a self,
task_id: &'a str,
id: &'a str,
) -> Pin<Box<dyn Future<Output = A2aResult<Option<TaskPushNotificationConfig>>> + Send + 'a>>
fn get<'a>( &'a self, task_id: &'a str, id: &'a str, ) -> Pin<Box<dyn Future<Output = A2aResult<Option<TaskPushNotificationConfig>>> + Send + 'a>>
Retrieves a push notification config by task ID and config ID. Read more
Auto Trait Implementations§
impl !Freeze for InMemoryPushConfigStore
impl !RefUnwindSafe for InMemoryPushConfigStore
impl Send for InMemoryPushConfigStore
impl Sync for InMemoryPushConfigStore
impl Unpin for InMemoryPushConfigStore
impl UnsafeUnpin for InMemoryPushConfigStore
impl UnwindSafe for InMemoryPushConfigStore
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