pub struct TaskOrchestrator { /* private fields */ }Expand description
Orchestrator for background tasks
Implementations§
Source§impl TaskOrchestrator
impl TaskOrchestrator
Sourcepub fn new(
provider: Arc<dyn LLMProvider>,
config: TaskOrchestratorConfig,
) -> TaskOrchestrator
pub fn new( provider: Arc<dyn LLMProvider>, config: TaskOrchestratorConfig, ) -> TaskOrchestrator
Create a new task orchestrator
Sourcepub fn with_defaults(provider: Arc<dyn LLMProvider>) -> TaskOrchestrator
pub fn with_defaults(provider: Arc<dyn LLMProvider>) -> TaskOrchestrator
Create with default configuration
Sourcepub async fn spawn(
&self,
prompt: &str,
origin: TaskOrigin,
) -> Result<String, Error>
pub async fn spawn( &self, prompt: &str, origin: TaskOrigin, ) -> Result<String, Error>
Spawn a background task
Sourcepub fn subscribe_results(&self) -> Receiver<TaskResult>
pub fn subscribe_results(&self) -> Receiver<TaskResult>
Subscribe to task results
Sourcepub async fn get_active_tasks(&self) -> Vec<BackgroundTask>
pub async fn get_active_tasks(&self) -> Vec<BackgroundTask>
Get all active tasks
Sourcepub async fn get_task(&self, task_id: &str) -> Option<BackgroundTask>
pub async fn get_task(&self, task_id: &str) -> Option<BackgroundTask>
Get a specific task
Sourcepub fn config(&self) -> &TaskOrchestratorConfig
pub fn config(&self) -> &TaskOrchestratorConfig
Get the configuration
Auto Trait Implementations§
impl Freeze for TaskOrchestrator
impl !RefUnwindSafe for TaskOrchestrator
impl Send for TaskOrchestrator
impl Sync for TaskOrchestrator
impl Unpin for TaskOrchestrator
impl UnsafeUnpin for TaskOrchestrator
impl !UnwindSafe for TaskOrchestrator
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> 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