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

Side by Side Diff: extensions/browser/api/runtime/runtime_api_delegate.h

Issue 264743014: Move chrome.runtime to //extensions. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: prevent runtime impl from handling invalid update versions Created 6 years, 7 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 | Annotate | Revision Log
OLDNEW
(Empty)
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 #ifndef EXTENSIONS_BROWSER_API_RUNTIME_RUNTIME_API_DELEGATE_H
6 #define EXTENSIONS_BROWSER_API_RUNTIME_RUNTIME_API_DELEGATE_H
7
8 #include "base/callback.h"
9 #include "base/version.h"
10
11 class GURL;
12
13 namespace extensions {
14
15 namespace core_api {
16 namespace runtime {
17 struct PlatformInfo;
18 }
19 }
20
21 class Extension;
22 class UpdateObserver;
23
24 // This is a delegate interface for chrome.runtime API behavior. Clients must
25 // vend some implementation of this interface through
26 // ExtensionsBrowserClient::CreateRuntimeAPIDelegate.
27 class RuntimeAPIDelegate {
28 public:
29 struct UpdateCheckResult {
30 bool success;
31 std::string response;
32 std::string version;
33
34 UpdateCheckResult(bool success,
35 const std::string& response,
36 const std::string& version);
37 };
38
39 virtual ~RuntimeAPIDelegate() {}
40
41 // The callback given to RequestUpdateCheck.
42 typedef base::Callback<void(const UpdateCheckResult&)> UpdateCheckCallback;
43
44 // Registers an UpdateObserver on behalf of the runtime API.
45 virtual void AddUpdateObserver(UpdateObserver* observer) = 0;
46
47 // Unregisters an UpdateObserver on behalf of the runtime API.
48 virtual void RemoveUpdateObserver(UpdateObserver* observer) = 0;
49
50 // Determines an extension's previously installed version if applicable.
51 virtual base::Version GetPreviousExtensionVersion(
52 const Extension* extension) = 0;
53
54 // Reloads an extension.
55 virtual void ReloadExtension(const std::string& extension_id) = 0;
56
57 // Requests an extensions update update check. Returns |false| if updates
58 // are disabled. Otherwise |callback| is called with the result of the
59 // update check.
60 virtual bool CheckForUpdates(const std::string& extension_id,
61 const UpdateCheckCallback& callback) = 0;
62
63 // Navigates the browser to a URL on behalf of the runtime API.
64 virtual void OpenURL(const GURL& uninstall_url) = 0;
65
66 // Populates platform info to be provided by the getPlatformInfo function.
67 // Returns false iff no info is provided.
68 virtual bool GetPlatformInfo(core_api::runtime::PlatformInfo* info) = 0;
69
70 // Request a restart of the host device. Returns false iff the device
71 // will not be restarted.
72 virtual bool RestartDevice(std::string* error_message) = 0;
73 };
74
75 } // namespace extensions
76
77 #endif // EXTENSIONS_BROWSER_API_RUNTIME_RUNTIME_API_DELEGATE_H
OLDNEW
« no previous file with comments | « extensions/browser/api/runtime/runtime_api.cc ('k') | extensions/browser/api/runtime/runtime_api_delegate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698