Home | History | Annotate | Download | only in webkit
      1 /*
      2  * Copyright (C) 2009 Jan Michael C. Alonzo
      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 webkitwebresource_h
     21 #define webkitwebresource_h
     22 
     23 #include <glib.h>
     24 #include <glib-object.h>
     25 
     26 #include <webkit/webkitdefines.h>
     27 
     28 G_BEGIN_DECLS
     29 
     30 #define WEBKIT_TYPE_WEB_RESOURCE            (webkit_web_resource_get_type())
     31 #define WEBKIT_WEB_RESOURCE(obj)            (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_WEB_RESOURCE, WebKitWebResource))
     32 #define WEBKIT_WEB_RESOURCE_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST((klass),  WEBKIT_TYPE_WEB_RESOURCE, WebKitWebResourceClass))
     33 #define WEBKIT_IS_WEB_RESOURCE(obj)         (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_WEB_RESOURCE))
     34 #define WEBKIT_IS_WEB_RESOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),  WEBKIT_TYPE_WEB_RESOURCE))
     35 #define WEBKIT_WEB_RESOURCE_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS((obj),  WEBKIT_TYPE_WEB_RESOURCE, WebKitWebResourceClass))
     36 
     37 typedef struct _WebKitWebResourcePrivate WebKitWebResourcePrivate;
     38 
     39 struct _WebKitWebResource {
     40     GObject parent_instance;
     41 
     42     /*< private >*/
     43     WebKitWebResourcePrivate *priv;
     44 };
     45 
     46 struct _WebKitWebResourceClass {
     47     GObjectClass parent_class;
     48 
     49     /* Padding for future expansion */
     50     void (*_webkit_reserved0) (void);
     51     void (*_webkit_reserved1) (void);
     52     void (*_webkit_reserved2) (void);
     53     void (*_webkit_reserved3) (void);
     54 };
     55 
     56 WEBKIT_API GType
     57 webkit_web_resource_get_type (void);
     58 
     59 WEBKIT_API WebKitWebResource *
     60 webkit_web_resource_new                    (const gchar        *data,
     61                                             gssize             size,
     62                                             const gchar        *uri,
     63                                             const gchar        *mime_type,
     64                                             const gchar        *encoding,
     65                                             const gchar        *frame_name);
     66 
     67 WEBKIT_API GString *
     68 webkit_web_resource_get_data               (WebKitWebResource  *web_resource);
     69 
     70 WEBKIT_API G_CONST_RETURN gchar *
     71 webkit_web_resource_get_uri                (WebKitWebResource  *web_resource);
     72 
     73 WEBKIT_API G_CONST_RETURN gchar *
     74 webkit_web_resource_get_mime_type          (WebKitWebResource  *web_resource);
     75 
     76 WEBKIT_API G_CONST_RETURN gchar *
     77 webkit_web_resource_get_encoding           (WebKitWebResource  *web_resource);
     78 
     79 WEBKIT_API G_CONST_RETURN gchar *
     80 webkit_web_resource_get_frame_name         (WebKitWebResource  *web_resource);
     81 
     82 G_END_DECLS
     83 
     84 #endif /* webkitwebresource_h */
     85