cordova-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ste...@apache.org
Subject [1/3] git commit: add ubuntu platform
Date Tue, 03 Dec 2013 00:27:41 GMT
Updated Branches:
  refs/heads/dev bfe7ab777 -> 50218b43e


add ubuntu platform


Project: http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/commit/43245253
Tree: http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/tree/43245253
Diff: http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/diff/43245253

Branch: refs/heads/dev
Commit: 43245253e82c7195619062b4d6a33b15e82004ca
Parents: 9d39644
Author: Maxim Ermilov <ermilov.maxim@gmail.com>
Authored: Sun Sep 22 08:40:51 2013 +0400
Committer: Maxim Ermilov <ermilov.maxim@gmail.com>
Committed: Sun Sep 22 08:40:51 2013 +0400

----------------------------------------------------------------------
 plugin.xml                         |  6 ++++
 src/ubuntu/network_information.cpp | 63 +++++++++++++++++++++++++++++++++
 src/ubuntu/network_information.h   | 47 ++++++++++++++++++++++++
 3 files changed, 116 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/blob/43245253/plugin.xml
----------------------------------------------------------------------
diff --git a/plugin.xml b/plugin.xml
index a4cf518..2ab1a1d 100644
--- a/plugin.xml
+++ b/plugin.xml
@@ -44,6 +44,12 @@ xmlns:android="http://schemas.android.com/apk/res/android"
         
     </platform>
 
+    <!-- ubuntu -->
+    <platform name="ubuntu">
+        <header-file src="src/ubuntu/network_information.h" />
+        <source-file src="src/ubuntu/network_information.cpp" />
+    </platform>
+
     <!-- ios -->
     <platform name="ios">    
         <config-file target="config.xml" parent="/*">

http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/blob/43245253/src/ubuntu/network_information.cpp
----------------------------------------------------------------------
diff --git a/src/ubuntu/network_information.cpp b/src/ubuntu/network_information.cpp
new file mode 100644
index 0000000..8fdb494
--- /dev/null
+++ b/src/ubuntu/network_information.cpp
@@ -0,0 +1,63 @@
+/*
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+
+#include "network_information.h"
+
+void NetworkInformation::getConnectionInfo(int scId, int ecId) {
+    Q_UNUSED(ecId);
+
+    QString result;
+    QNetworkInfo::NetworkMode networkMode = m_systemNetworkInfo.currentNetworkMode();
+    QNetworkInfo::NetworkStatus networkStatus = m_systemNetworkInfo.networkStatus(networkMode,
0);
+    QNetworkInfo::CellDataTechnology cellDataTechnology = m_systemNetworkInfo.currentCellDataTechnology(0);
+
+    if (networkStatus == QNetworkInfo::NoNetworkAvailable)
+        result = "Connection.NONE";
+
+    switch (networkMode) {
+    case QNetworkInfo::WimaxMode:
+    case QNetworkInfo::WlanMode:
+        result = "Connection.WIFI";
+        break;
+    case QNetworkInfo::EthernetMode:
+        result = "Connection.ETHERNET";
+        break;
+    case QNetworkInfo::LteMode:
+        result = "Connection.CELL_4G";
+        break;
+    case QNetworkInfo::GsmMode:
+    case QNetworkInfo::CdmaMode:
+    case QNetworkInfo::TdscdmaMode:
+    case QNetworkInfo::WcdmaMode:
+        switch (cellDataTechnology) {
+        case QNetworkInfo::UmtsDataTechnology:
+        case QNetworkInfo::HspaDataTechnology:
+            result = "Connection.CELL_3G";
+            break;
+        case QNetworkInfo::EdgeDataTechnology:
+        case QNetworkInfo::GprsDataTechnology:
+            result = "Connection.CELL_2G";
+            break;
+        case QNetworkInfo::UnknownDataTechnology:
+            result = "Connection.UNKNOWN";
+            break;
+        }
+    case QNetworkInfo::BluetoothMode:
+    case QNetworkInfo::UnknownMode:
+        result = "Connection.UNKNOWN";
+        break;
+    }
+
+    this->callback(scId, result);
+}

http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/blob/43245253/src/ubuntu/network_information.h
----------------------------------------------------------------------
diff --git a/src/ubuntu/network_information.h b/src/ubuntu/network_information.h
new file mode 100644
index 0000000..aca20e7
--- /dev/null
+++ b/src/ubuntu/network_information.h
@@ -0,0 +1,47 @@
+/*
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+
+#ifndef NETWORK_INFORMATION_H
+#define NETWORK_INFORMATION_H
+
+#include <cplugin.h>
+
+#include <QtSystemInfo>
+#include <QtCore>
+
+class NetworkInformation: public CPlugin {
+    Q_OBJECT
+public:
+    explicit NetworkInformation(Cordova *cordova): CPlugin(cordova) {}
+
+    virtual const QString fullName() override {
+        return NetworkInformation::fullID();
+    }
+
+    virtual const QString shortName() override {
+        return "Connection";
+    }
+
+    static const QString fullID() {
+        return "NetworkStatus";
+    }
+
+public slots:
+    void getConnectionInfo(int scId, int ecId);
+
+private:
+    QNetworkInfo m_systemNetworkInfo;
+};
+
+#endif


Mime
View raw message