From 5855d61e31d2ac43fbfbdc089a2d5d779e129f91 Mon Sep 17 00:00:00 2001
From: Philipp Balzarek
Date: Wed, 9 May 2012 15:40:19 +0200
Subject: [PATCH] change Message picklers to work on Elements rather than nodes
update xml-types-pickle submodule
---
src/Network/XMPP.hs | 3 ++-
src/Network/XMPP/IM/Message.hs | 16 ++++++++++------
xml-types-pickle | 2 +-
3 files changed, 13 insertions(+), 8 deletions(-)
diff --git a/src/Network/XMPP.hs b/src/Network/XMPP.hs
index 85285ea..97b8885 100644
--- a/src/Network/XMPP.hs
+++ b/src/Network/XMPP.hs
@@ -150,7 +150,8 @@ import qualified Network.TLS as TLS
import Network.XMPP.Bind
import Network.XMPP.Concurrent
import Network.XMPP.IM.Presence hiding (presence)
-import Network.XMPP.IM.Message hiding (message)
+import Network.XMPP.IM.Message
+import Network.XMPP.Message
import Network.XMPP.Monad
import Network.XMPP.Presence
import Network.XMPP.SASL
diff --git a/src/Network/XMPP/IM/Message.hs b/src/Network/XMPP/IM/Message.hs
index a6f4e5f..08810d4 100644
--- a/src/Network/XMPP/IM/Message.hs
+++ b/src/Network/XMPP/IM/Message.hs
@@ -15,18 +15,21 @@ data MessageThread = MessageThread
(Maybe Text) -- ^ Parent Thread
data MessageSubject = MessageSubject (Maybe LangTag) Text
-xpMessageSubject :: PU [Node] MessageSubject
-xpMessageSubject = xpWrap (\(l, s) -> MessageSubject l s)
+xpMessageSubject :: PU [Element] MessageSubject
+xpMessageSubject = xpElems .
+ xpWrap (\(l, s) -> MessageSubject l s)
(\(MessageSubject l s) -> (l,s))
$ xpElem "{jabber:client}subject" xpLangTag $ xpContent xpId
-xpMessageBody :: PU [Node] MessageBody
-xpMessageBody = xpWrap (\(l, s) -> MessageBody l s)
+xpMessageBody :: PU [Element] MessageBody
+xpMessageBody = xpElems .
+ xpWrap (\(l, s) -> MessageBody l s)
(\(MessageBody l s) -> (l,s))
$ xpElem "{jabber:client}body" xpLangTag $ xpContent xpId
-xpMessageThread :: PU [Node] MessageThread
-xpMessageThread = xpWrap (\(t, p) -> MessageThread p t)
+xpMessageThread :: PU [Element] MessageThread
+xpMessageThread = xpElems
+ . xpWrap (\(t, p) -> MessageThread p t)
(\(MessageThread p t) -> (t,p))
$ xpElem "{jabber:client}thread"
(xpAttrImplied "parent" xpId)
@@ -75,3 +78,4 @@ newIM t i lang tp sbj thrd bdy = Message
++ pickle xpMessageThread thrd
++ pickle xpMessageBody bdy
}
+
diff --git a/xml-types-pickle b/xml-types-pickle
index 73f8cae..d0afdfe 160000
--- a/xml-types-pickle
+++ b/xml-types-pickle
@@ -1 +1 @@
-Subproject commit 73f8caedfe389646647354badc7700eccf40442f
+Subproject commit d0afdfea348e7dac04a13b946775be8e0feb2209