1use abol_core::packet::Packet;
2pub const VENDOR_WIS_PR: u32 = 14122u32;
3pub const WISPR_LOCATION_ID_TYPE: u8 = 1u8;
4pub const WISPR_LOCATION_NAME_TYPE: u8 = 2u8;
5pub const WISPR_LOGOFF_URL_TYPE: u8 = 3u8;
6pub const WISPR_REDIRECTION_URL_TYPE: u8 = 4u8;
7pub const WISPR_BANDWIDTH_MIN_UP_TYPE: u8 = 5u8;
8pub const WISPR_BANDWIDTH_MIN_DOWN_TYPE: u8 = 6u8;
9pub const WISPR_BANDWIDTH_MAX_UP_TYPE: u8 = 7u8;
10pub const WISPR_BANDWIDTH_MAX_DOWN_TYPE: u8 = 8u8;
11pub const WISPR_SESSION_TERMINATE_TIME_TYPE: u8 = 9u8;
12pub const WISPR_SESSION_TERMINATE_END_OF_DAY_TYPE: u8 = 10u8;
13pub const WISPR_BILLING_CLASS_OF_SERVICE_TYPE: u8 = 11u8;
14pub trait WisprExt {
15 fn get_wispr_location_id(&self) -> Option<String>;
16 fn set_wispr_location_id(&mut self, value: impl Into<String>);
17 fn get_wispr_location_name(&self) -> Option<String>;
18 fn set_wispr_location_name(&mut self, value: impl Into<String>);
19 fn get_wispr_logoff_url(&self) -> Option<String>;
20 fn set_wispr_logoff_url(&mut self, value: impl Into<String>);
21 fn get_wispr_redirection_url(&self) -> Option<String>;
22 fn set_wispr_redirection_url(&mut self, value: impl Into<String>);
23 fn get_wispr_bandwidth_min_up(&self) -> Option<u32>;
24 fn set_wispr_bandwidth_min_up(&mut self, value: u32);
25 fn get_wispr_bandwidth_min_down(&self) -> Option<u32>;
26 fn set_wispr_bandwidth_min_down(&mut self, value: u32);
27 fn get_wispr_bandwidth_max_up(&self) -> Option<u32>;
28 fn set_wispr_bandwidth_max_up(&mut self, value: u32);
29 fn get_wispr_bandwidth_max_down(&self) -> Option<u32>;
30 fn set_wispr_bandwidth_max_down(&mut self, value: u32);
31 fn get_wispr_session_terminate_time(&self) -> Option<String>;
32 fn set_wispr_session_terminate_time(&mut self, value: impl Into<String>);
33 fn get_wispr_session_terminate_end_of_day(&self) -> Option<String>;
34 fn set_wispr_session_terminate_end_of_day(&mut self, value: impl Into<String>);
35 fn get_wispr_billing_class_of_service(&self) -> Option<String>;
36 fn set_wispr_billing_class_of_service(&mut self, value: impl Into<String>);
37}
38impl WisprExt for Packet {
39 fn get_wispr_location_id(&self) -> Option<String> {
40 self.get_attribute_as::<String>(WISPR_LOCATION_ID_TYPE)
41 }
42 fn set_wispr_location_id(&mut self, value: impl Into<String>) {
43 let wire_val: String = value.into();
44 self.set_attribute_as::<String>(WISPR_LOCATION_ID_TYPE, wire_val);
45 }
46 fn get_wispr_location_name(&self) -> Option<String> {
47 self.get_attribute_as::<String>(WISPR_LOCATION_NAME_TYPE)
48 }
49 fn set_wispr_location_name(&mut self, value: impl Into<String>) {
50 let wire_val: String = value.into();
51 self.set_attribute_as::<String>(WISPR_LOCATION_NAME_TYPE, wire_val);
52 }
53 fn get_wispr_logoff_url(&self) -> Option<String> {
54 self.get_attribute_as::<String>(WISPR_LOGOFF_URL_TYPE)
55 }
56 fn set_wispr_logoff_url(&mut self, value: impl Into<String>) {
57 let wire_val: String = value.into();
58 self.set_attribute_as::<String>(WISPR_LOGOFF_URL_TYPE, wire_val);
59 }
60 fn get_wispr_redirection_url(&self) -> Option<String> {
61 self.get_attribute_as::<String>(WISPR_REDIRECTION_URL_TYPE)
62 }
63 fn set_wispr_redirection_url(&mut self, value: impl Into<String>) {
64 let wire_val: String = value.into();
65 self.set_attribute_as::<String>(WISPR_REDIRECTION_URL_TYPE, wire_val);
66 }
67 fn get_wispr_bandwidth_min_up(&self) -> Option<u32> {
68 self.get_attribute_as::<u32>(WISPR_BANDWIDTH_MIN_UP_TYPE)
69 }
70 fn set_wispr_bandwidth_min_up(&mut self, value: u32) {
71 let wire_val = value;
72 self.set_attribute_as::<u32>(WISPR_BANDWIDTH_MIN_UP_TYPE, wire_val);
73 }
74 fn get_wispr_bandwidth_min_down(&self) -> Option<u32> {
75 self.get_attribute_as::<u32>(WISPR_BANDWIDTH_MIN_DOWN_TYPE)
76 }
77 fn set_wispr_bandwidth_min_down(&mut self, value: u32) {
78 let wire_val = value;
79 self.set_attribute_as::<u32>(WISPR_BANDWIDTH_MIN_DOWN_TYPE, wire_val);
80 }
81 fn get_wispr_bandwidth_max_up(&self) -> Option<u32> {
82 self.get_attribute_as::<u32>(WISPR_BANDWIDTH_MAX_UP_TYPE)
83 }
84 fn set_wispr_bandwidth_max_up(&mut self, value: u32) {
85 let wire_val = value;
86 self.set_attribute_as::<u32>(WISPR_BANDWIDTH_MAX_UP_TYPE, wire_val);
87 }
88 fn get_wispr_bandwidth_max_down(&self) -> Option<u32> {
89 self.get_attribute_as::<u32>(WISPR_BANDWIDTH_MAX_DOWN_TYPE)
90 }
91 fn set_wispr_bandwidth_max_down(&mut self, value: u32) {
92 let wire_val = value;
93 self.set_attribute_as::<u32>(WISPR_BANDWIDTH_MAX_DOWN_TYPE, wire_val);
94 }
95 fn get_wispr_session_terminate_time(&self) -> Option<String> {
96 self.get_attribute_as::<String>(WISPR_SESSION_TERMINATE_TIME_TYPE)
97 }
98 fn set_wispr_session_terminate_time(&mut self, value: impl Into<String>) {
99 let wire_val: String = value.into();
100 self.set_attribute_as::<String>(WISPR_SESSION_TERMINATE_TIME_TYPE, wire_val);
101 }
102 fn get_wispr_session_terminate_end_of_day(&self) -> Option<String> {
103 self.get_attribute_as::<String>(WISPR_SESSION_TERMINATE_END_OF_DAY_TYPE)
104 }
105 fn set_wispr_session_terminate_end_of_day(&mut self, value: impl Into<String>) {
106 let wire_val: String = value.into();
107 self.set_attribute_as::<String>(WISPR_SESSION_TERMINATE_END_OF_DAY_TYPE, wire_val);
108 }
109 fn get_wispr_billing_class_of_service(&self) -> Option<String> {
110 self.get_attribute_as::<String>(WISPR_BILLING_CLASS_OF_SERVICE_TYPE)
111 }
112 fn set_wispr_billing_class_of_service(&mut self, value: impl Into<String>) {
113 let wire_val: String = value.into();
114 self.set_attribute_as::<String>(WISPR_BILLING_CLASS_OF_SERVICE_TYPE, wire_val);
115 }
116}