From 527756cca0471a55389a3494d35f9b1b13f20b7e Mon Sep 17 00:00:00 2001 From: Vincent Sanders Date: Mon, 30 May 2016 11:29:39 +0100 Subject: move fetch header into public API --- content/fetchers/curl.c | 2 +- content/fetchers/file.c | 2 +- content/fetchers/resource.c | 2 +- desktop/gui_factory.c | 2 +- desktop/gui_fetch.h | 104 ------------------------------------------ frontends/amiga/gui.c | 2 +- frontends/atari/gui.c | 2 +- frontends/beos/gui.cpp | 2 +- frontends/cocoa/fetch.m | 2 +- frontends/framebuffer/fetch.c | 2 +- frontends/gtk/fetch.c | 2 +- frontends/monkey/fetch.c | 2 +- frontends/riscos/gui.c | 2 +- frontends/windows/filetype.c | 2 +- frontends/windows/main.c | 2 +- include/netsurf/fetch.h | 104 ++++++++++++++++++++++++++++++++++++++++++ 16 files changed, 118 insertions(+), 118 deletions(-) delete mode 100644 desktop/gui_fetch.h create mode 100644 include/netsurf/fetch.h diff --git a/content/fetchers/curl.c b/content/fetchers/curl.c index 1a4213444..9ac390c6c 100644 --- a/content/fetchers/curl.c +++ b/content/fetchers/curl.c @@ -52,7 +52,7 @@ #include "utils/useragent.h" #include "utils/file.h" #include "utils/string.h" -#include "desktop/gui_fetch.h" +#include "netsurf/fetch.h" #include "netsurf/misc.h" #include "desktop/gui_internal.h" diff --git a/content/fetchers/file.c b/content/fetchers/file.c index 8cfe3a0f2..04184d27a 100644 --- a/content/fetchers/file.c +++ b/content/fetchers/file.c @@ -49,7 +49,7 @@ #include "utils/utils.h" #include "utils/ring.h" #include "utils/file.h" -#include "desktop/gui_fetch.h" +#include "netsurf/fetch.h" #include "desktop/gui_internal.h" #include "content/dirlist.h" diff --git a/content/fetchers/resource.c b/content/fetchers/resource.c index 72ed88715..21ad8c746 100644 --- a/content/fetchers/resource.c +++ b/content/fetchers/resource.c @@ -35,7 +35,7 @@ #include "utils/messages.h" #include "utils/utils.h" #include "utils/ring.h" -#include "desktop/gui_fetch.h" +#include "netsurf/fetch.h" #include "desktop/gui_internal.h" #include "content/fetch.h" diff --git a/desktop/gui_factory.c b/desktop/gui_factory.c index c1a061097..e2549cc74 100644 --- a/desktop/gui_factory.c +++ b/desktop/gui_factory.c @@ -31,7 +31,7 @@ #include "desktop/download.h" #include "desktop/searchweb.h" #include "netsurf/download.h" -#include "desktop/gui_fetch.h" +#include "netsurf/fetch.h" #include "netsurf/misc.h" #include "netsurf/window.h" #include "netsurf/search.h" diff --git a/desktop/gui_fetch.h b/desktop/gui_fetch.h deleted file mode 100644 index 22c5e6a2e..000000000 --- a/desktop/gui_fetch.h +++ /dev/null @@ -1,104 +0,0 @@ -/* - * Copyright 2014 Vincent Sanders - * - * This file is part of NetSurf, http://www.netsurf-browser.org/ - * - * NetSurf is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; version 2 of the License. - * - * NetSurf is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -/** - * \file - * - * Interface to platform-specific fetcher operations. - */ - -#ifndef _NETSURF_DESKTOP_GUI_FETCH_H_ -#define _NETSURF_DESKTOP_GUI_FETCH_H_ - -struct nsurl; - -/** - * function table for fetcher operations. - */ -struct gui_fetch_table { - /* Mandantory entries */ - - /** - * Determine the MIME type of a local file. - * - * @note used in file fetcher - * - * \param unix_path Unix style path to file on disk - * \return Pointer to MIME type string (should not be freed) - - * invalidated on next call to fetch_filetype. - */ - const char *(*filetype)(const char *unix_path); - - /* Optional entries */ - - /** - * Translate resource to full url. - * - * @note Only used in resource fetcher - * - * Transforms a resource: path into a full URL. The returned URL - * is used as the target for a redirect. The caller takes ownership of - * the returned nsurl including unrefing it when finished with it. - * - * \param path The path of the resource to locate. - * \return A string containing the full URL of the target object or - * NULL if no suitable resource can be found. - */ - struct nsurl* (*get_resource_url)(const char *path); - - /** - * Translate resource to source data. - * - * @note Only used in resource fetcher - * - * Obtains the data for a resource directly - * - * \param path The path of the resource to locate. - * \param data Pointer to recive data into - * \param data_len Pointer to length of returned data - * \return NSERROR_OK and the data and length values updated - * else appropriate error code. - */ - nserror (*get_resource_data)(const char *path, const uint8_t **data, size_t *data_len); - - /** - * Releases source data. - * - * @note Only used in resource fetcher - * - * Releases source data obtained from get_resource_data() - * - * \param data The value returned from a previous get_resource_data call - * \return NSERROR_OK on success else appropriate error code. - */ - nserror (*release_resource_data)(const uint8_t *data); - - /** - * Find a MIME type for a local file - * - * @note only used in curl fetcher in form file controls on - * RISC OS otherwise its a strdup of a filetype call. - * - * \param ro_path RISC OS style path to file on disk - * \return MIME type string (on heap, caller should free), or NULL - */ - char *(*mimetype)(const char *ro_path); - -}; - -#endif diff --git a/frontends/amiga/gui.c b/frontends/amiga/gui.c index 75875d3c3..c79e06b30 100644 --- a/frontends/amiga/gui.c +++ b/frontends/amiga/gui.c @@ -113,7 +113,7 @@ #include "desktop/textinput.h" #include "desktop/tree.h" #include "netsurf/window.h" -#include "desktop/gui_fetch.h" +#include "netsurf/fetch.h" #include "netsurf/misc.h" /* NetSurf Amiga platform includes */ diff --git a/frontends/atari/gui.c b/frontends/atari/gui.c index 21fe4ec84..39edeb422 100644 --- a/frontends/atari/gui.c +++ b/frontends/atari/gui.c @@ -38,7 +38,7 @@ #include "desktop/gui_layout.h" #include "netsurf/window.h" #include "netsurf/clipboard.h" -#include "desktop/gui_fetch.h" +#include "netsurf/fetch.h" #include "netsurf/misc.h" #include "desktop/netsurf.h" diff --git a/frontends/beos/gui.cpp b/frontends/beos/gui.cpp index 3a45c66b4..b30c8966d 100644 --- a/frontends/beos/gui.cpp +++ b/frontends/beos/gui.cpp @@ -66,7 +66,7 @@ extern "C" { #include "netsurf/misc.h" #include "netsurf/clipboard.h" #include "netsurf/search.h" -#include "desktop/gui_fetch.h" +#include "netsurf/fetch.h" #include "desktop/netsurf.h" } diff --git a/frontends/cocoa/fetch.m b/frontends/cocoa/fetch.m index 1c36bb8a5..0bbce09f6 100644 --- a/frontends/cocoa/fetch.m +++ b/frontends/cocoa/fetch.m @@ -20,7 +20,7 @@ #import "utils/log.h" #import "utils/nsurl.h" -#import "desktop/gui_fetch.h" +#import "netsurf/fetch.h" #import "cocoa/fetch.h" diff --git a/frontends/framebuffer/fetch.c b/frontends/framebuffer/fetch.c index 24920fbbb..e6b72e03c 100644 --- a/frontends/framebuffer/fetch.c +++ b/frontends/framebuffer/fetch.c @@ -29,7 +29,7 @@ #include "utils/log.h" #include "utils/filepath.h" #include "utils/file.h" -#include "desktop/gui_fetch.h" +#include "netsurf/fetch.h" #include "framebuffer/findfile.h" #include "framebuffer/fetch.h" diff --git a/frontends/gtk/fetch.c b/frontends/gtk/fetch.c index 06770b6b2..1f397e15f 100644 --- a/frontends/gtk/fetch.c +++ b/frontends/gtk/fetch.c @@ -32,7 +32,7 @@ #include "utils/filepath.h" #include "utils/file.h" #include "utils/nsurl.h" -#include "desktop/gui_fetch.h" +#include "netsurf/fetch.h" #include "gtk/gui.h" #include "gtk/resources.h" diff --git a/frontends/monkey/fetch.c b/frontends/monkey/fetch.c index 86732cfce..4985329db 100644 --- a/frontends/monkey/fetch.c +++ b/frontends/monkey/fetch.c @@ -26,7 +26,7 @@ #include "utils/file.h" #include "utils/nsurl.h" #include "utils/filepath.h" -#include "desktop/gui_fetch.h" +#include "netsurf/fetch.h" #include "monkey/filetype.h" #include "monkey/fetch.h" diff --git a/frontends/riscos/gui.c b/frontends/riscos/gui.c index 79d89e2df..0a7120e7c 100644 --- a/frontends/riscos/gui.c +++ b/frontends/riscos/gui.c @@ -47,7 +47,7 @@ #include "utils/filename.h" #include "utils/url.h" #include "utils/corestrings.h" -#include "desktop/gui_fetch.h" +#include "netsurf/fetch.h" #include "netsurf/misc.h" #include "desktop/save_complete.h" #include "desktop/treeview.h" diff --git a/frontends/windows/filetype.c b/frontends/windows/filetype.c index b06534d6a..aab27ea76 100644 --- a/frontends/windows/filetype.c +++ b/frontends/windows/filetype.c @@ -22,7 +22,7 @@ #include "utils/log.h" #include "utils/utils.h" #include "content/fetch.h" -#include "desktop/gui_fetch.h" +#include "netsurf/fetch.h" #include "windows/filetype.h" diff --git a/frontends/windows/main.c b/frontends/windows/main.c index a8ad9e846..3688851ed 100644 --- a/frontends/windows/main.c +++ b/frontends/windows/main.c @@ -31,7 +31,7 @@ #include "utils/nsurl.h" #include "utils/nsoption.h" #include "desktop/browser.h" -#include "desktop/gui_fetch.h" +#include "netsurf/fetch.h" #include "netsurf/misc.h" #include "desktop/netsurf.h" diff --git a/include/netsurf/fetch.h b/include/netsurf/fetch.h new file mode 100644 index 000000000..22c5e6a2e --- /dev/null +++ b/include/netsurf/fetch.h @@ -0,0 +1,104 @@ +/* + * Copyright 2014 Vincent Sanders + * + * This file is part of NetSurf, http://www.netsurf-browser.org/ + * + * NetSurf is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * NetSurf is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +/** + * \file + * + * Interface to platform-specific fetcher operations. + */ + +#ifndef _NETSURF_DESKTOP_GUI_FETCH_H_ +#define _NETSURF_DESKTOP_GUI_FETCH_H_ + +struct nsurl; + +/** + * function table for fetcher operations. + */ +struct gui_fetch_table { + /* Mandantory entries */ + + /** + * Determine the MIME type of a local file. + * + * @note used in file fetcher + * + * \param unix_path Unix style path to file on disk + * \return Pointer to MIME type string (should not be freed) - + * invalidated on next call to fetch_filetype. + */ + const char *(*filetype)(const char *unix_path); + + /* Optional entries */ + + /** + * Translate resource to full url. + * + * @note Only used in resource fetcher + * + * Transforms a resource: path into a full URL. The returned URL + * is used as the target for a redirect. The caller takes ownership of + * the returned nsurl including unrefing it when finished with it. + * + * \param path The path of the resource to locate. + * \return A string containing the full URL of the target object or + * NULL if no suitable resource can be found. + */ + struct nsurl* (*get_resource_url)(const char *path); + + /** + * Translate resource to source data. + * + * @note Only used in resource fetcher + * + * Obtains the data for a resource directly + * + * \param path The path of the resource to locate. + * \param data Pointer to recive data into + * \param data_len Pointer to length of returned data + * \return NSERROR_OK and the data and length values updated + * else appropriate error code. + */ + nserror (*get_resource_data)(const char *path, const uint8_t **data, size_t *data_len); + + /** + * Releases source data. + * + * @note Only used in resource fetcher + * + * Releases source data obtained from get_resource_data() + * + * \param data The value returned from a previous get_resource_data call + * \return NSERROR_OK on success else appropriate error code. + */ + nserror (*release_resource_data)(const uint8_t *data); + + /** + * Find a MIME type for a local file + * + * @note only used in curl fetcher in form file controls on + * RISC OS otherwise its a strdup of a filetype call. + * + * \param ro_path RISC OS style path to file on disk + * \return MIME type string (on heap, caller should free), or NULL + */ + char *(*mimetype)(const char *ro_path); + +}; + +#endif -- cgit v1.2.3