aboutsummaryrefslogtreecommitdiff
path: root/src/message/signalproxy
diff options
context:
space:
mode:
authorMax Audron <audron@cocaine.farm>2025-02-23 17:44:12 +0100
committerMax Audron <audron@cocaine.farm>2025-02-23 17:44:12 +0100
commitb168e9489b33191168f940146e9fc3439f753e79 (patch)
tree5c3ff43506df2fe60542c7b55533d38a4090b31f /src/message/signalproxy
parentmove network config to it's own file and impl it's sync (diff)
add syncables for IrcUser
Diffstat (limited to 'src/message/signalproxy')
-rw-r--r--src/message/signalproxy/objects/ircuser.rs35
1 files changed, 34 insertions, 1 deletions
diff --git a/src/message/signalproxy/objects/ircuser.rs b/src/message/signalproxy/objects/ircuser.rs
index 72f98be..6ddf0cc 100644
--- a/src/message/signalproxy/objects/ircuser.rs
+++ b/src/message/signalproxy/objects/ircuser.rs
@@ -89,7 +89,40 @@ impl IrcUser {
}
#[cfg(feature = "client")]
-impl crate::message::StatefulSyncableClient for IrcUser {}
+impl crate::message::StatefulSyncableClient for IrcUser {
+ fn sync_custom(&mut self, mut msg: crate::message::SyncMessage)
+ where
+ Self: Sized,
+ {
+ match msg.slot_name.as_str() {
+ "addUserModes" => self.add_user_modes(get_param!(msg)),
+ "joinChannel" => self.join_channel(get_param!(msg)),
+ "partChannel" => self.part_channel(get_param!(msg)),
+ "quit" => self.quit(),
+ "removeUserModes" => self.remove_user_modes(get_param!(msg)),
+ "setAccount" => self.set_account(get_param!(msg)),
+ "setAway" => self.set_away(get_param!(msg)),
+ "setAwayMessage" => self.set_away_message(get_param!(msg)),
+ "setEncrypted" => self.set_encrypted(get_param!(msg)),
+ "setHost" => self.set_host(get_param!(msg)),
+ "setIdleTime" => self.set_idle_time(get_param!(msg)),
+ "setIrcOperator" => self.set_irc_operator(get_param!(msg)),
+ // TODO
+ // "setLastAwayMessage" => self.,
+ "setLastAwayMessageTime" => self.set_last_away_message_time(get_param!(msg)),
+ "setLoginTime" => self.set_login_time(get_param!(msg)),
+ "setNick" => self.set_nick(get_param!(msg)),
+ "setRealName" => self.set_real_name(get_param!(msg)),
+ "setServer" => self.set_server(get_param!(msg)),
+ "setSuserHost" => self.set_suser_host(get_param!(msg)),
+ "setUser" => self.set_user(get_param!(msg)),
+ "setUserModes" => self.set_user_modes(get_param!(msg)),
+ "setWhoisServiceReply" => self.set_whois_service_reply(get_param!(msg)),
+ "updateHostmask" => self.update_hostmask(get_param!(msg)),
+ _ => unimplemented!(),
+ }
+ }
+}
#[cfg(feature = "server")]
impl crate::message::StatefulSyncableServer for IrcUser {}
rc/session/mod.rs?id=1d05a7394e5cf72538cc79b22c5f9330f179cfc3&follow=1'>move network config to it's own file and impl it's syncMax Audron-23/+84 2025-02-23add basic network syncablesMax Audron-39/+420 2025-02-23clean up unused_import and unused_variables a bitMax Audron-2/+8 2025-02-23fix server feature errorsMax Audron-28/+23 2025-02-23fix ircchannel and maplist network representationMax Audron-154/+137 2025-02-22replace deprecated failure crate with thiserrorMax Audron-278/+194 this changes the public API in that all our methods now return a proper ProtocolError crate. Needed change anyways to properly deal with all our errors in the long run. Will still need to do a pass through the crate to remove all existing unwraps where it makes sense. 2025-02-22update dependencies and fix errorsMax Audron-508/+332 2025-02-22update flakeMax Audron-94/+117 2024-05-22add todos to readmeMax Audron-16/+35