Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6)

Side by Side Diff: components/arc/arc_bridge_service.h

Issue 1995243002: Add OBB mounter Mojo interface (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « components/arc/BUILD.gn ('k') | components/arc/arc_bridge_service.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef COMPONENTS_ARC_ARC_BRIDGE_SERVICE_H_ 5 #ifndef COMPONENTS_ARC_ARC_BRIDGE_SERVICE_H_
6 #define COMPONENTS_ARC_ARC_BRIDGE_SERVICE_H_ 6 #define COMPONENTS_ARC_ARC_BRIDGE_SERVICE_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
113 virtual void OnMetricsInstanceClosed() {} 113 virtual void OnMetricsInstanceClosed() {}
114 114
115 // Called whenever the ARC notification interface state changes. 115 // Called whenever the ARC notification interface state changes.
116 virtual void OnNotificationsInstanceReady() {} 116 virtual void OnNotificationsInstanceReady() {}
117 virtual void OnNotificationsInstanceClosed() {} 117 virtual void OnNotificationsInstanceClosed() {}
118 118
119 // Called whenever the ARC net interface state changes. 119 // Called whenever the ARC net interface state changes.
120 virtual void OnNetInstanceReady() {} 120 virtual void OnNetInstanceReady() {}
121 virtual void OnNetInstanceClosed() {} 121 virtual void OnNetInstanceClosed() {}
122 122
123 // Called whenever the ARC OBB mounter interface state changes.
124 virtual void OnObbMounterInstanceReady() {}
125 virtual void OnObbMounterInstanceClosed() {}
126
123 // Called whenever the ARC policy interface state changes. 127 // Called whenever the ARC policy interface state changes.
124 virtual void OnPolicyInstanceReady() {} 128 virtual void OnPolicyInstanceReady() {}
125 virtual void OnPolicyInstanceClosed() {} 129 virtual void OnPolicyInstanceClosed() {}
126 130
127 // Called whenever the ARC power interface state changes. 131 // Called whenever the ARC power interface state changes.
128 virtual void OnPowerInstanceReady() {} 132 virtual void OnPowerInstanceReady() {}
129 virtual void OnPowerInstanceClosed() {} 133 virtual void OnPowerInstanceClosed() {}
130 134
131 // Called whenever the ARC process interface state changes. 135 // Called whenever the ARC process interface state changes.
132 virtual void OnProcessInstanceReady() {} 136 virtual void OnProcessInstanceReady() {}
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
198 } 202 }
199 mojom::ImeInstance* ime_instance() { return ime_ptr_.get(); } 203 mojom::ImeInstance* ime_instance() { return ime_ptr_.get(); }
200 mojom::IntentHelperInstance* intent_helper_instance() { 204 mojom::IntentHelperInstance* intent_helper_instance() {
201 return intent_helper_ptr_.get(); 205 return intent_helper_ptr_.get();
202 } 206 }
203 mojom::MetricsInstance* metrics_instance() { return metrics_ptr_.get(); } 207 mojom::MetricsInstance* metrics_instance() { return metrics_ptr_.get(); }
204 mojom::NetInstance* net_instance() { return net_ptr_.get(); } 208 mojom::NetInstance* net_instance() { return net_ptr_.get(); }
205 mojom::NotificationsInstance* notifications_instance() { 209 mojom::NotificationsInstance* notifications_instance() {
206 return notifications_ptr_.get(); 210 return notifications_ptr_.get();
207 } 211 }
212 mojom::ObbMounterInstance* obb_mounter_instance() {
213 return obb_mounter_ptr_.get();
214 }
208 mojom::PolicyInstance* policy_instance() { return policy_ptr_.get(); } 215 mojom::PolicyInstance* policy_instance() { return policy_ptr_.get(); }
209 mojom::PowerInstance* power_instance() { return power_ptr_.get(); } 216 mojom::PowerInstance* power_instance() { return power_ptr_.get(); }
210 mojom::ProcessInstance* process_instance() { return process_ptr_.get(); } 217 mojom::ProcessInstance* process_instance() { return process_ptr_.get(); }
211 mojom::StorageManagerInstance* storage_manager_instance() { 218 mojom::StorageManagerInstance* storage_manager_instance() {
212 return storage_manager_ptr_.get(); 219 return storage_manager_ptr_.get();
213 } 220 }
214 mojom::VideoInstance* video_instance() { return video_ptr_.get(); } 221 mojom::VideoInstance* video_instance() { return video_ptr_.get(); }
215 mojom::WindowManagerInstance* window_manager_instance() { 222 mojom::WindowManagerInstance* window_manager_instance() {
216 return window_manager_ptr_.get(); 223 return window_manager_ptr_.get();
217 } 224 }
218 225
219 int32_t app_version() const { return app_ptr_.version(); } 226 int32_t app_version() const { return app_ptr_.version(); }
220 int32_t audio_version() const { return audio_ptr_.version(); } 227 int32_t audio_version() const { return audio_ptr_.version(); }
221 int32_t bluetooth_version() const { return bluetooth_ptr_.version(); } 228 int32_t bluetooth_version() const { return bluetooth_ptr_.version(); }
222 int32_t auth_version() const { return auth_ptr_.version(); } 229 int32_t auth_version() const { return auth_ptr_.version(); }
223 int32_t clipboard_version() const { return clipboard_ptr_.version(); } 230 int32_t clipboard_version() const { return clipboard_ptr_.version(); }
224 int32_t crash_collector_version() const { 231 int32_t crash_collector_version() const {
225 return crash_collector_ptr_.version(); 232 return crash_collector_ptr_.version();
226 } 233 }
227 int32_t file_system_version() const { return file_system_ptr_.version(); } 234 int32_t file_system_version() const { return file_system_ptr_.version(); }
228 int32_t ime_version() const { return ime_ptr_.version(); } 235 int32_t ime_version() const { return ime_ptr_.version(); }
229 int32_t intent_helper_version() const { return intent_helper_ptr_.version(); } 236 int32_t intent_helper_version() const { return intent_helper_ptr_.version(); }
230 int32_t metrics_version() const { return metrics_ptr_.version(); } 237 int32_t metrics_version() const { return metrics_ptr_.version(); }
231 int32_t net_version() const { return net_ptr_.version(); } 238 int32_t net_version() const { return net_ptr_.version(); }
232 int32_t notifications_version() const { return notifications_ptr_.version(); } 239 int32_t notifications_version() const { return notifications_ptr_.version(); }
240 int32_t obb_mounter_version() const { return obb_mounter_ptr_.version(); }
233 int32_t policy_version() const { return policy_ptr_.version(); } 241 int32_t policy_version() const { return policy_ptr_.version(); }
234 int32_t power_version() const { return power_ptr_.version(); } 242 int32_t power_version() const { return power_ptr_.version(); }
235 int32_t process_version() const { return process_ptr_.version(); } 243 int32_t process_version() const { return process_ptr_.version(); }
236 int32_t storage_manager_version() const { 244 int32_t storage_manager_version() const {
237 return storage_manager_ptr_.version(); 245 return storage_manager_ptr_.version();
238 } 246 }
239 int32_t video_version() const { return video_ptr_.version(); } 247 int32_t video_version() const { return video_ptr_.version(); }
240 int32_t window_manager_version() const { 248 int32_t window_manager_version() const {
241 return window_manager_ptr_.version(); 249 return window_manager_ptr_.version();
242 } 250 }
(...skipping 10 matching lines...) Expand all
253 mojom::CrashCollectorInstancePtr crash_collector_ptr) override; 261 mojom::CrashCollectorInstancePtr crash_collector_ptr) override;
254 void OnFileSystemInstanceReady( 262 void OnFileSystemInstanceReady(
255 mojom::FileSystemInstancePtr file_system_ptr) override; 263 mojom::FileSystemInstancePtr file_system_ptr) override;
256 void OnImeInstanceReady(mojom::ImeInstancePtr ime_ptr) override; 264 void OnImeInstanceReady(mojom::ImeInstancePtr ime_ptr) override;
257 void OnIntentHelperInstanceReady( 265 void OnIntentHelperInstanceReady(
258 mojom::IntentHelperInstancePtr intent_helper_ptr) override; 266 mojom::IntentHelperInstancePtr intent_helper_ptr) override;
259 void OnMetricsInstanceReady(mojom::MetricsInstancePtr metrics_ptr) override; 267 void OnMetricsInstanceReady(mojom::MetricsInstancePtr metrics_ptr) override;
260 void OnNetInstanceReady(mojom::NetInstancePtr net_ptr) override; 268 void OnNetInstanceReady(mojom::NetInstancePtr net_ptr) override;
261 void OnNotificationsInstanceReady( 269 void OnNotificationsInstanceReady(
262 mojom::NotificationsInstancePtr notifications_ptr) override; 270 mojom::NotificationsInstancePtr notifications_ptr) override;
271 void OnObbMounterInstanceReady(
272 mojom::ObbMounterInstancePtr obb_mounter_ptr) override;
263 void OnPolicyInstanceReady(mojom::PolicyInstancePtr policy_ptr) override; 273 void OnPolicyInstanceReady(mojom::PolicyInstancePtr policy_ptr) override;
264 void OnPowerInstanceReady(mojom::PowerInstancePtr power_ptr) override; 274 void OnPowerInstanceReady(mojom::PowerInstancePtr power_ptr) override;
265 void OnProcessInstanceReady(mojom::ProcessInstancePtr process_ptr) override; 275 void OnProcessInstanceReady(mojom::ProcessInstancePtr process_ptr) override;
266 void OnStorageManagerInstanceReady( 276 void OnStorageManagerInstanceReady(
267 mojom::StorageManagerInstancePtr storage_manager_ptr) override; 277 mojom::StorageManagerInstancePtr storage_manager_ptr) override;
268 void OnVideoInstanceReady(mojom::VideoInstancePtr video_ptr) override; 278 void OnVideoInstanceReady(mojom::VideoInstancePtr video_ptr) override;
269 void OnWindowManagerInstanceReady( 279 void OnWindowManagerInstanceReady(
270 mojom::WindowManagerInstancePtr window_manager_ptr) override; 280 mojom::WindowManagerInstancePtr window_manager_ptr) override;
271 281
272 // Gets the current state of the bridge service. 282 // Gets the current state of the bridge service.
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
304 void CloseAuthChannel(); 314 void CloseAuthChannel();
305 void CloseBluetoothChannel(); 315 void CloseBluetoothChannel();
306 void CloseClipboardChannel(); 316 void CloseClipboardChannel();
307 void CloseCrashCollectorChannel(); 317 void CloseCrashCollectorChannel();
308 void CloseFileSystemChannel(); 318 void CloseFileSystemChannel();
309 void CloseImeChannel(); 319 void CloseImeChannel();
310 void CloseIntentHelperChannel(); 320 void CloseIntentHelperChannel();
311 void CloseMetricsChannel(); 321 void CloseMetricsChannel();
312 void CloseNetChannel(); 322 void CloseNetChannel();
313 void CloseNotificationsChannel(); 323 void CloseNotificationsChannel();
324 void CloseObbMounterChannel();
314 void ClosePolicyChannel(); 325 void ClosePolicyChannel();
315 void ClosePowerChannel(); 326 void ClosePowerChannel();
316 void CloseProcessChannel(); 327 void CloseProcessChannel();
317 void CloseStorageManagerChannel(); 328 void CloseStorageManagerChannel();
318 void CloseVideoChannel(); 329 void CloseVideoChannel();
319 void CloseWindowManagerChannel(); 330 void CloseWindowManagerChannel();
320 331
321 // Callbacks for QueryVersion. 332 // Callbacks for QueryVersion.
322 void OnAppVersionReady(int32_t version); 333 void OnAppVersionReady(int32_t version);
323 void OnAudioVersionReady(int32_t version); 334 void OnAudioVersionReady(int32_t version);
324 void OnAuthVersionReady(int32_t version); 335 void OnAuthVersionReady(int32_t version);
325 void OnBluetoothVersionReady(int32_t version); 336 void OnBluetoothVersionReady(int32_t version);
326 void OnClipboardVersionReady(int32_t version); 337 void OnClipboardVersionReady(int32_t version);
327 void OnCrashCollectorVersionReady(int32_t version); 338 void OnCrashCollectorVersionReady(int32_t version);
328 void OnFileSystemVersionReady(int32_t version); 339 void OnFileSystemVersionReady(int32_t version);
329 void OnImeVersionReady(int32_t version); 340 void OnImeVersionReady(int32_t version);
330 void OnIntentHelperVersionReady(int32_t version); 341 void OnIntentHelperVersionReady(int32_t version);
331 void OnMetricsVersionReady(int32_t version); 342 void OnMetricsVersionReady(int32_t version);
332 void OnNetVersionReady(int32_t version); 343 void OnNetVersionReady(int32_t version);
333 void OnNotificationsVersionReady(int32_t version); 344 void OnNotificationsVersionReady(int32_t version);
345 void OnObbMounterVersionReady(int32_t version);
334 void OnPolicyVersionReady(int32_t version); 346 void OnPolicyVersionReady(int32_t version);
335 void OnPowerVersionReady(int32_t version); 347 void OnPowerVersionReady(int32_t version);
336 void OnProcessVersionReady(int32_t version); 348 void OnProcessVersionReady(int32_t version);
337 void OnStorageManagerVersionReady(int32_t version); 349 void OnStorageManagerVersionReady(int32_t version);
338 void OnVideoVersionReady(int32_t version); 350 void OnVideoVersionReady(int32_t version);
339 void OnWindowManagerVersionReady(int32_t version); 351 void OnWindowManagerVersionReady(int32_t version);
340 352
341 // Mojo interfaces. 353 // Mojo interfaces.
342 mojom::AppInstancePtr app_ptr_; 354 mojom::AppInstancePtr app_ptr_;
343 mojom::AudioInstancePtr audio_ptr_; 355 mojom::AudioInstancePtr audio_ptr_;
344 mojom::AuthInstancePtr auth_ptr_; 356 mojom::AuthInstancePtr auth_ptr_;
345 mojom::BluetoothInstancePtr bluetooth_ptr_; 357 mojom::BluetoothInstancePtr bluetooth_ptr_;
346 mojom::ClipboardInstancePtr clipboard_ptr_; 358 mojom::ClipboardInstancePtr clipboard_ptr_;
347 mojom::CrashCollectorInstancePtr crash_collector_ptr_; 359 mojom::CrashCollectorInstancePtr crash_collector_ptr_;
348 mojom::FileSystemInstancePtr file_system_ptr_; 360 mojom::FileSystemInstancePtr file_system_ptr_;
349 mojom::ImeInstancePtr ime_ptr_; 361 mojom::ImeInstancePtr ime_ptr_;
350 mojom::IntentHelperInstancePtr intent_helper_ptr_; 362 mojom::IntentHelperInstancePtr intent_helper_ptr_;
351 mojom::MetricsInstancePtr metrics_ptr_; 363 mojom::MetricsInstancePtr metrics_ptr_;
352 mojom::NetInstancePtr net_ptr_; 364 mojom::NetInstancePtr net_ptr_;
353 mojom::NotificationsInstancePtr notifications_ptr_; 365 mojom::NotificationsInstancePtr notifications_ptr_;
366 mojom::ObbMounterInstancePtr obb_mounter_ptr_;
354 mojom::PolicyInstancePtr policy_ptr_; 367 mojom::PolicyInstancePtr policy_ptr_;
355 mojom::PowerInstancePtr power_ptr_; 368 mojom::PowerInstancePtr power_ptr_;
356 mojom::ProcessInstancePtr process_ptr_; 369 mojom::ProcessInstancePtr process_ptr_;
357 mojom::StorageManagerInstancePtr storage_manager_ptr_; 370 mojom::StorageManagerInstancePtr storage_manager_ptr_;
358 mojom::VideoInstancePtr video_ptr_; 371 mojom::VideoInstancePtr video_ptr_;
359 mojom::WindowManagerInstancePtr window_manager_ptr_; 372 mojom::WindowManagerInstancePtr window_manager_ptr_;
360 373
361 // Temporary Mojo interfaces. After a Mojo interface pointer has been 374 // Temporary Mojo interfaces. After a Mojo interface pointer has been
362 // received from the other endpoint, we still need to asynchronously query 375 // received from the other endpoint, we still need to asynchronously query
363 // its version. While that is going on, we should still return nullptr on 376 // its version. While that is going on, we should still return nullptr on
364 // the xxx_instance() functions. 377 // the xxx_instance() functions.
365 // To keep the xxx_instance() functions being trivial, store the instance 378 // To keep the xxx_instance() functions being trivial, store the instance
366 // pointer in a temporary variable to avoid losing its reference. 379 // pointer in a temporary variable to avoid losing its reference.
367 mojom::AppInstancePtr temporary_app_ptr_; 380 mojom::AppInstancePtr temporary_app_ptr_;
368 mojom::AudioInstancePtr temporary_audio_ptr_; 381 mojom::AudioInstancePtr temporary_audio_ptr_;
369 mojom::AuthInstancePtr temporary_auth_ptr_; 382 mojom::AuthInstancePtr temporary_auth_ptr_;
370 mojom::BluetoothInstancePtr temporary_bluetooth_ptr_; 383 mojom::BluetoothInstancePtr temporary_bluetooth_ptr_;
371 mojom::ClipboardInstancePtr temporary_clipboard_ptr_; 384 mojom::ClipboardInstancePtr temporary_clipboard_ptr_;
372 mojom::CrashCollectorInstancePtr temporary_crash_collector_ptr_; 385 mojom::CrashCollectorInstancePtr temporary_crash_collector_ptr_;
373 mojom::FileSystemInstancePtr temporary_file_system_ptr_; 386 mojom::FileSystemInstancePtr temporary_file_system_ptr_;
374 mojom::ImeInstancePtr temporary_ime_ptr_; 387 mojom::ImeInstancePtr temporary_ime_ptr_;
375 mojom::IntentHelperInstancePtr temporary_intent_helper_ptr_; 388 mojom::IntentHelperInstancePtr temporary_intent_helper_ptr_;
376 mojom::MetricsInstancePtr temporary_metrics_ptr_; 389 mojom::MetricsInstancePtr temporary_metrics_ptr_;
377 mojom::NetInstancePtr temporary_net_ptr_; 390 mojom::NetInstancePtr temporary_net_ptr_;
378 mojom::NotificationsInstancePtr temporary_notifications_ptr_; 391 mojom::NotificationsInstancePtr temporary_notifications_ptr_;
392 mojom::ObbMounterInstancePtr temporary_obb_mounter_ptr_;
379 mojom::PolicyInstancePtr temporary_policy_ptr_; 393 mojom::PolicyInstancePtr temporary_policy_ptr_;
380 mojom::PowerInstancePtr temporary_power_ptr_; 394 mojom::PowerInstancePtr temporary_power_ptr_;
381 mojom::ProcessInstancePtr temporary_process_ptr_; 395 mojom::ProcessInstancePtr temporary_process_ptr_;
382 mojom::StorageManagerInstancePtr temporary_storage_manager_ptr_; 396 mojom::StorageManagerInstancePtr temporary_storage_manager_ptr_;
383 mojom::VideoInstancePtr temporary_video_ptr_; 397 mojom::VideoInstancePtr temporary_video_ptr_;
384 mojom::WindowManagerInstancePtr temporary_window_manager_ptr_; 398 mojom::WindowManagerInstancePtr temporary_window_manager_ptr_;
385 399
386 base::ObserverList<Observer> observer_list_; 400 base::ObserverList<Observer> observer_list_;
387 401
388 base::ThreadChecker thread_checker_; 402 base::ThreadChecker thread_checker_;
389 403
390 // If the ARC instance service is available. 404 // If the ARC instance service is available.
391 bool available_; 405 bool available_;
392 406
393 // The current state of the bridge. 407 // The current state of the bridge.
394 ArcBridgeService::State state_; 408 ArcBridgeService::State state_;
395 409
396 // WeakPtrFactory to use callbacks. 410 // WeakPtrFactory to use callbacks.
397 base::WeakPtrFactory<ArcBridgeService> weak_factory_; 411 base::WeakPtrFactory<ArcBridgeService> weak_factory_;
398 412
399 DISALLOW_COPY_AND_ASSIGN(ArcBridgeService); 413 DISALLOW_COPY_AND_ASSIGN(ArcBridgeService);
400 }; 414 };
401 415
402 } // namespace arc 416 } // namespace arc
403 417
404 #endif // COMPONENTS_ARC_ARC_BRIDGE_SERVICE_H_ 418 #endif // COMPONENTS_ARC_ARC_BRIDGE_SERVICE_H_
OLDNEW
« no previous file with comments | « components/arc/BUILD.gn ('k') | components/arc/arc_bridge_service.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698