#include "chrome/browser/web_applications/commands/manifest_update_finalize_command.h"
#include <memory>
#include "base/memory/weak_ptr.h"
#include "base/strings/to_string.h"
#include "base/strings/utf_string_conversions.h"
#include "base/values.h"
#include "chrome/browser/profiles/keep_alive/scoped_profile_keep_alive.h"
#include "chrome/browser/web_applications/commands/web_app_command.h"
#include "chrome/browser/web_applications/locks/app_lock.h"
#include "chrome/browser/web_applications/manifest_update_utils.h"
#include "chrome/browser/web_applications/web_app_install_finalizer.h"
#include "chrome/browser/web_applications/web_app_install_info.h"
#include "chrome/browser/web_applications/web_app_registrar.h"
#include "chrome/browser/web_applications/web_app_sync_bridge.h"
#include "components/keep_alive_registry/scoped_keep_alive.h"
#include "components/webapps/browser/install_result_code.h"
#include "components/webapps/common/web_app_id.h"
namespace web_app {
ManifestUpdateFinalizeCommand::ManifestUpdateFinalizeCommand(
const GURL& url,
const webapps::AppId& app_id,
std::unique_ptr<WebAppInstallInfo> install_info,
ManifestWriteCallback write_callback,
std::unique_ptr<ScopedKeepAlive> keep_alive,
std::unique_ptr<ScopedProfileKeepAlive> profile_keep_alive)
: … { … }
ManifestUpdateFinalizeCommand::~ManifestUpdateFinalizeCommand() = default;
void ManifestUpdateFinalizeCommand::StartWithLock(
std::unique_ptr<AppLock> lock) { … }
void ManifestUpdateFinalizeCommand::OnInstallationComplete(
const webapps::AppId& app_id,
webapps::InstallResultCode code) { … }
void ManifestUpdateFinalizeCommand::CompleteCommand(
webapps::InstallResultCode code,
ManifestUpdateResult result) { … }
}