Index: apps/apps_client.h |
diff --git a/apps/apps_client.h b/apps/apps_client.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..c3a58ca10c4ea993b881952ae78a42d0b162fb60 |
--- /dev/null |
+++ b/apps/apps_client.h |
@@ -0,0 +1,32 @@ |
+// Copyright 2013 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#ifndef APPS_APPS_CLIENT_H_ |
+#define APPS_APPS_CLIENT_H_ |
+ |
+#include <vector> |
+ |
+namespace content { |
+class BrowserContext; |
+} |
+ |
+namespace apps { |
+ |
+// Sets up global state for the apps system. Should be Set() once in each |
+// process. This should be implemented by the client of the apps system. |
+class AppsClient { |
+ public: |
+ // Get all loaded browser contexts. |
+ virtual std::vector<content::BrowserContext*> GetLoadedBrowserContexts() = 0; |
+ |
+ // Return the apps client. |
+ static AppsClient* Get(); |
+ |
+ // Initialize the apps system with this apps client. |
+ static void Set(AppsClient* client); |
+}; |
+ |
+} // namespace apps |
+ |
+#endif // APPS_APPS_CLIENT_H_ |