diff options
Diffstat (limited to 'vala-xmpp/src/module/message')
-rw-r--r-- | vala-xmpp/src/module/message/module.vala | 50 | ||||
-rw-r--r-- | vala-xmpp/src/module/message/stanza.vala | 63 |
2 files changed, 0 insertions, 113 deletions
diff --git a/vala-xmpp/src/module/message/module.vala b/vala-xmpp/src/module/message/module.vala deleted file mode 100644 index 10d83693..00000000 --- a/vala-xmpp/src/module/message/module.vala +++ /dev/null @@ -1,50 +0,0 @@ -using Gee; - -using Xmpp.Core; - -namespace Xmpp.Message { - private const string NS_URI = "jabber:client"; - - public class Module : XmppStreamModule { - public const string ID = "message_module"; - - public signal void pre_send_message(XmppStream stream, Message.Stanza message); - public signal void pre_received_message(XmppStream stream, Message.Stanza message); - public signal void received_message(XmppStream stream, Message.Stanza message); - - public void send_message(XmppStream stream, Message.Stanza message) { - pre_send_message(stream, message); - stream.write(message.stanza); - } - - public void received_message_stanza(XmppStream stream, StanzaNode node) { - Message.Stanza message = new Message.Stanza.from_stanza(node, Bind.Flag.get_flag(stream).my_jid); - do { - message.rerun_parsing = false; - pre_received_message(stream, message); - } while(message.rerun_parsing); - received_message(stream, message); - } - - public static Module? get_module(XmppStream stream) { - return (Module?) stream.get_module(NS_URI, ID); - } - - public static void require(XmppStream stream) { - if (get_module(stream) == null) stream.add_module(new Message.Module()); - } - - public override void attach(XmppStream stream) { - Bind.Module.require(stream); - stream.received_message_stanza.connect(received_message_stanza); - } - - public override void detach(XmppStream stream) { - stream.received_message_stanza.disconnect(received_message_stanza); - } - - public override string get_ns() { return NS_URI; } - public override string get_id() { return ID; } - } - -} diff --git a/vala-xmpp/src/module/message/stanza.vala b/vala-xmpp/src/module/message/stanza.vala deleted file mode 100644 index 8a9064a5..00000000 --- a/vala-xmpp/src/module/message/stanza.vala +++ /dev/null @@ -1,63 +0,0 @@ -using Gee; - -using Xmpp.Core; - -namespace Xmpp.Message { - -public class Stanza : Xmpp.Stanza { - public const string NODE_BODY = "body"; - public const string NODE_SUBJECT = "subject"; - public const string NODE_THREAD = "thread"; - - public const string TYPE_CHAT = "chat"; - public const string TYPE_GROUPCHAT = "groupchat"; - public const string TYPE_HEADLINE = "headline"; - public const string TYPE_NORMAL = "normal"; - - public bool rerun_parsing = false; - private ArrayList<MessageFlag> flags = new ArrayList<MessageFlag>(); - - public string body { - get { - StanzaNode? body_node = stanza.get_subnode(NODE_BODY); - return body_node == null? null : body_node.get_string_content(); - } - set { - StanzaNode? body_node = stanza.get_subnode(NODE_BODY); - if (body_node == null) { - body_node = new StanzaNode.build(NODE_BODY); - stanza.put_node(body_node); - } - body_node.sub_nodes.clear(); - body_node.put_node(new StanzaNode.text(value)); - } - } - - public Stanza(string? id = null) { - base.outgoing(new StanzaNode.build("message")); - stanza.set_attribute(ATTRIBUTE_ID, id ?? random_uuid()); - } - - public Stanza.from_stanza(StanzaNode stanza_node, string my_jid) { - base.incoming(stanza_node, my_jid); - } - - public void add_flag(MessageFlag flag) { - flags.add(flag); - } - - public MessageFlag? get_flag(string ns, string id) { - foreach (MessageFlag flag in flags) { - if (flag.get_ns() == ns && flag.get_id() == id) return flag; - } - return null; - } -} - -public abstract class MessageFlag : Object { - public abstract string get_ns(); - - public abstract string get_id(); -} - -}
\ No newline at end of file |