Skip to content

Commit

Permalink
https://docs.microsoft.com/en-us/gaming/playfab/release-notes/#200330
Browse files Browse the repository at this point in the history
  • Loading branch information
PlayFabJenkinsBot committed Mar 30, 2020
2 parents 04aebae + 83e04c0 commit cdb38fb
Show file tree
Hide file tree
Showing 24 changed files with 1,103 additions and 115 deletions.
2 changes: 1 addition & 1 deletion build/Android/app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apply plugin: 'com.android.application'
android {
compileSdkVersion 28
defaultConfig {
applicationId "com.playfab.service"
applicationId "com.microsoft.playfab.sdktest"
minSdkVersion 19
targetSdkVersion 28
versionCode 1
Expand Down
6 changes: 3 additions & 3 deletions build/iOS/TestIOSApp/TestIOSApp.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -533,7 +533,7 @@
"@executable_path/Frameworks",
);
OTHER_LDFLAGS = "";
PRODUCT_BUNDLE_IDENTIFIER = com.playfab.service;
PRODUCT_BUNDLE_IDENTIFIER = com.microsoft.playfab.sdktest;
PRODUCT_NAME = "$(TARGET_NAME)";
TARGETED_DEVICE_FAMILY = "1,2";
};
Expand All @@ -556,7 +556,7 @@
"@executable_path/Frameworks",
);
OTHER_LDFLAGS = "";
PRODUCT_BUNDLE_IDENTIFIER = com.playfab.service;
PRODUCT_BUNDLE_IDENTIFIER = com.microsoft.playfab.sdktest;
PRODUCT_NAME = "$(TARGET_NAME)";
TARGETED_DEVICE_FAMILY = "1,2";
};
Expand Down Expand Up @@ -651,7 +651,7 @@
"-framework",
CFNetwork,
);
PRODUCT_BUNDLE_IDENTIFIER = com.playfab.service;
PRODUCT_BUNDLE_IDENTIFIER = com.microsoft.playfab.sdktest;
PRODUCT_NAME = "$(TARGET_NAME)";
TARGETED_DEVICE_FAMILY = "1,2";
};
Expand Down
230 changes: 223 additions & 7 deletions code/include/playfab/PlayFabAdminDataModels.h

Large diffs are not rendered by default.

13 changes: 12 additions & 1 deletion code/include/playfab/PlayFabAuthenticationDataModels.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,8 @@ namespace PlayFab
LoginIdentityProviderNintendoSwitch,
LoginIdentityProviderFacebookInstantGames,
LoginIdentityProviderOpenIdConnect,
LoginIdentityProviderApple
LoginIdentityProviderApple,
LoginIdentityProviderNintendoSwitchAccount
};

inline void ToJsonEnum(const LoginIdentityProvider input, Json::Value& output)
Expand Down Expand Up @@ -136,6 +137,11 @@ namespace PlayFab
output = Json::Value("Apple");
return;
}
if (input == LoginIdentityProvider::LoginIdentityProviderNintendoSwitchAccount)
{
output = Json::Value("NintendoSwitchAccount");
return;
}
}
inline void FromJsonEnum(const Json::Value& input, LoginIdentityProvider& output)
{
Expand Down Expand Up @@ -244,6 +250,11 @@ namespace PlayFab
output = LoginIdentityProvider::LoginIdentityProviderApple;
return;
}
if (inputStr == "NintendoSwitchAccount")
{
output = LoginIdentityProvider::LoginIdentityProviderNintendoSwitchAccount;
return;
}
}

// Authentication Classes
Expand Down
105 changes: 103 additions & 2 deletions code/include/playfab/PlayFabClientDataModels.h
Original file line number Diff line number Diff line change
Expand Up @@ -4813,7 +4813,8 @@ namespace PlayFab
LoginIdentityProviderNintendoSwitch,
LoginIdentityProviderFacebookInstantGames,
LoginIdentityProviderOpenIdConnect,
LoginIdentityProviderApple
LoginIdentityProviderApple,
LoginIdentityProviderNintendoSwitchAccount
};

