summaryrefslogtreecommitdiffstats
path: root/hcid/dbus-database.c
diff options
context:
space:
mode:
authorJohan Hedberg <johan.hedberg@nokia.com>2007-05-04 15:32:26 +0000
committerJohan Hedberg <johan.hedberg@nokia.com>2007-05-04 15:32:26 +0000
commit994212593598a7c176342e616bc99aae45991244 (patch)
treeb27993a278543aafe294543adec27b4fe85ff4ba /hcid/dbus-database.c
parent16dceb4c2f7a8ed91c88b1c1353b6bd5ccc68cbf (diff)
Convert to using the generic D-Bus object handling
Diffstat (limited to 'hcid/dbus-database.c')
-rw-r--r--hcid/dbus-database.c36
1 files changed, 16 insertions, 20 deletions
diff --git a/hcid/dbus-database.c b/hcid/dbus-database.c
index 3e65b02d..0e1d2f7b 100644
--- a/hcid/dbus-database.c
+++ b/hcid/dbus-database.c
@@ -40,6 +40,7 @@
#include <dbus/dbus.h>
#include "dbus.h"
+#include "dbus-helper.h"
#include "hcid.h"
#include "sdpd.h"
#include "sdp-xml.h"
@@ -451,29 +452,24 @@ static DBusHandlerResult cancel_authorization_request(DBusConnection *conn,
return cancel_authorize_request(conn, msg, service, address, path);
}
-static struct service_data database_services[] = {
- { "AddServiceRecord", add_service_record },
- { "AddServiceRecordFromXML", add_service_record_from_xml },
- { "UpdateServiceRecord", update_service_record },
- { "RemoveServiceRecord", remove_service_record },
- { "RegisterService", register_service },
- { "UnregisterService", unregister_service },
- { "RequestAuthorization", request_authorization },
- { "CancelAuthorizationRequest", cancel_authorization_request },
- { NULL, NULL }
+static DBusMethodVTable database_methods[] = {
+ { "AddServiceRecord", add_service_record, "ay", "u" },
+ { "AddServiceRecordFromXML", add_service_record_from_xml, "s", "u" },
+ { "UpdateServiceRecord", update_service_record, "uay", "" },
+ { "RemoveServiceRecord", remove_service_record, "u", "" },
+ { "RegisterService", register_service, "sss", "" },
+ { "UnregisterService", unregister_service, "s", "" },
+ { "RequestAuthorization", request_authorization, "ss", "" },
+ { "CancelAuthorizationRequest", cancel_authorization_request, "ss", "" },
+ { NULL, NULL, NULL, NULL }
};
-DBusHandlerResult handle_database_method(DBusConnection *conn,
- DBusMessage *msg, void *data)
+dbus_bool_t database_init(DBusConnection *conn, const char *path)
{
- service_handler_func_t handler;
-
- handler = find_service_handler(database_services, msg);
-
- if (handler)
- return handler(conn, msg, data);
-
- return error_unknown_method(conn, msg);
+ return dbus_connection_register_interface(conn, path,
+ DATABASE_INTERFACE,
+ database_methods,
+ NULL, NULL);
}
void set_sdp_server_enable(void)