Skip to main content

Catalog

Summary

MembersDescriptions
class URH_CatalogItemclass used to define a Catalog Item.
class URH_CatalogSubsystemClass used to help track and interact with the catalog to get Items, Vendors, and their data.
class URH_CatalogBlueprintLibraryCatalog Blueprint Library with helper methods for API structs.
struct FRHVendorGetRequestVendor Request struct used to encapsulate a request to get a vendors and the callback delegate.
struct FRH_VendorRequestStateVendor Request struct used to encapsulate a request to get a vendors and the callback delegate.

class URH_CatalogItem

class URH_CatalogItem
: public UObject

class used to define a Catalog Item.

Summary

MembersDescriptions
public FString ETagThe identifier for the versioning of the item.
public FRHAPI_Item APIItemCopy of the underlying Catalog item.
public inline int32 GetItemId() constGets the Item Id.
public inline ERHAPI_ItemType GetType() constGets the Item Type.
public inline int32 GetRefItemId() constGets the Item Id of the referenced item.
public inline int32 GetAvailabilityFlags() constGets item availability flags.
public inline int32 GetEntitledLootId() constGets the entitled loot id.
public inline int32 GetLevelXpTableId() constGets the Xp Table associated with the item.
public inline int32 GetLevelVendorId() constGets the Vendor that grants rewards based on inventory count of the item.
public inline int32 GetCouponDiscountCurrencyItemId() constGets the Item Id of the currency type this can discount.
public inline float GetCouponDiscountPercentage() constGets the precentage of the discount this item applies.
public inline bool GetCouponConsumeOnUse() constGets if it will be consumed when used.
public inline const FString & GetItemInventoryBucketUseRulesetId() constGets the set of rules of what platforms this item is available on.
public inline const TArray< int32 > & GetCouponDiscountLoot() constGets the list of loot ids this coupon can be applied to.
public inline void InitializeFromCatalogItem(const FRHAPI_Item & CatalogItem,int32 InItemId)Sets up the fata in the Catalog Item.
public inline void Clear()Clears all the data for the item.
protected int32 ItemIdThe Item Id.
protected ERHAPI_ItemType TypeThe Item Type.
protected int32 RefItemIdThe Ref Item Id.
protected int32 AvailabilityFlagsThe Availability Flags.
protected int32 EntitledLootIdThe Entitled Loot Id.
protected int32 LevelXpTableIdThe Associated Xp Table Id.
protected int32 LevelVendorIdThe Associated Loot Table if an Xp Table is used.
protected int32 CouponDiscountCurrencyItemIdThe Item Id this can be used to discount purchases with when used as a coupon.
protected float CouponDiscountPercentageThe percentage of discount this gives when used as a coupon.
protected bool CouponConsumeOnUseIf set, then when used as a coupon, remove this from inventory.
protected FString ItemInventoryBucketUseRuleSetIdThe inventory use ruleset this item uses.
protected TArray< int32 > CouponDiscountLootList of Loot Table Items this item can be used as a coupon for.

Members

public FString ETag

The identifier for the versioning of the item.

public FRHAPI_Item APIItem

Copy of the underlying Catalog item.

public inline int32 GetItemId() const

Gets the Item Id.

public inline ERHAPI_ItemType GetType() const

Gets the Item Type.

public inline int32 GetRefItemId() const

Gets the Item Id of the referenced item.

public inline int32 GetAvailabilityFlags() const

Gets item availability flags.

public inline int32 GetEntitledLootId() const

Gets the entitled loot id.

public inline int32 GetLevelXpTableId() const

Gets the Xp Table associated with the item.

public inline int32 GetLevelVendorId() const

Gets the Vendor that grants rewards based on inventory count of the item.

public inline int32 GetCouponDiscountCurrencyItemId() const

Gets the Item Id of the currency type this can discount.

public inline float GetCouponDiscountPercentage() const

Gets the precentage of the discount this item applies.

public inline bool GetCouponConsumeOnUse() const

Gets if it will be consumed when used.

public inline const FString & GetItemInventoryBucketUseRulesetId() const

Gets the set of rules of what platforms this item is available on.

