pub struct TaskConfig {
pub task_name: String,
pub priority: i32,
pub pool: String,
pub retry_policy: RetryPolicy,
pub rate_limit_policy: RateLimitPolicy,
pub idempotency_mode: Option<IdempotencyMode>,
pub updated_at: DateTime<Utc>,
}Expand description
Per-task config persisted for admin UI and enqueue defaults.
Fields§
§task_name: StringTask name (unique key).
priority: i32Override priority (lower = higher priority).
pool: StringOverride pool name.
retry_policy: RetryPolicyRetry policy override.
rate_limit_policy: RateLimitPolicyEnqueue rate limits (optional).
idempotency_mode: Option<IdempotencyMode>Per-task idempotency override (None = inherit runtime / builder default).
updated_at: DateTime<Utc>When created/updated.
Implementations§
Source§impl TaskConfig
impl TaskConfig
Sourcepub fn default_for(task_name: &str) -> Self
pub fn default_for(task_name: &str) -> Self
Create default config for a task name.
§Examples
use boson_core::TaskConfig;
let config = TaskConfig::default_for("notify");
assert_eq!(config.task_name, "notify");
assert_eq!(config.pool, "global");
assert_eq!(config.priority, 1);Sourcepub fn resolved_idempotency_mode(
&self,
runtime_default: IdempotencyMode,
) -> IdempotencyMode
pub fn resolved_idempotency_mode( &self, runtime_default: IdempotencyMode, ) -> IdempotencyMode
Resolve effective idempotency mode (task override, else runtime_default).
Sourcepub fn from_policy_defaults(
task_name: &str,
priority: i32,
pool: impl Into<String>,
retry_policy: RetryPolicy,
rate_limit_policy: RateLimitPolicy,
idempotency_mode: Option<IdempotencyMode>,
) -> Self
pub fn from_policy_defaults( task_name: &str, priority: i32, pool: impl Into<String>, retry_policy: RetryPolicy, rate_limit_policy: RateLimitPolicy, idempotency_mode: Option<IdempotencyMode>, ) -> Self
Build config from explicit policy defaults (typically from a task descriptor).
Sourcepub const fn with_runtime_idempotency_fallback(
self,
runtime_default: IdempotencyMode,
) -> Self
pub const fn with_runtime_idempotency_fallback( self, runtime_default: IdempotencyMode, ) -> Self
Fill idempotency_mode from the runtime default when unset.
Trait Implementations§
Source§impl Clone for TaskConfig
impl Clone for TaskConfig
Source§fn clone(&self) -> TaskConfig
fn clone(&self) -> TaskConfig
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for TaskConfig
impl Debug for TaskConfig
Source§impl<'de> Deserialize<'de> for TaskConfig
impl<'de> Deserialize<'de> for TaskConfig
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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for TaskConfig
impl RefUnwindSafe for TaskConfig
impl Send for TaskConfig
impl Sync for TaskConfig
impl Unpin for TaskConfig
impl UnsafeUnpin for TaskConfig
impl UnwindSafe for TaskConfig
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