diff options
author | fiaxh <git@lightrise.org> | 2020-11-16 15:55:33 +0100 |
---|---|---|
committer | fiaxh <git@lightrise.org> | 2020-11-20 15:21:18 +0100 |
commit | 07917f1d841f449157aa3aaa2507b0547dd274e7 (patch) | |
tree | 315ef3bc243491565d3d5097968dca38d67a7eab /xmpp-vala/src/module/xep/0030_service_discovery | |
parent | 881b9eec9dcd8fd8c81b0b9d7bfd2ae714d7722e (diff) | |
download | dino-07917f1d841f449157aa3aaa2507b0547dd274e7.tar.gz dino-07917f1d841f449157aa3aaa2507b0547dd274e7.zip |
Refactor XmppStream, TLS and connection method logic
fixes #534
Diffstat (limited to 'xmpp-vala/src/module/xep/0030_service_discovery')
-rw-r--r-- | xmpp-vala/src/module/xep/0030_service_discovery/module.vala | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/xmpp-vala/src/module/xep/0030_service_discovery/module.vala b/xmpp-vala/src/module/xep/0030_service_discovery/module.vala index 42547f62..537e460b 100644 --- a/xmpp-vala/src/module/xep/0030_service_discovery/module.vala +++ b/xmpp-vala/src/module/xep/0030_service_discovery/module.vala @@ -23,7 +23,10 @@ public class Module : XmppStreamModule, Iq.Handler { } public void remove_feature(XmppStream stream, string feature) { - stream.get_flag(Flag.IDENTITY).remove_own_feature(feature); + Flag? flag = stream.get_flag(Flag.IDENTITY); + if (flag != null) { + flag.remove_own_feature(feature); + } } public void add_feature_notify(XmppStream stream, string feature) { @@ -34,14 +37,6 @@ public class Module : XmppStreamModule, Iq.Handler { remove_feature(stream, feature + "+notify"); } - public void add_identity(XmppStream stream, Identity identity) { - stream.get_flag(Flag.IDENTITY).add_own_identity(identity); - } - - public void remove_identity(XmppStream stream, Identity identity) { - stream.get_flag(Flag.IDENTITY).remove_own_identity(identity); - } - public async bool has_entity_feature(XmppStream stream, Jid jid, string feature) { return yield this.cache.has_entity_feature(jid, feature); } @@ -93,7 +88,7 @@ public class Module : XmppStreamModule, Iq.Handler { public override void attach(XmppStream stream) { stream.add_flag(new Flag()); - add_identity(stream, own_identity); + stream.get_flag(Flag.IDENTITY).add_own_identity(own_identity); stream.get_module(Iq.Module.IDENTITY).register_for_namespace(NS_URI_INFO, this); add_feature(stream, NS_URI_INFO); @@ -102,7 +97,8 @@ public class Module : XmppStreamModule, Iq.Handler { public override void detach(XmppStream stream) { active_info_requests.clear(); - remove_identity(stream, own_identity); + Flag? flag = stream.get_flag(Flag.IDENTITY); + if (flag != null) flag.remove_own_identity(own_identity); stream.get_module(Iq.Module.IDENTITY).unregister_from_namespace(NS_URI_INFO, this); remove_feature(stream, NS_URI_INFO); |