Home | History | Annotate | Download | only in networking_private
      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_EVENT_ROUTER_H_
      6 #define CHROME_BROWSER_EXTENSIONS_API_NETWORKING_PRIVATE_NETWORKING_PRIVATE_EVENT_ROUTER_H_
      7 
      8 #include "components/keyed_service/core/keyed_service.h"
      9 #include "extensions/browser/event_router.h"
     10 
     11 class Profile;
     12 
     13 namespace extensions {
     14 
     15 // This is an event router that will observe listeners to |NetworksChanged| and
     16 // |NetworkListChanged| events. On ChromeOS it will forward these events
     17 // from the NetworkStateHandler to the JavaScript Networking API.
     18 class NetworkingPrivateEventRouter : public KeyedService,
     19                                      public EventRouter::Observer {
     20  public:
     21   static NetworkingPrivateEventRouter* Create(Profile* profile);
     22 
     23  protected:
     24   NetworkingPrivateEventRouter() {}
     25 
     26  private:
     27   DISALLOW_COPY_AND_ASSIGN(NetworkingPrivateEventRouter);
     28 };
     29 
     30 }  // namespace extensions
     31 
     32 #endif  // CHROME_BROWSER_EXTENSIONS_API_NETWORKING_PRIVATE_NETWORKING_PRIVATE_EVENT_ROUTER_H_
     33 
     34