1116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// Copyright 2014 The Chromium Authors. All rights reserved. 2116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// Use of this source code is governed by a BSD-style license that can be 3116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// found in the LICENSE file. 4116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 5116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#ifndef CHROME_BROWSER_EXTENSIONS_API_NETWORKING_PRIVATE_NETWORKING_PRIVATE_CHROMEOS_H_ 6116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#define CHROME_BROWSER_EXTENSIONS_API_NETWORKING_PRIVATE_NETWORKING_PRIVATE_CHROMEOS_H_ 7116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 8116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "chrome/browser/extensions/api/networking_private/networking_private_delegate.h" 9116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "components/keyed_service/core/keyed_service.h" 10116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 11116680a4aac90f2aa7413d9095a592090648e557Ben Murdochnamespace context { 12116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass BrowserContext; 13116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} 14116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 15116680a4aac90f2aa7413d9095a592090648e557Ben Murdochnamespace extensions { 16116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 17116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// Chrome OS NetworkingPrivateDelegate implementation. 18116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 19116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass NetworkingPrivateChromeOS : public KeyedService, 20116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch public NetworkingPrivateDelegate { 21116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch public: 22116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch explicit NetworkingPrivateChromeOS(content::BrowserContext* browser_context); 23116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 24116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch // NetworkingPrivateApi 25116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void GetProperties(const std::string& guid, 26116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const DictionaryCallback& success_callback, 27116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const FailureCallback& failure_callback) OVERRIDE; 28116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void GetManagedProperties( 29116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const std::string& guid, 30116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const DictionaryCallback& success_callback, 31116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const FailureCallback& failure_callback) OVERRIDE; 32116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void GetState(const std::string& guid, 33116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const DictionaryCallback& success_callback, 34116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const FailureCallback& failure_callback) OVERRIDE; 35116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void SetProperties(const std::string& guid, 36116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch scoped_ptr<base::DictionaryValue> properties, 37116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const VoidCallback& success_callback, 38116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const FailureCallback& failure_callback) OVERRIDE; 39116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void CreateNetwork(bool shared, 40116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch scoped_ptr<base::DictionaryValue> properties, 41116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const StringCallback& success_callback, 42116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const FailureCallback& failure_callback) OVERRIDE; 43116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void GetNetworks(const std::string& network_type, 44116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch bool configured_only, 45116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch bool visible_only, 46116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch int limit, 47116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const NetworkListCallback& success_callback, 48116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const FailureCallback& failure_callback) OVERRIDE; 49116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void StartConnect(const std::string& guid, 50116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const VoidCallback& success_callback, 51116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const FailureCallback& failure_callback) OVERRIDE; 52116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void StartDisconnect( 53116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const std::string& guid, 54116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const VoidCallback& success_callback, 55116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const FailureCallback& failure_callback) OVERRIDE; 56116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void VerifyDestination( 57116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const VerificationProperties& verification_properties, 58116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const BoolCallback& success_callback, 59116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const FailureCallback& failure_callback) OVERRIDE; 60116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void VerifyAndEncryptCredentials( 61116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const std::string& guid, 62116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const VerificationProperties& verification_properties, 63116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const StringCallback& success_callback, 64116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const FailureCallback& failure_callback) OVERRIDE; 65116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void VerifyAndEncryptData( 66116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const VerificationProperties& verification_properties, 67116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const std::string& data, 68116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const StringCallback& success_callback, 69116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const FailureCallback& failure_callback) OVERRIDE; 70116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void SetWifiTDLSEnabledState( 71116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const std::string& ip_or_mac_address, 72116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch bool enabled, 73116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const StringCallback& success_callback, 74116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const FailureCallback& failure_callback) OVERRIDE; 75116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void GetWifiTDLSStatus( 76116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const std::string& ip_or_mac_address, 77116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const StringCallback& success_callback, 78116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const FailureCallback& failure_callback) OVERRIDE; 79116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void GetCaptivePortalStatus( 80116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const std::string& guid, 81116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const StringCallback& success_callback, 82116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const FailureCallback& failure_callback) OVERRIDE; 83116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual scoped_ptr<base::ListValue> GetEnabledNetworkTypes() OVERRIDE; 84116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual bool EnableNetworkType(const std::string& type) OVERRIDE; 85116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual bool DisableNetworkType(const std::string& type) OVERRIDE; 86116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual bool RequestScan() OVERRIDE; 87116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 88116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch private: 89116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual ~NetworkingPrivateChromeOS(); 90116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 91116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch content::BrowserContext* browser_context_; 92116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 93116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch DISALLOW_COPY_AND_ASSIGN(NetworkingPrivateChromeOS); 94116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch}; 95116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 96116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} // namespace extensions 97116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 98116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#endif // CHROME_BROWSER_EXTENSIONS_API_NETWORKING_PRIVATE_NETWORKING_PRIVATE_CHROMEOS_H_ 99