1/*
2 * Copyright (C) 2012 Igalia S.L.
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Library General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Library General Public License for more details.
13 *
14 * You should have received a copy of the GNU Library General Public License
15 * along with this library; see the file COPYING.LIB. If not, write to
16 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 * Boston, MA 02110-1301, USA.
18 */
19
20#ifndef WebKitSoupRequestGeneric_h
21#define WebKitSoupRequestGeneric_h
22
23#include "WebKitSoupRequestGenericClient.h"
24#include <glib-object.h>
25#include <libsoup/soup.h>
26
27G_BEGIN_DECLS
28
29namespace WebCore {
30class ResourceRequest;
31}
32
33#define WEBKIT_TYPE_SOUP_REQUEST_GENERIC (webkit_soup_request_generic_get_type())
34#define WEBKIT_SOUP_REQUEST_GENERIC(object) (G_TYPE_CHECK_INSTANCE_CAST((object), WEBKIT_TYPE_SOUP_REQUEST_GENERIC, WebKitSoupRequestGeneric))
35#define WEBKIT_IS_SOUP_REQUEST_GENERIC(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), WEBKIT_TYPE_SOUP_REQUEST_GENERIC))
36#define WEBKIT_SOUP_REQUEST_GENERIC_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_SOUP_REQUEST_GENERIC, WebKitSoupRequestGenericClass))
37#define WEBKIT_IS_SOUP_REQUEST_GENERIC_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_SOUP_REQUEST_GENERIC))
38#define WEBKIT_SOUP_REQUEST_GENERIC_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_SOUP_REQUEST_GENERIC, WebKitSoupRequestGenericClass))
39
40typedef struct _WebKitSoupRequestGeneric WebKitSoupRequestGeneric;
41typedef struct _WebKitSoupRequestGenericClass WebKitSoupRequestGenericClass;
42typedef struct _WebKitSoupRequestGenericPrivate WebKitSoupRequestGenericPrivate;
43
44struct _WebKitSoupRequestGeneric {
45 SoupRequest parent;
46
47 WebKitSoupRequestGenericPrivate *priv;
48};
49
50struct _WebKitSoupRequestGenericClass {
51 SoupRequestClass parent;
52
53 WebCore::WebKitSoupRequestGenericClient* client;
54};
55
56GType webkit_soup_request_generic_get_type();
57
58G_END_DECLS
59
60void webkitSoupRequestGenericSetContentLength(WebKitSoupRequestGeneric*, goffset contentLength);
61void webkitSoupRequestGenericSetContentType(WebKitSoupRequestGeneric*, const char* mimeType);
62void webkitSoupRequestGenericSetRequest(WebKitSoupRequestGeneric*, const WebCore::ResourceRequest&);
63const WebCore::ResourceRequest& webkitSoupRequestGenericGetRequest(WebKitSoupRequestGeneric*);
64
65#endif // WebKitSoupRequestGeneric_h
66