Git init
[profile/ivi/libsoup2.4.git] / libsoup / soup-form.h
1 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
2 /* 
3  * Copyright 2008 Red Hat, Inc.
4  */
5
6 #ifndef  SOUP_FORM_H
7 #define  SOUP_FORM_H 1
8
9 #include <libsoup/soup-types.h>
10 #include <libsoup/soup-multipart.h>
11
12 G_BEGIN_DECLS
13
14 #define SOUP_FORM_MIME_TYPE_URLENCODED "application/x-www-form-urlencoded"
15 #define SOUP_FORM_MIME_TYPE_MULTIPART  "multipart/form-data"
16
17 GHashTable  *soup_form_decode           (const char   *encoded_form);
18 GHashTable  *soup_form_decode_multipart (SoupMessage  *msg,
19                                          const char   *file_control_name,
20                                          char        **filename,
21                                          char        **content_type,
22                                          SoupBuffer  **file);
23
24 char        *soup_form_encode           (const char   *first_field,
25                                          ...) G_GNUC_NULL_TERMINATED;
26 char        *soup_form_encode_hash      (GHashTable   *form_data_set);
27 char        *soup_form_encode_datalist  (GData       **form_data_set);
28 char        *soup_form_encode_valist    (const char   *first_field,
29                                          va_list       args);
30
31 #ifndef LIBSOUP_DISABLE_DEPRECATED
32 /* Compatibility with libsoup 2.3.0 */
33 #define soup_form_decode_urlencoded      soup_form_decode
34 #define soup_form_encode_urlencoded      soup_form_encode_hash
35 #define soup_form_encode_urlencoded_list soup_form_encode_datalist
36 #endif
37
38 SoupMessage *soup_form_request_new                (const char     *method,
39                                                    const char     *uri,
40                                                    const char     *first_field,
41                                                    ...) G_GNUC_NULL_TERMINATED;
42 SoupMessage *soup_form_request_new_from_hash      (const char     *method,
43                                                    const char     *uri,
44                                                    GHashTable     *form_data_set);
45 SoupMessage *soup_form_request_new_from_datalist  (const char     *method,
46                                                    const char     *uri,
47                                                    GData         **form_data_set);
48 SoupMessage *soup_form_request_new_from_multipart (const char     *uri,
49                                                    SoupMultipart  *multipart);
50
51 G_END_DECLS
52
53 #endif /* SOUP_FORM_H */