quantrs2_device/cloud/provider_optimizations/
networkresourceallocation_traits.rs

1//! # NetworkResourceAllocation - Trait Implementations
2//!
3//! This module contains trait implementations for `NetworkResourceAllocation`.
4//!
5//! ## Implemented Traits
6//!
7//! - `Default`
8//!
9//! 🤖 Generated with [SplitRS](https://github.com/cool-japan/splitrs)
10
11use super::traits::ProviderOptimizer;
12use super::types::*;
13use crate::prelude::CloudProvider;
14use crate::DeviceResult;
15use std::collections::HashMap;
16use std::time::{Duration, SystemTime};
17
18impl Default for NetworkResourceAllocation {
19    fn default() -> Self {
20        Self {
21            bandwidth_requirements: BandwidthRequirements {
22                min_bandwidth_mbps: 100.0,
23                burst_bandwidth_mbps: None,
24                data_transfer_gb: 10.0,
25            },
26            latency_requirements: NetworkLatencyRequirements {
27                max_latency_ms: 100.0,
28                jitter_tolerance_ms: 10.0,
29                packet_loss_tolerance: 0.01,
30            },
31            security_requirements: NetworkSecurityRequirements {
32                vpn_required: false,
33                private_network: false,
34                traffic_encryption: true,
35                firewall_requirements: Vec::new(),
36            },
37        }
38    }
39}