public inline const TArray< int32 > & GetCouponDiscountLoot() const

Gets the list of loot ids this coupon can be applied to.

public inline void InitializeFromCatalogItem(const FRHAPI_Item & CatalogItem,int32 InItemId)

Sets up the fata in the Catalog Item.

Parameters

  • CatalogItem The API layer item to initialize from.

  • InItemId The Item Id.

public inline void Clear()

Clears all the data for the item.

protected int32 ItemId

The Item Id.

protected ERHAPI_ItemType Type

The Item Type.

protected int32 RefItemId

The Ref Item Id.

protected int32 AvailabilityFlags

The Availability Flags.

protected int32 EntitledLootId

The Entitled Loot Id.

protected int32 LevelXpTableId

The Associated Xp Table Id.

protected int32 LevelVendorId

The Associated Loot Table if an Xp Table is used.

protected int32 CouponDiscountCurrencyItemId

The Item Id this can be used to discount purchases with when used as a coupon.

protected float CouponDiscountPercentage

The percentage of discount this gives when used as a coupon.

protected bool CouponConsumeOnUse

If set, then when used as a coupon, remove this from inventory.

protected FString ItemInventoryBucketUseRuleSetId

The inventory use ruleset this item uses.

protected TArray< int32 > CouponDiscountLoot

List of Loot Table Items this item can be used as a coupon for.

class URH_CatalogSubsystem

class URH_CatalogSubsystem
: public URH_GameInstanceSubsystemPlugin
: public FTickableGameObject

Class used to help track and interact with the catalog to get Items, Vendors, and their data.

Summary

