chromium/chrome/browser/feedback/system_logs/log_sources/related_website_sets_source.cc

// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "chrome/browser/feedback/system_logs/log_sources/related_website_sets_source.h"

#include <set>
#include <utility>

#include "base/json/json_writer.h"
#include "base/values.h"
#include "chrome/browser/first_party_sets/first_party_sets_policy_service.h"
#include "components/feedback/system_logs/system_logs_source.h"
#include "content/public/browser/browser_thread.h"
#include "net/base/schemeful_site.h"
#include "net/first_party_sets/first_party_set_entry.h"

namespace system_logs {

namespace {

constexpr char kRelatedWebsiteSetsDisabled[] =;

constexpr char kRelatedWebsiteSetSPrimarySitesField[] =;
constexpr char kRelatedWebsiteSetAssociatedSitesField[] =;
constexpr char kRelatedWebsiteSetServiceSitesField[] =;
constexpr char kSerializationError[] =;

const char* GetSiteType(const net::SiteType type) {}

// Computes the Related Website Sets info in the following format:
// [ {
//   "AssociatedSites": [ "https://a.com", "https://b.com", "https://b.edu" ],
//   "PrimarySites": [ "https://example.com" ],
//   "ServiceSites": [ "https://c.com" ],
// }, {
//   "AssociatedSites": [ "https://a2.com", "https://b2.com" ],
//   "PrimarySites": [ "https://example2.com", "https://example2.com.co" ]
// } ]
std::string ComputeRelatedWebsiteSetsInfo(
    base::WeakPtr<first_party_sets::FirstPartySetsPolicyService> service) {}

}  // namespace

RelatedWebsiteSetsSource::RelatedWebsiteSetsSource(
    first_party_sets::FirstPartySetsPolicyService* service)
    :{}

RelatedWebsiteSetsSource::~RelatedWebsiteSetsSource() = default;

void RelatedWebsiteSetsSource::Fetch(SysLogsSourceCallback callback) {}

}  // namespace system_logs