Skip to main content

PlaybackReportSink

Trait PlaybackReportSink 

Source
pub trait PlaybackReportSink: Send + Sync {
    // Required method
    fn send(&self, operation: PlaybackOperation);
}
Expand description

Where the player’s playback reports go.

The controller’s side of reporting is “send this, don’t make me wait”: a slow or failing sync must never stall playback, so every send is fire-and-forget. Production wires this to PlaybackReporter (local DB, server sync, offline queueing); tests capture the operations instead of standing up a database and an HTTP client, which is what let the missing reports below be written as failing tests rather than found on a device.

TRACES: UR-025 | DR-179

Required Methods§

Source

fn send(&self, operation: PlaybackOperation)

Deliver operation. Must not block the caller.

Implementors§