[Telepathy-commits] [telepathy-salut/master] emit the InitialOffsetDefined signal before the channel becomes Open

Guillaume Desmottes guillaume.desmottes at collabora.co.uk
Fri Nov 21 03:46:50 PST 2008


---
 src/salut-file-transfer-channel.c                  |   10 ++++++++++
 tests/twisted/avahi/test-receive-file.py           |    9 +++++----
 .../avahi/test-send-file-provide-immediately.py    |    9 +++++----
 .../avahi/test-send-file-wait-to-provide.py        |    5 +++++
 4 files changed, 25 insertions(+), 8 deletions(-)

diff --git a/src/salut-file-transfer-channel.c b/src/salut-file-transfer-channel.c
index a365552..30040eb 100644
--- a/src/salut-file-transfer-channel.c
+++ b/src/salut-file-transfer-channel.c
@@ -892,6 +892,9 @@ remote_accepted_cb (GibberFileTransfer *ft,
   if (self->priv->socket_path != NULL)
     {
       /* ProvideFile has already been called. Channel is Open */
+      salut_svc_channel_type_file_transfer_emit_initial_offset_defined (self,
+          self->priv->initial_offset);
+
       salut_file_transfer_channel_set_state (SALUT_SVC_CHANNEL_TYPE_FILE_TRANSFER (self),
           SALUT_FILE_TRANSFER_STATE_OPEN,
           SALUT_FILE_TRANSFER_STATE_CHANGE_REASON_NONE);
@@ -1171,6 +1174,10 @@ salut_file_transfer_channel_accept_file (SalutSvcChannelTypeFileTransfer *iface,
       &out_address);
 
   self->priv->initial_offset = 0;
+
+  salut_svc_channel_type_file_transfer_emit_initial_offset_defined (self,
+      self->priv->initial_offset);
+
   salut_file_transfer_channel_set_state (iface, SALUT_FILE_TRANSFER_STATE_OPEN,
       SALUT_FILE_TRANSFER_STATE_CHANGE_REASON_NONE);
 }
@@ -1233,6 +1240,9 @@ salut_file_transfer_channel_provide_file (SalutSvcChannelTypeFileTransfer *iface
     {
       /* Remote already accepted the file. Channel is Open.
        * If not channel stay Pending. */
+      salut_svc_channel_type_file_transfer_emit_initial_offset_defined (self,
+          self->priv->initial_offset);
+
       salut_file_transfer_channel_set_state (iface,
           SALUT_FILE_TRANSFER_STATE_OPEN,
           SALUT_FILE_TRANSFER_STATE_CHANGE_REASON_REQUESTED);
diff --git a/tests/twisted/avahi/test-receive-file.py b/tests/twisted/avahi/test-receive-file.py
index ade589d..4325a39 100644
--- a/tests/twisted/avahi/test-receive-file.py
+++ b/tests/twisted/avahi/test-receive-file.py
@@ -160,15 +160,16 @@ def test(q, bus, conn):
     assert state == FT_STATE_ACCEPTED
     assert reason == FT_STATE_CHANGE_REASON_REQUESTED
 
+    e = q.expect('dbus-signal', signal='InitialOffsetDefined')
+    offset = e.args[0]
+    # We don't support resume
+    assert offset == 0
+
     e = q.expect('dbus-signal', signal='FileTransferStateChanged')
     state, reason = e.args
     assert state == FT_STATE_OPEN
     assert reason == FT_STATE_CHANGE_REASON_NONE
 
-    offset = ft_props.Get(CHANNEL_TYPE_FILE_TRANSFER, 'InitialOffset')
-    # We don't support resume
-    assert offset == 0
-
     # Connect to Salut's socket
     s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
     s.connect(address)
diff --git a/tests/twisted/avahi/test-send-file-provide-immediately.py b/tests/twisted/avahi/test-send-file-provide-immediately.py
index b1fa296..8b36b86 100644
--- a/tests/twisted/avahi/test-send-file-provide-immediately.py
+++ b/tests/twisted/avahi/test-send-file-provide-immediately.py
@@ -175,16 +175,17 @@ def test(q, bus, conn):
     http = httplib.HTTPConnection(host)
     http.request('GET', file)
 
+    e = q.expect('dbus-signal', signal='InitialOffsetDefined')
+    offset = e.args[0]
+    # We don't support resume
+    assert offset == 0
+
     # Channel is open. We can start to send the file
     e = q.expect('dbus-signal', signal='FileTransferStateChanged')
     state, reason = e.args
     assert state == FT_STATE_OPEN
     assert reason == FT_STATE_CHANGE_REASON_NONE
 
-    offset = ft_props.Get(CHANNEL_TYPE_FILE_TRANSFER, 'InitialOffset')
-    # We don't support resume
-    assert offset == 0
-
     s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
     s.connect(address)
     s.send(FILE_DATA)
diff --git a/tests/twisted/avahi/test-send-file-wait-to-provide.py b/tests/twisted/avahi/test-send-file-wait-to-provide.py
index 877dec7..1e8afb1 100644
--- a/tests/twisted/avahi/test-send-file-wait-to-provide.py
+++ b/tests/twisted/avahi/test-send-file-wait-to-provide.py
@@ -181,6 +181,11 @@ def test(q, bus, conn):
 
     address = ft_channel.ProvideFile(SOCKET_ADDRESS_TYPE_UNIX, SOCKET_ACCESS_CONTROL_LOCALHOST, "")
 
+    e = q.expect('dbus-signal', signal='InitialOffsetDefined')
+    offset = e.args[0]
+    # We don't support resume
+    assert offset == 0
+
     # Channel is open. We can start to send the file
     e = q.expect('dbus-signal', signal='FileTransferStateChanged')
     state, reason = e.args
-- 
1.5.6.5




More information about the Telepathy-commits mailing list