2 * Copyright (C) 2011, Jamie Thompson
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public
6 * License as published by the Free Software Foundation; either
7 * version 3 of the License, or (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * General Public License for more details.
14 * You should have received a copy of the GNU General Public
15 * License along with this program; If not, see
16 * <http://www.gnu.org/licenses/>.
19 #include "AllBackends.h"
22 #include "RtcomEventLogger.h"
25 #include <QSharedPointer>
27 using namespace DBBackends;
29 AllBackends::AllBackends(const Settings &settings) :
31 m_Backends(QList<QSharedPointer<iDBBackend> >()
32 << QSharedPointer<iDBBackend>(new RtcomEventLogger(CurrentSettings()))
33 << QSharedPointer<iDBBackend>(new Fmms(CurrentSettings())))
37 void AllBackends::Process(EventProcessors::iEventProcessor &eventProcessor)
39 foreach(QSharedPointer<iDBBackend> backend, Backends())
40 backend->Process(eventProcessor);
43 void AllBackends::PreInsert()
45 foreach(QSharedPointer<iDBBackend> backend, Backends())
49 void AllBackends::Insert(EventTypes::iEvent &event, const NumberToNameLookup &numberToNameLookup)
51 foreach(QSharedPointer<iDBBackend> backend, Backends())
52 backend->Insert(event, numberToNameLookup);
55 void AllBackends::PostInsert()
57 foreach(QSharedPointer<iDBBackend> backend, Backends())
58 backend->PostInsert();