Buttplug sex toy control library

chore: Allow changing user device attributes via builder

+13 -11
+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 - if let Some(display_name) = &self.user_config.display_name { 109 - builder.display_name(display_name); 110 - } 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 - self.user_config.allow.then(|| builder.allow()); 115 - self.user_config.deny.then(|| builder.deny()); 112 + self.user_config.allow.then(|| builder.allow(true)); 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 + pub fn from_user(value: &ServerDeviceDefinition) -> Self { 62 + ServerDeviceDefinitionBuilder { def: value.clone() } 63 + } 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 - pub fn display_name(&mut self, name: &str) -> &mut Self { 72 - self.def.display_name = Some(name.to_owned()); 75 + pub fn display_name(&mut self, name: &Option<String>) -> &mut Self { 76 + self.def.display_name = name.clone(); 73 77 self 74 78 } 75 79 ··· 83 87 self 84 88 } 85 89 86 - pub fn allow(&mut self) -> &mut Self { 87 - self.def.allow = true; 90 + pub fn allow(&mut self, allow: bool) -> &mut Self { 91 + self.def.allow = allow; 88 92 self 89 93 } 90 94 91 - pub fn deny(&mut self) -> &mut Self { 92 - self.def.deny = true; 95 + pub fn deny(&mut self, deny: bool) -> &mut Self { 96 + self.def.deny = deny; 93 97 self 94 98 } 95 99