Skip to main content

nym_bandwidth_controller/
event.rs

1// Copyright 2024 - Nym Technologies SA <contact@nymtech.net>
2// SPDX-License-Identifier: Apache-2.0
3
4#[derive(Debug)]
5pub enum BandwidthStatusMessage {
6    RemainingBandwidth(i64),
7    NoBandwidth,
8}
9
10impl std::fmt::Display for BandwidthStatusMessage {
11    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
12        match self {
13            BandwidthStatusMessage::RemainingBandwidth(b) => {
14                write!(f, "remaining bandwidth: {b}")
15            }
16            BandwidthStatusMessage::NoBandwidth => write!(f, "no bandwidth left"),
17        }
18    }
19}
20
21impl nym_task::TaskStatusEvent for BandwidthStatusMessage {
22    fn as_any(&self) -> &dyn std::any::Any {
23        self
24    }
25}