pub struct InMemorySessionStore { /* private fields */ }Expand description
In-memory SessionStore + SessionMutator for embedded runtimes.
This is the default session backend used by crate::InProcessRuntime.
Implementations§
Source§impl InMemorySessionStore
impl InMemorySessionStore
Sourcepub fn new() -> InMemorySessionStore
pub fn new() -> InMemorySessionStore
Create an empty in-memory session store.
Sourcepub async fn add_session(&self, session: Session)
pub async fn add_session(&self, session: Session)
Insert or replace a session in the store.
Trait Implementations§
Source§impl Clone for InMemorySessionStore
impl Clone for InMemorySessionStore
Source§fn clone(&self) -> InMemorySessionStore
fn clone(&self) -> InMemorySessionStore
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for InMemorySessionStore
impl Debug for InMemorySessionStore
Source§impl Default for InMemorySessionStore
impl Default for InMemorySessionStore
Source§fn default() -> InMemorySessionStore
fn default() -> InMemorySessionStore
Returns the “default value” for a type. Read more
Source§impl RuntimeSessionStore for InMemorySessionStore
impl RuntimeSessionStore for InMemorySessionStore
Source§fn add_session<'life0, 'async_trait>(
&'life0 self,
session: Session,
) -> Pin<Box<dyn Future<Output = Result<(), AgentLoopError>> + Send + 'async_trait>>where
'life0: 'async_trait,
InMemorySessionStore: 'async_trait,
fn add_session<'life0, 'async_trait>(
&'life0 self,
session: Session,
) -> Pin<Box<dyn Future<Output = Result<(), AgentLoopError>> + Send + 'async_trait>>where
'life0: 'async_trait,
InMemorySessionStore: 'async_trait,
Insert or replace a session definition.
Source§impl SessionMutator for InMemorySessionStore
impl SessionMutator for InMemorySessionStore
Source§fn update_session_title<'life0, 'async_trait>(
&'life0 self,
session_id: TypedId<SessionIdMarker>,
title: String,
) -> Pin<Box<dyn Future<Output = Result<Session, AgentLoopError>> + Send + 'async_trait>>where
'life0: 'async_trait,
InMemorySessionStore: 'async_trait,
fn update_session_title<'life0, 'async_trait>(
&'life0 self,
session_id: TypedId<SessionIdMarker>,
title: String,
) -> Pin<Box<dyn Future<Output = Result<Session, AgentLoopError>> + Send + 'async_trait>>where
'life0: 'async_trait,
InMemorySessionStore: 'async_trait,
Update a session’s human-readable title.
Source§fn upsert_session_capability<'life0, 'async_trait>(
&'life0 self,
session_id: TypedId<SessionIdMarker>,
capability: AgentCapabilityConfig,
) -> Pin<Box<dyn Future<Output = Result<Session, AgentLoopError>> + Send + 'async_trait>>where
'life0: 'async_trait,
InMemorySessionStore: 'async_trait,
fn upsert_session_capability<'life0, 'async_trait>(
&'life0 self,
session_id: TypedId<SessionIdMarker>,
capability: AgentCapabilityConfig,
) -> Pin<Box<dyn Future<Output = Result<Session, AgentLoopError>> + Send + 'async_trait>>where
'life0: 'async_trait,
InMemorySessionStore: 'async_trait,
Add or replace a session-scoped capability atomically. Read more
Source§fn remove_session_capability<'life0, 'life1, 'async_trait>(
&'life0 self,
session_id: TypedId<SessionIdMarker>,
capability_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Session, AgentLoopError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
InMemorySessionStore: 'async_trait,
fn remove_session_capability<'life0, 'life1, 'async_trait>(
&'life0 self,
session_id: TypedId<SessionIdMarker>,
capability_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Session, AgentLoopError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
InMemorySessionStore: 'async_trait,
Remove a session-scoped capability atomically.
Source§impl SessionStore for InMemorySessionStore
impl SessionStore for InMemorySessionStore
Source§fn get_session<'life0, 'async_trait>(
&'life0 self,
session_id: TypedId<SessionIdMarker>,
) -> Pin<Box<dyn Future<Output = Result<Option<Session>, AgentLoopError>> + Send + 'async_trait>>where
'life0: 'async_trait,
InMemorySessionStore: 'async_trait,
fn get_session<'life0, 'async_trait>(
&'life0 self,
session_id: TypedId<SessionIdMarker>,
) -> Pin<Box<dyn Future<Output = Result<Option<Session>, AgentLoopError>> + Send + 'async_trait>>where
'life0: 'async_trait,
InMemorySessionStore: 'async_trait,
Get a session by ID
Auto Trait Implementations§
impl !RefUnwindSafe for InMemorySessionStore
impl !UnwindSafe for InMemorySessionStore
impl Freeze for InMemorySessionStore
impl Send for InMemorySessionStore
impl Sync for InMemorySessionStore
impl Unpin for InMemorySessionStore
impl UnsafeUnpin for InMemorySessionStore
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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