MembersDescriptions
public FRH_CatalogItemUpdatedDelegate OnCatalogItemAddedDelegate that fires whenever a catalog item is added to the cashed catalog items.
public virtual void Initialize()Initialize the subsystem.
public virtual void Deinitialize()Safely tears down the subsystem.
public void GetCatalogAll(const FRH_CatalogCallBlock & Delegate)Gets the entire catalog at once.
public void GetCatalogXpAll(const FRH_CatalogCallBlock & Delegate)Gets all of the xp tables in the catalog.
public void GetCatalogItem(int32 ItemId,const FRH_CatalogCallBlock & Delegate)Gets a specific item from the catalog.
public void GetCatalogInventoryBucketUseRuleSetsAll(const FRH_CatalogCallBlock & Delegate)Gets all of the inventory bucket rulesets from the catalog.
public void GetCatalogPricePointsAll(const FRH_CatalogCallBlock & Delegate)Gets all of the price points from the catalog.
public void GetCatalogTimeFramesAll(const FRH_CatalogCallBlock & Delegate)Gets all of the time frames from the catalog.
public void GetCatalogVendor(const FRHVendorGetRequest & VendorRequest)Gets the vendors requested as well as their sub vendors.
public void GetCatalogVendorsAll(const FRH_CatalogCallBlock & Delegate)Gets the all catalog vendors.
public bool GetXpTable(int32 XpTableId,FRHAPI_XpTable & XpTable) constGets a cached Xp Table.
public inline bool GetVendorItemByLootId(int32 LootId,FRHAPI_Loot & LootItem) constGets a cached vendor item by its loot id.
public inline URH_CatalogItem*GetCatalogItemByItemId(int32 ItemId) constGets a cached catalog item by its item id.
public inline bool GetVendorById(int32 VendorId,FRHAPI_Vendor & Vendor) constGets a cached vendor by its vendor id.
public inline bool GetPricePointById(const FGuid & PricePointGuid,FRHAPI_PricePoint & PricePoint) constGets a cached price point by its price point guid.
public inline bool GetPricePointById(int32 TimeFrameId,FRHAPI_TimeFrame & TimeFrame) constGets a cached time frame by its Time Frame Id.
public bool CanRulesetUsePlatformForBucket(const FString & InventoryBucketRulesetId,ERHAPI_InventoryBucket TargetBucket,ERHAPI_InventoryBucket ItemInventoryBucket) constChecks if the ruleset can use the platform for the bucket.
public inline const TMap< int32, FRHAPI_Vendor> &GetVendors() constGets the cached vendors.
public inline const TMap< int32, URH_CatalogItem* > &GetCatalogItems() constGets the cached catalog items.
public inline const TMap< int32, FRHAPI_XpTable> &GetXpTables() constGets the xp tables.
public inline const TMap< FString, FRHAPI_InventoryBucketUseRuleSet> &GetInventoryBucketUseRuleSets() constGets the cached inventory bucket rule sets.
public inline const TMap< FGuid, FRHAPI_PricePoint> &GetPricePoints() constGets the cached price points.
public inline const TMap< int32, FRHAPI_TimeFrame> &GetTimeFrames() constGets the cached time frames.
public inline virtual FString GetDefaultCatalogFileExportPath() const
public void ExportCatalogToFile(const FString & FilePath,const FRH_GenericSuccessWithErrorBlock & Delegate) constRetrieve all catalog data and save it to a file.
public void ImportCatalogFromFile(const FString & FilePath,const FRH_CatalogCallBlock & Delegate)Retrieve all catalog data from a file and load it into the catalog.
protected TArray< FRH_VendorRequestState>VendorRequestsArray of active vendor requests that are in flight and not responded ot yet.
protected TMap< int32, TWeakPtr< FRH_AsyncTaskHelper> >InFlightVendorRequestsMap of all vendor requests that are in flight
protected TMap< int32, FRHAPI_XpTable>XpTablesXp Table Id to Xp Table Map.
protected TMap< int32, FRHAPI_Vendor>CatalogVendorsVendor Id to Vendor Map.
protected TMap< int32, URH_CatalogItem* >CatalogItemsItem Id to Catalog Item Map.
protected TMap< int32, FRHAPI_Loot>CatalogLootItemsLoot Id to Catalog Vendor Item Map.
protected TMap< int32, FRHAPI_TimeFrame>TimeFramesTimeframe Id to Timeframe Map.
protected TMap< FGuid, FRHAPI_PricePoint>CatalogPricePointsPrice Point ID to Price Points.
protected TMap< FString, FRHAPI_InventoryBucketUseRuleSet>InventoryBucketUseRuleSetsInventory Bucket to Inventory Bucket Use Ruleset Map.
protected TOptional< FString > GetCatalogAllETagETag of last GetCatalogAll call response.
protected TOptional< FString > GetCatalogXpAllETagETag of last GetCatalogXpAll call response.
protected TOptional< FString > GetCatalogPricePointsAllETagETag of last GetCatalogPricePointsAll call response.
protected TOptional< FString > GetCatalogVendorsAllETagETag of last GetCatalogVendorsAll call response.
protected TOptional< FString > GetCatalogTimeFramesAllETagETag of last GetCatalogTimeFramesAll call response.
protected TOptional< FString > GetCatalogInventoryBucketUseRuleSetsAllETagETag of last GetCatalogInventoryBucketUseRuleSetsAll call response.
protected TMap< int32, TArray< FRH_CatalogCallBlock > > PendingGetCatalogItemCallsArray of GetCatalogItemCalls yet to be sent to the API layer.
protected TMap< int32, TArray< FRH_CatalogCallBlock > > SubmittedGetCatalogItemCallsArray of GetCatalogItemCalls yet being executed by the API layer at this time.
protected void GetCatalogVendorSingle(int32 VendorId,const FRH_GenericSuccessWithErrorBlock & Delegate)Makes an API call for a single vendor Id.
protected virtual void OnGetCatalogVendorResponseUpdate(const TGetCatalogVendor::Response & Resp,int32 VendorId)Handles the response to a successful Get Catalog Vendor call, updates local cache.
protected virtual void OnGetCatalogVendorResponseComplete(bool bSuccess,const FRH_ErrorInfo & ErrorInfo,int32 VendorId,FRH_GenericSuccessWithErrorBlock Delegate)Handles the response to a Get Catalog Vendor call, handles completion and processing of any followup requests.
protected virtual void ProcessVendorRequests()Processes the current vendor request list, kicking off any new requests that are needed, and completing existing requests that are done.
protected virtual void OnGetCatalogVendorsAllResponse(const TGetCatalogVendorsAll::Response & Resp,const FRH_CatalogCallBlock Delegate)Handles the response to a Get Catalog Vendor All call.
protected virtual void OnGetCatalogAllResponse(const TGetCatalogAll::Response & Resp,const FRH_CatalogCallBlock Delegate)Handles the response to a Get Catalog All call.
protected virtual void OnGetCatalogXpAllResponse(const TGetCatalogXpAll::Response & Resp,const FRH_CatalogCallBlock Delegate)Handles the response to a Get Catalog Xp All call.
protected virtual void OnGetCatalogItemResponse(const TGetCatalogItem::Response & Resp,int32 ItemId)Handles the response to a Get Catalog Item call.
protected virtual void OnGetCatalogInventoryBucketUseRuleSetsAllResponse(const TGetCatalogInventoryBucketUseRuleSetsAll::Response & Resp,const FRH_CatalogCallBlock Delegate)Handles the response to a Get Catalog Inventory Bucked Use Rule Sets All call.
protected virtual void OnGetCatalogPricePointsAllResponse(const TGetCatalogPricePointsAll::Response & Resp,const FRH_CatalogCallBlock Delegate)Handles the response to a Get Catalog Price Points All call.
protected virtual void OnGetCatalogTimeFramesAllResponse(const TGetCatalogTimeFramesAll::Response & Resp,const FRH_CatalogCallBlock Delegate)Handles the response to a Get Catalog Time Frames All call.
protected void ParseAllXpTables(const FRHAPI_XpTables & Content)Parses Xp Tables response into the Xp Table Map.
protected void ParseAllInventoryBucketUseRuleSets(const FRHAPI_InventoryBucketUseRuleSets & Content)Parses Inventory Bucket Use Rule Sets response into the Inventory Bucket Use Ruleset Map.
protected URH_CatalogItem*ParseCatalogItem(const FRHAPI_Item & CatalogItem,int32 ItemId)Parse a Catalog item into the class for it and stores it in the Catalog Items Map.
protected virtual void InitPropertiesWithDefaultValues()Initializes the subsystem with defaults for its cached data.
protected virtual void Tick(float DeltaTime)Kick off pending requests to the API layer.
protected inline virtual bool IsTickable() constDetermine if there are pending requests.
protected inline virtual TStatId GetStatId() constGets the catalog subsystem stat Id.
typedef TGetCatalogAllType Define for Get Catalog calls.
typedef TGetCatalogXpAllType Define for Get Catalog Xp calls.
typedef TGetCatalogInventoryBucketUseRuleSetsAllType Define for Get Catalog Inventory Bucket Use Rule Set calls.
typedef TGetCatalogPricePointsAllType Define for Get Catalog Price Point calls.
typedef TGetCatalogTimeFramesAllType Define for Get Catalog Time Frame calls.
typedef TGetCatalogVendorType Define for Get Catalog Vendor calls.
typedef TGetCatalogVendorsAllType Define for Get Catalog Vendor All calls.
typedef TGetCatalogItemType Define for Get Catalog Item calls.

