#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-private-field"
#endif
#include "third_party/blink/public/mojom/payments/payment_handler_host.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 "third_party/blink/public/mojom/payments/payment_handler_host.mojom-params-data.h"
#include "third_party/blink/public/mojom/payments/payment_handler_host.mojom-shared-message-ids.h"
#include "third_party/blink/public/mojom/payments/payment_handler_host.mojom-import-headers.h"
#include "third_party/blink/public/mojom/payments/payment_handler_host.mojom-test-utils.h"
namespace payments::mojom {
PaymentHandlerMethodData::PaymentHandlerMethodData()
: … { … }
PaymentHandlerMethodData::PaymentHandlerMethodData(
const std::string& method_name_in,
const std::optional<std::string>& stringified_data_in)
: … { … }
PaymentHandlerMethodData::~PaymentHandlerMethodData() = default;
void PaymentHandlerMethodData::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool PaymentHandlerMethodData::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
PaymentHandlerModifier::PaymentHandlerModifier()
: … { … }
PaymentHandlerModifier::PaymentHandlerModifier(
::payments::mojom::PaymentCurrencyAmountPtr total_in,
PaymentHandlerMethodDataPtr method_data_in)
: … { … }
PaymentHandlerModifier::~PaymentHandlerModifier() = default;
void PaymentHandlerModifier::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool PaymentHandlerModifier::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
PaymentRequestDetailsUpdate::PaymentRequestDetailsUpdate()
: … { … }
PaymentRequestDetailsUpdate::PaymentRequestDetailsUpdate(
::payments::mojom::PaymentCurrencyAmountPtr total_in,
std::optional<std::vector<::payments::mojom::PaymentShippingOptionPtr>> shipping_options_in,
std::optional<std::vector<PaymentHandlerModifierPtr>> modifiers_in,
const std::string& error_in,
const std::optional<std::string>& stringified_payment_method_errors_in,
::payments::mojom::AddressErrorsPtr shipping_address_errors_in)
: … { … }
PaymentRequestDetailsUpdate::~PaymentRequestDetailsUpdate() = default;
void PaymentRequestDetailsUpdate::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool PaymentRequestDetailsUpdate::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
const char PaymentHandlerHost::Name_[] = …;
PaymentHandlerHost::IPCStableHashFunction PaymentHandlerHost::MessageToMethodInfo_(mojo::Message& message) { … }
const char* PaymentHandlerHost::MessageToMethodName_(mojo::Message& message) { … }
#if !BUILDFLAG(IS_FUCHSIA)
uint32_t PaymentHandlerHost::ChangePaymentMethod_Sym::IPCStableHash() { … }
uint32_t PaymentHandlerHost::ChangeShippingOption_Sym::IPCStableHash() { … }
uint32_t PaymentHandlerHost::ChangeShippingAddress_Sym::IPCStableHash() { … }
# endif
class PaymentHandlerHost_ChangePaymentMethod_ForwardToCallback
: public mojo::MessageReceiver { … };
class PaymentHandlerHost_ChangeShippingOption_ForwardToCallback
: public mojo::MessageReceiver { … };
class PaymentHandlerHost_ChangeShippingAddress_ForwardToCallback
: public mojo::MessageReceiver { … };
PaymentHandlerHostProxy::PaymentHandlerHostProxy(mojo::MessageReceiverWithResponder* receiver)
: … { … }
void PaymentHandlerHostProxy::ChangePaymentMethod(
PaymentHandlerMethodDataPtr in_method_data, ChangePaymentMethodCallback callback) { … }
void PaymentHandlerHostProxy::ChangeShippingOption(
const std::string& in_shipping_option_id, ChangeShippingOptionCallback callback) { … }
void PaymentHandlerHostProxy::ChangeShippingAddress(
::payments::mojom::PaymentAddressPtr in_shipping_address, ChangeShippingAddressCallback callback) { … }
class PaymentHandlerHost_ChangePaymentMethod_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool PaymentHandlerHost_ChangePaymentMethod_ForwardToCallback::Accept(
mojo::Message* message) { … }
void PaymentHandlerHost_ChangePaymentMethod_ProxyToResponder::Run(
PaymentRequestDetailsUpdatePtr in_response_data) { … }
class PaymentHandlerHost_ChangeShippingOption_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool PaymentHandlerHost_ChangeShippingOption_ForwardToCallback::Accept(
mojo::Message* message) { … }
void PaymentHandlerHost_ChangeShippingOption_ProxyToResponder::Run(
PaymentRequestDetailsUpdatePtr in_response_data) { … }
class PaymentHandlerHost_ChangeShippingAddress_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool PaymentHandlerHost_ChangeShippingAddress_ForwardToCallback::Accept(
mojo::Message* message) { … }
void PaymentHandlerHost_ChangeShippingAddress_ProxyToResponder::Run(
PaymentRequestDetailsUpdatePtr in_response_data) { … }
bool PaymentHandlerHostStubDispatch::Accept(
PaymentHandlerHost* impl,
mojo::Message* message) { … }
bool PaymentHandlerHostStubDispatch::AcceptWithResponder(
PaymentHandlerHost* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) { … }
namespace {
}
static const mojo::internal::GenericValidationInfo kPaymentHandlerHostValidationInfo[] = …;
bool PaymentHandlerHostRequestValidator::Accept(mojo::Message* message) { … }
bool PaymentHandlerHostResponseValidator::Accept(mojo::Message* message) { … }
}
namespace mojo {
bool StructTraits<::payments::mojom::PaymentHandlerMethodData::DataView, ::payments::mojom::PaymentHandlerMethodDataPtr>::Read(
::payments::mojom::PaymentHandlerMethodData::DataView input,
::payments::mojom::PaymentHandlerMethodDataPtr* output) { … }
bool StructTraits<::payments::mojom::PaymentHandlerModifier::DataView, ::payments::mojom::PaymentHandlerModifierPtr>::Read(
::payments::mojom::PaymentHandlerModifier::DataView input,
::payments::mojom::PaymentHandlerModifierPtr* output) { … }
bool StructTraits<::payments::mojom::PaymentRequestDetailsUpdate::DataView, ::payments::mojom::PaymentRequestDetailsUpdatePtr>::Read(
::payments::mojom::PaymentRequestDetailsUpdate::DataView input,
::payments::mojom::PaymentRequestDetailsUpdatePtr* output) { … }
}
namespace payments::mojom {
void PaymentHandlerHostInterceptorForTesting::ChangePaymentMethod(PaymentHandlerMethodDataPtr method_data, ChangePaymentMethodCallback callback) { … }
void PaymentHandlerHostInterceptorForTesting::ChangeShippingOption(const std::string& shipping_option_id, ChangeShippingOptionCallback callback) { … }
void PaymentHandlerHostInterceptorForTesting::ChangeShippingAddress(::payments::mojom::PaymentAddressPtr shipping_address, ChangeShippingAddressCallback callback) { … }
PaymentHandlerHostAsyncWaiter::PaymentHandlerHostAsyncWaiter(
PaymentHandlerHost* proxy) : … { … }
PaymentHandlerHostAsyncWaiter::~PaymentHandlerHostAsyncWaiter() = default;
void PaymentHandlerHostAsyncWaiter::ChangePaymentMethod(
PaymentHandlerMethodDataPtr method_data, PaymentRequestDetailsUpdatePtr* out_response_data) { … }
PaymentRequestDetailsUpdatePtr PaymentHandlerHostAsyncWaiter::ChangePaymentMethod(
PaymentHandlerMethodDataPtr method_data) { … }
void PaymentHandlerHostAsyncWaiter::ChangeShippingOption(
const std::string& shipping_option_id, PaymentRequestDetailsUpdatePtr* out_response_data) { … }
PaymentRequestDetailsUpdatePtr PaymentHandlerHostAsyncWaiter::ChangeShippingOption(
const std::string& shipping_option_id) { … }
void PaymentHandlerHostAsyncWaiter::ChangeShippingAddress(
::payments::mojom::PaymentAddressPtr shipping_address, PaymentRequestDetailsUpdatePtr* out_response_data) { … }
PaymentRequestDetailsUpdatePtr PaymentHandlerHostAsyncWaiter::ChangeShippingAddress(
::payments::mojom::PaymentAddressPtr shipping_address) { … }
}
#if defined(__clang__)
#pragma clang diagnostic pop
#endif