#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-private-field"
#endif
#include "components/browsing_topics/mojom/browsing_topics_internals.mojom.h"
#include <math.h>
#include <stdint.h>
#include <utility>
#include "base/debug/alias.h"
#include "base/hash/md5_constexpr.h"
#include "base/run_loop.h"
#include "base/strings/string_number_conversions.h"
#include "base/task/thread_pool/thread_pool_instance.h"
#include "base/trace_event/trace_event.h"
#include "base/trace_event/typed_macros.h"
#include "mojo/public/cpp/bindings/features.h"
#include "mojo/public/cpp/bindings/lib/default_construct_tag_internal.h"
#include "mojo/public/cpp/bindings/lib/generated_code_util.h"
#include "mojo/public/cpp/bindings/lib/message_internal.h"
#include "mojo/public/cpp/bindings/lib/proxy_to_responder.h"
#include "mojo/public/cpp/bindings/lib/send_message_helper.h"
#include "mojo/public/cpp/bindings/lib/serialization_util.h"
#include "mojo/public/cpp/bindings/lib/unserialized_message_context.h"
#include "mojo/public/cpp/bindings/lib/validate_params.h"
#include "mojo/public/cpp/bindings/lib/validation_errors.h"
#include "mojo/public/cpp/bindings/mojo_buildflags.h"
#include "mojo/public/cpp/bindings/urgent_message_scope.h"
#include "mojo/public/interfaces/bindings/interface_control_messages.mojom.h"
#include "third_party/perfetto/include/perfetto/tracing/traced_value.h"
#include "components/browsing_topics/mojom/browsing_topics_internals.mojom-params-data.h"
#include "components/browsing_topics/mojom/browsing_topics_internals.mojom-shared-message-ids.h"
#include "components/browsing_topics/mojom/browsing_topics_internals.mojom-import-headers.h"
#include "components/browsing_topics/mojom/browsing_topics_internals.mojom-test-utils.h"
namespace browsing_topics::mojom {
WebUIBrowsingTopicsConfiguration::WebUIBrowsingTopicsConfiguration()
: … { … }
WebUIBrowsingTopicsConfiguration::WebUIBrowsingTopicsConfiguration(
bool browsing_topics_enabled_in,
bool privacy_sandbox_ads_apis_override_enabled_in,
bool override_privacy_sandbox_settings_local_testing_enabled_in,
bool browsing_topics_bypass_ip_is_publicly_routable_check_enabled_in,
bool browsing_topics_document_api_enabled_in,
int32_t config_version_in,
bool browsing_topics_parameters_enabled_in,
int32_t number_of_epochs_to_expose_in,
::base::TimeDelta time_period_per_epoch_in,
int32_t number_of_top_topics_per_epoch_in,
int32_t use_random_topic_probability_percent_in,
::base::TimeDelta max_epoch_introduction_delay_in,
int32_t number_of_epochs_of_observation_data_to_use_for_filtering_in,
int32_t max_number_of_api_usage_context_domains_to_keep_per_topic_in,
int32_t max_number_of_api_usage_context_entries_to_load_per_epoch_in,
int32_t max_number_of_api_usage_context_domains_to_store_per_page_load_in,
int32_t taxonomy_version_in,
const std::string& disabled_topics_list_in)
: … { … }
WebUIBrowsingTopicsConfiguration::~WebUIBrowsingTopicsConfiguration() = default;
void WebUIBrowsingTopicsConfiguration::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool WebUIBrowsingTopicsConfiguration::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
WebUITopic::WebUITopic()
: … { … }
WebUITopic::WebUITopic(
int32_t topic_id_in,
const ::std::u16string& topic_name_in,
bool is_real_topic_in,
std::vector<std::string> observed_by_domains_in)
: … { … }
WebUITopic::~WebUITopic() = default;
void WebUITopic::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool WebUITopic::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
WebUIEpoch::WebUIEpoch()
: … { … }
WebUIEpoch::WebUIEpoch(
std::vector<WebUITopicPtr> topics_in,
::base::Time calculation_time_in,
const std::string& model_version_in,
const std::string& taxonomy_version_in)
: … { … }
WebUIEpoch::~WebUIEpoch() = default;
void WebUIEpoch::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool WebUIEpoch::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
WebUIBrowsingTopicsState::WebUIBrowsingTopicsState()
: … { … }
WebUIBrowsingTopicsState::WebUIBrowsingTopicsState(
std::vector<WebUIEpochPtr> epochs_in,
::base::Time next_scheduled_calculation_time_in)
: … { … }
WebUIBrowsingTopicsState::~WebUIBrowsingTopicsState() = default;
void WebUIBrowsingTopicsState::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool WebUIBrowsingTopicsState::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
WebUIModelInfo::WebUIModelInfo()
: … { … }
WebUIModelInfo::WebUIModelInfo(
const std::string& model_version_in,
const std::string& model_file_path_in)
: … { … }
WebUIModelInfo::~WebUIModelInfo() = default;
size_t WebUIModelInfo::Hash(size_t seed) const { … }
void WebUIModelInfo::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool WebUIModelInfo::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
WebUIGetBrowsingTopicsStateResult::WebUIGetBrowsingTopicsStateResult() : … { … }
WebUIGetBrowsingTopicsStateResult::~WebUIGetBrowsingTopicsStateResult() { … }
void WebUIGetBrowsingTopicsStateResult::set_override_status_message(
const std::string& override_status_message) { … }
void WebUIGetBrowsingTopicsStateResult::set_browsing_topics_state(
WebUIBrowsingTopicsStatePtr browsing_topics_state) { … }
void WebUIGetBrowsingTopicsStateResult::DestroyActive() { … }
bool WebUIGetBrowsingTopicsStateResult::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
WebUIGetModelInfoResult::WebUIGetModelInfoResult() : … { … }
WebUIGetModelInfoResult::~WebUIGetModelInfoResult() { … }
void WebUIGetModelInfoResult::set_override_status_message(
const std::string& override_status_message) { … }
void WebUIGetModelInfoResult::set_model_info(
WebUIModelInfoPtr model_info) { … }
void WebUIGetModelInfoResult::DestroyActive() { … }
size_t WebUIGetModelInfoResult::Hash(size_t seed) const { … }
bool WebUIGetModelInfoResult::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
const char PageHandler::Name_[] = …;
PageHandler::IPCStableHashFunction PageHandler::MessageToMethodInfo_(mojo::Message& message) { … }
const char* PageHandler::MessageToMethodName_(mojo::Message& message) { … }
#if !BUILDFLAG(IS_FUCHSIA)
uint32_t PageHandler::GetBrowsingTopicsConfiguration_Sym::IPCStableHash() { … }
uint32_t PageHandler::GetBrowsingTopicsState_Sym::IPCStableHash() { … }
uint32_t PageHandler::GetModelInfo_Sym::IPCStableHash() { … }
uint32_t PageHandler::ClassifyHosts_Sym::IPCStableHash() { … }
# endif
class PageHandler_GetBrowsingTopicsConfiguration_ForwardToCallback
: public mojo::MessageReceiver { … };
class PageHandler_GetBrowsingTopicsState_ForwardToCallback
: public mojo::MessageReceiver { … };
class PageHandler_GetModelInfo_ForwardToCallback
: public mojo::MessageReceiver { … };
class PageHandler_ClassifyHosts_ForwardToCallback
: public mojo::MessageReceiver { … };
PageHandlerProxy::PageHandlerProxy(mojo::MessageReceiverWithResponder* receiver)
: … { … }
void PageHandlerProxy::GetBrowsingTopicsConfiguration(
GetBrowsingTopicsConfigurationCallback callback) { … }
void PageHandlerProxy::GetBrowsingTopicsState(
bool in_calculate_now, GetBrowsingTopicsStateCallback callback) { … }
void PageHandlerProxy::GetModelInfo(
GetModelInfoCallback callback) { … }
void PageHandlerProxy::ClassifyHosts(
const std::vector<std::string>& in_hosts, ClassifyHostsCallback callback) { … }
class PageHandler_GetBrowsingTopicsConfiguration_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool PageHandler_GetBrowsingTopicsConfiguration_ForwardToCallback::Accept(
mojo::Message* message) { … }
void PageHandler_GetBrowsingTopicsConfiguration_ProxyToResponder::Run(
WebUIBrowsingTopicsConfigurationPtr in_config) { … }
class PageHandler_GetBrowsingTopicsState_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool PageHandler_GetBrowsingTopicsState_ForwardToCallback::Accept(
mojo::Message* message) { … }
void PageHandler_GetBrowsingTopicsState_ProxyToResponder::Run(
WebUIGetBrowsingTopicsStateResultPtr in_result) { … }
class PageHandler_GetModelInfo_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool PageHandler_GetModelInfo_ForwardToCallback::Accept(
mojo::Message* message) { … }
void PageHandler_GetModelInfo_ProxyToResponder::Run(
WebUIGetModelInfoResultPtr in_result) { … }
class PageHandler_ClassifyHosts_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool PageHandler_ClassifyHosts_ForwardToCallback::Accept(
mojo::Message* message) { … }
void PageHandler_ClassifyHosts_ProxyToResponder::Run(
std::vector<std::vector<WebUITopicPtr>> in_topics_for_hosts) { … }
bool PageHandlerStubDispatch::Accept(
PageHandler* impl,
mojo::Message* message) { … }
bool PageHandlerStubDispatch::AcceptWithResponder(
PageHandler* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) { … }
namespace {
}
static const mojo::internal::GenericValidationInfo kPageHandlerValidationInfo[] = …;
bool PageHandlerRequestValidator::Accept(mojo::Message* message) { … }
bool PageHandlerResponseValidator::Accept(mojo::Message* message) { … }
}
namespace mojo {
bool StructTraits<::browsing_topics::mojom::WebUIBrowsingTopicsConfiguration::DataView, ::browsing_topics::mojom::WebUIBrowsingTopicsConfigurationPtr>::Read(
::browsing_topics::mojom::WebUIBrowsingTopicsConfiguration::DataView input,
::browsing_topics::mojom::WebUIBrowsingTopicsConfigurationPtr* output) { … }
bool StructTraits<::browsing_topics::mojom::WebUITopic::DataView, ::browsing_topics::mojom::WebUITopicPtr>::Read(
::browsing_topics::mojom::WebUITopic::DataView input,
::browsing_topics::mojom::WebUITopicPtr* output) { … }
bool StructTraits<::browsing_topics::mojom::WebUIEpoch::DataView, ::browsing_topics::mojom::WebUIEpochPtr>::Read(
::browsing_topics::mojom::WebUIEpoch::DataView input,
::browsing_topics::mojom::WebUIEpochPtr* output) { … }
bool StructTraits<::browsing_topics::mojom::WebUIBrowsingTopicsState::DataView, ::browsing_topics::mojom::WebUIBrowsingTopicsStatePtr>::Read(
::browsing_topics::mojom::WebUIBrowsingTopicsState::DataView input,
::browsing_topics::mojom::WebUIBrowsingTopicsStatePtr* output) { … }
bool StructTraits<::browsing_topics::mojom::WebUIModelInfo::DataView, ::browsing_topics::mojom::WebUIModelInfoPtr>::Read(
::browsing_topics::mojom::WebUIModelInfo::DataView input,
::browsing_topics::mojom::WebUIModelInfoPtr* output) { … }
bool UnionTraits<::browsing_topics::mojom::WebUIGetBrowsingTopicsStateResult::DataView, ::browsing_topics::mojom::WebUIGetBrowsingTopicsStateResultPtr>::Read(
::browsing_topics::mojom::WebUIGetBrowsingTopicsStateResult::DataView input,
::browsing_topics::mojom::WebUIGetBrowsingTopicsStateResultPtr* output) { … }
bool UnionTraits<::browsing_topics::mojom::WebUIGetModelInfoResult::DataView, ::browsing_topics::mojom::WebUIGetModelInfoResultPtr>::Read(
::browsing_topics::mojom::WebUIGetModelInfoResult::DataView input,
::browsing_topics::mojom::WebUIGetModelInfoResultPtr* output) { … }
}
namespace browsing_topics::mojom {
void PageHandlerInterceptorForTesting::GetBrowsingTopicsConfiguration(GetBrowsingTopicsConfigurationCallback callback) { … }
void PageHandlerInterceptorForTesting::GetBrowsingTopicsState(bool calculate_now, GetBrowsingTopicsStateCallback callback) { … }
void PageHandlerInterceptorForTesting::GetModelInfo(GetModelInfoCallback callback) { … }
void PageHandlerInterceptorForTesting::ClassifyHosts(const std::vector<std::string>& hosts, ClassifyHostsCallback callback) { … }
PageHandlerAsyncWaiter::PageHandlerAsyncWaiter(
PageHandler* proxy) : … { … }
PageHandlerAsyncWaiter::~PageHandlerAsyncWaiter() = default;
void PageHandlerAsyncWaiter::GetBrowsingTopicsConfiguration(
WebUIBrowsingTopicsConfigurationPtr* out_config) { … }
WebUIBrowsingTopicsConfigurationPtr PageHandlerAsyncWaiter::GetBrowsingTopicsConfiguration(
) { … }
void PageHandlerAsyncWaiter::GetBrowsingTopicsState(
bool calculate_now, WebUIGetBrowsingTopicsStateResultPtr* out_result) { … }
WebUIGetBrowsingTopicsStateResultPtr PageHandlerAsyncWaiter::GetBrowsingTopicsState(
bool calculate_now) { … }
void PageHandlerAsyncWaiter::GetModelInfo(
WebUIGetModelInfoResultPtr* out_result) { … }
WebUIGetModelInfoResultPtr PageHandlerAsyncWaiter::GetModelInfo(
) { … }
void PageHandlerAsyncWaiter::ClassifyHosts(
const std::vector<std::string>& hosts, std::vector<std::vector<WebUITopicPtr>>* out_topics_for_hosts) { … }
std::vector<std::vector<WebUITopicPtr>> PageHandlerAsyncWaiter::ClassifyHosts(
const std::vector<std::string>& hosts) { … }
}
#if defined(__clang__)
#pragma clang diagnostic pop
#endif