[gnome-software] trivial: Also invalidate the cache when submitting reviews
- From: Richard Hughes <rhughes src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-software] trivial: Also invalidate the cache when submitting reviews
- Date: Thu, 11 Feb 2016 17:34:09 +0000 (UTC)
commit fd3e833f83c03b37d6789b4f95d21a0946acd118
Author: Richard Hughes <richard hughsie com>
Date: Thu Feb 11 17:33:01 2016 +0000
trivial: Also invalidate the cache when submitting reviews
This means you can see the review if you quit and then relaunch gnome-software.
src/plugins/gs-plugin-xdg-app-reviews.c | 50 ++++++++++++++++--------------
1 files changed, 27 insertions(+), 23 deletions(-)
---
diff --git a/src/plugins/gs-plugin-xdg-app-reviews.c b/src/plugins/gs-plugin-xdg-app-reviews.c
index 861a0d0..8ab9a5c 100644
--- a/src/plugins/gs-plugin-xdg-app-reviews.c
+++ b/src/plugins/gs-plugin-xdg-app-reviews.c
@@ -777,6 +777,29 @@ xdg_app_review_sanitize_version (const gchar *version)
}
/**
+ * gs_plugin_xdg_app_reviews_invalidate_cache:
+ */
+static gboolean
+gs_plugin_xdg_app_reviews_invalidate_cache (GsReview *review, GError **error)
+{
+ g_autofree gchar *cachedir = NULL;
+ g_autofree gchar *cachefn = NULL;
+ g_autoptr(GFile) cachefn_file = NULL;
+
+ /* look in the cache */
+ cachedir = gs_utils_get_cachedir ("reviews", error);
+ if (cachedir == NULL)
+ return FALSE;
+ cachefn = g_strdup_printf ("%s/%s.json",
+ cachedir,
+ gs_review_get_metadata_item (review, "app_id"));
+ cachefn_file = g_file_new_for_path (cachefn);
+ if (!g_file_query_exists (cachefn_file, NULL))
+ return TRUE;
+ return g_file_delete (cachefn_file, NULL, error);
+}
+
+/**
* gs_plugin_review_submit:
*/
gboolean
@@ -834,6 +857,10 @@ gs_plugin_review_submit (GsPlugin *plugin,
json_generator_set_root (json_generator, json_root);
data = json_generator_to_data (json_generator, NULL);
+ /* clear cache */
+ if (!gs_plugin_xdg_app_reviews_invalidate_cache (review, error))
+ return FALSE;
+
/* POST */
uri = g_strdup_printf ("%s/submit", plugin->priv->review_server);
return gs_plugin_xdg_app_reviews_json_post (plugin->priv->session,
@@ -841,29 +868,6 @@ gs_plugin_review_submit (GsPlugin *plugin,
}
/**
- * gs_plugin_xdg_app_reviews_invalidate_cache:
- */
-static gboolean
-gs_plugin_xdg_app_reviews_invalidate_cache (GsReview *review, GError **error)
-{
- g_autofree gchar *cachedir = NULL;
- g_autofree gchar *cachefn = NULL;
- g_autoptr(GFile) cachefn_file = NULL;
-
- /* look in the cache */
- cachedir = gs_utils_get_cachedir ("reviews", error);
- if (cachedir == NULL)
- return FALSE;
- cachefn = g_strdup_printf ("%s/%s.json",
- cachedir,
- gs_review_get_metadata_item (review, "app_id"));
- cachefn_file = g_file_new_for_path (cachefn);
- if (!g_file_query_exists (cachefn_file, NULL))
- return TRUE;
- return g_file_delete (cachefn_file, NULL, error);
-}
-
-/**
* gs_plugin_xdg_app_reviews_vote:
*/
static gboolean
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]