Members

public FRH_CatalogItemUpdatedDelegate OnCatalogItemAdded

Delegate that fires whenever a catalog item is added to the cashed catalog items.

public virtual void Initialize()

Initialize the subsystem.

public virtual void Deinitialize()

Safely tears down the subsystem.

public void GetCatalogAll(const FRH_CatalogCallBlock & Delegate)

Gets the entire catalog at once.

Parameters

  • Delegate Callback when the API call is complete.

public void GetCatalogXpAll(const FRH_CatalogCallBlock & Delegate)

Gets all of the xp tables in the catalog.

Parameters

  • Delegate Callback when the API call is complete.

public void GetCatalogItem(int32 ItemId,const FRH_CatalogCallBlock & Delegate)

Gets a specific item from the catalog.

Parameters

  • ItemId The item id of the item to get.

  • Delegate Callback when the API call is complete.

public void GetCatalogInventoryBucketUseRuleSetsAll(const FRH_CatalogCallBlock & Delegate)

Gets all of the inventory bucket rulesets from the catalog.

Parameters

  • Delegate Callback when the API call is complete.

public void GetCatalogPricePointsAll(const FRH_CatalogCallBlock & Delegate)

Gets all of the price points from the catalog.

Parameters

  • Delegate Callback when the API call is complete.

