Mercurial > audlegacy-plugins
diff src/scrobbler/scrobbler.c @ 1443:f4d8082668c1
scrobbler: tuple API update
author | William Pitcock <nenolod@atheme-project.org> |
---|---|
date | Fri, 10 Aug 2007 10:03:10 -0500 |
parents | 93dee80e9365 |
children | db616ccdd40c |
line wrap: on
line diff
--- a/src/scrobbler/scrobbler.c Fri Aug 10 09:49:37 2007 -0500 +++ b/src/scrobbler/scrobbler.c Fri Aug 10 10:03:10 2007 -0500 @@ -12,7 +12,7 @@ #include "settings.h" #include <glib.h> -#include <audacious/titlestring.h> +#include <audacious/tuple.h> #include <audacious/util.h> #define SCROBBLER_HS_URL "http://post.audioscrobbler.com" @@ -124,17 +124,18 @@ free(item); } -static item_t *q_put(TitleInput *tuple, int len) +static item_t *q_put(Tuple *tuple, int len) { item_t *item; + const gchar *album; item = malloc(sizeof(item_t)); - item->artist = fmt_escape(tuple->performer); - item->title = fmt_escape(tuple->track_name); + item->artist = fmt_escape(tuple_get_string(tuple, "artist")); + item->title = fmt_escape(tuple_get_string(tuple, "title")); snprintf(item->utctime, sizeof(item->utctime), "%ld", time(NULL)); snprintf(item->len, sizeof(item->len), "%d", len); - snprintf(item->track, sizeof(item->track), "%d", tuple->track_number); + snprintf(item->track, sizeof(item->track), "%d", tuple_get_int(tuple, "track-number")); #ifdef NOTYET if(tuple->mb == NULL) @@ -145,10 +146,10 @@ item->mb = fmt_escape((char*)tuple->mb); #endif - if(tuple->album_name == NULL) + if((album = tuple_get_string(tuple, "album"))) item->album = fmt_escape(""); else - item->album = fmt_escape((char*)tuple->album_name); + item->album = fmt_escape((char*) album); q_nitems++; @@ -655,7 +656,7 @@ return i; } -static int sc_submit_np(TitleInput *tuple) +static int sc_submit_np(Tuple *tuple) { CURL *curl; /* struct HttpPost *post = NULL , *last = NULL; */ @@ -672,8 +673,10 @@ /*cfa(&post, &last, "debug", "failed");*/ entry = g_strdup_printf("s=%s&a=%s&t=%s&b=%s&l=%d&n=%d&m=", sc_session_id, - tuple->performer, tuple->track_name, tuple->album_name ? tuple->album_name : "", - tuple->length / 1000, tuple->track_number); + tuple_get_string(tuple, "artist"), + tuple_get_string(tuple, "title"), + tuple_get_string(tuple, "album") ? tuple_get_string(tuple, "album") : "", + tuple_get_int(tuple, "length") / 1000, tuple_get_int(tuple, "track-number")); curl_easy_setopt(curl, CURLOPT_POSTFIELDS, (char *) entry); memset(sc_curl_errbuf, 0, sizeof(sc_curl_errbuf)); @@ -878,15 +881,15 @@ ptr1 = ptr2 + 1; { - TitleInput *tuple = bmp_title_input_new(); + Tuple *tuple = tuple_new(); - tuple->performer = g_strdup(xmms_urldecode_plain(artist)); - tuple->track_name = g_strdup(xmms_urldecode_plain(title)); - tuple->album_name = g_strdup(xmms_urldecode_plain(album)); + tuple_associate_string(tuple, "artist", xmms_urldecode_plain(artist)); + tuple_associate_string(tuple, "title", xmms_urldecode_plain(title)); + tuple_associate_string(tuple, "album", xmms_urldecode_plain(album)); item = q_put(tuple, atoi(len)); - bmp_title_input_free(tuple); + mowgli_object_unref(tuple); } pdebug(fmt_vastr("a[%d]=%s t[%d]=%s l[%d]=%s i[%d]=%s m[%d]=%s b[%d]=%s", @@ -1018,7 +1021,7 @@ pdebug("scrobbler starting up", DEBUG); } -void sc_addentry(GMutex *mutex, TitleInput *tuple, int len) +void sc_addentry(GMutex *mutex, Tuple *tuple, int len) { g_mutex_lock(mutex);