Home | History | Annotate | Download | only in file_manager
      1 // Copyright (c) 2012 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_CHROMEOS_EXTENSIONS_FILE_MANAGER_FILE_BROWSER_PRIVATE_API_H_
      6 #define CHROME_BROWSER_CHROMEOS_EXTENSIONS_FILE_MANAGER_FILE_BROWSER_PRIVATE_API_H_
      7 
      8 #include "base/memory/scoped_ptr.h"
      9 #include "components/browser_context_keyed_service/browser_context_keyed_service.h"
     10 
     11 class Profile;
     12 
     13 namespace file_manager {
     14 
     15 class EventRouter;
     16 
     17 // Manages and registers the fileBrowserPrivate API with the extension system.
     18 class FileBrowserPrivateAPI : public BrowserContextKeyedService {
     19  public:
     20   explicit FileBrowserPrivateAPI(Profile* profile);
     21   virtual ~FileBrowserPrivateAPI();
     22 
     23   // BrowserContextKeyedService overrides.
     24   virtual void Shutdown() OVERRIDE;
     25 
     26   // Convenience function to return the FileBrowserPrivateAPI for a Profile.
     27   static FileBrowserPrivateAPI* Get(Profile* profile);
     28 
     29   EventRouter* event_router() { return event_router_.get(); }
     30 
     31  private:
     32   scoped_ptr<EventRouter> event_router_;
     33 };
     34 
     35 }  // namespace file_manager
     36 
     37 #endif  // CHROME_BROWSER_CHROMEOS_EXTENSIONS_FILE_MANAGER_FILE_BROWSER_PRIVATE_API_H_
     38