pygobject r773 - in trunk: . gio tests



Author: johan
Date: Fri Apr 11 16:37:29 2008
New Revision: 773
URL: http://svn.gnome.org/viewvc/pygobject?rev=773&view=rev

Log:
2008-04-11  Johan Dahlin  <jdahlin async com br>

    * gio/gfile.override:
    * gio/ginputstream.override:
    * gio/goutputstream.override:
    * tests/test_gio.py:
    Move around the order of the callback argument to async methods,
    so it comes before priority and cancellable, which can have default
    values.



Modified:
   trunk/ChangeLog
   trunk/gio/gfile.override
   trunk/gio/ginputstream.override
   trunk/gio/goutputstream.override
   trunk/tests/test_gio.py

Modified: trunk/gio/gfile.override
==============================================================================
--- trunk/gio/gfile.override	(original)
+++ trunk/gio/gfile.override	Fri Apr 11 16:37:29 2008
@@ -87,39 +87,31 @@
 %%
 override g_file_read_async kwargs
 static PyObject *
-_wrap_g_file_read_async(PyGObject *self, PyObject *args, PyObject *kwargs)
+_wrap_g_file_read_async(PyGObject *self,
+			PyObject *args,
+			PyObject *kwargs)
 {
-  static char *kwlist[] = { "io_priority", "cancellable", "callback",
-                            "user_data", NULL };
+  static char *kwlist[] = { "callback", "io_priority",
+			    "cancellable", "user_data", NULL };
   int io_priority = G_PRIORITY_DEFAULT;
-  PyGObject *pycancellable;
+  PyGObject *pycancellable = NULL;
   GCancellable *cancellable;
   PyGAsyncRequestNotify *notify;
   
   notify = g_slice_new0(PyGAsyncRequestNotify);
 
   if (!PyArg_ParseTupleAndKeywords(args, kwargs,
-                                   "iOO|O:InputStream.read_async",
+                                   "O|iOO:InputStream.read_async",
                                    kwlist,
+                                   &notify->callback,
                                    &io_priority,
                                    &pycancellable,
-                                   &notify->callback,
                                    &notify->data))
     {
       g_slice_free(PyGAsyncRequestNotify, notify);
       return NULL;
     }
 
-  if ((PyObject*)pycancellable == Py_None)
-    cancellable = NULL;
-  else if (pygobject_check(pycancellable, &PyGCancellable_Type))
-      cancellable = G_CANCELLABLE(pycancellable->obj);
-  else
-    {
-      PyErr_SetString(PyExc_TypeError, "cancellable should be a gio.Cancellable");
-      return NULL;
-    }
-
   if (!PyCallable_Check(notify->callback))
     {
       PyErr_SetString(PyExc_TypeError, "callback argument not callable");
@@ -129,6 +121,18 @@
   Py_INCREF(notify->callback);
   Py_XINCREF(notify->data);
   
+  if (pycancellable == NULL || (PyObject*)pycancellable == Py_None)
+    cancellable = NULL;
+  else if (pygobject_check(pycancellable, &PyGCancellable_Type))
+      cancellable = G_CANCELLABLE(pycancellable->obj);
+  else
+    {
+      PyErr_SetString(PyExc_TypeError,
+		      "cancellable should be a gio.Cancellable");
+      g_slice_free(PyGAsyncRequestNotify, notify);
+      return NULL;
+    }
+
   g_file_read_async(G_FILE(self->obj),
                     io_priority,
                     cancellable,

Modified: trunk/gio/ginputstream.override
==============================================================================
--- trunk/gio/ginputstream.override	(original)
+++ trunk/gio/ginputstream.override	Fri Apr 11 16:37:29 2008
@@ -81,21 +81,29 @@
   static char *kwlist[] = { "count", "cancellable", NULL };
   PyGObject *pycancellable = NULL;
   PyObject *v;
-  
   GCancellable *cancellable;
   long count = -1; 
   GError *error = NULL;
   size_t bytesread, buffersize, chunksize;
   
   if (!PyArg_ParseTupleAndKeywords(args, kwargs,
-				   "|lO!:InputStream.read",
+				   "|lO:InputStream.read",
 				   kwlist, &count,
-				   &PyGCancellable_Type, &pycancellable))
+				   &pycancellable))
     return NULL;
   
   buffersize = BUFSIZE;
 
-  cancellable = pycancellable ? G_CANCELLABLE(pycancellable->obj) : NULL;
+  if (pycancellable == NULL || (PyObject*)pycancellable == Py_None)
+    cancellable = NULL;
+  else if (pygobject_check(pycancellable, &PyGCancellable_Type))
+      cancellable = G_CANCELLABLE(pycancellable->obj);
+  else
+    {
+      PyErr_SetString(PyExc_TypeError,
+		      "cancellable should be a gio.Cancellable");
+      return NULL;
+    }
 
   v = PyString_FromStringAndSize((char *)NULL, buffersize);
   if (v == NULL)
@@ -147,40 +155,33 @@
 %%
 override g_input_stream_read_async kwargs
 static PyObject *
-_wrap_g_input_stream_read_async(PyGObject *self, PyObject *args, PyObject *kwargs)
+_wrap_g_input_stream_read_async(PyGObject *self,
+				PyObject *args,
+				PyObject *kwargs)
 {
-  static char *kwlist[] = { "count", "io_priority", "cancellable", "callback",
-			    "user_data", NULL };
+  static char *kwlist[] = { "callback", "count", "io_priority",
+			    "cancellable", "user_data", NULL };
   long count = -1;
   int io_priority = G_PRIORITY_DEFAULT;
-  PyGObject *pycancellable;
+  PyGObject *pycancellable = NULL;
   GCancellable *cancellable;
   PyGAsyncRequestNotifyRead *notify;
 
   notify = g_slice_new0(PyGAsyncRequestNotifyRead);
 
   if (!PyArg_ParseTupleAndKeywords(args, kwargs,
-				   "liOO|O:InputStream.read_async",
-				   kwlist, &count,
+				   "lO|iOO:InputStream.read_async",
+				   kwlist, 
+				   &count,				   
+				   &notify->callback,
 				   &io_priority,
 				   &pycancellable,
-				   &notify->callback,
 				   &notify->data))
     {
       g_slice_free(PyGAsyncRequestNotifyRead, notify);
       return NULL;
     }
 
-  if ((PyObject*)pycancellable == Py_None)
-    cancellable = NULL;
-  else if (pygobject_check(pycancellable, &PyGCancellable_Type))
-      cancellable = G_CANCELLABLE(pycancellable->obj);
-  else
-    {
-      PyErr_SetString(PyExc_TypeError, "cancellable should be a gio.Cancellable");
-      return NULL;
-    }
-
   if (!PyCallable_Check(notify->callback))
     {
       PyErr_SetString(PyExc_TypeError, "callback argument not callable");
@@ -190,6 +191,18 @@
   Py_INCREF(notify->callback);
   Py_XINCREF(notify->data);
   
+  if (pycancellable == NULL || (PyObject*)pycancellable == Py_None)
+    cancellable = NULL;
+  else if (pygobject_check(pycancellable, &PyGCancellable_Type))
+      cancellable = G_CANCELLABLE(pycancellable->obj);
+  else
+    {
+      PyErr_SetString(PyExc_TypeError,
+		      "cancellable should be a gio.Cancellable");
+      g_slice_free(PyGAsyncRequestNotifyRead, notify);
+      return NULL;
+    }
+
   notify->buffer = PyString_FromStringAndSize((char *)NULL, count);
   if (notify->buffer == NULL)
     return NULL;
@@ -208,7 +221,9 @@
 %%
 override g_input_stream_read_finish kwargs
 static PyObject *
-_wrap_g_input_stream_read_finish(PyGObject *self, PyObject *args, PyObject *kwargs)
+_wrap_g_input_stream_read_finish(PyGObject *self,
+				 PyObject *args,
+				 PyObject *kwargs)
 {
     static char *kwlist[] = { "result", NULL };
     PyGObject *result;
@@ -225,7 +240,8 @@
         return NULL;
     
 
-    g_input_stream_read_finish(G_INPUT_STREAM(self->obj), G_ASYNC_RESULT(result->obj), &error);
+    g_input_stream_read_finish(G_INPUT_STREAM(self->obj),
+			       G_ASYNC_RESULT(result->obj), &error);
     
     if (pyg_error_check(&error))
         return NULL;
@@ -237,39 +253,31 @@
 %%
 override g_input_stream_close_async kwargs
 static PyObject *
-_wrap_g_input_stream_close_async(PyGObject *self, PyObject *args, PyObject *kwargs)
+_wrap_g_input_stream_close_async(PyGObject *self,
+				 PyObject *args,
+				 PyObject *kwargs)
 {
-  static char *kwlist[] = { "io_priority", "cancellable",
-			    "callback", "user_data", NULL };
+  static char *kwlist[] = { "callback", "io_priority", "cancellable",
+			    "user_data", NULL };
   int io_priority = G_PRIORITY_DEFAULT;
-  PyGObject *pycancellable;
+  PyGObject *pycancellable = NULL;
   GCancellable *cancellable;
   PyGAsyncRequestNotify *notify;
 
   notify = g_slice_new0(PyGAsyncRequestNotify);
 
   if (!PyArg_ParseTupleAndKeywords(args, kwargs,
-				   "iOO|O:InputStream.close_async",
+				   "O|iOO:InputStream.close_async",
 				   kwlist,
+				   &notify->callback,
 				   &io_priority,
 				   &pycancellable,
-				   &notify->callback,
 				   &notify->data))
     {
       g_slice_free(PyGAsyncRequestNotify, notify);
       return NULL;
     }
 
-  if ((PyObject*)pycancellable == Py_None)
-    cancellable = NULL;
-  else if (pygobject_check(pycancellable, &PyGCancellable_Type))
-      cancellable = G_CANCELLABLE(pycancellable->obj);
-  else
-    {
-      PyErr_SetString(PyExc_TypeError, "cancellable should be a gio.Cancellable");
-      return NULL;
-    }
-
   if (!PyCallable_Check(notify->callback))
     {
       PyErr_SetString(PyExc_TypeError, "callback argument not callable");
@@ -279,6 +287,18 @@
   Py_INCREF(notify->callback);
   Py_XINCREF(notify->data);
   
+  if (pycancellable == NULL || (PyObject*)pycancellable == Py_None)
+    cancellable = NULL;
+  else if (pygobject_check(pycancellable, &PyGCancellable_Type))
+      cancellable = G_CANCELLABLE(pycancellable->obj);
+  else
+    {
+      PyErr_SetString(PyExc_TypeError,
+		      "cancellable should be a gio.Cancellable");
+      g_slice_free(PyGAsyncRequestNotify, notify);
+      return NULL;
+    }
+ 
   g_input_stream_close_async(G_INPUT_STREAM(self->obj),
 			     io_priority,
 			     cancellable,

Modified: trunk/gio/goutputstream.override
==============================================================================
--- trunk/gio/goutputstream.override	(original)
+++ trunk/gio/goutputstream.override	Fri Apr 11 16:37:29 2008
@@ -22,7 +22,9 @@
 %%
 override g_output_stream_write kwargs
 static PyObject *
-_wrap_g_output_stream_write(PyGObject *self, PyObject *args, PyObject *kwargs)
+_wrap_g_output_stream_write(PyGObject *self,
+			    PyObject *args,
+			    PyObject *kwargs)
 {
   static char *kwlist[] = { "buffer", "cancellable", NULL };
   PyGObject *pycancellable = NULL;
@@ -38,13 +40,14 @@
 				   &PyGCancellable_Type, &pycancellable))
     return NULL;
   
-  if (!pycancellable)
+  if (pycancellable == NULL || (PyObject*)pycancellable == Py_None)
     cancellable = NULL;
   else if (pygobject_check(pycancellable, &PyGCancellable_Type))
       cancellable = G_CANCELLABLE(pycancellable->obj);
   else
     {
-      PyErr_SetString(PyExc_TypeError, "cancellable should be a gio.Cancellable");
+      PyErr_SetString(PyExc_TypeError,
+		      "cancellable should be a gio.Cancellable");
       return NULL;
     }
 
@@ -61,41 +64,34 @@
 %%
 override g_output_stream_write_async kwargs
 static PyObject *
-_wrap_g_output_stream_write_async(PyGObject *self, PyObject *args, PyObject *kwargs)
+_wrap_g_output_stream_write_async(PyGObject *self,
+				  PyObject *args,
+				  PyObject *kwargs)
 {
-  static char *kwlist[] = { "buffer", "io_priority", "cancellable",
-			    "callback", "user_data", NULL };
+  static char *kwlist[] = { "buffer", "callback", "io_priority", "cancellable",
+			    "user_data", NULL };
   gchar *buffer;
   long count = -1;
   int io_priority = G_PRIORITY_DEFAULT;
-  PyGObject *pycancellable;
+  PyGObject *pycancellable = NULL;
   GCancellable *cancellable;
   PyGAsyncRequestNotify *notify;
 
   notify = g_slice_new0(PyGAsyncRequestNotify);
 
   if (!PyArg_ParseTupleAndKeywords(args, kwargs,
-				   "s#iOO|O:OutputStream.write_async",
-				   kwlist, &buffer, &count,
+				   "s#O|iOO:OutputStream.write_async",
+				   kwlist, &buffer,
+				   &count,
+				   &notify->callback,
 				   &io_priority,
 				   &pycancellable,
-				   &notify->callback,
 				   &notify->data))
     {
       g_slice_free(PyGAsyncRequestNotify, notify);
       return NULL;
     }
 
-  if ((PyObject*)pycancellable == Py_None)
-    cancellable = NULL;
-  else if (pygobject_check(pycancellable, &PyGCancellable_Type))
-      cancellable = G_CANCELLABLE(pycancellable->obj);
-  else
-    {
-      PyErr_SetString(PyExc_TypeError, "cancellable should be a gio.Cancellable");
-      return NULL;
-    }
-
   if (!PyCallable_Check(notify->callback))
     {
       PyErr_SetString(PyExc_TypeError, "callback argument not callable");
@@ -105,6 +101,17 @@
   Py_INCREF(notify->callback);
   Py_XINCREF(notify->data);
   
+  if (pycancellable == NULL || (PyObject*)pycancellable == Py_None)
+    cancellable = NULL;
+  else if (pygobject_check(pycancellable, &PyGCancellable_Type))
+      cancellable = G_CANCELLABLE(pycancellable->obj);
+  else
+    {
+      PyErr_SetString(PyExc_TypeError,
+		      "cancellable should be a gio.Cancellable");
+      return NULL;
+    }
+
   g_output_stream_write_async(G_OUTPUT_STREAM(self->obj),
 			      buffer,
 			      count,
@@ -119,36 +126,39 @@
 %%
 override g_output_stream_close_async kwargs
 static PyObject *
-_wrap_g_output_stream_close_async(PyGObject *self, PyObject *args, PyObject *kwargs)
+_wrap_g_output_stream_close_async(PyGObject *self,
+				  PyObject *args,
+				  PyObject *kwargs)
 {
-  static char *kwlist[] = { "io_priority", "cancellable",
-			    "callback", "user_data", NULL };
+  static char *kwlist[] = { "callback", "io_priority",
+			    "cancellable", "user_data", NULL };
   int io_priority = G_PRIORITY_DEFAULT;
-  PyGObject *pycancellable;
+  PyGObject *pycancellable = NULL;
   GCancellable *cancellable;
   PyGAsyncRequestNotify *notify;
 
   notify = g_slice_new0(PyGAsyncRequestNotify);
 
   if (!PyArg_ParseTupleAndKeywords(args, kwargs,
-				   "iOO|O:OutputStream.close_async",
+				   "O|iOO:OutputStream.close_async",
 				   kwlist,
+				   &notify->callback,
 				   &io_priority,
 				   &pycancellable,
-				   &notify->callback,
 				   &notify->data))
     {
       g_slice_free(PyGAsyncRequestNotify, notify);
       return NULL;
     }
 
-  if ((PyObject*)pycancellable == Py_None)
+  if (pycancellable == NULL || (PyObject*)pycancellable == Py_None)
     cancellable = NULL;
   else if (pygobject_check(pycancellable, &PyGCancellable_Type))
       cancellable = G_CANCELLABLE(pycancellable->obj);
   else
     {
-      PyErr_SetString(PyExc_TypeError, "cancellable should be a gio.Cancellable");
+      PyErr_SetString(PyExc_TypeError,
+		      "cancellable should be a gio.Cancellable");
       return NULL;
     }
 

Modified: trunk/tests/test_gio.py
==============================================================================
--- trunk/tests/test_gio.py	(original)
+++ trunk/tests/test_gio.py	Fri Apr 11 16:37:29 2008
@@ -27,7 +27,7 @@
             finally:
                 loop.quit()
 
-        self.file.read_async(0, None, callback)
+        self.file.read_async(callback)
 
         loop = gobject.MainLoop()
         loop.run()
@@ -90,7 +90,7 @@
             finally:
                 loop.quit()
 
-        self.stream.read_async(7, 0, None, callback)
+        self.stream.read_async(7, callback)
 
         loop = gobject.MainLoop()
         loop.run()
@@ -106,8 +106,8 @@
             finally:
                 loop.quit()
 
-        self.stream.read_async(10240, 0, None, callback)
-        self.stream.read_async(10240, 0, None, callback)
+        self.stream.read_async(10240, callback)
+        self.stream.read_async(10240, callback)
 
         loop = gobject.MainLoop()
         loop.run()
@@ -122,7 +122,7 @@
             finally:
                 loop.quit()
 
-        self.stream.close_async(0, None, callback)
+        self.stream.close_async(callback)
 
         loop = gobject.MainLoop()
         loop.run()
@@ -153,7 +153,7 @@
             finally:
                 loop.quit()
 
-        self.stream.write_async("testing", 0, None, callback)
+        self.stream.write_async("testing", callback)
 
         loop = gobject.MainLoop()
         loop.run()
@@ -167,7 +167,7 @@
                 loop.quit()
 
         self.stream.close()
-        self.stream.write_async("testing", 0, None, callback)
+        self.stream.write_async("testing", callback)
 
         loop = gobject.MainLoop()
         loop.run()
@@ -181,7 +181,7 @@
             finally:
                 loop.quit()
 
-        self.stream.close_async(0, None, callback)
+        self.stream.close_async(callback)
 
         loop = gobject.MainLoop()
         loop.run()



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]