tangled
alpha
login
or
join now
buttplug.io
/
buttplug
20
fork
atom
Buttplug sex toy control library
20
fork
atom
overview
issues
pulls
pipelines
chore: Allow changing user device attributes via builder
qdot.tngl.sh
5 months ago
1969d738
1cc93b85
+13
-11
2 changed files
expand all
collapse all
unified
split
crates
buttplug_server_device_config
src
device_config_file
device.rs
device_definitions.rs
+3
-5
crates/buttplug_server_device_config/src/device_config_file/device.rs
···
105
105
base: &ServerDeviceDefinition,
106
106
) -> Result<ServerDeviceDefinition, ButtplugDeviceConfigError> {
107
107
let mut builder = ServerDeviceDefinitionBuilder::from_base(base, self.id);
108
108
-
if let Some(display_name) = &self.user_config.display_name {
109
109
-
builder.display_name(display_name);
110
110
-
}
108
108
+
builder.display_name(&self.user_config.display_name);
111
109
if let Some(message_gap_ms) = self.user_config.message_gap_ms {
112
110
builder.message_gap_ms(message_gap_ms);
113
111
}
114
114
-
self.user_config.allow.then(|| builder.allow());
115
115
-
self.user_config.deny.then(|| builder.deny());
112
112
+
self.user_config.allow.then(|| builder.allow(true));
113
113
+
self.user_config.deny.then(|| builder.deny(true));
116
114
builder.index(self.user_config.index);
117
115
if self.features().len() != base.features().len() {
118
116
return Err(ButtplugDeviceConfigError::UserFeatureMismatch);
+10
-6
crates/buttplug_server_device_config/src/device_definitions.rs
···
58
58
ServerDeviceDefinitionBuilder { def: value }
59
59
}
60
60
61
61
+
pub fn from_user(value: &ServerDeviceDefinition) -> Self {
62
62
+
ServerDeviceDefinitionBuilder { def: value.clone() }
63
63
+
}
64
64
+
61
65
pub fn id(&mut self, id: Uuid) -> &mut Self {
62
66
self.def.id = id;
63
67
self
···
68
72
self
69
73
}
70
74
71
71
-
pub fn display_name(&mut self, name: &str) -> &mut Self {
72
72
-
self.def.display_name = Some(name.to_owned());
75
75
+
pub fn display_name(&mut self, name: &Option<String>) -> &mut Self {
76
76
+
self.def.display_name = name.clone();
73
77
self
74
78
}
75
79
···
83
87
self
84
88
}
85
89
86
86
-
pub fn allow(&mut self) -> &mut Self {
87
87
-
self.def.allow = true;
90
90
+
pub fn allow(&mut self, allow: bool) -> &mut Self {
91
91
+
self.def.allow = allow;
88
92
self
89
93
}
90
94
91
91
-
pub fn deny(&mut self) -> &mut Self {
92
92
-
self.def.deny = true;
95
95
+
pub fn deny(&mut self, deny: bool) -> &mut Self {
96
96
+
self.def.deny = deny;
93
97
self
94
98
}
95
99