6#include "CoreMinimal.h"
7#include "Dom/JsonObject.h"
10#include "LootLockerMetadataRequestHandler.generated.h"
18UENUM(BlueprintType, Category =
"LootLocker")
40UENUM(BlueprintType, Category =
"LootLocker")
56UENUM(BlueprintType, Category =
"LootLocker")
72UENUM(BlueprintType, Category =
"LootLocker")
78 OnString = 0 UMETA(ToolTip=
"Triggered when the parsed entry is of type String. The String Value field will be populated"),
79 OnInteger = 1 UMETA(ToolTip =
"Triggered when the parsed entry is of type Integer (non decimal number). The Integer Value field will be populated"),
80 OnFloat = 2 UMETA(ToolTip =
"Triggered when the parsed entry is of type Float (decimal number). The Float Value field will be populated"),
81 OnNumber = 3 UMETA(ToolTip =
"Triggered when the parsed entry is a number but not a regular integer or float (could for example be too big to fit in either of those types, or the decimal precision is higher than can be solved with either of the types). The NumberString value field will be populated"),
82 OnBool = 4 UMETA(ToolTip =
"Triggered when the parsed entry is of type Bool. The Bool Value field will be populated"),
83 OnJson = 5 UMETA(ToolTip =
"Triggered when the parsed entry is of type Json. The JsonString Value field will be populated with the string representation of the json, convert to a JSON object or straight to a USTRUCT of your design"),
84 OnBase64 = 6 UMETA(ToolTip =
"Triggered when the parsed entry is of type Base64. The Base64 Value field will be populated"),
85 OnError = 7 UMETA(ToolTip =
"Triggered when the entry could not be parsed. The ErrorMessage Value field will be populated"),
97USTRUCT(BlueprintType, Category =
"LootLocker")
104 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
109 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
116USTRUCT(BlueprintType, Category =
"LootLocker")
123 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
128 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
133 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
139 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
197 LOOTLOCKERSDK_API
void SetRawValue(const TSharedPtr<FJsonValue>& Value);
255 FJsonObject EntryAsJson;
261USTRUCT(BlueprintType, Category =
"LootLocker")
268 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
273 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
280USTRUCT(BlueprintType, Category =
"LootLocker")
287 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
292 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
297 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
304USTRUCT(BlueprintType, Category =
"LootLocker")
311 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
316 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
321 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
328USTRUCT(BlueprintType, Category =
"LootLocker")
335 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
340 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
345 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
356 TMap<FString,
int> KeyToEntryIndex = TMap<FString,
int>();
365USTRUCT(BlueprintType, Category =
"LootLocker")
372 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
379USTRUCT(BlueprintType, Category =
"LootLocker")
386 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
391 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
402USTRUCT(BlueprintType, Category =
"LootLocker")
409 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
414 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
425 TMap<FString,
int> KeyToEntryIndex = TMap<FString,
int>();
431USTRUCT(BlueprintType, Category =
"LootLocker")
438 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
445USTRUCT(BlueprintType, Category =
"LootLocker")
452 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
457 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
462 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
469USTRUCT(BlueprintType, Category =
"LootLocker")
476 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
@ Source
Order by the source that granted the item.
Definition LootLockerItemRequestHandler.h:64
Represents a single typed metadata entry with a key, value type, tags, and access level,...
Definition LootLockerMetadataRequestHandler.h:118
bool TryGetValueAsBool(bool &Output) const
Get the value as a boolean.
TArray< FString > Access
The access level set for this metadata entry.
Definition LootLockerMetadataRequestHandler.h:140
static FLootLockerMetadataEntry MakeBoolEntry(const FString &Key, const TArray< FString > &Tags, const TArray< FString > &Access, const bool Value)
Factory method that makes an FLootLockerMetadataEntry with a Bool Value.
bool TryGetValueAsJsonArray(TArray< TSharedPtr< FJsonValue > > &Output) const
Get the value as a Json Array.
static FLootLockerMetadataEntry MakeFloatEntry(const FString &Key, const TArray< FString > &Tags, const TArray< FString > &Access, const float &Value)
Factory method that makes an FLootLockerMetadataEntry with a Float Value.
void SetValueAsBase64(const FLootLockerMetadataBase64Value &Value)
Set the value as a Base64 object.
bool SetValueAsUStruct(const T &Value)
Set the value as the provided UStruct object.
bool TryGetValueAsString(FString &Output) const
Get the value as a String.
static FLootLockerMetadataEntry MakeJsonArrayEntry(const FString &Key, const TArray< FString > &Tags, const TArray< FString > &Access, const TArray< TSharedPtr< FJsonValue > > &Value)
Factory method that makes an FLootLockerMetadataEntry with a JsonArray Value.
static FLootLockerMetadataEntry MakeIntegerEntry(const FString &Key, const TArray< FString > &Tags, const TArray< FString > &Access, const int Value)
Factory method that makes an FLootLockerMetadataEntry with an Integer Value.
static FLootLockerMetadataEntry MakeJsonValueEntry(const FString &Key, const TArray< FString > &Tags, const TArray< FString > &Access, const ELootLockerMetadataTypes Type, const TSharedPtr< FJsonValue > Value)
Factory method that makes an FLootLockerMetadataEntry with a JsonValue Value.
static FLootLockerMetadataEntry MakeBase64Entry(const FString &Key, const TArray< FString > &Tags, const TArray< FString > &Access, const FLootLockerMetadataBase64Value &Value)
Factory method that makes an FLootLockerMetadataEntry with a Base64 Value.
static FLootLockerMetadataEntry MakeStringEntry(const FString &Key, const TArray< FString > &Tags, const TArray< FString > &Access, const FString &Value)
Factory method that makes an FLootLockerMetadataEntry with a String Value.
bool TryGetRawValue(TSharedPtr< FJsonValue > &Output) const
Get the value as an unparsed json value.
void SetValueAsFloat(const float &Value)
Set the value as a float.
ELootLockerMetadataTypes Type
The type of value this metadata contains.
Definition LootLockerMetadataRequestHandler.h:129
TArray< FString > Tags
List of tags applied to this metadata.
Definition LootLockerMetadataRequestHandler.h:134
bool TryGetSerializedValue(FString &Output) const
Get the value in a json string format.
void SetValueAsJsonArray(const TArray< TSharedPtr< FJsonValue > > &Value)
Set the value as a Json Array.
void SetValueAsInteger(const int &Value)
Set the value as an integer.
bool TryGetValueAsFloat(float &Output) const
Get the value as a float.
FString Key
The metadata key.
Definition LootLockerMetadataRequestHandler.h:124
void SetRawValue(const TSharedPtr< FJsonValue > &Value)
Set the value as a JsonValue.
static FLootLockerMetadataEntry MakeJsonObjectEntry(const FString &Key, const TArray< FString > &Tags, const TArray< FString > &Access, const FJsonObject &Value)
Factory method that makes an FLootLockerMetadataEntry with a JsonObject Value.
bool TryGetValueAsInteger(int &Output) const
Get the value as an integer.
void SetValueAsBool(const bool &Value)
Set the value as a bool.
static FLootLockerMetadataEntry MakeEntryExceptValue(const FString &Key, const TArray< FString > &Tags, const TArray< FString > &Access, const ELootLockerMetadataTypes Type)
void SetValueAsJsonObject(const FJsonObject &Value)
Set the value as a Json Object.
void SetValueAsString(const FString &Value)
Set the value as a String.
bool TryGetValueAsJsonObject(TSharedPtr< FJsonObject > &Output) const
Get the value as a Json Object.
void _INTERNAL_SetJsonRepresentation(const FJsonObject &obj)
bool TryGetValueAsBase64(FLootLockerMetadataBase64Value &Output) const
Get the value as a LootLockerMetadataBase64Value object.
Definition LootLockerPlayerData.h:12
Base response struct — every SDK callback receives a struct that derives from this.
Definition LootLockerResponse.h:19
Identifies a metadata entry that caused an error during a set operation, by key and value type.
Definition LootLockerMetadataRequestHandler.h:263
ELootLockerMetadataTypes Type
The type of value that the set operation was for.
Definition LootLockerMetadataRequestHandler.h:274
FString Key
The metadata key that the set operation error refers to.
Definition LootLockerMetadataRequestHandler.h:269