gecko-dev/netwerk/wifi/nsWifiScannerDBus.h
Jan Steffens 826cabc8e1 Bug 1314968 - Disentangle nsWifiScannerDBus::SendMessage. r=kanru
Make a copy of the function and specialize it for each message sent.
Avoids the mess of comparing the method name to figure out what to do.

MozReview-Commit-ID: 1KlZyc8Pc9I

--HG--
extra : rebase_source : 1f9c841e42745ecb311c53cd364ffe60b5593258
2017-09-16 18:35:18 +02:00

45 lines
1.3 KiB
C++

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef NSWIFIAPSCANNERDBUS_H_
#define NSWIFIAPSCANNERDBUS_H_
#include "nsCOMArray.h"
#define DBUS_API_SUBJECT_TO_CHANGE
#include <dbus/dbus.h>
class nsWifiAccessPoint;
namespace mozilla {
class nsWifiScannerDBus final
{
public:
explicit nsWifiScannerDBus(nsCOMArray<nsWifiAccessPoint>* aAccessPoints);
~nsWifiScannerDBus();
nsresult Scan();
private:
nsresult SendGetDevices();
nsresult SendGetDeviceType(const char* aPath);
nsresult SendGetAccessPoints(const char* aPath);
nsresult SendGetAPProperties(const char* aPath);
nsresult IdentifyDevices(DBusMessage* aMsg);
nsresult IdentifyDeviceType(DBusMessage* aMsg, const char* aDevicePath);
nsresult IdentifyAccessPoints(DBusMessage* aMsg);
nsresult IdentifyAPProperties(DBusMessage* aMsg);
nsresult StoreSsid(DBusMessageIter* aVariant, nsWifiAccessPoint* aAp);
nsresult SetMac(DBusMessageIter* aVariant, nsWifiAccessPoint* aAp);
nsresult GetDBusIterator(DBusMessage* aMsg, DBusMessageIter* aIterArray);
RefPtr<DBusConnection> mConnection;
nsCOMArray<nsWifiAccessPoint>* mAccessPoints;
};
} // mozilla
#endif // NSWIFIAPSCANNERDBUS_H_