Ignore:
Timestamp:
09/04/12 23:57:13 (10 years ago)
Author:
Philipp Spitzer <philipp@…>
Branches:
master, qt5
Children:
1f12b6b
Parents:
8d6798d
Message:

Restructured the SqlEngine?. Not yet finished (see "TODO" in the code).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/sql/schedulexmlparser.cpp

    r8d6798d r61346c9  
    2828#include <QDebug>
    2929
    30 ScheduleXmlParser::ScheduleXmlParser(QObject *aParent)
    31     : QObject(aParent)
    32 {
     30ScheduleXmlParser::ScheduleXmlParser(SqlEngine* sqlEngine, QObject *aParent): QObject(aParent),sqlEngine(sqlEngine) {
    3331}
     32
    3433
    3534void ScheduleXmlParser::parseData(const QByteArray &aData, const QString& url, int conferenceId)
     
    4645    QDomElement scheduleElement = document.firstChildElement("schedule");
    4746
    48     SqlEngine::beginTransaction();
     47    sqlEngine->beginTransaction();
    4948
    5049    QString conference_title;
     
    6766            conference["timeslot_duration"] = conferenceElement.firstChildElement("timeslot_duration").text(); // time
    6867            conference["url"] = url;
    69             SqlEngine::addConferenceToDB(conference, conferenceId);
     68            sqlEngine->addConferenceToDB(conference, conferenceId);
    7069            conferenceId = conference["id"].toInt();
    7170            conference_title = conference["title"];
     
    105104                        room["event_id"] = eventElement.attribute("id");
    106105                        room["conference_id"] = QString::number(conferenceId,10);
    107                         SqlEngine::addRoomToDB(room);
     106                        sqlEngine->addRoomToDB(room);
    108107
    109108                        // process event's nodes
     
    123122                        event["abstract"] = eventElement.firstChildElement("abstract").text(); // string
    124123                        event["description"] = eventElement.firstChildElement("description").text(); // string
    125                         SqlEngine::addEventToDB(event);
     124                        sqlEngine->addEventToDB(event);
    126125                        // process persons' nodes
    127126                        QDomElement personsElement = eventElement.firstChildElement("persons");
     
    133132                            person["event_id"] = eventElement.attribute("id");
    134133                            person["conference_id"] = QString::number(conferenceId, 10);
    135                             SqlEngine::addPersonToDB(person);
     134                            sqlEngine->addPersonToDB(person);
    136135                        }
    137136                        // process links' nodes
     
    144143                            link["event_id"] = eventElement.attribute("id");
    145144                            link["conference_id"] = QString::number(conferenceId, 10);
    146                             SqlEngine::addLinkToDB(link);
     145                            sqlEngine->addLinkToDB(link);
    147146                        }
    148147                        // emit signal to inform the user about the current status (how many events are parsed so far - expressed in %)
     
    154153        } // parsing day elements
    155154    } // schedule element
    156     SqlEngine::commitTransaction();
     155    sqlEngine->commitTransaction();
    157156    if (!conference_title.isNull()) {
    158157        emit parsingScheduleEnd(conference_title);
Note: See TracChangeset for help on using the changeset viewer.