aboutsummaryrefslogtreecommitdiffstats
path: root/Plugins/DbAndroid/dbandroid.h
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@ubuntu.com>2015-11-25 16:48:49 -0500
committerLibravatarUnit 193 <unit193@ubuntu.com>2015-11-25 16:48:49 -0500
commit7412693e086a7eafaa7ea861164caf523943e5fa (patch)
tree0aee322e40572df306b9813546c7a12b3093bcea /Plugins/DbAndroid/dbandroid.h
parent640196993d31cf5d6fdf36386990ec05f473a048 (diff)
parent8e640722c62692818ab840d50b3758f89a41a54e (diff)
Merge tag 'upstream/3.0.7'
Upstream version 3.0.7 # gpg: Signature made Wed 25 Nov 2015 04:48:48 PM EST using RSA key ID EBE9BD91 # gpg: Good signature from "Unit 193 <unit193@gmail.com>" # gpg: aka "Unit 193 <unit193@ninthfloor.org>" # gpg: aka "Unit 193 <unit193@ubuntu.com>" # gpg: aka "Unit 193 <unit193@ninthfloor.com>"
Diffstat (limited to 'Plugins/DbAndroid/dbandroid.h')
-rw-r--r--Plugins/DbAndroid/dbandroid.h63
1 files changed, 63 insertions, 0 deletions
diff --git a/Plugins/DbAndroid/dbandroid.h b/Plugins/DbAndroid/dbandroid.h
new file mode 100644
index 0000000..68893d0
--- /dev/null
+++ b/Plugins/DbAndroid/dbandroid.h
@@ -0,0 +1,63 @@
+#ifndef DBANDROID_H
+#define DBANDROID_H
+
+#include "dbandroid_global.h"
+#include "plugins/dbplugin.h"
+#include "plugins/genericplugin.h"
+#include "config_builder.h"
+
+class AdbManager;
+class DbAndroidConnectionFactory;
+
+CFG_CATEGORIES(DbAndroidConfig,
+ CFG_CATEGORY(DbAndroid,
+ CFG_ENTRY(QString, AdbPath, QString())
+ )
+)
+
+class DBANDROIDSHARED_EXPORT DbAndroid : public GenericPlugin, public DbPlugin
+{
+ Q_OBJECT
+ SQLITESTUDIO_PLUGIN("dbandroid.json")
+
+ public:
+ DbAndroid();
+
+ QString getLabel() const;
+ bool checkIfDbServedByPlugin(Db* db) const;
+ Db* getInstance(const QString& name, const QString& path, const QHash<QString, QVariant>& options, QString* errorMessage);
+ QList<DbPluginOption> getOptionsList() const;
+ QString generateDbName(const QVariant& baseValue);
+ bool init();
+ void deinit();
+ QString getCurrentAdb();
+ AdbManager* getAdbManager() const;
+ bool isAdbValid() const;
+ DbAndroidConnectionFactory* getConnectionFactory() const;
+
+ static_char* PASSWORD_OPT = "remote_access_password";
+
+ private:
+ void initAdb();
+ QString askForAdbPath();
+
+ AdbManager* adbManager = nullptr;
+ DbAndroidConnectionFactory* connectionFactory = nullptr;
+ bool adbValid = false;
+
+ static_char* SELECT_ADB_URL = "select_adb://";
+
+ CFG_LOCAL_PERSISTABLE(DbAndroidConfig, cfg)
+
+ private slots:
+ void handleValidAdb(bool showMessage);
+ void handleInvalidAdb();
+ void statusFieldLinkClicked(const QString& link);
+ void deviceListChanged();
+
+ signals:
+ void adbReady(bool showMessage);
+ void invalidAdb();
+};
+
+#endif // DBANDROID_H