Commit 5afe4265 authored by Seth Nickell's avatar Seth Nickell
Browse files

2004-07-12 Seth Nickell <seth@gnome.org>

	* python/dbus.py:

	Add message argument to the default object_method_handler
	function.

	* python/dbus_bindings.pyx.in:

	Automatically return NIL when passed an empty list
	(we can't pass back a list since lists are typed
	and we don't have any idea what type the the client
	intended the list to be... :-( )
parent dd4ff748
2004-07-12 Seth Nickell <seth@gnome.org>
* python/dbus.py:
Add message argument to the default object_method_handler
function.
* python/dbus_bindings.pyx.in:
Automatically return NIL when passed an empty list
(we can't pass back a list since lists are typed
and we don't have any idea what type the the client
intended the list to be... :-( )
2004-07-10 Seth Nickell <seth@gnome.org>
* python/examples/Makefile.am:
......
......@@ -337,7 +337,7 @@ class ObjectTree:
message = dbus_bindings.Signal(object_path, interface, signal_name)
self._connection.send(message)
def object_method_called(self, relative_path, method_name, argument_list):
def object_method_called(self, message, relative_path, method_name, argument_list):
"""Override this method. Called with, object_path, the relative path of the object
under the base_path, the name of the method invoked, and a list of arguments
"""
......
......@@ -614,19 +614,23 @@ cdef class MessageIter:
elif value_type == dict:
retval = self.append_dict(value)
elif value_type == list:
if (len(value) == 0):
raise TypeError, "Empty lists are currently not supported, return None instead"
list_type = type(value[0])
if list_type == str:
self.append_string_array(value)
elif list_type == int:
self.append_int32_array(value)
elif list_type == float:
self.append_double_array(value)
elif isinstance(value[0], ObjectPath):
self.append_object_path_array(value)
if len(value) == 0:
# Empty lists are currently not supported, returning None instead
retval = self.append(None)
else:
raise TypeError, "List of unknown type '%s'" % (list_type)
list_type = type(value[0])
if list_type == str:
self.append_string_array(value)
elif list_type == int:
self.append_int32_array(value)
elif list_type == float:
self.append_double_array(value)
elif isinstance(value[0], ObjectPath):
self.append_object_path_array(value)
else:
raise TypeError, "List of unknown type '%s'" % (list_type)
elif value_type == None.__class__:
retval = self.append_nil()
elif isinstance(value, ObjectPath):
retval = self.append_object_path(value)
else:
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment