2021-01-21 05:45:06 +00:00
|
|
|
// Copyright 2018 The Chromium Authors. All rights reserved.
|
|
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
|
|
// found in the LICENSE file.
|
|
|
|
|
|
|
|
#include "shell/browser/badging/badge_manager_factory.h"
|
|
|
|
|
2023-02-03 11:43:42 +00:00
|
|
|
#include "base/functional/bind.h"
|
2021-01-21 05:45:06 +00:00
|
|
|
#include "base/memory/ptr_util.h"
|
|
|
|
#include "base/memory/singleton.h"
|
|
|
|
#include "components/keyed_service/content/browser_context_dependency_manager.h"
|
|
|
|
#include "shell/browser/badging/badge_manager.h"
|
|
|
|
|
|
|
|
namespace badging {
|
|
|
|
|
|
|
|
// static
|
|
|
|
BadgeManager* BadgeManagerFactory::GetForBrowserContext(
|
|
|
|
content::BrowserContext* context) {
|
|
|
|
return static_cast<badging::BadgeManager*>(
|
|
|
|
GetInstance()->GetServiceForBrowserContext(context, true));
|
|
|
|
}
|
|
|
|
|
|
|
|
// static
|
|
|
|
BadgeManagerFactory* BadgeManagerFactory::GetInstance() {
|
2024-02-23 09:35:20 +00:00
|
|
|
static base::NoDestructor<BadgeManagerFactory> instance;
|
|
|
|
return instance.get();
|
2021-01-21 05:45:06 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
BadgeManagerFactory::BadgeManagerFactory()
|
|
|
|
: BrowserContextKeyedServiceFactory(
|
|
|
|
"BadgeManager",
|
|
|
|
BrowserContextDependencyManager::GetInstance()) {}
|
|
|
|
|
2021-06-04 04:16:13 +00:00
|
|
|
BadgeManagerFactory::~BadgeManagerFactory() = default;
|
2021-01-21 05:45:06 +00:00
|
|
|
|
|
|
|
KeyedService* BadgeManagerFactory::BuildServiceInstanceFor(
|
|
|
|
content::BrowserContext* context) const {
|
|
|
|
return new BadgeManager();
|
|
|
|
}
|
|
|
|
|
|
|
|
} // namespace badging
|