inline void ToJsonEnum(const LoginIdentityProvider input, Json::Value& output)
Expand Down Expand Up @@ -4918,6 +4919,11 @@ namespace PlayFab
output = Json::Value("Apple");
return;
}
if (input == LoginIdentityProvider::LoginIdentityProviderNintendoSwitchAccount)
{
output = Json::Value("NintendoSwitchAccount");
return;
}
}
inline void FromJsonEnum(const Json::Value& input, LoginIdentityProvider& output)
{
Expand Down Expand Up @@ -5026,6 +5032,11 @@ namespace PlayFab
output = LoginIdentityProvider::LoginIdentityProviderApple;
return;
}
if (inputStr == "NintendoSwitchAccount")
{
output = LoginIdentityProvider::LoginIdentityProviderNintendoSwitchAccount;
return;
}
}

enum class MatchmakeStatus
Expand Down Expand Up @@ -5888,7 +5899,9 @@ namespace PlayFab
UserOriginationServerCustomId,
UserOriginationNintendoSwitchDeviceId,
UserOriginationFacebookInstantGamesId,
UserOriginationOpenIdConnect
UserOriginationOpenIdConnect,
UserOriginationApple,
UserOriginationNintendoSwitchAccount
};

inline void ToJsonEnum(const UserOrigination input, Json::Value& output)
Expand Down Expand Up @@ -6003,6 +6016,16 @@ namespace PlayFab
output = Json::Value("OpenIdConnect");
return;
}
if (input == UserOrigination::UserOriginationApple)
{
output = Json::Value("Apple");
return;
}
if (input == UserOrigination::UserOriginationNintendoSwitchAccount)
{
output = Json::Value("NintendoSwitchAccount");
return;
}
}
inline void FromJsonEnum(const Json::Value& input, UserOrigination& output)
{
Expand Down Expand Up @@ -6121,6 +6144,16 @@ namespace PlayFab
output = UserOrigination::UserOriginationOpenIdConnect;
return;
}
if (inputStr == "Apple")
{
output = UserOrigination::UserOriginationApple;
return;
}
if (inputStr == "NintendoSwitchAccount")
{
output = UserOrigination::UserOriginationNintendoSwitchAccount;
return;
}
}

// Client Classes
Expand Down Expand Up @@ -9414,6 +9447,35 @@ namespace PlayFab
}
};

struct UserAppleIdInfo : public PlayFabBaseModel
{
std::string AppleSubjectId;

UserAppleIdInfo() :
PlayFabBaseModel(),
AppleSubjectId()
{}

UserAppleIdInfo(const UserAppleIdInfo& src) :
PlayFabBaseModel(),
AppleSubjectId(src.AppleSubjectId)
{}

~UserAppleIdInfo() = default;

void FromJson(const Json::Value& input) override
{
FromJsonUtilS(input["AppleSubjectId"], AppleSubjectId);
}

Json::Value ToJson() const override
{
Json::Value output;
Json::Value each_AppleSubjectId; ToJsonUtilS(AppleSubjectId, each_AppleSubjectId); output["AppleSubjectId"] = each_AppleSubjectId;
return output;
}
};

struct UserCustomIdInfo : public PlayFabBaseModel
{
std::string CustomId;
Expand Down Expand Up @@ -9584,6 +9646,35 @@ namespace PlayFab
}
};

struct UserNintendoSwitchAccountIdInfo : public PlayFabBaseModel
{
std::string NintendoSwitchAccountSubjectId;

UserNintendoSwitchAccountIdInfo() :
PlayFabBaseModel(),
NintendoSwitchAccountSubjectId()
{}

UserNintendoSwitchAccountIdInfo(const UserNintendoSwitchAccountIdInfo& src) :
PlayFabBaseModel(),
NintendoSwitchAccountSubjectId(src.NintendoSwitchAccountSubjectId)
{}

~UserNintendoSwitchAccountIdInfo() = default;

void FromJson(const Json::Value& input) override
{
FromJsonUtilS(input["NintendoSwitchAccountSubjectId"], NintendoSwitchAccountSubjectId);
}

Json::Value ToJson() const override
{
Json::Value output;
Json::Value each_NintendoSwitchAccountSubjectId; ToJsonUtilS(NintendoSwitchAccountSubjectId, each_NintendoSwitchAccountSubjectId); output["NintendoSwitchAccountSubjectId"] = each_NintendoSwitchAccountSubjectId;
return output;
}
};

