summaryrefslogtreecommitdiffstats
path: root/network
diff options
context:
space:
mode:
authorMatt Porter <mporter@konsulko.com>2018-07-02 13:42:04 -0400
committerMatt Porter <mporter@konsulko.com>2018-07-10 12:03:32 -0400
commit0fb805bcbd3d07da41df2236977afcb3142d5327 (patch)
treeb925192ea999260c49723d36d0b18f1123b90711 /network
parent87db6cfd047e2c1d247dbfb45cad8b03e5dd6248 (diff)
add base network module supportflounder_5.99.2flounder/5.99.25.99.2
Add support for new network binding messages. This is a prerequisite for the new network services list model. Bug-AGL: SPEC-1541 Change-Id: I204914b991016145958114b1e0e914eaf5b599fa Signed-off-by: Matt Porter <mporter@konsulko.com>
Diffstat (limited to 'network')
-rw-r--r--network/CMakeLists.txt2
-rw-r--r--network/networkmessage.cpp29
-rw-r--r--network/networkmessage.h52
3 files changed, 83 insertions, 0 deletions
diff --git a/network/CMakeLists.txt b/network/CMakeLists.txt
new file mode 100644
index 0000000..519d28f
--- /dev/null
+++ b/network/CMakeLists.txt
@@ -0,0 +1,2 @@
+add_headers(networkmessage.h)
+add_sources(networkmessage.cpp)
diff --git a/network/networkmessage.cpp b/network/networkmessage.cpp
new file mode 100644
index 0000000..0c15201
--- /dev/null
+++ b/network/networkmessage.cpp
@@ -0,0 +1,29 @@
+/*
+ * Copyright (C) 2018 Konsulko Group
+ *
+ * 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 <QJsonArray>
+//#include <QJsonDocument>
+#include <QJsonObject>
+
+#include "networkmessage.h"
+
+bool NetworkMessage::createRequest(QString verb, QJsonObject parameter)
+{
+ if (!verbs.contains(verb))
+ return false;
+
+ return Message::createRequest("network-manager", verb, parameter);
+}
diff --git a/network/networkmessage.h b/network/networkmessage.h
new file mode 100644
index 0000000..7b330d2
--- /dev/null
+++ b/network/networkmessage.h
@@ -0,0 +1,52 @@
+/*
+ * Copyright (C) 2018 Konsulko Group
+ *
+ * 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_MESSAGE_H
+#define NETWORK_MESSAGE_H
+
+#include "message.h"
+
+class NetworkMessage : public Message
+{
+ Q_OBJECT
+ public:
+ bool createRequest(QString verb, QJsonObject parameter);
+ bool isStatusEvent() {return (this->eventName() == "status"); };
+ bool connected() { return m_event_data.find("connected").value().toBool(); };
+
+ private:
+ QStringList verbs {
+ "state",
+ "offline",
+ "technologies",
+ "enable_technology",
+ "disable_technology",
+ "services",
+ "scan_services",
+ "move_service",
+ "remove_service",
+ "connect_service",
+ "disconnect_service",
+ "get_property",
+ "set_property",
+ "agent_response",
+ "reset_counters",
+ "subscribe",
+ "unsubscribe",
+ };
+};
+
+#endif // NETWORK_MESSAGE_H