[grilo-plugins] tmdb: Mark publication date as slow key
- From: Mathias Hasselmann <hasselmm src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [grilo-plugins] tmdb: Mark publication date as slow key
- Date: Mon, 3 Dec 2012 13:58:03 +0000 (UTC)
commit 5ce6b3ff23f25b731925383f73fe3fb8e13a3af2
Author: Mathias Hasselmann <mathias openismus com>
Date: Mon Dec 3 14:57:09 2012 +0100
tmdb: Mark publication date as slow key
The publication date is both available as fast key in the
movie details, but also as more detailed information as
regional release date. To avoid confusion in clients that do
a fast resolve first and merge slow data later we hide the
fast version.
src/tmdb/grl-tmdb.c | 26 ++++++++++----------------
1 files changed, 10 insertions(+), 16 deletions(-)
---
diff --git a/src/tmdb/grl-tmdb.c b/src/tmdb/grl-tmdb.c
index 91aaab8..15b8065 100644
--- a/src/tmdb/grl-tmdb.c
+++ b/src/tmdb/grl-tmdb.c
@@ -45,8 +45,6 @@ GRL_LOG_DOMAIN(tmdb_log_domain);
#define SHOULD_RESOLVE(key) \
g_hash_table_contains (closure->keys, GRLKEYID_TO_POINTER ((key)))
-#define SHOULD_RESOLVE_SLOW(key) \
- (closure->slow && SHOULD_RESOLVE (key))
enum {
PROP_0,
@@ -240,8 +238,6 @@ grl_tmdb_source_init (GrlTmdbSource *self)
g_hash_table_add (self->priv->supported_keys,
GRLKEYID_TO_POINTER (GRL_METADATA_KEY_RATING));
g_hash_table_add (self->priv->supported_keys,
- GRLKEYID_TO_POINTER (GRL_METADATA_KEY_PUBLICATION_DATE));
- g_hash_table_add (self->priv->supported_keys,
GRLKEYID_TO_POINTER (GRL_TMDB_METADATA_KEY_TMDB_ID));
/* Slow keys */
@@ -268,6 +264,14 @@ grl_tmdb_source_init (GrlTmdbSource *self)
g_hash_table_add (self->priv->slow_keys,
GRLKEYID_TO_POINTER (GRL_METADATA_KEY_DIRECTOR));
+ /* The publication date is both available as fast key in the movie details,
+ * but also as more detailed information as regional release date. To avoid
+ * confusion in clients that do a fast resolve first and merge slow data
+ * later we hide the fast version.
+ */
+ g_hash_table_add (self->priv->slow_keys,
+ GRLKEYID_TO_POINTER (GRL_METADATA_KEY_PUBLICATION_DATE));
+
self->priv->wc = grl_net_wc_new ();
grl_net_wc_set_throttling (self->priv->wc, 1);
@@ -660,7 +664,7 @@ on_request_ready (GObject *source,
{
if (SHOULD_RESOLVE (GRL_METADATA_KEY_REGION) ||
SHOULD_RESOLVE (GRL_METADATA_KEY_CERTIFICATE) ||
- SHOULD_RESOLVE_SLOW (GRL_METADATA_KEY_PUBLICATION_DATE)) {
+ SHOULD_RESOLVE (GRL_METADATA_KEY_PUBLICATION_DATE)) {
values = grl_tmdb_request_get_list_with_filter (request,
"$.countries[*]",
NULL);
@@ -773,16 +777,6 @@ on_search_ready (GObject *source,
closure->id = g_value_get_int64 (value);
g_value_unset (value);
- if (SHOULD_RESOLVE (GRL_METADATA_KEY_PUBLICATION_DATE)) {
- value = grl_tmdb_request_get (request, "$.results[0].release_date");
- if (value != NULL) {
- GDateTime *pubdate = parse_date (g_value_get_string (value));
- grl_media_set_publication_date (closure->rs->media, pubdate);
- g_date_time_unref (pubdate);
- g_value_unset (value);
- }
- }
-
if (SHOULD_RESOLVE (GRL_METADATA_KEY_RATING)) {
value = grl_tmdb_request_get (request, "$.results[0].vote_average");
if (value != NULL) {
@@ -882,7 +876,7 @@ on_search_ready (GObject *source,
if (SHOULD_RESOLVE (GRL_METADATA_KEY_REGION) ||
SHOULD_RESOLVE (GRL_METADATA_KEY_CERTIFICATE) ||
- SHOULD_RESOLVE_SLOW (GRL_METADATA_KEY_PUBLICATION_DATE))
+ SHOULD_RESOLVE (GRL_METADATA_KEY_PUBLICATION_DATE))
g_queue_push_tail (closure->pending_requests,
create_and_run_request (self,
closure,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]