1 /* GDBus - GLib D-Bus Library 2 * 3 * Copyright (C) 2008-2010 Red Hat, Inc. 4 * 5 * This library is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU Lesser General Public 7 * License as published by the Free Software Foundation; either 8 * version 2.1 of the License, or (at your option) any later version. 9 * 10 * This library is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 * Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General 16 * Public License along with this library; if not, see <http://www.gnu.org/licenses/>. 17 * 18 * Author: David Zeuthen <davidz@redhat.com> 19 */ 20 21 #ifndef __G_DBUS_METHOD_INVOCATION_H__ 22 #define __G_DBUS_METHOD_INVOCATION_H__ 23 24 #if !defined (__GIO_GIO_H_INSIDE__) && !defined (GIO_COMPILATION) 25 #error "Only <gio/gio.h> can be included directly." 26 #endif 27 28 #include <gio/giotypes.h> 29 30 G_BEGIN_DECLS 31 32 #define G_TYPE_DBUS_METHOD_INVOCATION (g_dbus_method_invocation_get_type ()) 33 #define G_DBUS_METHOD_INVOCATION(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), G_TYPE_DBUS_METHOD_INVOCATION, GDBusMethodInvocation)) 34 #define G_IS_DBUS_METHOD_INVOCATION(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), G_TYPE_DBUS_METHOD_INVOCATION)) 35 36 GLIB_AVAILABLE_IN_ALL 37 GType g_dbus_method_invocation_get_type (void) G_GNUC_CONST; 38 GLIB_AVAILABLE_IN_ALL 39 const gchar *g_dbus_method_invocation_get_sender (GDBusMethodInvocation *invocation); 40 GLIB_AVAILABLE_IN_ALL 41 const gchar *g_dbus_method_invocation_get_object_path (GDBusMethodInvocation *invocation); 42 GLIB_AVAILABLE_IN_ALL 43 const gchar *g_dbus_method_invocation_get_interface_name (GDBusMethodInvocation *invocation); 44 GLIB_AVAILABLE_IN_ALL 45 const gchar *g_dbus_method_invocation_get_method_name (GDBusMethodInvocation *invocation); 46 GLIB_AVAILABLE_IN_ALL 47 const GDBusMethodInfo *g_dbus_method_invocation_get_method_info (GDBusMethodInvocation *invocation); 48 GLIB_AVAILABLE_IN_2_38 49 const GDBusPropertyInfo *g_dbus_method_invocation_get_property_info (GDBusMethodInvocation *invocation); 50 GLIB_AVAILABLE_IN_ALL 51 GDBusConnection *g_dbus_method_invocation_get_connection (GDBusMethodInvocation *invocation); 52 GLIB_AVAILABLE_IN_ALL 53 GDBusMessage *g_dbus_method_invocation_get_message (GDBusMethodInvocation *invocation); 54 GLIB_AVAILABLE_IN_ALL 55 GVariant *g_dbus_method_invocation_get_parameters (GDBusMethodInvocation *invocation); 56 GLIB_AVAILABLE_IN_ALL 57 gpointer g_dbus_method_invocation_get_user_data (GDBusMethodInvocation *invocation); 58 59 GLIB_AVAILABLE_IN_ALL 60 void g_dbus_method_invocation_return_value (GDBusMethodInvocation *invocation, 61 GVariant *parameters); 62 GLIB_AVAILABLE_IN_ALL 63 void g_dbus_method_invocation_return_value_with_unix_fd_list (GDBusMethodInvocation *invocation, 64 GVariant *parameters, 65 GUnixFDList *fd_list); 66 GLIB_AVAILABLE_IN_ALL 67 void g_dbus_method_invocation_return_error (GDBusMethodInvocation *invocation, 68 GQuark domain, 69 gint code, 70 const gchar *format, 71 ...) G_GNUC_PRINTF(4, 5); 72 GLIB_AVAILABLE_IN_ALL 73 void g_dbus_method_invocation_return_error_valist (GDBusMethodInvocation *invocation, 74 GQuark domain, 75 gint code, 76 const gchar *format, 77 va_list var_args) 78 G_GNUC_PRINTF(4, 0); 79 GLIB_AVAILABLE_IN_ALL 80 void g_dbus_method_invocation_return_error_literal (GDBusMethodInvocation *invocation, 81 GQuark domain, 82 gint code, 83 const gchar *message); 84 GLIB_AVAILABLE_IN_ALL 85 void g_dbus_method_invocation_return_gerror (GDBusMethodInvocation *invocation, 86 const GError *error); 87 GLIB_AVAILABLE_IN_ALL 88 void g_dbus_method_invocation_take_error (GDBusMethodInvocation *invocation, 89 GError *error); 90 GLIB_AVAILABLE_IN_ALL 91 void g_dbus_method_invocation_return_dbus_error (GDBusMethodInvocation *invocation, 92 const gchar *error_name, 93 const gchar *error_message); 94 95 G_END_DECLS 96 97 #endif /* __G_DBUS_METHOD_INVOCATION_H__ */ 98