struct UserNintendoSwitchDeviceIdInfo : public PlayFabBaseModel
{
std::string NintendoSwitchDeviceId;
Expand Down Expand Up @@ -9816,6 +9907,7 @@ namespace PlayFab
struct UserAccountInfo : public PlayFabBaseModel
{
Boxed<UserAndroidDeviceInfo> AndroidDeviceInfo;
Boxed<UserAppleIdInfo> AppleAccountInfo;
time_t Created;
Boxed<UserCustomIdInfo> CustomIdInfo;
Boxed<UserFacebookInfo> FacebookInfo;
Expand All @@ -9824,6 +9916,7 @@ namespace PlayFab
Boxed<UserGoogleInfo> GoogleInfo;
Boxed<UserIosDeviceInfo> IosDeviceInfo;
Boxed<UserKongregateInfo> KongregateInfo;
Boxed<UserNintendoSwitchAccountIdInfo> NintendoSwitchAccountInfo;
Boxed<UserNintendoSwitchDeviceIdInfo> NintendoSwitchDeviceIdInfo;
std::list<UserOpenIdInfo> OpenIdInfo;
std::string PlayFabId;
Expand All @@ -9839,6 +9932,7 @@ namespace PlayFab
UserAccountInfo() :
PlayFabBaseModel(),
AndroidDeviceInfo(),
AppleAccountInfo(),
Created(),
CustomIdInfo(),
FacebookInfo(),
Expand All @@ -9847,6 +9941,7 @@ namespace PlayFab
GoogleInfo(),
IosDeviceInfo(),
KongregateInfo(),
NintendoSwitchAccountInfo(),
NintendoSwitchDeviceIdInfo(),
OpenIdInfo(),
PlayFabId(),
Expand All @@ -9863,6 +9958,7 @@ namespace PlayFab
UserAccountInfo(const UserAccountInfo& src) :
PlayFabBaseModel(),
AndroidDeviceInfo(src.AndroidDeviceInfo),
AppleAccountInfo(src.AppleAccountInfo),
Created(src.Created),
CustomIdInfo(src.CustomIdInfo),
FacebookInfo(src.FacebookInfo),
Expand All @@ -9871,6 +9967,7 @@ namespace PlayFab
GoogleInfo(src.GoogleInfo),
IosDeviceInfo(src.IosDeviceInfo),
KongregateInfo(src.KongregateInfo),
NintendoSwitchAccountInfo(src.NintendoSwitchAccountInfo),
NintendoSwitchDeviceIdInfo(src.NintendoSwitchDeviceIdInfo),
OpenIdInfo(src.OpenIdInfo),
PlayFabId(src.PlayFabId),
Expand All @@ -9889,6 +9986,7 @@ namespace PlayFab
void FromJson(const Json::Value& input) override
{
FromJsonUtilO(input["AndroidDeviceInfo"], AndroidDeviceInfo);
FromJsonUtilO(input["AppleAccountInfo"], AppleAccountInfo);
FromJsonUtilT(input["Created"], Created);
FromJsonUtilO(input["CustomIdInfo"], CustomIdInfo);
FromJsonUtilO(input["FacebookInfo"], FacebookInfo);
Expand All @@ -9897,6 +9995,7 @@ namespace PlayFab
FromJsonUtilO(input["GoogleInfo"], GoogleInfo);
FromJsonUtilO(input["IosDeviceInfo"], IosDeviceInfo);
FromJsonUtilO(input["KongregateInfo"], KongregateInfo);
FromJsonUtilO(input["NintendoSwitchAccountInfo"], NintendoSwitchAccountInfo);
FromJsonUtilO(input["NintendoSwitchDeviceIdInfo"], NintendoSwitchDeviceIdInfo);
FromJsonUtilO(input["OpenIdInfo"], OpenIdInfo);
FromJsonUtilS(input["PlayFabId"], PlayFabId);
Expand All @@ -9914,6 +10013,7 @@ namespace PlayFab
{
Json::Value output;
Json::Value each_AndroidDeviceInfo; ToJsonUtilO(AndroidDeviceInfo, each_AndroidDeviceInfo); output["AndroidDeviceInfo"] = each_AndroidDeviceInfo;
Json::Value each_AppleAccountInfo; ToJsonUtilO(AppleAccountInfo, each_AppleAccountInfo); output["AppleAccountInfo"] = each_AppleAccountInfo;
Json::Value each_Created; ToJsonUtilT(Created, each_Created); output["Created"] = each_Created;
Json::Value each_CustomIdInfo; ToJsonUtilO(CustomIdInfo, each_CustomIdInfo); output["CustomIdInfo"] = each_CustomIdInfo;
Json::Value each_FacebookInfo; ToJsonUtilO(FacebookInfo, each_FacebookInfo); output["FacebookInfo"] = each_FacebookInfo;
Expand All @@ -9922,6 +10022,7 @@ namespace PlayFab
Json::Value each_GoogleInfo; ToJsonUtilO(GoogleInfo, each_GoogleInfo); output["GoogleInfo"] = each_GoogleInfo;
Json::Value each_IosDeviceInfo; ToJsonUtilO(IosDeviceInfo, each_IosDeviceInfo); output["IosDeviceInfo"] = each_IosDeviceInfo;
Json::Value each_KongregateInfo; ToJsonUtilO(KongregateInfo, each_KongregateInfo); output["KongregateInfo"] = each_KongregateInfo;
Json::Value each_NintendoSwitchAccountInfo; ToJsonUtilO(NintendoSwitchAccountInfo, each_NintendoSwitchAccountInfo); output["NintendoSwitchAccountInfo"] = each_NintendoSwitchAccountInfo;
Json::Value each_NintendoSwitchDeviceIdInfo; ToJsonUtilO(NintendoSwitchDeviceIdInfo, each_NintendoSwitchDeviceIdInfo); output["NintendoSwitchDeviceIdInfo"] = each_NintendoSwitchDeviceIdInfo;
Json::Value each_OpenIdInfo; ToJsonUtilO(OpenIdInfo, each_OpenIdInfo); output["OpenIdInfo"] = each_OpenIdInfo;
Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId;
Expand Down
13 changes: 12 additions & 1 deletion code/include/playfab/PlayFabCloudScriptDataModels.h
Original file line number Diff line number Diff line change
Expand Up @@ -2977,7 +2977,8 @@ namespace PlayFab
LoginIdentityProviderNintendoSwitch,
LoginIdentityProviderFacebookInstantGames,
LoginIdentityProviderOpenIdConnect,
LoginIdentityProviderApple
LoginIdentityProviderApple,
LoginIdentityProviderNintendoSwitchAccount
};

inline void ToJsonEnum(const LoginIdentityProvider input, Json::Value& output)
Expand Down Expand Up @@ -3082,6 +3083,11 @@ namespace PlayFab
output = Json::Value("Apple");
return;
}
if (input == LoginIdentityProvider::LoginIdentityProviderNintendoSwitchAccount)
{
output = Json::Value("NintendoSwitchAccount");
return;
}
}
inline void FromJsonEnum(const Json::Value& input, LoginIdentityProvider& output)
{
Expand Down Expand Up @@ -3190,6 +3196,11 @@ namespace PlayFab
output = LoginIdentityProvider::LoginIdentityProviderApple;
return;
}
if (inputStr == "NintendoSwitchAccount")
{
output = LoginIdentityProvider::LoginIdentityProviderNintendoSwitchAccount;
return;
}
}

