X-Git-Url: https://vcs.maemo.org/git/?a=blobdiff_plain;f=src%2Fmvs-minfo-provider-service.c;h=1e6e0499613843828018375ab7b6397c966674d3;hb=853c455305e6dd58e06133db9e743e9290275e71;hp=f35150a4632fc95fcd8bc57532b3402bc8df6d3a;hpb=05577ec7ba386dc324199f9a446c4aa6367f18c1;p=maevies diff --git a/src/mvs-minfo-provider-service.c b/src/mvs-minfo-provider-service.c index f35150a..1e6e049 100644 --- a/src/mvs-minfo-provider-service.c +++ b/src/mvs-minfo-provider-service.c @@ -20,6 +20,8 @@ #include "mvs-minfo-provider-service.h" #include "mvs-minfo-provider.h" +#include "mvs-tmdb-movie-service.h" +#include "mvs-tmdb-movie.h" #define MINFO_PROVIDER_SERVICE_OBJECT_PATH "/MInfoProvider" #define MINFO_PROVIDER_SERVICE_NAME "com.simonpena.maevies.minfoprovider" @@ -60,11 +62,30 @@ mvs_minfo_provider_service_query (MvsMInfoProviderService *self, #include "mvs-minfo-provider-service-glue.h" static void -response_received_cb (MvsMInfoProvider *provider, gpointer response, +response_received_cb (MvsMInfoProvider *provider, GList *list, gpointer user_data) { MvsMInfoProviderService *self = MVS_MINFO_PROVIDER_SERVICE (user_data); - g_signal_emit (self, mvs_minfo_provider_service_signals[RESPONSE_RECEIVED], 0); + MvsTMDBMovieService *movie = NULL; + GError *error = NULL; + GList *iter = NULL; + gchar **object_paths= g_new0 (gchar*, g_list_length (list) + 1); + guint i = 0; + + for (iter = list; iter; iter = iter->next) { + if (MVS_IS_TMDB_MOVIE (iter->data)) { + MvsTmdbMovie *tmdb_movie = MVS_TMDB_MOVIE (iter->data); + + mvs_tmdb_movie_print (tmdb_movie); + movie = mvs_tmdb_movie_service_new (self->priv->connection, tmdb_movie, i); + object_paths[i] = g_strdup_printf ("/TMDBMovie/%d", i); + } + i++; + } + object_paths[i] = NULL; + + g_signal_emit (self, mvs_minfo_provider_service_signals[RESPONSE_RECEIVED], 0, object_paths); + g_strfreev (object_paths); } static void @@ -155,9 +176,10 @@ mvs_minfo_provider_service_class_init (MvsMInfoProviderServiceClass *klass) 0, NULL, NULL, - g_cclosure_marshal_VOID__VOID, + g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, - 0, + 1, + G_TYPE_STRV, NULL); }