pub struct InMemoryAgentProvider { /* private fields */ }Expand description
内存中的Agent提供者
简单的基于内存的AgentProvider实现
Implementations§
Source§impl InMemoryAgentProvider
impl InMemoryAgentProvider
pub fn new() -> InMemoryAgentProvider
Sourcepub async fn remove_agent(&self, agent_id: &str)
pub async fn remove_agent(&self, agent_id: &str)
移除Agent
Trait Implementations§
Source§impl AgentProvider for InMemoryAgentProvider
impl AgentProvider for InMemoryAgentProvider
Source§fn list_agents<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Vec<AgentInfo>> + Send + 'async_trait>>where
'life0: 'async_trait,
InMemoryAgentProvider: 'async_trait,
fn list_agents<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Vec<AgentInfo>> + Send + 'async_trait>>where
'life0: 'async_trait,
InMemoryAgentProvider: 'async_trait,
获取所有可用的Agent列表
Source§fn get_agent<'life0, 'life1, 'async_trait>(
&'life0 self,
agent_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Option<AgentInfo>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
InMemoryAgentProvider: 'async_trait,
fn get_agent<'life0, 'life1, 'async_trait>(
&'life0 self,
agent_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Option<AgentInfo>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
InMemoryAgentProvider: 'async_trait,
根据ID获取特定Agent
Source§fn update_agent_status<'life0, 'life1, 'async_trait>(
&'life0 self,
agent_id: &'life1 str,
load: u32,
available: bool,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
InMemoryAgentProvider: 'async_trait,
fn update_agent_status<'life0, 'life1, 'async_trait>(
&'life0 self,
agent_id: &'life1 str,
load: u32,
available: bool,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
InMemoryAgentProvider: 'async_trait,
更新Agent状态
Source§fn register_agent<'life0, 'async_trait>(
&'life0 self,
agent: AgentInfo,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
InMemoryAgentProvider: 'async_trait,
fn register_agent<'life0, 'async_trait>(
&'life0 self,
agent: AgentInfo,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
InMemoryAgentProvider: 'async_trait,
注册新Agent(可选实现)
Source§fn unregister_agent<'life0, 'life1, 'async_trait>(
&'life0 self,
agent_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
InMemoryAgentProvider: 'async_trait,
fn unregister_agent<'life0, 'life1, 'async_trait>(
&'life0 self,
agent_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
InMemoryAgentProvider: 'async_trait,
注销Agent(可选实现)
Source§impl Clone for InMemoryAgentProvider
impl Clone for InMemoryAgentProvider
Source§fn clone(&self) -> InMemoryAgentProvider
fn clone(&self) -> InMemoryAgentProvider
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 moreSource§impl Default for InMemoryAgentProvider
impl Default for InMemoryAgentProvider
Source§fn default() -> InMemoryAgentProvider
fn default() -> InMemoryAgentProvider
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for InMemoryAgentProvider
impl !RefUnwindSafe for InMemoryAgentProvider
impl Send for InMemoryAgentProvider
impl Sync for InMemoryAgentProvider
impl Unpin for InMemoryAgentProvider
impl UnsafeUnpin for InMemoryAgentProvider
impl !UnwindSafe for InMemoryAgentProvider
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> Message for T
impl<T> Message for T
Source§fn from_boxed(m: BoxedMessage) -> Result<Self, BoxedDowncastErr>
fn from_boxed(m: BoxedMessage) -> Result<Self, BoxedDowncastErr>
Convert a BoxedMessage to this concrete type
Source§fn box_message(self, pid: &ActorId) -> Result<BoxedMessage, BoxedDowncastErr>
fn box_message(self, pid: &ActorId) -> Result<BoxedMessage, BoxedDowncastErr>
Convert this message to a BoxedMessage