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

Side by Side Diff: chrome/browser/android/webapk/webapk_install_service.cc

Issue 2933783002: [Android WebAPK] Change WebAPK update into two phases (Closed)
Patch Set: Merge branch 'master' into background_updates0 Created 3 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
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 #include "chrome/browser/android/webapk/webapk_install_service.h" 5 #include "chrome/browser/android/webapk/webapk_install_service.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "chrome/browser/android/shortcut_info.h" 8 #include "chrome/browser/android/shortcut_info.h"
9 #include "chrome/browser/android/webapk/webapk_install_service_factory.h" 9 #include "chrome/browser/android/webapk/webapk_install_service_factory.h"
10 #include "chrome/browser/android/webapk/webapk_installer.h" 10 #include "chrome/browser/android/webapk/webapk_installer.h"
(...skipping 24 matching lines...) Expand all
35 installs_.insert(shortcut_info.manifest_url); 35 installs_.insert(shortcut_info.manifest_url);
36 36
37 WebApkInstaller::InstallAsync( 37 WebApkInstaller::InstallAsync(
38 browser_context_, shortcut_info, primary_icon, badge_icon, 38 browser_context_, shortcut_info, primary_icon, badge_icon,
39 base::Bind(&WebApkInstallService::OnFinishedInstall, 39 base::Bind(&WebApkInstallService::OnFinishedInstall,
40 weak_ptr_factory_.GetWeakPtr(), shortcut_info.manifest_url, 40 weak_ptr_factory_.GetWeakPtr(), shortcut_info.manifest_url,
41 finish_callback)); 41 finish_callback));
42 } 42 }
43 43
44 void WebApkInstallService::UpdateAsync( 44 void WebApkInstallService::UpdateAsync(
45 const ShortcutInfo& shortcut_info,
46 const SkBitmap& primary_icon,
47 const SkBitmap& badge_icon,
48 const std::string& webapk_package, 45 const std::string& webapk_package,
49 int webapk_version, 46 const GURL& start_url,
50 const std::map<std::string, std::string>& icon_url_to_murmur2_hash, 47 const base::string16& short_name,
51 bool is_manifest_stale, 48 std::unique_ptr<std::vector<uint8_t>> serialized_proto,
52 const FinishCallback& finish_callback) { 49 const FinishCallback& finish_callback) {
53 DCHECK(!IsInstallInProgress(shortcut_info.manifest_url)); 50 WebApkInstaller::UpdateAsync(browser_context_, webapk_package, start_url,
54 51 short_name, std::move(serialized_proto),
55 installs_.insert(shortcut_info.manifest_url); 52 finish_callback);
56
57 WebApkInstaller::UpdateAsync(
58 browser_context_, shortcut_info, primary_icon, badge_icon, webapk_package,
59 webapk_version, icon_url_to_murmur2_hash, is_manifest_stale,
60 base::Bind(&WebApkInstallService::OnFinishedInstall,
61 weak_ptr_factory_.GetWeakPtr(), shortcut_info.manifest_url,
62 finish_callback));
63 } 53 }
64 54
65 void WebApkInstallService::OnFinishedInstall( 55 void WebApkInstallService::OnFinishedInstall(
66 const GURL& web_manifest_url, 56 const GURL& web_manifest_url,
67 const FinishCallback& finish_callback, 57 const FinishCallback& finish_callback,
68 WebApkInstallResult result, 58 WebApkInstallResult result,
69 bool relax_updates, 59 bool relax_updates,
70 const std::string& webapk_package_name) { 60 const std::string& webapk_package_name) {
71 finish_callback.Run(result, relax_updates, webapk_package_name); 61 finish_callback.Run(result, relax_updates, webapk_package_name);
72 installs_.erase(web_manifest_url); 62 installs_.erase(web_manifest_url);
73 } 63 }
OLDNEW
« no previous file with comments | « chrome/browser/android/webapk/webapk_install_service.h ('k') | chrome/browser/android/webapk/webapk_installer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698