diff options
author | Uwe Klotz <uwe_klotz@web.de> | 2017-06-17 13:52:59 +0200 |
---|---|---|
committer | Uwe Klotz <uwe_klotz@web.de> | 2017-06-17 13:52:59 +0200 |
commit | a83585bf2234f65cd1d41a42885673d2123dcc77 (patch) | |
tree | af89cc7d32dd7d2c7c5fae36fc77bf12dc94292a /src/library/library.cpp | |
parent | c1823edc3f3db362ae75e116c5c9a63dff45f49c (diff) |
Move initialization of database from Library to MainWindow
Diffstat (limited to 'src/library/library.cpp')
-rw-r--r-- | src/library/library.cpp | 28 |
1 files changed, 5 insertions, 23 deletions
diff --git a/src/library/library.cpp b/src/library/library.cpp index e7e779a32e..a68f740e70 100644 --- a/src/library/library.cpp +++ b/src/library/library.cpp @@ -62,11 +62,11 @@ const int Library::kDefaultRowHeightPx = 20; Library::Library( QObject* parent, UserSettingsPointer pConfig, + mixxx::DbConnectionPoolPtr pDbConnectionPool, PlayerManagerInterface* pPlayerManager, RecordingManager* pRecordingManager) : m_pConfig(pConfig), - m_mixxxDb(pConfig), - m_dbConnectionPooler(m_mixxxDb.connectionPool()), + m_pDbConnectionPool(pDbConnectionPool), m_pSidebarModel(new SidebarModel(parent)), m_pTrackCollection(new TrackCollection(pConfig)), m_pLibraryControl(new LibraryControl(this)), @@ -74,28 +74,10 @@ Library::Library( m_pPlaylistFeature(nullptr), m_pCrateFeature(nullptr), m_pAnalysisFeature(nullptr), - m_scanner(m_mixxxDb.connectionPool(), m_pTrackCollection, pConfig) { - kLogger.info() << "Opening datbase connection"; - - const mixxx::DbConnectionPooled dbConnectionPooled(m_mixxxDb.connectionPool()); - if (!dbConnectionPooled) { - QMessageBox::critical(0, tr("Cannot open database"), - tr("Unable to establish a database connection.\n" - "Mixxx requires QT with SQLite support. Please read " - "the Qt SQL driver documentation for information on how " - "to build it.\n\n" - "Click OK to exit."), QMessageBox::Ok); - // TODO(XXX) something a little more elegant - exit(-1); - } - QSqlDatabase dbConnection(dbConnectionPooled); - DEBUG_ASSERT(dbConnection.isOpen()); + m_scanner(pDbConnectionPool, m_pTrackCollection, pConfig) { - kLogger.info() << "Initializing or upgrading database schema"; - if (!MixxxDb::initDatabaseSchema(dbConnection)) { - // TODO(XXX) something a little more elegant - exit(-1); - } + const mixxx::DbConnectionPooled dbConnectionPooled(pDbConnectionPool); + QSqlDatabase dbConnection(dbConnectionPooled); // TODO(XXX): Add a checkbox in the library preferences for checking // and repairing the database on the next restart of the application. |