00001 /** 00002 * This file is part of alarmd 00003 * 00004 * Contact Person: David Weinehall <david.weinehall@nokia.com> 00005 * 00006 * Copyright (C) 2006 Nokia Corporation 00007 * alarmd and libalarm are free software; you can redistribute them 00008 * and/or modify them under the terms of the GNU Lesser General Public 00009 * License version 2.1 as published by the Free Software Foundation. 00010 * 00011 * alarmd and libalarm are distributed in the hope that they will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 * Lesser General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU Lesser General Public 00017 * License along with this software; if not, write to the Free 00018 * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 00019 * 02110-1301 USA 00020 */ 00021 00022 #ifndef _DBUS_OBJECT_FACTORY_H_ 00023 #define _DBUS_OBJECT_FACTORY_H_ 00024 #include <dbus/dbus.h> 00025 #include <glib-object.h> 00026 00027 /** 00028 * SECTION:dbusobjectfactory 00029 * @short_description: Utilities for creating objects out of dbus messages. 00030 * 00031 * Contains functions that are needed to get an object from a dbus message. 00032 **/ 00033 00034 /** 00035 * dbus_object_factory: 00036 * @iter: #DBusMessageIter from which the data about the object to be should 00037 * be read. 00038 * 00039 * Creates a new object from the DBusMessages data fields. The message should 00040 * be formatted as follows: 00041 * 00042 * OBJECT_PATH:ClassName, UINT32:Arguments, STRING:ArgumentName, [TYPE]:Value 00043 * If TYOE is OBJECT_PATH, the function will recursively call self and the 00044 * object will be built. 00045 * Returns: Newly created object. 00046 **/ 00047 GObject *dbus_object_factory(DBusMessageIter *iter); 00048 00049 #endif /* _DBUS_OBJECT_FACTORY_H_ */