Module canceller

Module canceller 

Source
Expand description

Cancel request broadcaster for redundant order cancellation.

This module provides the CancelBroadcaster which fans out cancel requests to multiple HTTP clients in parallel for redundancy. Key design patterns:

  • Dependency injection via traits: Uses CancelExecutor trait to abstract the HTTP client, enabling testing without #[cfg(test)] conditional compilation.
  • Trait objects over generics: Uses Arc<dyn CancelExecutor> to avoid generic type parameters on the public API (simpler Python FFI).
  • Short-circuit on first success: Aborts remaining requests once any client succeeds, minimizing latency.
  • Idempotent success handling: Recognizes “already cancelled” responses as successful outcomes.

Structs§

BroadcasterMetrics
Broadcaster metrics snapshot.
CancelBroadcaster
Broadcasts cancel requests to multiple HTTP clients for redundancy.
CancelBroadcasterConfig
Configuration for the cancel broadcaster.
ClientStats
Per-client statistics.