From 7167ce41b61d2ba2cdb526777a4233eb84a3b66a Mon Sep 17 00:00:00 2001 From: Unit 193 Date: Sat, 6 Dec 2014 17:33:25 -0500 Subject: Imported Upstream version 2.99.6 --- .../coreSQLiteStudio/plugins/dbpluginsqlite3.cpp | 47 ++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 SQLiteStudio3/coreSQLiteStudio/plugins/dbpluginsqlite3.cpp (limited to 'SQLiteStudio3/coreSQLiteStudio/plugins/dbpluginsqlite3.cpp') diff --git a/SQLiteStudio3/coreSQLiteStudio/plugins/dbpluginsqlite3.cpp b/SQLiteStudio3/coreSQLiteStudio/plugins/dbpluginsqlite3.cpp new file mode 100644 index 0000000..0f16098 --- /dev/null +++ b/SQLiteStudio3/coreSQLiteStudio/plugins/dbpluginsqlite3.cpp @@ -0,0 +1,47 @@ +#include "dbpluginsqlite3.h" +#include "db/dbsqlite3.h" +#include "common/unused.h" +#include + +Db* DbPluginSqlite3::getInstance(const QString& name, const QString& path, const QHash& options, QString* errorMessage) +{ + UNUSED(errorMessage); + Db* db = new DbSqlite3(name, path, options); + + if (!db->openForProbing()) + { + delete db; + return nullptr; + } + + SqlQueryPtr results = db->exec("SELECT * FROM sqlite_master"); + if (results->isError()) + { + delete db; + return nullptr; + } + + db->closeQuiet(); + return db; +} + +QString DbPluginSqlite3::getLabel() const +{ + return "SQLite 3"; +} + +QList DbPluginSqlite3::getOptionsList() const +{ + return QList(); +} + +QString DbPluginSqlite3::generateDbName(const QVariant& baseValue) +{ + QFileInfo file(baseValue.toString()); + return file.baseName(); +} + +bool DbPluginSqlite3::checkIfDbServedByPlugin(Db* db) const +{ + return (db && dynamic_cast(db)); +} -- cgit v1.2.3