#include "remoting/test/ftl_services_playground.h"
#include <inttypes.h>
#include <string>
#include <utility>
#include <vector>
#include "base/base64.h"
#include "base/command_line.h"
#include "base/files/file_path.h"
#include "base/functional/bind.h"
#include "base/functional/callback_helpers.h"
#include "base/logging.h"
#include "base/path_service.h"
#include "base/run_loop.h"
#include "base/task/single_thread_task_runner.h"
#include "remoting/base/oauth_token_getter_impl.h"
#include "remoting/base/protobuf_http_status.h"
#include "remoting/base/url_request_context_getter.h"
#include "remoting/proto/ftl/v1/ftl_messages.pb.h"
#include "remoting/test/cli_util.h"
#include "remoting/test/test_device_id_provider.h"
#include "remoting/test/test_oauth_token_getter.h"
#include "remoting/test/test_token_storage.h"
#include "services/network/public/cpp/shared_url_loader_factory.h"
#include "services/network/transitional_url_loader_factory_owner.h"
namespace {
constexpr char kSwitchNameHelp[] = …;
constexpr char kSwitchNameUsername[] = …;
constexpr char kSwitchNameStoragePath[] = …;
constexpr char kSwitchNameNoAutoSignin[] = …;
bool NeedsManualSignin() { … }
}
namespace remoting {
FtlServicesPlayground::FtlServicesPlayground() { … }
FtlServicesPlayground::~FtlServicesPlayground() = default;
bool FtlServicesPlayground::ShouldPrintHelp() { … }
void FtlServicesPlayground::PrintHelp() { … }
void FtlServicesPlayground::StartAndAuthenticate() { … }
void FtlServicesPlayground::StartLoop() { … }
void FtlServicesPlayground::ResetServices(base::OnceClosure on_done) { … }
void FtlServicesPlayground::SignInGaia(base::OnceClosure on_done) { … }
void FtlServicesPlayground::OnSignInGaiaResponse(
base::OnceClosure on_done,
const ProtobufHttpStatus& status) { … }
void FtlServicesPlayground::SendMessage(base::OnceClosure on_done) { … }
void FtlServicesPlayground::DoSendMessage(const std::string& receiver_id,
const std::string& registration_id,
base::OnceClosure on_done,
bool should_keep_running) { … }
void FtlServicesPlayground::OnSendMessageResponse(
base::OnceCallback<void(bool)> on_continue,
const ProtobufHttpStatus& status) { … }
void FtlServicesPlayground::StartReceivingMessages(base::OnceClosure on_done) { … }
void FtlServicesPlayground::StopReceivingMessages(base::OnceClosure on_done) { … }
void FtlServicesPlayground::OnMessageReceived(
const ftl::Id& sender_id,
const std::string& sender_registration_id,
const ftl::ChromotingMessage& message) { … }
void FtlServicesPlayground::OnReceiveMessagesStreamReady() { … }
void FtlServicesPlayground::OnReceiveMessagesStreamClosed(
const ProtobufHttpStatus& status) { … }
void FtlServicesPlayground::HandleStatusError(
base::OnceClosure on_done,
const ProtobufHttpStatus& status) { … }
}