Skip to main content

AsyncTaskManager

Trait AsyncTaskManager 

Source
pub trait AsyncTaskManager: Send + Sync {
Show 14 methods // Required methods fn create_task<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, task_id: &'life1 str, context_id: &'life2 str, ) -> Pin<Box<dyn Future<Output = Result<Task, A2AError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait; fn get_task<'life0, 'life1, 'async_trait>( &'life0 self, task_id: &'life1 str, history_length: Option<u32>, ) -> Pin<Box<dyn Future<Output = Result<Task, A2AError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn update_task_status<'life0, 'life1, 'async_trait>( &'life0 self, task_id: &'life1 str, state: TaskState, message: Option<Message>, ) -> Pin<Box<dyn Future<Output = Result<Task, A2AError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn cancel_task<'life0, 'life1, 'async_trait>( &'life0 self, task_id: &'life1 str, ) -> Pin<Box<dyn Future<Output = Result<Task, A2AError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn task_exists<'life0, 'life1, 'async_trait>( &'life0 self, task_id: &'life1 str, ) -> Pin<Box<dyn Future<Output = Result<bool, A2AError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; // Provided methods fn list_tasks<'life0, 'life1, 'async_trait>( &'life0 self, _context_id: Option<&'life1 str>, _limit: Option<u32>, ) -> Pin<Box<dyn Future<Output = Result<Vec<Task>, A2AError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn get_task_metadata<'life0, 'life1, 'async_trait>( &'life0 self, task_id: &'life1 str, ) -> Pin<Box<dyn Future<Output = Result<Map<String, Value>, A2AError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn validate_task_params<'life0, 'life1, 'async_trait>( &'life0 self, params: &'life1 TaskQueryParams, ) -> Pin<Box<dyn Future<Output = Result<(), A2AError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn get_task_validated<'life0, 'life1, 'async_trait>( &'life0 self, params: &'life1 TaskQueryParams, ) -> Pin<Box<dyn Future<Output = Result<Task, A2AError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn cancel_task_validated<'life0, 'life1, 'async_trait>( &'life0 self, params: &'life1 TaskIdParams, ) -> Pin<Box<dyn Future<Output = Result<Task, A2AError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn list_tasks_v3<'life0, 'life1, 'async_trait>( &'life0 self, _params: &'life1 ListTasksParams, ) -> Pin<Box<dyn Future<Output = Result<ListTasksResult, A2AError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn get_push_notification_config<'life0, 'life1, 'async_trait>( &'life0 self, _params: &'life1 GetTaskPushNotificationConfigParams, ) -> Pin<Box<dyn Future<Output = Result<TaskPushNotificationConfig, A2AError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn list_push_notification_configs<'life0, 'life1, 'async_trait>( &'life0 self, _params: &'life1 ListTaskPushNotificationConfigParams, ) -> Pin<Box<dyn Future<Output = Result<Vec<TaskPushNotificationConfig>, A2AError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn delete_push_notification_config<'life0, 'life1, 'async_trait>( &'life0 self, _params: &'life1 DeleteTaskPushNotificationConfigParams, ) -> Pin<Box<dyn Future<Output = Result<(), A2AError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... }
}
Expand description

An async trait for managing task lifecycle and operations

Required Methods§

Source

fn create_task<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, task_id: &'life1 str, context_id: &'life2 str, ) -> Pin<Box<dyn Future<Output = Result<Task, A2AError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Create a new task

Source

fn get_task<'life0, 'life1, 'async_trait>( &'life0 self, task_id: &'life1 str, history_length: Option<u32>, ) -> Pin<Box<dyn Future<Output = Result<Task, A2AError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Get a task by ID with optional history

Source

fn update_task_status<'life0, 'life1, 'async_trait>( &'life0 self, task_id: &'life1 str, state: TaskState, message: Option<Message>, ) -> Pin<Box<dyn Future<Output = Result<Task, A2AError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Update task status with an optional message to add to history

Source

fn cancel_task<'life0, 'life1, 'async_trait>( &'life0 self, task_id: &'life1 str, ) -> Pin<Box<dyn Future<Output = Result<Task, A2AError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Cancel a task

Source

fn task_exists<'life0, 'life1, 'async_trait>( &'life0 self, task_id: &'life1 str, ) -> Pin<Box<dyn Future<Output = Result<bool, A2AError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Check if a task exists

Provided Methods§

Source

fn list_tasks<'life0, 'life1, 'async_trait>( &'life0 self, _context_id: Option<&'life1 str>, _limit: Option<u32>, ) -> Pin<Box<dyn Future<Output = Result<Vec<Task>, A2AError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

List tasks with optional filtering

Source

fn get_task_metadata<'life0, 'life1, 'async_trait>( &'life0 self, task_id: &'life1 str, ) -> Pin<Box<dyn Future<Output = Result<Map<String, Value>, A2AError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Get task metadata

Source

fn validate_task_params<'life0, 'life1, 'async_trait>( &'life0 self, params: &'life1 TaskQueryParams, ) -> Pin<Box<dyn Future<Output = Result<(), A2AError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Validate task parameters

Source

fn get_task_validated<'life0, 'life1, 'async_trait>( &'life0 self, params: &'life1 TaskQueryParams, ) -> Pin<Box<dyn Future<Output = Result<Task, A2AError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Get task with validation

Source

fn cancel_task_validated<'life0, 'life1, 'async_trait>( &'life0 self, params: &'life1 TaskIdParams, ) -> Pin<Box<dyn Future<Output = Result<Task, A2AError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Cancel task with validation

Source

fn list_tasks_v3<'life0, 'life1, 'async_trait>( &'life0 self, _params: &'life1 ListTasksParams, ) -> Pin<Box<dyn Future<Output = Result<ListTasksResult, A2AError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

List tasks with comprehensive filtering and pagination (v0.3.0)

Source

fn get_push_notification_config<'life0, 'life1, 'async_trait>( &'life0 self, _params: &'life1 GetTaskPushNotificationConfigParams, ) -> Pin<Box<dyn Future<Output = Result<TaskPushNotificationConfig, A2AError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Get push notification config by ID (v0.3.0)

Source

fn list_push_notification_configs<'life0, 'life1, 'async_trait>( &'life0 self, _params: &'life1 ListTaskPushNotificationConfigParams, ) -> Pin<Box<dyn Future<Output = Result<Vec<TaskPushNotificationConfig>, A2AError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

List all push notification configs for a task (v0.3.0)

Source

fn delete_push_notification_config<'life0, 'life1, 'async_trait>( &'life0 self, _params: &'life1 DeleteTaskPushNotificationConfigParams, ) -> Pin<Box<dyn Future<Output = Result<(), A2AError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Delete a specific push notification config (v0.3.0)

Implementors§