Loading...
Searching...
No Matches
FOnlineStoreV2AccelByte Class Reference
Inheritance diagram for FOnlineStoreV2AccelByte:

Classes

struct  FPlayerStorefrontData

Public Member Functions

virtual void QueryCategories (const FUniqueNetId &UserId, const FOnQueryOnlineStoreCategoriesComplete &Delegate) override
virtual void QueryChildCategories (const FUniqueNetId &UserId, const FString &CategoryPath, const FOnQueryOnlineStoreCategoriesComplete &Delegate)
virtual void GetCategories (TArray< FOnlineStoreCategory > &OutCategories) const override
virtual void GetCategory (const FString &CategoryPath, FOnlineStoreCategory &OutCategory) const
virtual void QueryOffersByFilter (const FUniqueNetId &UserId, const FOnlineStoreFilter &Filter, const FOnQueryOnlineStoreOffersComplete &Delegate) override
virtual void QueryOffersById (const FUniqueNetId &UserId, const TArray< FUniqueOfferId > &OfferIds, const FOnQueryOnlineStoreOffersComplete &Delegate) override
virtual void QueryOffersByFilter (const FUniqueNetId &UserId, const FOnlineStoreFilter &Filter, bool AutoCalcEstimatedPrice, const FOnQueryOnlineStoreOffersComplete &Delegate)
virtual void QueryOffersById (const FUniqueNetId &UserId, const TArray< FUniqueOfferId > &OfferIds, const FString &StoreId, bool AutoCalcEstimatedPrice, const FOnQueryOnlineStoreOffersComplete &Delegate)
virtual void QueryOfferBySku (const FUniqueNetId &UserId, const FString &Sku, const FOnQueryOnlineStoreOffersComplete &Delegate, bool AutoCalcEstimatedPrice=false)
virtual void QueryOfferDynamicData (const FUniqueNetId &UserId, const FUniqueOfferId &OfferId, const FOnQueryOnlineStoreOffersComplete &Delegate)
virtual void GetOffers (TArray< FOnlineStoreOfferRef > &OutOffers) const override
virtual void GetOffers (TArray< FOnlineStoreOfferAccelByteRef > &OutOffers) const
virtual TSharedPtr< FOnlineStoreOffer > GetOffer (const FUniqueOfferId &OfferId) const override
virtual TSharedPtr< FOnlineStoreOfferAccelByteGetOfferAccelByte (const FUniqueOfferId &OfferId) const
virtual TSharedPtr< FOnlineStoreOffer > GetOfferBySku (const FString &Sku) const
virtual TSharedPtr< FOnlineStoreOfferAccelByteGetOfferBySkuAccelByte (const FString &Sku) const
virtual TSharedPtr< FAccelByteModelsItemDynamicData > GetOfferDynamicData (const FUniqueNetId &UserId, const FUniqueOfferId &OfferId) const
void QueryPlatformOfferBySku (const FUniqueNetId &UserId, const TArray< FString > &Skus, const FOnQueryOnlineStoreOffersComplete &Delegate)
void GetPlatformOffers (TArray< FOnlineStoreOfferRef > &OutOffers)
void ReplacePlatformOffers (TMap< FUniqueOfferId, FOnlineStoreOfferRef > InOffer)
void EmplacePlatformOffers (const TMap< FUniqueOfferId, FOnlineStoreOfferRef > &InOffer)
 DEFINE_ONLINE_DELEGATE_THREE_PARAM (OnGetEstimatedPriceComplete, bool, const TArray< FAccelByteModelsEstimatedPrices > &, const FOnlineErrorAccelByte &)
void GetEstimatedPrice (const FUniqueNetId &UserId, const TArray< FString > &ItemIds, const FString &Region)
 DEFINE_ONLINE_DELEGATE_THREE_PARAM (OnGetItemsByCriteriaComplete, bool, const FAccelByteModelsItemPagingSlicedResult &, const FOnlineErrorAccelByte &)
void GetItemsByCriteria (const FUniqueNetId &UserId, FAccelByteModelsItemCriteria const &ItemCriteria, int32 const &Offset=0, int32 const &Limit=20, TArray< EAccelByteItemListSortBy > SortBy={}, FString const &StoreId=TEXT(""), bool AutoCalcEstimatedPrice=false)
virtual void GetDisplays (TArray< TSharedRef< FAccelByteModelsViewInfo, ESPMode::ThreadSafe > > &OutDisplays)
virtual void GetSectionsForDisplay (const FUniqueNetId &UserId, const FString &DisplayId, TArray< TSharedRef< FAccelByteModelsSectionInfo, ESPMode::ThreadSafe > > &OutSections)
 Get cached store section from specified display id.
