blob: 8c21593cfd469a948a382213576a4a55af2a249c [file] [log] [blame]
asargent631a99a2015-10-15 21:51:481// Copyright 2015 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#include "extensions/browser/updater/update_client_config.h"
6
Gabriel Charette5ff87ce2017-05-16 18:03:457#include "base/sequenced_task_runner.h"
fdoray1d795c12017-04-25 13:31:278#include "base/task_scheduler/post_task.h"
Robert Liaodc4bd372017-07-10 18:24:589#include "base/task_scheduler/task_traits.h"
10#include "build/build_config.h"
asargent631a99a2015-10-15 21:51:4811
12namespace extensions {
13
14UpdateClientConfig::UpdateClientConfig() {}
15
16scoped_refptr<base::SequencedTaskRunner>
17UpdateClientConfig::GetSequencedTaskRunner() const {
Robert Liaodc4bd372017-07-10 18:24:5818 constexpr base::TaskTraits traits = {
19 base::MayBlock(), base::TaskPriority::BACKGROUND,
20 base::TaskShutdownBehavior::SKIP_ON_SHUTDOWN};
21#if defined(OS_WIN)
22 // Use the COM STA task runner as the Windows background downloader requires
23 // COM initialization.
24 return base::CreateCOMSTATaskRunnerWithTraits(traits);
25#else
26 return base::CreateSequencedTaskRunnerWithTraits(traits);
27#endif
asargent631a99a2015-10-15 21:51:4828}
29
asargent631a99a2015-10-15 21:51:4830UpdateClientConfig::~UpdateClientConfig() {}
31
32} // namespace extensions