public void GetCatalogTimeFramesAll(const FRH_CatalogCallBlock & Delegate)

Gets all of the time frames from the catalog.

Parameters

  • Delegate Callback when the API call is complete.

public void GetCatalogVendor(const FRHVendorGetRequest & VendorRequest)

Gets the vendors requested as well as their sub vendors.

Parameters

  • VendorRequest The vendor request data for the call with list of vendors and callback on complete.

  • bRecurseSubvendors Whether to recursively request subvendors, DEPRECATED

public void GetCatalogVendorsAll(const FRH_CatalogCallBlock & Delegate)

Gets the all catalog vendors.

Parameters

  • Delegate Callback when the API call is complete.

public bool GetXpTable(int32 XpTableId,FRHAPI_XpTable & XpTable) const

Gets a cached Xp Table.

Parameters

  • XpTableId The xp table id of the xp table to get.

  • XpTable The xp table to be returned.

Returns

If true, the Xp Table was found.

public inline bool GetVendorItemByLootId(int32 LootId,FRHAPI_Loot & LootItem) const

Gets a cached vendor item by its loot id.

Parameters

  • LootId The Loot Id used to look up the vendor item.

  • LootItem The loot item to be returned.

Returns

If true, the loot item was found.

public inline URH_CatalogItem*GetCatalogItemByItemId(int32 ItemId) const

Gets a cached catalog item by its item id.

Parameters

  • ItemId The Item Id used to look up the catalog item.

Returns

The catalog item if found, otherwise nullptr.

public inline bool GetVendorById(int32 VendorId,FRHAPI_Vendor & Vendor) const

Gets a cached vendor by its vendor id.

Parameters

  • VendorId The Vendor Id used to look up the vendor.

  • Vendor The vendor to be returned.

Returns

If true, the vendor was found.

public inline bool GetPricePointById(const FGuid & PricePointGuid,FRHAPI_PricePoint & PricePoint) const

Gets a cached price point by its price point guid.

Parameters

  • PricePointGuid The price point guid used to look up the vendor.

  • PricePoint The price point to be returned.

Returns

If true, the price point was found.

public inline bool GetPricePointById(int32 TimeFrameId,FRHAPI_TimeFrame & TimeFrame) const

Gets a cached time frame by its Time Frame Id.

Parameters

  • TimeFrameId The id used to look up the time frame.

  • TimeFrame The time frame to be returned.

Returns

If true, the time frame was found.

public bool CanRulesetUsePlatformForBucket(const FString & InventoryBucketRulesetId,ERHAPI_InventoryBucket TargetBucket,ERHAPI_InventoryBucket ItemInventoryBucket) const

Checks if the ruleset can use the platform for the bucket.

Parameters

  • InventoryBucketRulesetId The ruleset bucket to be used to evaluate the usage.

  • TargetBucket The bucket that should be used to evaluate the usage.

  • ItemInventoryBucket The bucket the item is in that is being evaluated.

Returns

If true, the item can be used for the specified bucket.

public inline const TMap< int32, FRHAPI_Vendor> &GetVendors() const

Gets the cached vendors.

public inline const TMap< int32, URH_CatalogItem* > &GetCatalogItems() const

Gets the cached catalog items.

public inline const TMap< int32, FRHAPI_XpTable> &GetXpTables() const

Gets the xp tables.

public inline const TMap< FString, FRHAPI_InventoryBucketUseRuleSet> &GetInventoryBucketUseRuleSets() const

Gets the cached inventory bucket rule sets.

public inline const TMap< FGuid, FRHAPI_PricePoint> &GetPricePoints() const

Gets the cached price points.

public inline const TMap< int32, FRHAPI_TimeFrame> &GetTimeFrames() const

Gets the cached time frames.

public inline virtual FString GetDefaultCatalogFileExportPath() const

public void ExportCatalogToFile(const FString & FilePath,const FRH_GenericSuccessWithErrorBlock & Delegate) const

Retrieve all catalog data and save it to a file.

Parameters

  • FilePath The file path to save the catalog data to.

  • Delegate Callback when the API call is complete and the file is written.

