blob: ef40e9cd7cbee91d3f5710247c6413eb8c8f6ff0 [file] [log] [blame]
Andreea Costinas942284d2020-01-28 16:28:40 +01001// Copyright 2020 The Chromium OS 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#ifndef SYSTEM_PROXY_SYSTEM_PROXY_DAEMON_H_
5#define SYSTEM_PROXY_SYSTEM_PROXY_DAEMON_H_
6
7#include <memory>
8
9#include <brillo/daemons/dbus_daemon.h>
10
11namespace brillo {
12namespace dbus_utils {
13class AsyncEventSequencer;
14}
15} // namespace brillo
16
17namespace system_proxy {
18
19class SystemProxyAdaptor;
20
21class SystemProxyDaemon : public brillo::DBusServiceDaemon {
22 public:
23 SystemProxyDaemon();
24 SystemProxyDaemon(const SystemProxyDaemon&) = delete;
25 SystemProxyDaemon& operator=(const SystemProxyDaemon&) = delete;
26 ~SystemProxyDaemon();
27
28 protected:
29 void RegisterDBusObjectsAsync(
30 brillo::dbus_utils::AsyncEventSequencer* sequencer) override;
31
32 private:
33 std::unique_ptr<SystemProxyAdaptor> adaptor_;
34};
35} // namespace system_proxy
36#endif // SYSTEM_PROXY_SYSTEM_PROXY_DAEMON_H_