IPodScrobbleCache::IPodScrobbleCache( const QString& path ) { m_path = path; QDomDocument xml; read( xml ); m_uid = xml.documentElement().attribute( "uid" ); QMutableListIterator<Track> i( m_tracks ); while (i.hasNext()) if (!Scrobble( i.next() ).isValid()) i.remove(); }
void ScrobbleCache::add( const QList<Track>& tracks ) { foreach (const Track& track, tracks) { Scrobble::Invalidity invalidity; if (!Scrobble(track).isValid( &invalidity )) { qWarning() << invalidity; } else if (track.isNull()) qDebug() << "Will not cache an empty track"; else if (!m_tracks.contains( track )) m_tracks += track; }