enum class PushNotificationPlatform
Expand Down
12 changes: 11 additions & 1 deletion code/include/playfab/PlayFabError.h
Original file line number Diff line number Diff line change
Expand Up @@ -502,7 +502,11 @@ namespace PlayFab
PlayFabErrorInsightsManagementSetStorageRetentionBelowMinimum = 1499,
PlayFabErrorInsightsManagementSetStorageRetentionAboveMaximum = 1500,
PlayFabErrorAppleNotEnabledForTitle = 1501,
PlayFabErrorInsightsManagementNewActiveEventArchiveLimitInvalid = 1502,
PlayFabErrorInsightsManagementNewActiveEventExportLimitInvalid = 1502,
PlayFabErrorInsightsManagementSetPerformanceRateLimited = 1503,
PlayFabErrorPartyRequestsThrottledFromRateLimiter = 1504,
PlayFabErrorXboxServiceTooManyRequests = 1505,
PlayFabErrorNintendoSwitchNotEnabledForTitle = 1506,
PlayFabErrorMatchmakingEntityInvalid = 2001,
PlayFabErrorMatchmakingPlayerAttributesInvalid = 2002,
PlayFabErrorMatchmakingQueueNotFound = 2016,
Expand Down Expand Up @@ -559,6 +563,11 @@ namespace PlayFab
PlayFabErrorExportCouldNotCreate = 5018,
PlayFabErrorExportNoBackingDatabaseFound = 5019,
PlayFabErrorExportCouldNotDelete = 5020,
PlayFabErrorExportCannotDetermineEventQuery = 5021,
PlayFabErrorExportInvalidQuerySchemaModification = 5022,
PlayFabErrorExportQuerySchemaMissingRequiredColumns = 5023,
PlayFabErrorExportCannotParseQuery = 5024,
PlayFabErrorExportControlCommandsNotAllowed = 5025,
PlayFabErrorTitleNotEnabledForParty = 6000,
PlayFabErrorPartyVersionNotFound = 6001,
PlayFabErrorMultiplayerServerBuildReferencedByMatchmakingQueue = 6002,
Expand All @@ -577,6 +586,7 @@ namespace PlayFab
PlayFabErrorExperimentationInvalidDuration = 7012,
PlayFabErrorExperimentationMaxExperimentsReached = 7013,
PlayFabErrorMaxActionDepthExceeded = 8000,
PlayFabErrorTitleNotOnUpdatedPricingPlan = 9000,
PlayFabErrorSnapshotNotFound = 11000,
};

