Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(691)

Side by Side Diff: chrome/browser/extensions/api/networking_private/networking_private_delegate.h

Issue 378103002: Add NetworkingPrivateDelegate class (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix stupid mac complaints Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright 2013 The Chromium 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 CHROME_BROWSER_EXTENSIONS_API_NETWORKING_PRIVATE_NETWORKING_PRIVATE_DELE GATE_H_
6 #define CHROME_BROWSER_EXTENSIONS_API_NETWORKING_PRIVATE_NETWORKING_PRIVATE_DELE GATE_H_
7
8 #include <string>
9
10 #include "base/callback.h"
11 #include "base/memory/scoped_ptr.h"
12 #include "base/values.h"
13
14 namespace content {
15 class BrowserContext;
16 }
17
18 namespace extensions {
19
20 namespace api {
21 namespace networking_private {
22
23 struct VerificationProperties;
24
25 } // networking_private
26 } // api
27
28 // Base class for platform dependent networkingPrivate API implementations.
29 // All inputs and results for this class use ONC values. See
30 // networking_private.json for descriptions of the expected inputs and results.
31 class NetworkingPrivateDelegate {
32 public:
33 typedef base::Callback<void(scoped_ptr<base::DictionaryValue>)>
34 DictionaryCallback;
35 typedef base::Callback<void()> VoidCallback;
36 typedef base::Callback<void(bool)> BoolCallback;
37 typedef base::Callback<void(const std::string&)> StringCallback;
38 typedef base::Callback<void(scoped_ptr<base::ListValue>)> NetworkListCallback;
39 typedef base::Callback<void(const std::string&)> FailureCallback;
40 typedef api::networking_private::VerificationProperties
41 VerificationProperties;
42
43 static NetworkingPrivateDelegate* GetForBrowserContext(
44 content::BrowserContext* browser_context);
45
46 // Asynchronous methods
47 virtual void GetProperties(const std::string& guid,
48 const DictionaryCallback& success_callback,
49 const FailureCallback& failure_callback) = 0;
50 virtual void GetManagedProperties(
51 const std::string& guid,
52 const DictionaryCallback& success_callback,
53 const FailureCallback& failure_callback) = 0;
54 virtual void GetState(const std::string& guid,
55 const DictionaryCallback& success_callback,
56 const FailureCallback& failure_callback) = 0;
57 virtual void SetProperties(const std::string& guid,
58 scoped_ptr<base::DictionaryValue> properties,
59 const VoidCallback& success_callback,
60 const FailureCallback& failure_callback) = 0;
61 virtual void CreateNetwork(bool shared,
62 scoped_ptr<base::DictionaryValue> properties,
63 const StringCallback& success_callback,
64 const FailureCallback& failure_callback) = 0;
65 virtual void GetNetworks(const std::string& network_type,
66 bool configured_only,
67 bool visible_only,
68 int limit,
69 const NetworkListCallback& success_callback,
70 const FailureCallback& failure_callback) = 0;
71 virtual void StartConnect(const std::string& guid,
72 const VoidCallback& success_callback,
73 const FailureCallback& failure_callback) = 0;
74 virtual void StartDisconnect(const std::string& guid,
75 const VoidCallback& success_callback,
76 const FailureCallback& failure_callback) = 0;
77 virtual void VerifyDestination(
78 const VerificationProperties& verification_properties,
79 const BoolCallback& success_callback,
80 const FailureCallback& failure_callback) = 0;
81 virtual void VerifyAndEncryptCredentials(
82 const std::string& guid,
83 const VerificationProperties& verification_properties,
84 const StringCallback& success_callback,
85 const FailureCallback& failure_callback) = 0;
86 virtual void VerifyAndEncryptData(
87 const VerificationProperties& verification_properties,
88 const std::string& data,
89 const StringCallback& success_callback,
90 const FailureCallback& failure_callback) = 0;
91 virtual void SetWifiTDLSEnabledState(
92 const std::string& ip_or_mac_address,
93 bool enabled,
94 const StringCallback& success_callback,
95 const FailureCallback& failure_callback) = 0;
96 virtual void GetWifiTDLSStatus(
97 const std::string& ip_or_mac_address,
98 const StringCallback& success_callback,
99 const FailureCallback& failure_callback) = 0;
100 virtual void GetCaptivePortalStatus(
101 const std::string& guid,
102 const StringCallback& success_callback,
103 const FailureCallback& failure_callback) = 0;
104
105 // Synchronous methods
106
107 // Returns a list of ONC type strings.
108 virtual scoped_ptr<base::ListValue> GetEnabledNetworkTypes() = 0;
109
110 // Returns true if the ONC network type |type| is enabled.
111 virtual bool EnableNetworkType(const std::string& type) = 0;
112
113 // Returns true if the ONC network type |type| is disabled.
114 virtual bool DisableNetworkType(const std::string& type) = 0;
115
116 // Returns true if a scan was requested. It may take many seconds for a scan
117 // to complete. The scan may or may not trigger API events when complete.
118 virtual bool RequestScan() = 0;
119
120 protected:
121 virtual ~NetworkingPrivateDelegate() {}
122 };
123
124 } // namespace extensions
125
126 #endif // CHROME_BROWSER_EXTENSIONS_API_NETWORKING_PRIVATE_NETWORKING_PRIVATE_D ELEGATE_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698