#include "components/enterprise/browser/identifiers/profile_id_service.h"
#include <utility>
#include "base/base64url.h"
#include "base/check.h"
#include "base/hash/sha1.h"
#include "base/metrics/histogram_functions.h"
#include "base/no_destructor.h"
#include "components/enterprise/browser/identifiers/identifiers_prefs.h"
#include "components/enterprise/browser/identifiers/profile_id_delegate.h"
#include "components/prefs/pref_service.h"
namespace enterprise {
namespace {
static constexpr char kErrorHistogramName[] = …;
static constexpr char kStatusHistogramName[] = …;
std::nullopt_t RecordError(ProfileIdService::Error error) { … }
std::string& GetTestProfileIdFromStorage() { … }
}
ProfileIdService::ProfileIdService(std::unique_ptr<ProfileIdDelegate> delegate,
PrefService* profile_prefs)
: … { … }
ProfileIdService::ProfileIdService(const std::string profile_id) { … }
ProfileIdService::~ProfileIdService() = default;
std::optional<std::string> ProfileIdService::GetProfileId() { … }
std::optional<std::string> ProfileIdService::GetProfileIdWithGuidAndDeviceId(
const std::string profile_guid,
const std::string device_id) { … }
}