diff --git a/UnrealPlugin/Source/PlayFabGSDK/Private/GSDKConfiguration.cpp b/UnrealPlugin/Source/PlayFabGSDK/Private/GSDKConfiguration.cpp index 2b001329..69e42d67 100644 --- a/UnrealPlugin/Source/PlayFabGSDK/Private/GSDKConfiguration.cpp +++ b/UnrealPlugin/Source/PlayFabGSDK/Private/GSDKConfiguration.cpp @@ -4,8 +4,12 @@ #include "GSDKInternalUtils.h" #include "PlayFabGSDK.h" +#include "Dom/JsonObject.h" #include "Logging/LogMacros.h" #include "Misc/FileHelper.h" +#include "Misc/Paths.h" +#include "Serialization/JsonReader.h" +#include "Serialization/JsonSerializer.h" FConfigurationBase::FConfigurationBase() { @@ -163,7 +167,7 @@ FJsonFileConfiguration::FJsonFileConfiguration(const FString& FileName) TSharedPtr GameCertsJson = ConfigJson->GetObjectField(TEXT("gameCertificates")); for (const auto& GameCert: GameCertsJson->Values) { - GameCerts.Add(GameCert.Key, GameCert.Value->AsString()); + GameCerts.Add(FString(GameCert.Key.ToView()), GameCert.Value->AsString()); } } @@ -172,7 +176,7 @@ FJsonFileConfiguration::FJsonFileConfiguration(const FString& FileName) TSharedPtr BuildMetaData = ConfigJson->GetObjectField(TEXT("buildMetadata")); for (const auto& BuildMetaDataValue: BuildMetaData->Values) { - Metadata.Add(BuildMetaDataValue.Key, BuildMetaDataValue.Value->AsString()); + Metadata.Add(FString(BuildMetaDataValue.Key.ToView()), BuildMetaDataValue.Value->AsString()); } } @@ -181,7 +185,7 @@ FJsonFileConfiguration::FJsonFileConfiguration(const FString& FileName) TSharedPtr GamePortsJson = ConfigJson->GetObjectField(TEXT("gamePorts")); for (const auto& GamePortCur: GamePortsJson->Values) { - Ports.Add(GamePortCur.Key, GamePortCur.Value->AsString()); + Ports.Add(FString(GamePortCur.Key.ToView()), GamePortCur.Value->AsString()); } } diff --git a/UnrealPlugin/Source/PlayFabGSDK/Private/GSDKInternal.cpp b/UnrealPlugin/Source/PlayFabGSDK/Private/GSDKInternal.cpp index 6dfeba98..4080d465 100644 --- a/UnrealPlugin/Source/PlayFabGSDK/Private/GSDKInternal.cpp +++ b/UnrealPlugin/Source/PlayFabGSDK/Private/GSDKInternal.cpp @@ -7,13 +7,17 @@ #include "HttpModule.h" #include "HttpManager.h" #include "Async/Async.h" -#include "Json.h" +#include "Dom/JsonObject.h" #include "PlayFabGSDK.h" #include "Interfaces/IHttpResponse.h" #include "Misc/Paths.h" #include "Logging/LogMacros.h" #include "HAL/Event.h" +#include "HAL/PlatformFileManager.h" #include "GSDKInfo.h" +#include "Serialization/JsonReader.h" +#include "Serialization/JsonSerializer.h" +#include "Serialization/JsonWriter.h" FGSDKInternal::FGSDKInternal() : SignalHeartbeatEvent(FPlatformProcess::GetSynchEventFromPool(false)) @@ -352,13 +356,14 @@ void FGSDKInternal::DecodeHeartbeatResponse(const FString& ResponseJson) FString ValueString; if (SessionConfigJsonValue.Value->TryGetString(ValueString)) { - if (ConfigSettings.Contains(SessionConfigJsonValue.Key)) + const FString ConfigKey(SessionConfigJsonValue.Key.ToView()); + if (ConfigSettings.Contains(ConfigKey)) { - ConfigSettings[SessionConfigJsonValue.Key] = ValueString; + ConfigSettings[ConfigKey] = ValueString; } else { - ConfigSettings.Add(SessionConfigJsonValue.Key, ValueString); + ConfigSettings.Add(ConfigKey, ValueString); } } } @@ -372,13 +377,14 @@ void FGSDKInternal::DecodeHeartbeatResponse(const FString& ResponseJson) FString ValueString; if (MetaDataJson.Value->TryGetString(ValueString)) { - if (ConfigSettings.Contains(MetaDataJson.Key)) + const FString ConfigKey(MetaDataJson.Key.ToView()); + if (ConfigSettings.Contains(ConfigKey)) { - ConfigSettings[MetaDataJson.Key] = ValueString; + ConfigSettings[ConfigKey] = ValueString; } else { - ConfigSettings.Add(MetaDataJson.Key, ValueString); + ConfigSettings.Add(ConfigKey, ValueString); } } } diff --git a/UnrealPlugin/Source/PlayFabGSDK/Private/GSDKUtils.cpp b/UnrealPlugin/Source/PlayFabGSDK/Private/GSDKUtils.cpp index 753d1509..b666cbc1 100644 --- a/UnrealPlugin/Source/PlayFabGSDK/Private/GSDKUtils.cpp +++ b/UnrealPlugin/Source/PlayFabGSDK/Private/GSDKUtils.cpp @@ -2,6 +2,7 @@ #include "GSDKUtils.h" +#include "Engine/EngineBaseTypes.h" #include "PlayFabGSDK.h" const FGameServerConnectionInfo UGSDKUtils::GetGameServerConnectionInfo() diff --git a/UnrealPlugin/Source/PlayFabGSDK/Public/ConnectedPlayer.h b/UnrealPlugin/Source/PlayFabGSDK/Public/ConnectedPlayer.h index 9ca98abe..3d4643bf 100644 --- a/UnrealPlugin/Source/PlayFabGSDK/Public/ConnectedPlayer.h +++ b/UnrealPlugin/Source/PlayFabGSDK/Public/ConnectedPlayer.h @@ -11,6 +11,6 @@ struct FConnectedPlayer { GENERATED_BODY() public: - UPROPERTY(BlueprintReadWrite) + UPROPERTY(BlueprintReadWrite, Category = "PlayFab GSDK") FString PlayerId; }; diff --git a/UnrealPlugin/Source/PlayFabGSDK/Public/GameServerConnectionInfo.h b/UnrealPlugin/Source/PlayFabGSDK/Public/GameServerConnectionInfo.h index 5336baf1..b75efcc5 100644 --- a/UnrealPlugin/Source/PlayFabGSDK/Public/GameServerConnectionInfo.h +++ b/UnrealPlugin/Source/PlayFabGSDK/Public/GameServerConnectionInfo.h @@ -15,7 +15,7 @@ struct FGamePort /// /// The friendly name / identifier for the port, specified by the game developer in the Build configuration. /// - UPROPERTY(BlueprintReadOnly) + UPROPERTY(BlueprintReadOnly, Category = "PlayFab GSDK") FString Name; /// @@ -23,13 +23,13 @@ struct FGamePort /// For process based servers, this is determined by Control Plane, based on the ports available on the VM. /// For containers, this is specified by the game developer in the Build configuration. /// - UPROPERTY(BlueprintReadOnly) + UPROPERTY(BlueprintReadOnly, Category = "PlayFab GSDK") int32 ServerListeningPort = 0; /// /// The public port to which clients should connect (maps internally to ). /// - UPROPERTY(BlueprintReadOnly) + UPROPERTY(BlueprintReadOnly, Category = "PlayFab GSDK") int32 ClientConnectionPort = 0; }; @@ -38,9 +38,9 @@ struct FGameServerConnectionInfo { GENERATED_BODY() public: - UPROPERTY(BlueprintReadOnly) + UPROPERTY(BlueprintReadOnly, Category = "PlayFab GSDK") FString PublicIpV4Address; - UPROPERTY(BlueprintReadOnly) + UPROPERTY(BlueprintReadOnly, Category = "PlayFab GSDK") TArray GamePortsConfiguration; }; diff --git a/UnrealPlugin/Source/PlayFabGSDK/Public/MaintenanceSchedule.h b/UnrealPlugin/Source/PlayFabGSDK/Public/MaintenanceSchedule.h index 1f6d499e..3794022b 100644 --- a/UnrealPlugin/Source/PlayFabGSDK/Public/MaintenanceSchedule.h +++ b/UnrealPlugin/Source/PlayFabGSDK/Public/MaintenanceSchedule.h @@ -11,7 +11,7 @@ struct FMaintenanceEvent { GENERATED_BODY() public: - UPROPERTY(BlueprintReadWrite) + UPROPERTY(BlueprintReadWrite, Category = "PlayFab GSDK") FString EventId; FString EventType; FString ResourceType; @@ -28,7 +28,7 @@ struct FMaintenanceSchedule { GENERATED_BODY() public: - UPROPERTY(BlueprintReadWrite) + UPROPERTY(BlueprintReadWrite, Category = "PlayFab GSDK") FString DocumentIncarnation; TArray Events; }; diff --git a/UnrealPlugin/Source/PlayFabGSDK/Public/PlayFabGSDK.h b/UnrealPlugin/Source/PlayFabGSDK/Public/PlayFabGSDK.h index 11746fc7..f78f4e60 100644 --- a/UnrealPlugin/Source/PlayFabGSDK/Public/PlayFabGSDK.h +++ b/UnrealPlugin/Source/PlayFabGSDK/Public/PlayFabGSDK.h @@ -108,7 +108,7 @@ class // These two keys are only available after allocation static constexpr const TCHAR* SESSION_COOKIE_KEY = TEXT("sessionCookie"); - static constexpr const TCHAR* SESSION_ID_KEY = TEXT("sessionId";) + static constexpr const TCHAR* SESSION_ID_KEY = TEXT("sessionId"); #if !(WITH_DEV_AUTOMATION_TESTS && WITH_EDITOR) private: