Initital start on implementing the various write functions in LmSoupSocket
authorMikael Hallendal <micke@imendio.com>
Fri, 11 Jul 2008 19:14:28 +0300
changeset 440 23a40a2a7315
parent 439 f0150ffe7312
child 441 b666e4d63a3a
Initital start on implementing the various write functions in LmSoupSocket
loudmouth/lm-soup-socket.c
--- a/loudmouth/lm-soup-socket.c	Fri Jul 11 19:07:11 2008 +0300
+++ b/loudmouth/lm-soup-socket.c	Fri Jul 11 19:14:28 2008 +0300
@@ -189,7 +189,19 @@
                    gchar    *data, 
                    gsize     len)
 {
-        return FALSE;
+        LmSoupSocketPriv   *priv = GET_PRIV (socket);
+        SoupSocketIOStatus  io_status;
+
+        if (!priv->soup || !soup_socket_is_connected (priv->soup)) {
+                return FALSE;
+        }
+
+        io_status = soup_socket_write (priv->soup,
+                                       data, len,
+                                       NULL /* FIXME: Should be how much was written */,
+                                       priv->cancellable,
+                                       NULL /* FIXME: Should be a GError */);
+        return TRUE; /* FIXME: Return properly depending on IOStatus */
 }
 
 static gboolean
@@ -198,12 +210,22 @@
                   gsize     buf_len,
                   gsize     read_len)
 {
+        LmSoupSocketPriv *priv = GET_PRIV (socket);
+
+        if (!priv->soup || !soup_socket_is_connected (priv->soup)) {
+        }
+
         return FALSE;
 }
 
 static void
 _soup_socket_disconnect (LmSocket *socket)
 {
+        LmSoupSocketPriv *priv = GET_PRIV (socket);
+
+        if (priv->soup) {
+                soup_socket_disconnect (priv->soup);
+        }
 }
 
 static void