#include "components/gcm_driver/instance_id/fake_gcm_driver_for_instance_id.h"
#include "base/files/file_util.h"
#include "base/functional/bind.h"
#include "base/json/json_reader.h"
#include "base/json/json_writer.h"
#include "base/location.h"
#include "base/logging.h"
#include "base/rand_util.h"
#include "base/ranges/algorithm.h"
#include "base/strings/string_number_conversions.h"
#include "base/strings/string_util.h"
#include "base/task/sequenced_task_runner.h"
#include "base/task/single_thread_task_runner.h"
#include "base/task/task_runner.h"
#include "base/threading/thread_restrictions.h"
#include "base/time/time.h"
#include "components/gcm_driver/common/gcm_message.h"
#include "components/gcm_driver/gcm_client.h"
#include "components/gcm_driver/gcm_connection_observer.h"
#include "net/base/ip_endpoint.h"
namespace instance_id {
const base::FilePath::CharType kStoredTokensFileName[] = …);
FakeGCMDriverForInstanceID::FakeGCMDriverForInstanceID()
: … { … }
FakeGCMDriverForInstanceID::FakeGCMDriverForInstanceID(
const base::FilePath& store_path,
const scoped_refptr<base::SequencedTaskRunner>& blocking_task_runner)
: … { … }
FakeGCMDriverForInstanceID::~FakeGCMDriverForInstanceID() = default;
gcm::InstanceIDHandler*
FakeGCMDriverForInstanceID::GetInstanceIDHandlerInternal() { … }
void FakeGCMDriverForInstanceID::AddConnectionObserver(
gcm::GCMConnectionObserver* observer) { … }
void FakeGCMDriverForInstanceID::RemoveConnectionObserver(
gcm::GCMConnectionObserver* observer) { … }
void FakeGCMDriverForInstanceID::AddAppHandler(const std::string& app_id,
gcm::GCMAppHandler* handler) { … }
bool FakeGCMDriverForInstanceID::HasTokenForAppId(
const std::string& app_id,
const std::string& token) const { … }
void FakeGCMDriverForInstanceID::WaitForAppIdBeforeConnection(
const std::string& app_id) { … }
void FakeGCMDriverForInstanceID::AddInstanceIDData(
const std::string& app_id,
const std::string& instance_id,
const std::string& extra_data) { … }
void FakeGCMDriverForInstanceID::RemoveInstanceIDData(
const std::string& app_id) { … }
void FakeGCMDriverForInstanceID::GetInstanceIDData(
const std::string& app_id,
GetInstanceIDDataCallback callback) { … }
void FakeGCMDriverForInstanceID::GetToken(
const std::string& app_id,
const std::string& authorized_entity,
const std::string& scope,
base::TimeDelta time_to_live,
GetTokenCallback callback) { … }
void FakeGCMDriverForInstanceID::ValidateToken(
const std::string& app_id,
const std::string& authorized_entity,
const std::string& scope,
const std::string& token,
ValidateTokenCallback callback) { … }
void FakeGCMDriverForInstanceID::DeleteToken(
const std::string& app_id,
const std::string& authorized_entity,
const std::string& scope,
DeleteTokenCallback callback) { … }
std::string FakeGCMDriverForInstanceID::GenerateTokenImpl(
const std::string& app_id,
const std::string& authorized_entity,
const std::string& scope) { … }
void FakeGCMDriverForInstanceID::StoreTokensIfNeeded() { … }
void FakeGCMDriverForInstanceID::ConnectIfNeeded() { … }
}