]> Some of my projects - localmylist.git/commitdiff
Remove most of the old read* helper functions.
authorAPTX <marek321@gmail.com>
Mon, 22 Apr 2013 01:53:50 +0000 (03:53 +0200)
committerAPTX <marek321@gmail.com>
Mon, 22 Apr 2013 01:53:50 +0000 (03:53 +0200)
localmylist/database.cpp
localmylist/database.h

index 1ec139526d5a462946fb15b4ca9554c4e05720b7..efa646ae14acd942153038a711805315eb0c6160 100644 (file)
@@ -449,9 +449,12 @@ QList<Episode> Database::getEpisodes(int aid)
        if (!exec(q))
                return episodes;
 
+       QSqlResultIterator it(q);
        while (q.next())
        {
-               episodes << readEpisode(q);
+               Episode e;
+               readEpisodeData(it, e);
+               episodes << e;
        }
 
        q.finish();
@@ -475,8 +478,11 @@ Episode Database::getEpisode(int eid)
        if (!exec(q))
                return e;
 
-       if (q.next())
-               e = readEpisode(q);
+       if (!q.next())
+               return e;
+
+       QSqlResultIterator it(q);
+       readEpisodeData(it, e);
 
        q.finish();
 
@@ -503,8 +509,11 @@ Episode Database::getEpisode(int aid, int epno, const QString &type)
        if (!exec(q))
                return e;
 
-       if (q.next())
-               e = readEpisode(q);
+       if (!q.next())
+               return e;
+
+       QSqlResultIterator it(q);
+       readEpisodeData(it, e);
 
        q.finish();
 
@@ -557,10 +566,13 @@ File Database::getFileByPath(const QString &path)
        q.bindValue(":path", mappedPath);
 
        if (!exec(q))
-               return File();
+               return f;
 
-       if (q.next())
-               f = readFile(q);
+       if (!q.next())
+               return f;
+
+       QSqlResultIterator it(q);
+       readFileData(it, f);
 
        q.finish();
 
@@ -607,8 +619,11 @@ File Database::getFileByTitle(const QString &title, int epno)
        if (!exec(q))
                return f;
 
-       if (q.next())
-               f = readFile(q);
+       if (!q.next())
+               return f;
+
+       QSqlResultIterator it(q);
+       readFileData(it, f);
 
        q.finish();
 
@@ -940,8 +955,11 @@ UnknownFile Database::getUnknownFile(const QByteArray &ed2k, qint64 size)
        if (!exec(q))
                return f;
 
-       if (q.next())
-               f = readUnknownFile(q);
+       if (!q.next())
+               return f;
+
+       QSqlResultIterator it(q);
+       readUnknownFileData(it, f);
 
        q.finish();
 
@@ -962,8 +980,11 @@ UnknownFile Database::getUnknownFileByPath(const QString &path)
        if (!exec(q))
                return f;
 
-       if (q.next())
-               f = readUnknownFile(q);
+       if (!q.next())
+               return f;
+
+       QSqlResultIterator it(q);
+       readUnknownFileData(it, f);
 
        q.finish();
 
@@ -1674,83 +1695,6 @@ OpenFileData Database::readOpenFileData(QSqlQuery &q)
        return data;
 }
 
-Episode Database::readEpisode(QSqlQuery &q)
-{
-       Episode e;
-       e.eid = q.value(0).toInt();
-       e.aid = q.value(1).toInt();
-       e.entryAdded = q.value(2).toDateTime();
-       e.anidbUpdate = q.value(3).toDateTime();
-       e.entryUpdate = q.value(4).toDateTime();
-       e.myUpdate = q.value(5).toDateTime();
-       e.epno = q.value(6).toInt();
-       e.titleEnglish = q.value(7).toString();
-       e.titleRomaji = q.value(8).toString();
-       e.titleKanji = q.value(9).toString();
-       e.length = q.value(10).toInt();
-       e.airdate = q.value(11).toDateTime();
-       e.state = q.value(12).toInt();
-       e.type = q.value(13).toString();
-       e.recap = q.value(14).toBool();
-       e.rating = q.value(15).toDouble();
-       e.votes = q.value(16).toInt();
-       e.myVote = q.value(17).toDouble();
-       e.myVoteDate = q.value(18).toDateTime();
-
-       return e;
-}
-
-File Database::readFile(QSqlQuery &q)
-{
-       File f;
-       f.fid = q.value(0).toInt();
-       f.eid = q.value(1).toInt();
-       f.aid = q.value(2).toInt();
-       f.gid = q.value(3).toInt();
-       f.entryAdded = q.value(4).toDateTime();
-       f.anidbUpdate = q.value(5).toDateTime();
-       f.entryUpdate = q.value(6).toDateTime();
-       f.myUpdate = q.value(7).toDateTime();
-       f.ed2k = q.value(8).toByteArray();
-       f.size = q.value(9).toLongLong();
-       f.length = q.value(10).toInt();
-       f.extension = q.value(11).toString();
-       f.groupName = q.value(12).toString();
-       f.groupNameShort = q.value(13).toString();
-       f.crc = q.value(14).toString();
-       f.releaseDate = q.value(15).toDateTime();
-       f.version = q.value(16).toInt();
-       f.censored = q.value(17).toBool();
-       f.source = q.value(18).toString();
-       f.quality = q.value(20).toString();
-       f.resolution = q.value(21).toString();
-       f.videoCodec = q.value(22).toString();
-       f.audioCodec = q.value(23).toString();
-       f.audioLanguage = q.value(24).toString();
-       f.subtitleLanguage = q.value(25).toString();
-       f.aspectRatio = q.value(26).toString();
-       f.myWatched = q.value(27).toDateTime();
-       f.myState = q.value(28).toInt();
-       f.myFileState = q.value(29).toInt();
-       f.myStorage = q.value(30).toString();
-       f.mySource = q.value(31).toString();
-       f.myOther = q.value(32).toString();
-
-       return f;
-}
-
-UnknownFile Database::readUnknownFile(QSqlQuery &q)
-{
-       UnknownFile f;
-
-       f.ed2k = q.value(0).toByteArray();
-       f.size = q.value(1).toLongLong();
-       f.hostId = q.value(2).toInt();
-       f.path = q.value(3).toString();
-
-       return f;
-}
-
 QSqlQuery &Database::prepare(const char *const sql)
 {
        if (!isConnected())
index d6464b446d67b21b4d27cc5d2ed072cd6c8d7d5f..0cab62fca703e4563ddccf480b0713f6b80b302c 100644 (file)
@@ -192,9 +192,6 @@ private:
        bool retryExec(QSqlQuery &query, bool prepared);
 
        OpenFileData readOpenFileData(QSqlQuery &q);
-       Episode readEpisode(QSqlQuery &q);
-       File readFile(QSqlQuery &q);
-       UnknownFile readUnknownFile(QSqlQuery &q);
 
        DatabaseInternal *d;
        DatabaseConnectionSettings m_connectionSettings;