pub struct ActivityError {
pub kind: ActivityErrorKind,
pub message: String,
pub details: Option<Payload>,
}Expand description
Failure reported by an activity execution.
The engine consults ActivityError::is_retryable to decide whether to
apply the activity’s retry policy or fail the workflow.
Fields§
§kind: ActivityErrorKindExplicit retryability classification for this activity failure.
message: StringHuman-readable error message.
details: Option<Payload>Optional structured details carried as an opaque payload.
Implementations§
Source§impl ActivityError
impl ActivityError
Sourcepub fn is_retryable(&self) -> bool
pub fn is_retryable(&self) -> bool
Returns whether the engine may retry this activity failure.
This is not the complement of Self::is_settled: a policy refusal is
neither an ordinary retryable failure nor a settling terminal failure.
Sourcepub fn is_settled(&self) -> bool
pub fn is_settled(&self) -> bool
Whether this failure settles its activity: only Terminal does.
The complement of Self::is_retryable is not this question.
PolicyRefused is neither retryable by the ordinary budget nor settling,
because routing may still hop to a declared fallback queue or spend a
configured same-provider retry. The final disposition is recorded as
Terminal, so settlement code asks this predicate directly.
Trait Implementations§
Source§impl Clone for ActivityError
impl Clone for ActivityError
Source§fn clone(&self) -> ActivityError
fn clone(&self) -> ActivityError
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ActivityError
impl Debug for ActivityError
Source§impl<'de> Deserialize<'de> for ActivityError
impl<'de> Deserialize<'de> for ActivityError
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Display for ActivityError
impl Display for ActivityError
impl Eq for ActivityError
Source§impl Error for ActivityError
impl Error for ActivityError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl From<ActivityError> for WorkflowError
impl From<ActivityError> for WorkflowError
Source§fn from(error: ActivityError) -> Self
fn from(error: ActivityError) -> Self
Source§impl PartialEq for ActivityError
impl PartialEq for ActivityError
Source§impl Serialize for ActivityError
impl Serialize for ActivityError
impl StructuralPartialEq for ActivityError
Source§impl TS for ActivityError
impl TS for ActivityError
Source§type WithoutGenerics = ActivityError
type WithoutGenerics = ActivityError
WithoutGenerics should just be Self.
If the type does have generic parameters, then all generic parameters must be replaced with
a dummy type, e.g ts_rs::Dummy or (). The only requirement for these dummy types is that
EXPORT_TO must be None. Read moreSource§type OptionInnerType = ActivityError
type OptionInnerType = ActivityError
std::option::Option<T>, then this associated type is set to T.
All other implementations of TS should set this type to Self instead.Source§fn docs() -> Option<String>
fn docs() -> Option<String>
TS is derived, docs are
automatically read from your doc comments or #[doc = ".."] attributesSource§fn decl_concrete(cfg: &Config) -> String
fn decl_concrete(cfg: &Config) -> String
TS::decl().
If this type is not generic, then this function is equivalent to TS::decl().Source§fn decl(cfg: &Config) -> String
fn decl(cfg: &Config) -> String
type User = { user_id: number, ... }.
This function will panic if the type has no declaration. Read moreSource§fn inline(cfg: &Config) -> String
fn inline(cfg: &Config) -> String
{ user_id: number }.
This function will panic if the type cannot be inlined.Source§fn inline_flattened(cfg: &Config) -> String
fn inline_flattened(cfg: &Config) -> String
Source§fn visit_generics(v: &mut impl TypeVisitor)where
Self: 'static,
fn visit_generics(v: &mut impl TypeVisitor)where
Self: 'static,
Source§fn output_path() -> Option<PathBuf>
fn output_path() -> Option<PathBuf>
T should be exported, relative to the output directory.
The returned path does not include any base directory. Read moreSource§fn visit_dependencies(v: &mut impl TypeVisitor)where
Self: 'static,
fn visit_dependencies(v: &mut impl TypeVisitor)where
Self: 'static,
Source§fn dependencies(cfg: &Config) -> Vec<Dependency>where
Self: 'static,
fn dependencies(cfg: &Config) -> Vec<Dependency>where
Self: 'static,
Source§fn export(cfg: &Config) -> Result<(), ExportError>where
Self: 'static,
fn export(cfg: &Config) -> Result<(), ExportError>where
Self: 'static,
TS::export_all. Read moreSource§fn export_all(cfg: &Config) -> Result<(), ExportError>where
Self: 'static,
fn export_all(cfg: &Config) -> Result<(), ExportError>where
Self: 'static,
TS::export. Read more