1 // Copyright 2014 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.
5 #ifndef REMOTING_HOST_SERVER_LOG_ENTRY_HOST_H_
6 #define REMOTING_HOST_SERVER_LOG_ENTRY_HOST_H_
8 #include "remoting/host/host_exit_codes.h"
9 #include "remoting/host/host_status_sender.h"
10 #include "remoting/protocol/transport.h"
16 // Constructs a log entry for a session state change.
17 // Currently this is either connection or disconnection.
18 scoped_ptr<ServerLogEntry> MakeLogEntryForSessionStateChange(
21 // Constructs a log entry for a heartbeat.
22 scoped_ptr<ServerLogEntry> MakeLogEntryForHeartbeat();
24 // Constructs a log entry for a host status message.
25 scoped_ptr<ServerLogEntry> MakeLogEntryForHostStatus(
26 HostStatusSender::HostStatus host_status, HostExitCodes exit_code);
28 // Adds fields describing the host to this log entry.
29 void AddHostFieldsToLogEntry(ServerLogEntry* entry);
31 // Adds a field describing connection type (direct/stun/relay).
32 void AddConnectionTypeToLogEntry(ServerLogEntry* entry,
33 protocol::TransportRoute::RouteType type);
35 } // namespace remoting
37 #endif // REMOTING_HOST_SERVER_LOG_ENTRY_HOST_H_