void env_stats(struct mpd_stats *stats) { char *envstr; time_t t; char date[DEFAULT_DATE_FORMAT_SIZE] = { 0 }; t = mpd_stats_get_db_update_time(stats); strftime(date, DEFAULT_DATE_FORMAT_SIZE, DEFAULT_DATE_FORMAT, localtime(&t)); g_setenv("MPD_DATABASE_UPDATE_TIME", date, 1); envstr = g_strdup_printf("%d", mpd_stats_get_number_of_artists(stats)); g_setenv("MPD_DATABASE_ARTISTS", envstr, 1); g_free(envstr); envstr = g_strdup_printf("%d", mpd_stats_get_number_of_albums(stats)); g_setenv("MPD_DATABASE_ALBUMS", envstr, 1); g_free(envstr); envstr = g_strdup_printf("%d", mpd_stats_get_number_of_songs(stats)); g_setenv("MPD_DATABASE_SONGS", envstr, 1); g_free(envstr); envstr = g_strdup_printf("%lu", mpd_stats_get_play_time(stats)); g_setenv("MPD_DATABASE_PLAY_TIME", envstr, 1); g_free(envstr); envstr = g_strdup_printf("%lu", mpd_stats_get_uptime(stats)); g_setenv("MPD_DATABASE_UPTIME", envstr, 1); g_free(envstr); envstr = g_strdup_printf("%lu", mpd_stats_get_db_play_time(stats)); g_setenv("MPD_DATABASE_DB_PLAY_TIME", envstr, 1); g_free(envstr); }
static int lmpdstats_index(lua_State *L) { const char *key; struct mpd_stats **stats; stats = luaL_checkudata(L, 1, MPD_STATS_T); key = luaL_checkstring(L, 2); assert(*stats != NULL); if (strncmp(key, "number_of_artists", 18) == 0) { lua_pushinteger(L, mpd_stats_get_number_of_artists(*stats)); } else if (strncmp(key, "number_of_albums", 17) == 0) { lua_pushinteger(L, mpd_stats_get_number_of_albums(*stats)); } else if (strncmp(key, "number_of_songs", 16) == 0) { lua_pushinteger(L, mpd_stats_get_number_of_songs(*stats)); } else if (strncmp(key, "uptime", 7) == 0) { lua_pushinteger(L, mpd_stats_get_uptime(*stats)); } else if (strncmp(key, "db_update_time", 15) == 0) { lua_pushinteger(L, mpd_stats_get_uptime(*stats)); } else if (strncmp(key, "play_time", 10) == 0) { lua_pushinteger(L, mpd_stats_get_play_time(*stats)); } else if (strncmp(key, "db_play_time", 13) == 0) { lua_pushinteger(L, mpd_stats_get_db_play_time(*stats)); } else return luaL_error(L, "Invalid key `%s'", key); return 1; }
void Mpd_status::assign_stats(struct mpd_stats * stats) { artists_count = mpd_stats_get_number_of_artists(stats); albums_count = mpd_stats_get_number_of_albums(stats); songs_count = mpd_stats_get_number_of_songs(stats); uptime = mpd_stats_get_uptime(stats); db_update_time = mpd_stats_get_db_update_time(stats); playtime = mpd_stats_get_play_time(stats); db_playtime = mpd_stats_get_db_play_time(stats); }
int cmd_stats(gcc_unused int argc, gcc_unused char **argv, struct mpd_connection *conn) { struct mpd_stats *stats = mpd_run_stats(conn); if (stats == NULL) printErrorAndExit(conn); printf("Artists: %6d\n", mpd_stats_get_number_of_artists(stats)); printf("Albums: %6d\n", mpd_stats_get_number_of_albums(stats)); printf("Songs: %6d\n", mpd_stats_get_number_of_songs(stats)); printf("\n"); printf("Play Time: %s\n", DHMS(mpd_stats_get_play_time(stats))); printf("Uptime: %s\n", DHMS(mpd_stats_get_uptime(stats))); time_t t = mpd_stats_get_db_update_time(stats); printf("DB Updated: %s", ctime(&t)); /* no \n needed */ printf("DB Play Time: %s\n", DHMS(mpd_stats_get_db_play_time(stats))); mpd_stats_free(stats); return 0; }