blob: c4b3383b3ce97a71a55d6cdb4fa622176084b88a [file] [log] [blame]
Paul Stewart196f50f2013-03-27 18:02:11 -07001// Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef SUPPLICANT_EVENT_DELEGATE_INTERFACE_H_
6#define SUPPLICANT_EVENT_DELEGATE_INTERFACE_H_
7
8#include <map>
9#include <string>
10
11#include <dbus-c++/dbus.h>
12
13namespace shill {
14
15// SupplicantEventDelegateInterface declares the set of methods that
16// a SupplicantInterfaceProxy calls on an interested party when
17// wpa_supplicant events occur on the network interface interface.
18class SupplicantEventDelegateInterface {
19 public:
20 typedef std::map<std::string, ::DBus::Variant> PropertyMap;
21
22 virtual ~SupplicantEventDelegateInterface() {}
23
24 virtual void BSSAdded(const ::DBus::Path &BSS,
25 const PropertyMap &properties) = 0;
26 virtual void BSSRemoved(const ::DBus::Path &BSS) = 0;
27 virtual void Certification(const PropertyMap &properties) = 0;
28 virtual void EAPEvent(const std::string &status,
29 const std::string &parameter) = 0;
30 virtual void PropertiesChanged(const PropertyMap &properties) = 0;
31 virtual void ScanDone() = 0;
32};
33
34} // namespace shill
35
36#endif // SUPPLICANT_EVENT_DELEGATE_INTERFACE_H_