33b42e06374c97ac043e700f324ac1fa2927450b
[platform/framework/web/crosswalk.git] / src / extensions / browser / test_extensions_browser_client.cc
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.
4
5 #include "extensions/browser/test_extensions_browser_client.h"
6
7 #include "content/public/browser/browser_context.h"
8 #include "extensions/browser/app_sorting.h"
9 #include "extensions/browser/extension_host_delegate.h"
10 #include "extensions/browser/test_runtime_api_delegate.h"
11
12 using content::BrowserContext;
13
14 namespace extensions {
15
16 TestExtensionsBrowserClient::TestExtensionsBrowserClient(
17     BrowserContext* main_context)
18     : main_context_(main_context),
19       incognito_context_(NULL),
20       process_manager_delegate_(NULL),
21       extension_system_factory_(NULL) {
22   DCHECK(main_context_);
23   DCHECK(!main_context_->IsOffTheRecord());
24 }
25
26 TestExtensionsBrowserClient::~TestExtensionsBrowserClient() {}
27
28 void TestExtensionsBrowserClient::SetIncognitoContext(BrowserContext* context) {
29   // If a context is provided it must be off-the-record.
30   DCHECK(!context || context->IsOffTheRecord());
31   incognito_context_ = context;
32 }
33
34 bool TestExtensionsBrowserClient::IsShuttingDown() { return false; }
35
36 bool TestExtensionsBrowserClient::AreExtensionsDisabled(
37     const base::CommandLine& command_line,
38     BrowserContext* context) {
39   return false;
40 }
41
42 bool TestExtensionsBrowserClient::IsValidContext(BrowserContext* context) {
43   return context == main_context_ ||
44          (incognito_context_ && context == incognito_context_);
45 }
46
47 bool TestExtensionsBrowserClient::IsSameContext(BrowserContext* first,
48                                                 BrowserContext* second) {
49   DCHECK(first);
50   DCHECK(second);
51   return first == second ||
52          (first == main_context_ && second == incognito_context_) ||
53          (first == incognito_context_ && second == main_context_);
54 }
55
56 bool TestExtensionsBrowserClient::HasOffTheRecordContext(
57     BrowserContext* context) {
58   return context == main_context_ && incognito_context_ != NULL;
59 }
60
61 BrowserContext* TestExtensionsBrowserClient::GetOffTheRecordContext(
62     BrowserContext* context) {
63   if (context == main_context_)
64     return incognito_context_;
65   return NULL;
66 }
67
68 BrowserContext* TestExtensionsBrowserClient::GetOriginalContext(
69     BrowserContext* context) {
70   return main_context_;
71 }
72
73 bool TestExtensionsBrowserClient::IsGuestSession(
74     BrowserContext* context) const {
75   return false;
76 }
77
78 bool TestExtensionsBrowserClient::IsExtensionIncognitoEnabled(
79     const std::string& extension_id,
80     content::BrowserContext* context) const {
81   return false;
82 }
83
84 bool TestExtensionsBrowserClient::CanExtensionCrossIncognito(
85     const extensions::Extension* extension,
86     content::BrowserContext* context) const {
87   return false;
88 }
89
90 net::URLRequestJob*
91 TestExtensionsBrowserClient::MaybeCreateResourceBundleRequestJob(
92     net::URLRequest* request,
93     net::NetworkDelegate* network_delegate,
94     const base::FilePath& directory_path,
95     const std::string& content_security_policy,
96     bool send_cors_header) {
97   return NULL;
98 }
99
100 bool TestExtensionsBrowserClient::AllowCrossRendererResourceLoad(
101     net::URLRequest* request,
102     bool is_incognito,
103     const Extension* extension,
104     InfoMap* extension_info_map) {
105   return false;
106 }
107
108 PrefService* TestExtensionsBrowserClient::GetPrefServiceForContext(
109     BrowserContext* context) {
110   return NULL;
111 }
112
113 void TestExtensionsBrowserClient::GetEarlyExtensionPrefsObservers(
114     content::BrowserContext* context,
115     std::vector<ExtensionPrefsObserver*>* observers) const {}
116
117 ProcessManagerDelegate* TestExtensionsBrowserClient::GetProcessManagerDelegate()
118     const {
119   return process_manager_delegate_;
120 }
121
122 scoped_ptr<ExtensionHostDelegate>
123 TestExtensionsBrowserClient::CreateExtensionHostDelegate() {
124   return scoped_ptr<ExtensionHostDelegate>();
125 }
126
127 bool TestExtensionsBrowserClient::DidVersionUpdate(BrowserContext* context) {
128   return false;
129 }
130
131 void TestExtensionsBrowserClient::PermitExternalProtocolHandler() {
132 }
133
134 scoped_ptr<AppSorting> TestExtensionsBrowserClient::CreateAppSorting() {
135   return scoped_ptr<AppSorting>();
136 }
137
138 bool TestExtensionsBrowserClient::IsRunningInForcedAppMode() { return false; }
139
140 ApiActivityMonitor* TestExtensionsBrowserClient::GetApiActivityMonitor(
141     BrowserContext* context) {
142   return NULL;
143 }
144
145 ExtensionSystemProvider*
146 TestExtensionsBrowserClient::GetExtensionSystemFactory() {
147   DCHECK(extension_system_factory_);
148   return extension_system_factory_;
149 }
150
151 void TestExtensionsBrowserClient::RegisterExtensionFunctions(
152     ExtensionFunctionRegistry* registry) const {}
153
154 scoped_ptr<RuntimeAPIDelegate>
155 TestExtensionsBrowserClient::CreateRuntimeAPIDelegate(
156     content::BrowserContext* context) const {
157   return scoped_ptr<RuntimeAPIDelegate>(new TestRuntimeAPIDelegate());
158 }
159
160 ComponentExtensionResourceManager*
161 TestExtensionsBrowserClient::GetComponentExtensionResourceManager() {
162   return NULL;
163 }
164
165 void TestExtensionsBrowserClient::BroadcastEventToRenderers(
166     const std::string& event_name,
167     scoped_ptr<base::ListValue> args) {
168 }
169
170 net::NetLog* TestExtensionsBrowserClient::GetNetLog() {
171   return NULL;
172 }
173
174 }  // namespace extensions