public void ImportCatalogFromFile(const FString & FilePath,const FRH_CatalogCallBlock & Delegate)

Retrieve all catalog data from a file and load it into the catalog.

Parameters

  • FilePath The file path to load the catalog data from.

  • Delegate Callback when the API call is complete and the file is read.

protected TArray< FRH_VendorRequestState>VendorRequests

Array of active vendor requests that are in flight and not responded ot yet.

protected TMap< int32, TWeakPtr< FRH_AsyncTaskHelper> >InFlightVendorRequests

Map of all vendor requests that are in flight

protected TMap< int32, FRHAPI_XpTable>XpTables

Xp Table Id to Xp Table Map.

protected TMap< int32, FRHAPI_Vendor>CatalogVendors

Vendor Id to Vendor Map.

protected TMap< int32, URH_CatalogItem* >CatalogItems

Item Id to Catalog Item Map.

protected TMap< int32, FRHAPI_Loot>CatalogLootItems

Loot Id to Catalog Vendor Item Map.

protected TMap< int32, FRHAPI_TimeFrame>TimeFrames

Timeframe Id to Timeframe Map.

protected TMap< FGuid, FRHAPI_PricePoint>CatalogPricePoints

Price Point ID to Price Points.

protected TMap< FString, FRHAPI_InventoryBucketUseRuleSet>InventoryBucketUseRuleSets

Inventory Bucket to Inventory Bucket Use Ruleset Map.

protected TOptional< FString > GetCatalogAllETag

ETag of last GetCatalogAll call response.

protected TOptional< FString > GetCatalogXpAllETag

ETag of last GetCatalogXpAll call response.

protected TOptional< FString > GetCatalogPricePointsAllETag

ETag of last GetCatalogPricePointsAll call response.

protected TOptional< FString > GetCatalogVendorsAllETag

ETag of last GetCatalogVendorsAll call response.

protected TOptional< FString > GetCatalogTimeFramesAllETag

ETag of last GetCatalogTimeFramesAll call response.

protected TOptional< FString > GetCatalogInventoryBucketUseRuleSetsAllETag

ETag of last GetCatalogInventoryBucketUseRuleSetsAll call response.

protected TMap< int32, TArray< FRH_CatalogCallBlock > > PendingGetCatalogItemCalls

Array of GetCatalogItemCalls yet to be sent to the API layer.

protected TMap< int32, TArray< FRH_CatalogCallBlock > > SubmittedGetCatalogItemCalls

Array of GetCatalogItemCalls yet being executed by the API layer at this time.

protected void GetCatalogVendorSingle(int32 VendorId,const FRH_GenericSuccessWithErrorBlock & Delegate)

Makes an API call for a single vendor Id.

Parameters

  • VendorId The Vendor to request.

protected virtual void OnGetCatalogVendorResponseUpdate(const TGetCatalogVendor::Response & Resp,int32 VendorId)

Handles the response to a successful Get Catalog Vendor call, updates local cache.

Parameters

  • Resp Response given for the call

  • VendorId The Vendor Id that was requested.

protected virtual void OnGetCatalogVendorResponseComplete(bool bSuccess,const FRH_ErrorInfo & ErrorInfo,int32 VendorId,FRH_GenericSuccessWithErrorBlock Delegate)

Handles the response to a Get Catalog Vendor call, handles completion and processing of any followup requests.

Parameters

  • bSuccess If the call was successful.

  • ErrorInfo The error information if the call failed.

  • VendorId The Vendor Id that was requested.

  • Delegate Delegate passed in for original call to respond to when call completes.

protected virtual void ProcessVendorRequests()

Processes the current vendor request list, kicking off any new requests that are needed, and completing existing requests that are done.

protected virtual void OnGetCatalogVendorsAllResponse(const TGetCatalogVendorsAll::Response & Resp,const FRH_CatalogCallBlock Delegate)

Handles the response to a Get Catalog Vendor All call.

Parameters

  • Resp Response given for the call

  • Delegate Delegate passed in for original call to respond to when call completes.

protected virtual void OnGetCatalogAllResponse(const TGetCatalogAll::Response & Resp,const FRH_CatalogCallBlock Delegate)

