1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-08-19 04:11:46 +02:00

revert to storing QStringList in cache

This commit is contained in:
Stefan Derkits
2014-10-19 16:20:54 +02:00
parent 06f14b3012
commit 2164c1ce51
3 changed files with 13 additions and 19 deletions

View File

@@ -1148,10 +1148,7 @@ Tomahawk::EchonestControl::insertMoodsStylesAndGenres()
}
else
{
foreach( const Echonest::Genre& genre, EchonestGenerator::genres() )
{
src.append( genre.name() );
}
src = EchonestGenerator::genres();
}
QComboBox* combo = qobject_cast< QComboBox* >( m_input.data() );

View File

@@ -39,7 +39,7 @@ using namespace Tomahawk;
QStringList EchonestGenerator::s_moods = QStringList();
QStringList EchonestGenerator::s_styles = QStringList();
Echonest::Genres EchonestGenerator::s_genres = Echonest::Genres();
QStringList EchonestGenerator::s_genres = QStringList();
QNetworkReply* EchonestGenerator::s_moodsJob = 0;
QNetworkReply* EchonestGenerator::s_stylesJob = 0;
QNetworkReply* EchonestGenerator::s_genresJob = 0;
@@ -705,12 +705,11 @@ EchonestGenerator::loadGenres()
{
if ( s_genres_lock.tryLockForRead() )
{
qRegisterMetaTypeStreamOperators< Echonest::Genre >( "enGenre" );
QVariant genres = TomahawkUtils::Cache::instance()->getData( "EchonestGenerator", "genres" );
s_genres_lock.unlock();
if ( genres.isValid() && genres.canConvert< Echonest::Genres >() )
if ( genres.isValid() && genres.canConvert< QStringList >() )
{
s_genres = genres.value< Echonest::Genres >();
s_genres = genres.toStringList();
}
else
{
@@ -786,7 +785,7 @@ EchonestGenerator::stylesReceived()
emit stylesSaved();
}
Echonest::Genres
QStringList
EchonestGenerator::genres()
{
return s_genres;
@@ -801,7 +800,11 @@ EchonestGenerator::genresReceived()
try
{
s_genres = Echonest::Genre::parseList( r );
Echonest::Genres genrelist = Echonest::Genre::parseList( r );
foreach( const Echonest::Genre& genre, genrelist )
{
s_genres << genre.name();
}
}
catch( Echonest::ParseError& e )
{
@@ -809,8 +812,7 @@ EchonestGenerator::genresReceived()
}
s_genresJob = 0;
qRegisterMetaTypeStreamOperators< Echonest::Genre >( "enGenre" );
TomahawkUtils::Cache::instance()->putData( "EchonestGenerator", 1209600000 /* 2 weeks */, "genres", QVariant::fromValue< Echonest::Genres >( s_genres ) );
TomahawkUtils::Cache::instance()->putData( "EchonestGenerator", 1209600000 /* 2 weeks */, "genres", QVariant::fromValue< QStringList >( s_genres ) );
s_genres_lock.unlock();
emit genresSaved();
}

View File

@@ -90,7 +90,7 @@ public:
static QStringList styles();
static QStringList moods();
static Echonest::Genres genres();
static QStringList genres();
static QStringList userCatalogs();
static QByteArray catalogId( const QString& collectionId );
@@ -135,7 +135,7 @@ private:
static QStringList s_styles;
static QStringList s_moods;
static Echonest::Genres s_genres;
static QStringList s_genres;
static QNetworkReply* s_stylesJob;
static QNetworkReply* s_moodsJob;
static QNetworkReply* s_genresJob;
@@ -149,10 +149,5 @@ private:
};
//TODO: this code should be move to libechonest
//TODO: (delete this when libechonest 2.4 is out)
QDataStream& operator<<(QDataStream& out, const Echonest::Genre& genre);
QDataStream& operator>>(QDataStream& in, Echonest::Genre& genre);
#endif