#include "chrome/browser/web_applications/jobs/install_from_info_job.h"
#include <memory>
#include <utility>
#include "base/functional/bind.h"
#include "base/memory/weak_ptr.h"
#include "chrome/browser/web_applications/jobs/uninstall/web_app_uninstall_and_replace_job.h"
#include "chrome/browser/web_applications/proto/web_app_proto_package.pb.h"
#include "chrome/browser/web_applications/web_app.h"
#include "chrome/browser/web_applications/web_app_helpers.h"
#include "chrome/browser/web_applications/web_app_install_finalizer.h"
#include "chrome/browser/web_applications/web_app_install_utils.h"
#include "components/webapps/browser/install_result_code.h"
#include "components/webapps/browser/installable/installable_metrics.h"
#include "components/webapps/common/web_app_id.h"
namespace web_app {
InstallFromInfoJob::InstallFromInfoJob(
Profile* profile,
base::Value::Dict& debug_value,
std::unique_ptr<WebAppInstallInfo> install_info,
bool overwrite_existing_manifest_fields,
webapps::WebappInstallSource install_surface,
std::optional<WebAppInstallParams> install_params,
ResultCallback install_callback)
: … { … }
InstallFromInfoJob::~InstallFromInfoJob() = default;
void InstallFromInfoJob::Start(WithAppResources* lock_with_app_resources) { … }
void InstallFromInfoJob::OnInstallCompleted(const webapps::AppId& app_id,
webapps::InstallResultCode code) { … }
}