Handles the response to a Get Catalog All call.

Parameters

  • Resp Response given for the call

  • Delegate Delegate passed in for original call to respond to when call completes.

protected virtual void OnGetCatalogXpAllResponse(const TGetCatalogXpAll::Response & Resp,const FRH_CatalogCallBlock Delegate)

Handles the response to a Get Catalog Xp All call.

Parameters

  • Resp Response given for the call

  • Delegate Delegate passed in for original call to respond to when call completes.

protected virtual void OnGetCatalogItemResponse(const TGetCatalogItem::Response & Resp,int32 ItemId)

Handles the response to a Get Catalog Item call.

Parameters

  • Resp Response given for the call.

  • ItemId The Item Id being requested.

protected virtual void OnGetCatalogInventoryBucketUseRuleSetsAllResponse(const TGetCatalogInventoryBucketUseRuleSetsAll::Response & Resp,const FRH_CatalogCallBlock Delegate)

Handles the response to a Get Catalog Inventory Bucked Use Rule Sets All call.

Parameters

  • Resp Response given for the call.

  • Delegate Delegate passed in for original call to respond to when call completes.

protected virtual void OnGetCatalogPricePointsAllResponse(const TGetCatalogPricePointsAll::Response & Resp,const FRH_CatalogCallBlock Delegate)

Handles the response to a Get Catalog Price Points All call.

Parameters

  • Resp Response given for the call.

  • Delegate Delegate passed in for original call to respond to when call completes.

protected virtual void OnGetCatalogTimeFramesAllResponse(const TGetCatalogTimeFramesAll::Response & Resp,const FRH_CatalogCallBlock Delegate)

Handles the response to a Get Catalog Time Frames All call.

Parameters

  • Resp Response given for the call

  • Delegate Delegate passed in for original call to respond to when call completes.

protected void ParseAllXpTables(const FRHAPI_XpTables & Content)

Parses Xp Tables response into the Xp Table Map.

Parameters

  • Content Xp Tables to parse.

protected void ParseAllInventoryBucketUseRuleSets(const FRHAPI_InventoryBucketUseRuleSets & Content)

Parses Inventory Bucket Use Rule Sets response into the Inventory Bucket Use Ruleset Map.

Parameters

  • Content Inventory Bucket Use Rule Sets to parse.

protected URH_CatalogItem*ParseCatalogItem(const FRHAPI_Item & CatalogItem,int32 ItemId)

Parse a Catalog item into the class for it and stores it in the Catalog Items Map.

Parameters

  • CatalogItem Item to be parsed.

  • ItemId Item Id of the item being parsed.

Returns

The Catalog Item as its class.

protected virtual void InitPropertiesWithDefaultValues()

Initializes the subsystem with defaults for its cached data.

protected virtual void Tick(float DeltaTime)

Kick off pending requests to the API layer.

protected inline virtual bool IsTickable() const

Determine if there are pending requests.

protected inline virtual TStatId GetStatId() const

Gets the catalog subsystem stat Id.

typedef TGetCatalogAll

Type Define for Get Catalog calls.

typedef TGetCatalogXpAll

Type Define for Get Catalog Xp calls.

typedef TGetCatalogInventoryBucketUseRuleSetsAll

Type Define for Get Catalog Inventory Bucket Use Rule Set calls.

typedef TGetCatalogPricePointsAll

Type Define for Get Catalog Price Point calls.

typedef TGetCatalogTimeFramesAll

Type Define for Get Catalog Time Frame calls.

typedef TGetCatalogVendor

Type Define for Get Catalog Vendor calls.

typedef TGetCatalogVendorsAll

Type Define for Get Catalog Vendor All calls.

typedef TGetCatalogItem

Type Define for Get Catalog Item calls.

class URH_CatalogBlueprintLibrary

class URH_CatalogBlueprintLibrary
: public UBlueprintFunctionLibrary

Catalog Blueprint Library with helper methods for API structs.

Summary

MembersDescriptions

Members

struct FRHVendorGetRequest

Vendor Request struct used to encapsulate a request to get a vendors and the callback delegate.

