2 * Copyright (C) 2010 Ixonos Plc.
3 * Copyright (C) 2011 Philipp Spitzer, gregor herrmann
5 * This file is part of ConfClerk.
7 * ConfClerk is free software: you can redistribute it and/or modify it
8 * under the terms of the GNU General Public License as published by the Free
9 * Software Foundation, either version 2 of the License, or (at your option)
12 * ConfClerk is distributed in the hope that it will be useful, but
13 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
14 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
17 * You should have received a copy of the GNU General Public License along with
18 * ConfClerk. If not, see <http://www.gnu.org/licenses/>.
28 class SqlEngine : public QObject
32 SqlEngine(QObject *aParent = NULL);
34 static void initialize();
35 static void addConferenceToDB(QHash<QString,QString> &aConference);
36 static void addEventToDB(QHash<QString,QString> &aEvent);
37 static void addPersonToDB(QHash<QString,QString> &aPerson);
38 static void addLinkToDB(QHash<QString,QString> &aLink);
39 static void addRoomToDB(QHash<QString,QString> &aRoom);
40 static void deleteConference(int id);
42 static bool beginTransaction();
43 static bool commitTransaction();
45 // search Events for ....
46 static int searchEvent(int conferenceId, const QHash<QString,QString> &columns, const QString &keyword);
48 static QString login(const QString &aDatabaseType, const QString &aDatabaseName);
49 static bool execQuery(QSqlDatabase &aDatabase, const QString &aQuery);
50 static bool execQueryWithParameter(QSqlDatabase &aDatabase, const QString &aQuery, const QHash<QString, QVariant>& params);
52 static void checkConferenceMap(QSqlDatabase &aDatabase);
55 #endif /* SQLENGINE_H */