X-Git-Url: https://git.street.me.uk/andy/viking.git/blobdiff_plain/9a021e4f536923200e33aeaba013965969a3027a..0a15c727f3f2c2dbe95d00baf0624dabf5450cfc:/src/download.h diff --git a/src/download.h b/src/download.h index 810da554..7bbbfbb0 100644 --- a/src/download.h +++ b/src/download.h @@ -2,6 +2,7 @@ * viking -- GPS Data and Topo Analyzer, Explorer, and Manager * * Copyright (C) 2003-2005, Evan Battaglia + * Copyright (C) 2007, Guilhem Bonnefille * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -24,6 +25,8 @@ #include +G_BEGIN_DECLS + /* File content check */ typedef gboolean (*VikFileContentCheckerFunc) (FILE*); gboolean a_check_map_file(FILE*); @@ -37,6 +40,11 @@ typedef struct { */ gboolean check_file_server_time; + /** + * Set if the server handle ETag + */ + gboolean use_etag; + /** * The REFERER string to use. * Could be NULL. @@ -61,6 +69,14 @@ typedef struct { * Time sent to server on header If-Modified-Since */ time_t time_condition; + /** + * Etag sent by server on previous download + */ + char *etag; + /** + * Etag sent by server on this download + */ + char *new_etag; } DownloadFileOptions; @@ -72,9 +88,13 @@ int a_ftp_download_get_url ( const char *hostname, const char *uri, const char * void *a_download_handle_init (); void a_download_handle_cleanup ( void *handle ); +gchar *a_download_uri_to_tmp_file ( const gchar *uri, DownloadMapOptions *options ); + /* Error messages returned by download functions */ enum { DOWNLOAD_NO_ERROR = 0, DOWNLOAD_NO_NEWER_FILE, DOWNLOAD_ERROR }; +G_END_DECLS + #endif