Summary

MembersDescriptions
public FRH_CatalogCallBlock DelegateDelegate callback when all vendors have been fetched.
public TArray< int32 > VendorIdsArray of outstanding vendor requests to complete this vendor get.
public bool bRecurseSubvendors
public bool bSkipCachedVendors
public inline FRHVendorGetRequest()Default Constructor.
public inline FRHVendorGetRequest(const TArray< int32 > & InVendorIds)Constructor with vendor Id List.
public inline FRHVendorGetRequest(const FRH_CatalogCallBlock & InDelegate,const TArray< int32 > & InVendorIds)Constructor with vendor Id List and callback delegate.

Members

public FRH_CatalogCallBlock Delegate

Delegate callback when all vendors have been fetched.

public TArray< int32 > VendorIds

Array of outstanding vendor requests to complete this vendor get.

public bool bRecurseSubvendors

public bool bSkipCachedVendors

public inline FRHVendorGetRequest()

Default Constructor.

public inline FRHVendorGetRequest(const TArray< int32 > & InVendorIds)

Constructor with vendor Id List.

Parameters

  • InVendorIds List of vendor Ids to get.

public inline FRHVendorGetRequest(const FRH_CatalogCallBlock & InDelegate,const TArray< int32 > & InVendorIds)

Constructor with vendor Id List and callback delegate.

Parameters

  • InDelegate Delegate to call when vendor fetch completes.

  • InVendorIds List of vendor Ids to get.

struct FRH_VendorRequestState

Vendor Request struct used to encapsulate a request to get a vendors and the callback delegate.

Summary

MembersDescriptions
public TWeakObjectPtr< class URH_CatalogSubsystem>Catalog
public FRHVendorGetRequest RequestArray of outstanding vendor requests to complete this vendor get.
public TArray< int32 > VendorsReceivedA list of vendors received since this request was made.
public inline FRH_VendorRequestState()Default Constructor.
public inline FRH_VendorRequestState(class URH_CatalogSubsystem* InCatalog,constFRHVendorGetRequest & InRequest)Constructor with a request and a subsystem.
public inline void NotifyVendorReceived(int32 VendorId,const FRHAPI_Vendor & Vendor)Notify that a vendor has been received.
public inline bool NotifyVendorFailure(int32 VendorId)Notify that a vendor has failed to be received.
public TArray< int32 > GetAllKnownVendorIds() constGet a list of all currently known vendors associated with this request.
public TArray< int32 > GetAwaitedVendorIds() constGet a list of all currently known vendors this request is waiting on.
public inline bool IsComplete(TArray< int32 > & OutAwaitedVendors) constCheck if all vendors have been received, and fire delegate if so.

Members

public TWeakObjectPtr< class URH_CatalogSubsystem>Catalog

public FRHVendorGetRequest Request

Array of outstanding vendor requests to complete this vendor get.

public TArray< int32 > VendorsReceived

A list of vendors received since this request was made.

public inline FRH_VendorRequestState()

Default Constructor.

public inline FRH_VendorRequestState(class URH_CatalogSubsystem* InCatalog,constFRHVendorGetRequest & InRequest)

Constructor with a request and a subsystem.

Parameters

  • InCatalog The Catalog Subsystem to use.

  • InRequest The request to use.

public inline void NotifyVendorReceived(int32 VendorId,const FRHAPI_Vendor & Vendor)

Notify that a vendor has been received.

Parameters

  • VendorId The VendorID received

  • Vendor The Vendor data received

public inline bool NotifyVendorFailure(int32 VendorId)

Notify that a vendor has failed to be received.

Parameters

  • VendorId The VendorID that failed

Returns

Whether the vendor was awaited and the request should be failed

public TArray< int32 > GetAllKnownVendorIds() const

Get a list of all currently known vendors associated with this request.

public TArray< int32 > GetAwaitedVendorIds() const

Get a list of all currently known vendors this request is waiting on.

public inline bool IsComplete(TArray< int32 > & OutAwaitedVendors) const

Check if all vendors have been received, and fire delegate if so.

Parameters

  • OutAwaitedVendors List of vendors that are still awaited

Returns

If all vendors have been received