Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / chrome / browser / apps / drive / drive_service_bridge.h
blob7bc1ea4e65ca41b4249046f98754ff8175af8058
1 // Copyright 2014 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.
5 #ifndef CHROME_BROWSER_APPS_DRIVE_DRIVE_SERVICE_BRIDGE_H_
6 #define CHROME_BROWSER_APPS_DRIVE_DRIVE_SERVICE_BRIDGE_H_
8 #include <set>
10 #include "base/memory/scoped_ptr.h"
12 namespace drive {
13 class DriveAppRegistry;
16 class BrowserContextKeyedServiceFactory;
17 class Profile;
19 // An interface to access Drive service for a given profile.
20 class DriveServiceBridge {
21 public:
22 virtual ~DriveServiceBridge() {}
24 // Factory to create an instance of DriveServiceBridge.
25 static scoped_ptr<DriveServiceBridge> Create(Profile* profile);
27 // Appends PKS factories this class depends on.
28 static void AppendDependsOnFactories(
29 std::set<BrowserContextKeyedServiceFactory*>* factories);
31 // Returns the DriveAppRegistery to use. The ownership is not transferred.
32 virtual drive::DriveAppRegistry* GetAppRegistry() = 0;
35 #endif // CHROME_BROWSER_APPS_DRIVE_DRIVE_SERVICE_BRIDGE_H_