virtual void GetOffersForSection (const FUniqueNetId &UserId, const FString &SectionId, TArray< FOnlineStoreOfferAccelByteRef > &OutOffers)
 Get cached offers from specified section id.
virtual void GetItemMappings (TArray< TSharedRef< FAccelByteModelsItemMapping, ESPMode::ThreadSafe > > &OutMappings)
 Get cached other platform store item mappings.
virtual void QueryActiveSections (const FUniqueNetId &UserId, const FString &StoreId, const FString &ViewId, const FString &Region, const FOnQueryActiveSectionsComplete &Delegate)
 Query the store active sections based on store id, view id and region.
virtual void QueryStorefront (const FUniqueNetId &UserId, const FString &StoreId, const FString &ViewId, const FString &Region, const EAccelBytePlatformMapping &Platform, const FOnQueryStorefrontComplete &Delegate)
 Query store front based on store id, view id, region and platform.
virtual void GetAllSections (const FUniqueNetId &UserId, TArray< TSharedRef< FAccelByteModelsSectionInfo, ESPMode::ThreadSafe > > &OutSections)
 Get all cached store section.

Static Public Member Functions

static bool GetFromSubsystem (const IOnlineSubsystem *Subsystem, TSharedPtr< FOnlineStoreV2AccelByte, ESPMode::ThreadSafe > &OutInterfaceInstance)
static bool GetFromWorld (const UWorld *World, TSharedPtr< FOnlineStoreV2AccelByte, ESPMode::ThreadSafe > &OutInterfaceInstance)

Public Attributes

PACKAGE_SCOPE : mutable FCriticalSection PlatformOffersLock

Protected Attributes

FOnlineSubsystemAccelByteWPtr AccelByteSubsystem = nullptr
TMap< FUniqueCategoryId, FOnlineStoreCategory > StoreCategories
TMap< FUniqueOfferId, FOnlineStoreOfferAccelByteRef > StoreOffers
TMap< FUniqueOfferId, FOnlineStoreOfferRef > PlatformOffers
FUserIDToDynamicDataMap OffersDynamicData
TMap< TSharedRef< const FUniqueNetIdAccelByteUser >, FPlayerStorefrontDataStorefrontData
TMap< FString, TSharedRef< FAccelByteModelsViewInfo, ESPMode::ThreadSafe > > Displays
TMap< FString, TSharedRef< FAccelByteModelsItemMapping, ESPMode::ThreadSafe > > ItemMappings

Member Function Documentation

◆ DEFINE_ONLINE_DELEGATE_THREE_PARAM() [1/2]

FOnlineStoreV2AccelByte::DEFINE_ONLINE_DELEGATE_THREE_PARAM ( OnGetEstimatedPriceComplete ,
bool ,
const TArray< FAccelByteModelsEstimatedPrices > & ,
const FOnlineErrorAccelByte &  )

Delegate called when a controller-user get a estimated price.

◆ DEFINE_ONLINE_DELEGATE_THREE_PARAM() [2/2]

FOnlineStoreV2AccelByte::DEFINE_ONLINE_DELEGATE_THREE_PARAM ( OnGetItemsByCriteriaComplete ,
bool ,
const FAccelByteModelsItemPagingSlicedResult & ,
const FOnlineErrorAccelByte &  )

Delegate called when a controller-user get items by criteria.

◆ GetAllSections()

void FOnlineStoreV2AccelByte::GetAllSections ( const FUniqueNetId & UserId,
TArray< TSharedRef< FAccelByteModelsSectionInfo, ESPMode::ThreadSafe > > & OutSections )
virtual

Get all cached store section.

Parameters
UserIdThe UniqueNetId of current user.
OutSectionsOutput of cached store sections.

◆ GetDisplays()

void FOnlineStoreV2AccelByte::GetDisplays ( TArray< TSharedRef< FAccelByteModelsViewInfo, ESPMode::ThreadSafe > > & OutDisplays)
virtual

@bried Get cached store displays.

Parameters
OutDisplaysOutput of cached store displays.

◆ GetEstimatedPrice()

void FOnlineStoreV2AccelByte::GetEstimatedPrice ( const FUniqueNetId & UserId,
const TArray< FString > & ItemIds,
const FString & Region )

Get estimated prices of item.

Parameters
UserIdThe user's user ID.
ItemIdsThe item's IDs to check, commas separated item ids.
RegionCode, ISO 3166-1 alpha-2 country tag, e.g., "US", "CN".
Returns

◆ GetFromSubsystem()

