// Copyright 2017 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 "components/dbus/dbus_thread_linux.h"

#include "base/task/lazy_task_runner.h"

namespace dbus_thread_linux {

namespace {

// Use TaskPriority::USER_BLOCKING, because there is a client
// (NotificationPlatformBridgeLinuxImpl) which needs to run user-blocking tasks
// on this thread. Use SingleThreadTaskRunnerThreadMode::SHARED, because DBus
// does not require an exclusive use of the thread, only the existence of a
// single thread for all tasks.
base::LazySingleThreadTaskRunner g_dbus_thread_task_runner =
    LAZY_SINGLE_THREAD_TASK_RUNNER_INITIALIZER(
        base::TaskTraits(base::MayBlock(), base::TaskPriority::USER_BLOCKING),
        base::SingleThreadTaskRunnerThreadMode::SHARED);

}  // namespace

scoped_refptr<base::SingleThreadTaskRunner> GetTaskRunner() {
  return g_dbus_thread_task_runner.Get();
}

}  // namespace dbus_thread_linux
