2
* @file geis_dbus_subscription.h
3
* @brief Interface for the GEIS DBus subscription transport.
7
* Copyright 2011 Canonical Ltd.
9
* This library is free software; you can redistribute it and/or modify it under
10
* the terms of the GNU Lesser General Public License as published by the Free
11
* Software Foundation; either version 3 of the License, or (at your option) any
14
* This library is distributed in the hope that it will be useful, but WITHOUT
15
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
16
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
19
* You should have received a copy of the GNU General Public License
20
* along with this program. If not, see <http://www.gnu.org/licenses/>.
22
#ifndef GEIS_DBUS_SUBSCRIPTION_H_
23
#define GEIS_DBUS_SUBSCRIPTION_H_
25
#include <dbus/dbus.h>
26
#include "geis/geis.h"
30
* Indicates if a DBus message is a GEIS_DBUS_SUBSCRIPTION_CREATE method call.
32
* @param[in] message A DBus message.
34
* This function is used on the server side to identify if a received message is
35
* a GEIS_DBUS_SUBSCRIPTION_CREATE method call.
37
* @returns GEIS_TRUE if the message is GEIS_DBUS_SUBSCRIPTION_CREATE,
38
* GEIS_FALSE otherwise.
41
geis_dbus_message_is_subscription_create_call(DBusMessage *message);
44
* Creates a GEIS_DBUS_SUBSCRIPTION_CREATE method call message.
46
* @param[in] subscription A GEIS subscription.
48
* This function is used on the client side to create a
49
* GEIS_DBUS_SUBSCRIPTION_CREATE method call message from a local
50
* %GeisSubscription object.
52
* @returns A DBus message object.
55
geis_dbus_subscription_create_call_message(GeisSubscription subscription);
58
* Creates a %GeisSubscription from a GEIS_DBUS_SUBSCRIPTION_CREATE method call
61
* @param[in] geis A %Geis instance.
62
* @param[in] message A DBus message.
64
* This function is used on the server side to create a subscription object to
65
* proxy the client-side subscription object.
67
* @returns a %GeisSubscription or NULL on failure.
70
geis_dbus_subscription_from_create_call_message(Geis geis, DBusMessage *message);
73
* Creates a GEIS_DBUS_SUBSCRIPTION_CREATE method return message.
75
* @param[in] message The DBUs method_call message to reply to.
76
* @param[in] subscription A GEIS subscription.
78
* This function is used on the server side to create a response to a received
79
* GEIS_DBUS_SUBSCRIPTION_CREATE method call message.
81
* @returns A DBus message object.
84
geis_dbus_subscription_create_return_message(DBusMessage *message,
85
GeisSubscription subscription);
88
* Indicates if a DBus message is a GEIS_DBUS_SUBSCRIPTION_ACTIVATE message.
90
* @param[in] message A DBus message.
92
* @returns GEIS_TRUE if the message is GEIS_DBUS_SUBSCRIPTION_ACTIVATE,
93
* GEIS_FALSE otherwise.
96
geis_dbus_message_is_subscription_activate_call(DBusMessage *message);
99
* Creates a GEIS_DBUS_SUBSCRIPTION_ACTIVATE method call message.
101
* @param[in] subscription A GEIS subscription.
103
* This function is used on the client side to create a
104
* GEIS_DBUS_SUBSCRIPTION_ACTIVATE method call message from a local
105
* %GeisSubscription object.
107
* @returns A DBus message object.
110
geis_dbus_subscription_activate_call_message(GeisSubscription subscription);
113
* Creates a GEIS_DBUS_SUBSCRIPTION_ACTIVATE method return message.
115
* @param[in] message The DBUs method_call message to reply to.
116
* @param[in] subscription A GEIS subscription.
118
* This function is used on the server side to create a response to a received
119
* GEIS_DBUS_SUBSCRIPTION_ACTIVATE method call message.
121
* @returns A DBus message object.
124
geis_dbus_subscription_activate_return_message(DBusMessage *message,
125
GeisSubscription subscription);
128
* Indicates if a DBus message is a GEIS_DBUS_SUBSCRIPTION_DEACTIVATE message.
130
* @param[in] message A DBus message.
132
* @returns GEIS_TRUE if the message is GEIS_DBUS_SUBSCRIPTION_DEACTIVATE,
133
* GEIS_FALSE otherwise.
136
geis_dbus_message_is_subscription_deactivate_call(DBusMessage *message);
139
* Creates a GEIS_DBUS_SUBSCRIPTION_DEACTIVATE method return message.
141
* @param[in] message The DBUs method_call message to reply to.
142
* @param[in] subscription A GEIS subscription.
144
* This function is used on the server side to create a response to a received
145
* GEIS_DBUS_SUBSCRIPTION_DEACTIVATE method call message.
147
* @returns A DBus message object.
150
geis_dbus_subscription_deactivate_return_message(DBusMessage *message,
151
GeisSubscription subscription);
154
* Creates a GEIS_DBUS_SUBSCRIPTION_DEACTIVATE method call message.
156
* @param[in] subscription A GEIS subscription.
158
* This function is used on the client side to create a
159
* GEIS_DBUS_SUBSCRIPTION_DEACTIVATE method call message from a local
160
* %GeisSubscription object.
162
* @returns A DBus message object.
165
geis_dbus_subscription_deactivate_call_message(GeisSubscription subscription);
168
* Indicates if a DBus message is a GEIS_DBUS_SUBSCRIPTION_DESTROY message.
170
* @param[in] message A DBus message.
172
* @returns GEIS_TRUE if the message is GEIS_DBUS_SUBSCRIPTION_DESTROY,
173
* GEIS_FALSE otherwise.
176
geis_dbus_message_is_subscription_destroy_call(DBusMessage *message);
179
* Creates a GEIS_DBUS_SUBSCRIPTION_DESTROY method call message.
181
* @param[in] subscription A GEIS subscription.
183
* This function is used on the client side to create a
184
* GEIS_DBUS_SUBSCRIPTION_DESTROY method call message from a local
185
* %GeisSubscription object.
187
* @returns A DBus message object.
190
geis_dbus_subscription_destroy_call_message(GeisSubscription subscription);
193
* Creates a GEIS_DBUS_SUBSCRIPTION_DESTROY method return message.
195
* @param[in] message The DBUs method_call message to reply to.
197
* This function is used on the server side to create a response to a received
198
* GEIS_DBUS_SUBSCRIPTION_DESTROY method call message.
200
* @returns A DBus message object.
203
geis_dbus_subscription_destroy_return_message(DBusMessage *message);
206
#endif /* GEIS_DBUS_SUBSCRIPTION_H_ */