Expand Down
6 changes: 4 additions & 2 deletions code/include/playfab/PlayFabEventPipeline.h
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ namespace PlayFab
void SetExceptionCallback(ExceptionCallback callback);

protected:
virtual void SendBatch(size_t& batchCounter);
virtual void SendBatch(std::vector<std::shared_ptr<const IPlayFabEmitEventRequest>>& batch, uintptr_t& batchCounter);

private:
void WorkerThread();
Expand All @@ -87,8 +87,8 @@ namespace PlayFab
// We are using that feature (custom pointer relay) because we need to know which batch it was when we receive a callback from the Events API.
// To keep track of all batches currently in flight (i.e. those for which we called Events API) we need to have a container with controllable size
// that would allow to quickly map a pointer (like void* customData) to a batch (like a std::vector<std::shared_ptr<const IPlayFabEmitEventRequest>>).
std::mutex inFlightMutex;
std::unordered_map<void*, std::vector<std::shared_ptr<const IPlayFabEmitEventRequest>>> batchesInFlight;
std::vector<std::shared_ptr<const IPlayFabEmitEventRequest>> batch;

private:
std::shared_ptr<PlayFabEventsInstanceAPI> eventsApi;
Expand All @@ -99,6 +99,8 @@ namespace PlayFab
std::atomic<bool> isWorkerThreadRunning;
std::mutex userExceptionCallbackMutex;
ExceptionCallback userExceptionCallback;

bool TryGetBatchOutOfFlight(void* customData, std::vector<std::shared_ptr<const IPlayFabEmitEventRequest>>* batchReturn);
};
}

Expand Down
Loading

0 comments on commit cdb38fb

Please sign in to comment.