pub trait FileUploadStepHandler: Send + Sync {
Show 42 methods
// Required methods
fn handle_load_bucket<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn evaluate_check_bucket_active<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn evaluate_check_deduplication_enabled<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_calculate_checksum<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_check_duplicate_content<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_use_existing_content<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_detect_mime_type<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn evaluate_validate_file_type<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn evaluate_validate_file_size<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_load_quota<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_create_default_quota<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn evaluate_check_quota<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_create_file_record<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn evaluate_check_should_store_content<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_store_content<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_create_content_hash<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_link_content_hash<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_update_file_processing<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_scan_file<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn evaluate_check_scan_result<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_update_scan_complete<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn evaluate_check_cdn_enabled<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_generate_cdn_url<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_update_cdn_info<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_mark_file_active<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_update_quota<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_update_bucket_stats<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_emit_uploaded_event<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_complete<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_quarantine_file<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_emit_threat_event<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_notify_threat<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_complete_quarantine<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_bucket_not_found<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_bucket_not_active<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_mime_type_not_allowed<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_file_too_large<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_quota_exceeded<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_quota_exceeded_terminal<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_rollback_file_record<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn handle_storage_failed<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn compensate<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
}Expand description
Step handler trait for FileUpload flow
Required Methods§
Sourcefn handle_load_bucket<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_load_bucket<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle load_bucket step
Sourcefn evaluate_check_bucket_active<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn evaluate_check_bucket_active<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Evaluate condition for check_bucket_active step
Sourcefn evaluate_check_deduplication_enabled<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn evaluate_check_deduplication_enabled<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Evaluate condition for check_deduplication_enabled step
Sourcefn handle_calculate_checksum<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_calculate_checksum<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle calculate_checksum step
Sourcefn handle_check_duplicate_content<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_check_duplicate_content<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle check_duplicate_content step
Sourcefn handle_use_existing_content<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_use_existing_content<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle use_existing_content step
Sourcefn handle_detect_mime_type<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_detect_mime_type<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle detect_mime_type step
Sourcefn evaluate_validate_file_type<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn evaluate_validate_file_type<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Evaluate condition for validate_file_type step
Sourcefn evaluate_validate_file_size<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn evaluate_validate_file_size<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Evaluate condition for validate_file_size step
Sourcefn handle_load_quota<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_load_quota<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle load_quota step
Sourcefn handle_create_default_quota<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_create_default_quota<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle create_default_quota step
Sourcefn evaluate_check_quota<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn evaluate_check_quota<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Evaluate condition for check_quota step
Sourcefn handle_create_file_record<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_create_file_record<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle create_file_record step
Sourcefn evaluate_check_should_store_content<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn evaluate_check_should_store_content<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Evaluate condition for check_should_store_content step
Sourcefn handle_store_content<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_store_content<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle store_content step
Sourcefn handle_create_content_hash<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_create_content_hash<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle create_content_hash step
Sourcefn handle_link_content_hash<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_link_content_hash<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle link_content_hash step
Sourcefn handle_update_file_processing<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_update_file_processing<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle update_file_processing step
Sourcefn handle_scan_file<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_scan_file<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle scan_file step
Sourcefn evaluate_check_scan_result<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn evaluate_check_scan_result<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Evaluate condition for check_scan_result step
Sourcefn handle_update_scan_complete<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_update_scan_complete<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle update_scan_complete step
Sourcefn evaluate_check_cdn_enabled<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn evaluate_check_cdn_enabled<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<FileUploadFlowStep, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Evaluate condition for check_cdn_enabled step
Sourcefn handle_generate_cdn_url<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_generate_cdn_url<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle generate_cdn_url step
Sourcefn handle_update_cdn_info<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_update_cdn_info<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle update_cdn_info step
Sourcefn handle_mark_file_active<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_mark_file_active<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle mark_file_active step
Sourcefn handle_update_quota<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_update_quota<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle update_quota step
Sourcefn handle_update_bucket_stats<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_update_bucket_stats<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle update_bucket_stats step
Sourcefn handle_emit_uploaded_event<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_emit_uploaded_event<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle emit_uploaded_event step
Sourcefn handle_complete<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_complete<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle terminal step complete
Sourcefn handle_quarantine_file<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_quarantine_file<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle quarantine_file step
Sourcefn handle_emit_threat_event<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_emit_threat_event<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle emit_threat_event step
Sourcefn handle_notify_threat<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_notify_threat<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle notify_threat step
Sourcefn handle_complete_quarantine<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_complete_quarantine<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle terminal step complete_quarantine
Sourcefn handle_bucket_not_found<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_bucket_not_found<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle terminal step bucket_not_found
Sourcefn handle_bucket_not_active<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_bucket_not_active<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle terminal step bucket_not_active
Sourcefn handle_mime_type_not_allowed<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_mime_type_not_allowed<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle terminal step mime_type_not_allowed
Sourcefn handle_file_too_large<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_file_too_large<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle terminal step file_too_large
Sourcefn handle_quota_exceeded<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_quota_exceeded<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle quota_exceeded step
Sourcefn handle_quota_exceeded_terminal<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_quota_exceeded_terminal<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle terminal step quota_exceeded_terminal
Sourcefn handle_rollback_file_record<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_rollback_file_record<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<Option<FileUploadFlowStep>, FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle rollback_file_record step
Sourcefn handle_storage_failed<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle_storage_failed<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Handle terminal step storage_failed
Sourcefn compensate<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn compensate<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 mut FileUploadFlowInstance,
) -> Pin<Box<dyn Future<Output = Result<(), FlowError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Execute compensation (rollback)
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".