4 * Copyright (C) 2005 Novell, Inc.
9 * Permission is hereby granted, free of charge, to any person obtaining a
10 * copy of this software and associated documentation files (the "Software"),
11 * to deal in the Software without restriction, including without limitation
12 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
13 * and/or sell copies of the Software, and to permit persons to whom the
14 * Software is furnished to do so, subject to the following conditions:
16 * The above copyright notice and this permission notice shall be included in
17 * all copies or substantial portions of the Software.
19 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
24 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
25 * DEALINGS IN THE SOFTWARE.
28 #ifndef __BEAGLE_CLIENT_H
29 #define __BEAGLE_CLIENT_H
31 #include <glib-object.h>
33 #include "beagle-request.h"
35 #define BEAGLE_TYPE_CLIENT (beagle_client_get_type ())
36 #define BEAGLE_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BEAGLE_TYPE_CLIENT, BeagleClient))
37 #define BEAGLE_CLIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BEAGLE_TYPE_CLIENT, BeagleClientClass))
38 #define BEAGLE_IS_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BEAGLE_TYPE_CLIENT))
39 #define BEAGLE_IS_CLIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BEAGLE_TYPE_CLIENT))
40 #define BEAGLE_CLIENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BEAGLE_TYPE_CLIENT, BeagleClientClass))
42 typedef struct _BeagleClient BeagleClient
;
43 typedef struct _BeagleClientClass BeagleClientClass
;
45 struct _BeagleClient
{
49 struct _BeagleClientClass
{
50 GObjectClass parent_class
;
53 GType
beagle_client_get_type (void);
54 BeagleClient
*beagle_client_new (const char *client_name
);
55 BeagleClient
*beagle_client_new_from_socket_path (const char *socket_path
);
57 BeagleResponse
*beagle_client_send_request (BeagleClient
*client
,
58 BeagleRequest
*request
,
60 gboolean
beagle_client_send_request_async (BeagleClient
*client
,
61 BeagleRequest
*request
,
64 #endif /* __BEAGLE_CLIENT_H */