#include "chrome/browser/persisted_state_db/session_proto_db_factory.h"
#include "base/no_destructor.h"
#include "build/build_config.h"
#include "components/commerce/core/proto/persisted_state_db_content.pb.h"
SessionProtoDBFactory<persisted_state_db::PersistedStateContentProto>*
GetPersistedStateSessionProtoDBFactory() { … }
template <>
SessionProtoDBFactory<persisted_state_db::PersistedStateContentProto>*
SessionProtoDBFactory<
persisted_state_db::PersistedStateContentProto>::GetInstance() { … }
SessionProtoDBFactory<
commerce_subscription_db::CommerceSubscriptionContentProto>*
GetCommerceSubscriptionSessionProtoDBFactory() { … }
template <>
SessionProtoDBFactory<
commerce_subscription_db::CommerceSubscriptionContentProto>*
SessionProtoDBFactory<
commerce_subscription_db::CommerceSubscriptionContentProto>::GetInstance() { … }
SessionProtoDBFactory<parcel_tracking_db::ParcelTrackingContent>*
GetParcelTrackingSessionProtoDBFactory() { … }
template <>
SessionProtoDBFactory<parcel_tracking_db::ParcelTrackingContent>*
SessionProtoDBFactory<
parcel_tracking_db::ParcelTrackingContent>::GetInstance() { … }
#if !BUILDFLAG(IS_ANDROID)
SessionProtoDBFactory<cart_db::ChromeCartContentProto>*
GetChromeCartSessionProtoDBFactory() { … }
template <>
SessionProtoDBFactory<cart_db::ChromeCartContentProto>*
SessionProtoDBFactory<cart_db::ChromeCartContentProto>::GetInstance() { … }
SessionProtoDBFactory<coupon_db::CouponContentProto>*
GetCouponSessionProtoDBFactory() { … }
template <>
SessionProtoDBFactory<coupon_db::CouponContentProto>*
SessionProtoDBFactory<coupon_db::CouponContentProto>::GetInstance() { … }
SessionProtoDBFactory<discounts_db::DiscountsContentProto>*
GetDiscountsSessionProtoDBFactory() { … }
template <>
SessionProtoDBFactory<discounts_db::DiscountsContentProto>*
SessionProtoDBFactory<discounts_db::DiscountsContentProto>::GetInstance() { … }
#else
SessionProtoDBFactory<merchant_signal_db::MerchantSignalContentProto>*
GetMerchantSignalSessionProtoDBFactory() {
static base::NoDestructor<
SessionProtoDBFactory<merchant_signal_db::MerchantSignalContentProto>>
instance;
return instance.get();
}
template <>
SessionProtoDBFactory<merchant_signal_db::MerchantSignalContentProto>*
SessionProtoDBFactory<
merchant_signal_db::MerchantSignalContentProto>::GetInstance() {
return GetMerchantSignalSessionProtoDBFactory();
}
#endif