// Copyright 2015 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. #ifndef REMOTING_TEST_HOST_INFO_H_ #define REMOTING_TEST_HOST_INFO_H_ #include #include #include "base/values.h" #include "remoting/test/connection_setup_info.h" namespace remoting { namespace test { enum HostStatus { kHostStatusOnline, kHostStatusOffline }; struct HostInfo { HostInfo(); HostInfo(const HostInfo& other); ~HostInfo(); // Returns true if |host_info| is valid and initializes HostInfo. bool ParseHostInfo(const base::DictionaryValue& host_info); // Returns true if the chromoting host is ready to accept connections. bool IsReadyForConnection() const; // Generates connection information to establish a chromoting connection. ConnectionSetupInfo GenerateConnectionSetupInfo( const std::string& access_token, const std::string& user_name, const std::string& pin) const; std::string host_id; std::string host_jid; std::string host_name; HostStatus status = kHostStatusOffline; std::string offline_reason; std::string public_key; std::vector token_url_patterns; }; } // namespace test } // namespace remoting #endif // REMOTING_TEST_HOST_INFO_H_