bool FOnlineStoreV2AccelByte::GetFromSubsystem ( const IOnlineSubsystem * Subsystem,
TSharedPtr< FOnlineStoreV2AccelByte, ESPMode::ThreadSafe > & OutInterfaceInstance )
static

Convenience method to get an instance of this interface from the subsystem passed in.

Parameters
SubsystemSubsystem instance that we wish to get this interface from
OutInterfaceInstanceInstance of the interface that we got from the subsystem, or nullptr if not found
Returns
boolean that is true if we could get an instance of the interface, false otherwise

◆ GetFromWorld()

bool FOnlineStoreV2AccelByte::GetFromWorld ( const UWorld * World,
TSharedPtr< FOnlineStoreV2AccelByte, ESPMode::ThreadSafe > & OutInterfaceInstance )
static

Convenience method to get an instance of this interface from the subsystem associated with the world passed in.

Parameters
WorldWorld instance that we wish to get the interface from
OutInterfaceInstanceInstance of the interface that we got from the subsystem, or nullptr if not found
Returns
boolean that is true if we could get an instance of the interface, false otherwise

◆ GetItemMappings()

void FOnlineStoreV2AccelByte::GetItemMappings ( TArray< TSharedRef< FAccelByteModelsItemMapping, ESPMode::ThreadSafe > > & OutMappings)
virtual

Get cached other platform store item mappings.

Parameters
OutMappingsOutput of cached platform store mappings.

◆ GetItemsByCriteria()

void FOnlineStoreV2AccelByte::GetItemsByCriteria ( const FUniqueNetId & UserId,
FAccelByteModelsItemCriteria const & ItemCriteria,
int32 const & Offset = 0,
int32 const & Limit = 20,
TArray< EAccelByteItemListSortBy > SortBy = {},
FString const & StoreId = TEXT(""),
bool AutoCalcEstimatedPrice = false )

Get an array of items with specific criteria/filter from online store.

Parameters
UserIdThe user's user ID.
ItemCriteriashould be contain some parameters for query.
OffsetPage number.
LimitPage size.
SortByMake sure to always use more than one sort if the first sort is not an unique value for example, if you wish to sort by displayOrder,
StoreIdThe Store Id, default value is published store id
AutoCalcEstimatedPriceThis will Auto Calculate Estimated Price. Default is false, if autoCalcEstimatedPrice is true and item is flexible bundle, will auto calc price.

◆ GetOffersForSection()

void FOnlineStoreV2AccelByte::GetOffersForSection ( const FUniqueNetId & UserId,
const FString & SectionId,
TArray< FOnlineStoreOfferAccelByteRef > & OutOffers )
virtual

Get cached offers from specified section id.

Parameters
UserIdThe UniqueNetId of current user.
SectionIdThe section id for cached offers.
OutOffersOutput of cached offers.

◆ GetSectionsForDisplay()

void FOnlineStoreV2AccelByte::GetSectionsForDisplay ( const FUniqueNetId & UserId,
const FString & DisplayId,
TArray< TSharedRef< FAccelByteModelsSectionInfo, ESPMode::ThreadSafe > > & OutSections )
virtual

Get cached store section from specified display id.

Parameters
UserIdThe UniqueNetId of current user.
DisplayIdThe display id for cached sections.
OutSectionsOutput of cached store sections.

◆ QueryActiveSections()

void FOnlineStoreV2AccelByte::QueryActiveSections ( const FUniqueNetId & UserId,
const FString & StoreId,
const FString & ViewId,
const FString & Region,
const FOnQueryActiveSectionsComplete & Delegate )
virtual

Query the store active sections based on store id, view id and region.

Parameters
UserIdThe UniqueNetId of current user.
StoreIdThe store id, for default store use empty string.
ViewIdThe view id, for default store use empty string.
RegionThe region, for default store use empty string.
DelegateThis delegate will be called after query completed.

◆ QueryStorefront()

void FOnlineStoreV2AccelByte::QueryStorefront ( const FUniqueNetId & UserId,
const FString & StoreId,
const FString & ViewId,
const FString & Region,
const EAccelBytePlatformMapping & Platform,
const FOnQueryStorefrontComplete & Delegate )
virtual

Query store front based on store id, view id, region and platform.

Parameters
UserIdThe UniqueNetId of current user.
StoreIdThe store id, for default store use empty string.
ViewIdThe view id, for default store use empty string.
RegionThe region, for default store use empty string.
PlatformThe platform of third party store.
DelegateThis delegate will be called after query completed.

Member Data Documentation

◆ AccelByteSubsystem

FOnlineSubsystemAccelByteWPtr FOnlineStoreV2AccelByte::AccelByteSubsystem = nullptr
protected

Instance of the subsystem that created this interface