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§
Sourcefn 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 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
Sourcefn 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 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
Sourcefn 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 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
Provided Methods§
Sourcefn 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 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
Sourcefn 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 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
Sourcefn 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 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
Sourcefn 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 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
Sourcefn 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 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
Sourcefn 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 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)
Sourcefn 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 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)
Sourcefn 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 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)
Sourcefn 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,
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)