diff --git a/.gitignore b/.gitignore index 940794e6..91679d7a 100644 --- a/.gitignore +++ b/.gitignore @@ -286,3 +286,5 @@ __pycache__/ *.btm.cs *.odx.cs *.xsd.cs + +desktop.ini \ No newline at end of file diff --git a/XPlatCppSdk.sln b/XPlatCppSdk.sln new file mode 100644 index 00000000..53c3485a --- /dev/null +++ b/XPlatCppSdk.sln @@ -0,0 +1,246 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.27130.2036 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cppLinuxTestApp", "testapps\cppLinuxTestApp\cppLinuxTestApp.vcxproj", "{521C0810-6512-47EE-9142-92445DC35912}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XPlatCppLinux", "cppsdk\XPlatCppLinux.vcxproj", "{F34F32A5-802C-4ABF-9E17-DC009E02DF97}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XPlatCppWindows", "cppsdk\XPlatCppWindows.vcxproj", "{92F6EC5F-B66C-4572-A74D-79329AFF3129}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cppWindowsTestApp", "testapps\cppWindowsTestApp\cppWindowsTestApp.vcxproj", "{3E4DF9A7-08A4-4188-9C86-B60605F3710B}" + ProjectSection(ProjectDependencies) = postProject + {92F6EC5F-B66C-4572-A74D-79329AFF3129} = {92F6EC5F-B66C-4572-A74D-79329AFF3129} + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|ARM = Debug|ARM + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + DebugMT|Any CPU = DebugMT|Any CPU + DebugMT|ARM = DebugMT|ARM + DebugMT|x64 = DebugMT|x64 + DebugMT|x86 = DebugMT|x86 + DebugStatic|Any CPU = DebugStatic|Any CPU + DebugStatic|ARM = DebugStatic|ARM + DebugStatic|x64 = DebugStatic|x64 + DebugStatic|x86 = DebugStatic|x86 + Release|Any CPU = Release|Any CPU + Release|ARM = Release|ARM + Release|x64 = Release|x64 + Release|x86 = Release|x86 + ReleaseMT|Any CPU = ReleaseMT|Any CPU + ReleaseMT|ARM = ReleaseMT|ARM + ReleaseMT|x64 = ReleaseMT|x64 + ReleaseMT|x86 = ReleaseMT|x86 + ReleaseStatic|Any CPU = ReleaseStatic|Any CPU + ReleaseStatic|ARM = ReleaseStatic|ARM + ReleaseStatic|x64 = ReleaseStatic|x64 + ReleaseStatic|x86 = ReleaseStatic|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {521C0810-6512-47EE-9142-92445DC35912}.Debug|Any CPU.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.Debug|Any CPU.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.Debug|ARM.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.Debug|x64.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.Debug|x86.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.DebugMT|Any CPU.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.DebugMT|Any CPU.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.DebugMT|ARM.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.DebugMT|ARM.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.DebugMT|x64.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.DebugMT|x64.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.DebugMT|x86.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.DebugMT|x86.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.DebugStatic|Any CPU.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.DebugStatic|Any CPU.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.DebugStatic|ARM.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.DebugStatic|ARM.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.DebugStatic|x64.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.DebugStatic|x64.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.DebugStatic|x86.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.DebugStatic|x86.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.Release|Any CPU.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.Release|Any CPU.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.Release|ARM.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.Release|ARM.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.Release|x64.ActiveCfg = Release|x64 + {521C0810-6512-47EE-9142-92445DC35912}.Release|x86.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.Release|x86.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.ReleaseMT|Any CPU.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.ReleaseMT|Any CPU.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.ReleaseMT|ARM.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.ReleaseMT|ARM.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.ReleaseMT|x64.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.ReleaseMT|x64.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.ReleaseMT|x86.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.ReleaseMT|x86.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.ReleaseStatic|Any CPU.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.ReleaseStatic|Any CPU.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.ReleaseStatic|ARM.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.ReleaseStatic|ARM.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.ReleaseStatic|x64.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.ReleaseStatic|x64.Build.0 = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.ReleaseStatic|x86.ActiveCfg = Debug|x64 + {521C0810-6512-47EE-9142-92445DC35912}.ReleaseStatic|x86.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.Debug|Any CPU.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.Debug|Any CPU.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.Debug|ARM.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.Debug|x64.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.Debug|x86.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.DebugMT|Any CPU.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.DebugMT|Any CPU.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.DebugMT|ARM.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.DebugMT|ARM.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.DebugMT|x64.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.DebugMT|x64.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.DebugMT|x86.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.DebugMT|x86.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.DebugStatic|Any CPU.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.DebugStatic|Any CPU.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.DebugStatic|ARM.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.DebugStatic|ARM.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.DebugStatic|x64.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.DebugStatic|x64.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.DebugStatic|x86.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.DebugStatic|x86.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.Release|Any CPU.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.Release|Any CPU.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.Release|ARM.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.Release|ARM.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.Release|x64.ActiveCfg = Release|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.Release|x86.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.Release|x86.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.ReleaseMT|Any CPU.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.ReleaseMT|Any CPU.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.ReleaseMT|ARM.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.ReleaseMT|ARM.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.ReleaseMT|x64.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.ReleaseMT|x64.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.ReleaseMT|x86.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.ReleaseMT|x86.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.ReleaseStatic|Any CPU.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.ReleaseStatic|Any CPU.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.ReleaseStatic|ARM.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.ReleaseStatic|ARM.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.ReleaseStatic|x64.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.ReleaseStatic|x64.Build.0 = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.ReleaseStatic|x86.ActiveCfg = Debug|x64 + {F34F32A5-802C-4ABF-9E17-DC009E02DF97}.ReleaseStatic|x86.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.Debug|Any CPU.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.Debug|Any CPU.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.Debug|ARM.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.Debug|x64.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.Debug|x64.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.Debug|x86.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.DebugMT|Any CPU.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.DebugMT|Any CPU.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.DebugMT|ARM.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.DebugMT|ARM.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.DebugMT|x64.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.DebugMT|x64.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.DebugMT|x86.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.DebugMT|x86.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.DebugStatic|Any CPU.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.DebugStatic|Any CPU.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.DebugStatic|ARM.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.DebugStatic|ARM.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.DebugStatic|x64.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.DebugStatic|x64.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.DebugStatic|x86.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.DebugStatic|x86.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.Release|Any CPU.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.Release|Any CPU.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.Release|ARM.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.Release|ARM.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.Release|x64.ActiveCfg = Release|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.Release|x64.Build.0 = Release|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.Release|x86.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.Release|x86.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.ReleaseMT|Any CPU.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.ReleaseMT|Any CPU.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.ReleaseMT|ARM.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.ReleaseMT|ARM.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.ReleaseMT|x64.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.ReleaseMT|x64.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.ReleaseMT|x86.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.ReleaseMT|x86.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.ReleaseStatic|Any CPU.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.ReleaseStatic|Any CPU.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.ReleaseStatic|ARM.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.ReleaseStatic|ARM.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.ReleaseStatic|x64.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.ReleaseStatic|x64.Build.0 = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.ReleaseStatic|x86.ActiveCfg = Debug|x64 + {92F6EC5F-B66C-4572-A74D-79329AFF3129}.ReleaseStatic|x86.Build.0 = Debug|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.Debug|Any CPU.ActiveCfg = Debug|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.Debug|ARM.ActiveCfg = Debug|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.Debug|x64.ActiveCfg = Debug|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.Debug|x64.Build.0 = Debug|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.Debug|x64.Deploy.0 = Debug|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.Debug|x86.ActiveCfg = Debug|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugMT|Any CPU.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugMT|Any CPU.Build.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugMT|Any CPU.Deploy.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugMT|ARM.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugMT|ARM.Build.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugMT|ARM.Deploy.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugMT|x64.ActiveCfg = Debug|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugMT|x64.Build.0 = Debug|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugMT|x64.Deploy.0 = Debug|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugMT|x86.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugMT|x86.Build.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugMT|x86.Deploy.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugStatic|Any CPU.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugStatic|Any CPU.Build.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugStatic|Any CPU.Deploy.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugStatic|ARM.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugStatic|ARM.Build.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugStatic|ARM.Deploy.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugStatic|x64.ActiveCfg = Debug|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugStatic|x64.Build.0 = Debug|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugStatic|x64.Deploy.0 = Debug|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugStatic|x86.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugStatic|x86.Build.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.DebugStatic|x86.Deploy.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.Release|Any CPU.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.Release|ARM.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.Release|x64.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.Release|x64.Build.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.Release|x64.Deploy.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.Release|x86.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseMT|Any CPU.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseMT|Any CPU.Build.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseMT|Any CPU.Deploy.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseMT|ARM.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseMT|ARM.Build.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseMT|ARM.Deploy.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseMT|x64.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseMT|x64.Build.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseMT|x64.Deploy.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseMT|x86.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseMT|x86.Build.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseMT|x86.Deploy.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseStatic|Any CPU.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseStatic|Any CPU.Build.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseStatic|Any CPU.Deploy.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseStatic|ARM.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseStatic|ARM.Build.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseStatic|ARM.Deploy.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseStatic|x64.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseStatic|x64.Build.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseStatic|x64.Deploy.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseStatic|x86.ActiveCfg = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseStatic|x86.Build.0 = Release|x64 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B}.ReleaseStatic|x86.Deploy.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {3F4F42F0-0F64-4D7F-9C01-7918C9A0828F} + EndGlobalSection +EndGlobal diff --git a/cppsdk/XPlatCppLinux.vcxproj b/cppsdk/XPlatCppLinux.vcxproj new file mode 100644 index 00000000..27cb0985 --- /dev/null +++ b/cppsdk/XPlatCppLinux.vcxproj @@ -0,0 +1,105 @@ + + + + + Debug + x64 + + + Release + x64 + + + + {f34f32a5-802c-4abf-9e17-dc009e02df97} + Linux + XPlatCppLinux + 15.0 + Linux + 1.0 + Generic + {2238F9CD-F817-4ECC-BD14-2524D2669B35} + XPlatCppLinux + $(SolutionDir)$(Platform)\$(Configuration)\$(OutputSubDir)\ + XPlatCppLinux + + + + true + StaticLibrary + + + false + StaticLibrary + + + + + + + + + $(ProjectDir);$(ProjectDir)include;/usr/include;/home/pg/projects/XPlatCppLinux/;/home/pg/projects/XPlatCppLinux/include;%(AdditionalIncludeDirectories) + c++1y + LINUX_BUILD;ENABLE_PLAYFABADMIN_API;ENABLE_PLAYFABENTITY_API;ENABLE_PLAYFABMATCHMAKER_API;ENABLE_PLAYFABSERVER_API;%(PreprocessorDefinitions) + + + /usr/lib/x86_64-linux-gnu;%(AdditionalLibraryDirectories) + curl;jsoncpp;pthread + + + true + + + + + $(ProjectDir);$(ProjectDir)include;/usr/include;/home/pg/projects/XPlatCppLinux/;/home/pg/projects/XPlatCppLinux/include;%(AdditionalIncludeDirectories) + c++1y + LINUX_BUILD;ENABLE_PLAYFABADMIN_API;ENABLE_PLAYFABENTITY_API;ENABLE_PLAYFABMATCHMAKER_API;ENABLE_PLAYFABSERVER_API;%(PreprocessorDefinitions) + + + /usr/lib/x86_64-linux-gnu;%(AdditionalLibraryDirectories) + curl;jsoncpp;pthread + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + + + + diff --git a/cppsdk/XPlatCppLinux.vcxproj.filters b/cppsdk/XPlatCppLinux.vcxproj.filters new file mode 100644 index 00000000..8f05867c --- /dev/null +++ b/cppsdk/XPlatCppLinux.vcxproj.filters @@ -0,0 +1,100 @@ + + + + + Source Files\playfab + + + Source Files\playfab + + + Source Files\playfab + + + Source Files\playfab + + + Source Files\playfab + + + Source Files\playfab + + + Source Files\playfab + + + Source Files\playfab + + + Source Files + + + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files + + + Header Files + + + Header Files\playfab + + + + + + + + + {c7401a51-d5db-44a8-9af8-ee206a68f2d7} + + + {84a82bea-d897-4f6e-b6f3-154bc61aac6f} + + + {92e0782c-b801-4c3a-8f75-1e2a7e511201} + + + {d14ed5bc-9de9-4073-bdbf-ccfeacd164d8} + + + \ No newline at end of file diff --git a/cppsdk/XPlatCppWindows.vcxproj b/cppsdk/XPlatCppWindows.vcxproj new file mode 100644 index 00000000..60df7fae --- /dev/null +++ b/cppsdk/XPlatCppWindows.vcxproj @@ -0,0 +1,185 @@ + + + + + + Debug + x64 + + + Release + x64 + + + + 15.0 + {92F6EC5F-B66C-4572-A74D-79329AFF3129} + Win32Proj + XPlatCppWindows + XPlatCppWindows + $(SolutionDir)$(Platform)\$(Configuration)\$(OutputSubDir)\ + XPlatCppWindows + + + + StaticLibrary + true + v141 + Unicode + + + StaticLibrary + false + v141 + Unicode + + + + + + + + + + + + + + + true + + + true + + + + Use + Level4 + Disabled + true + _DEBUG;_LIB;WINDOWS_BUILD;ENABLE_PLAYFABADMIN_API;ENABLE_PLAYFABENTITY_API;ENABLE_PLAYFABMATCHMAKER_API;ENABLE_PLAYFABSERVER_API;%(PreprocessorDefinitions) + true + stdafx.h + $(ProjectDir);$(ProjectDir)/include;$(SolutionDir)packages\curl.7.30.0.2\build\native\include + ProgramDatabase + false + true + 4251 + MultiThreadedDebug + + + Windows + true + + + + + + + + + + + + + Use + Level4 + true + _LIB;WINDOWS_BUILD;ENABLE_PLAYFABADMIN_API;ENABLE_PLAYFABENTITY_API;ENABLE_PLAYFABMATCHMAKER_API;ENABLE_PLAYFABSERVER_API;%(PreprocessorDefinitions) + true + stdafx.h + $(ProjectDir);$(ProjectDir)/include;$(SolutionDir)packages\curl.7.30.0.2\build\native\include + ProgramDatabase + false + true + 4251 + MultiThreaded + + + Windows + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Create + Create + + + + + true + + + + + + + + + + + + + + + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + + + + + + + + + + + + + + + + + + + + diff --git a/cppsdk/XPlatCppWindows.vcxproj.filters b/cppsdk/XPlatCppWindows.vcxproj.filters new file mode 100644 index 00000000..e1a2c004 --- /dev/null +++ b/cppsdk/XPlatCppWindows.vcxproj.filters @@ -0,0 +1,99 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + {de0a6aea-289b-42d4-9b67-c439bfee33f1} + + + {58ccca28-f275-4786-ba88-ac1b636a09d8} + + + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files\playfab + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files\playfab + + + Source Files\playfab + + + Source Files\playfab + + + Source Files\playfab + + + Source Files\playfab + + + Source Files\playfab + + + Source Files\playfab + + + Source Files\playfab + + + + + + + \ No newline at end of file diff --git a/cppsdk/configLinux.json b/cppsdk/configLinux.json new file mode 100644 index 00000000..dd01fe68 --- /dev/null +++ b/cppsdk/configLinux.json @@ -0,0 +1,5 @@ +{ + "heartbeatEndpoint": "localhost:56001", + "sessionHostId": "123-456-789-AAA", + "logFolder": "/~/gsdkLogs" +} \ No newline at end of file diff --git a/cppsdk/configWindows.json b/cppsdk/configWindows.json new file mode 100644 index 00000000..ac07aed8 --- /dev/null +++ b/cppsdk/configWindows.json @@ -0,0 +1,5 @@ +{ + "heartbeatEndpoint": "localhost:56001", + "sessionHostId": "123-456-789-AAA", + "logFolder": "D:\\GSDK\\Logs\\" +} \ No newline at end of file diff --git a/cppsdk/include/playfab/PlayFabAdminApi.h b/cppsdk/include/playfab/PlayFabAdminApi.h new file mode 100644 index 00000000..ed653fb8 --- /dev/null +++ b/cppsdk/include/playfab/PlayFabAdminApi.h @@ -0,0 +1,235 @@ +#pragma once + +#ifdef ENABLE_PLAYFABADMIN_API + +#include +#include + +namespace PlayFab +{ + /// + /// Main interface for PlayFab Sdk, specifically all Admin APIs + /// + class PlayFabAdminAPI + { + public: + static size_t Update(); + static void ForgetAllCredentials(); + + + // ------------ Generated API calls + static void AbortTaskInstance(AdminModels::AbortTaskInstanceRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AddNews(AdminModels::AddNewsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AddPlayerTag(AdminModels::AddPlayerTagRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AddServerBuild(AdminModels::AddServerBuildRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AddUserVirtualCurrency(AdminModels::AddUserVirtualCurrencyRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AddVirtualCurrencyTypes(AdminModels::AddVirtualCurrencyTypesRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void BanUsers(AdminModels::BanUsersRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void CheckLimitedEditionItemAvailability(AdminModels::CheckLimitedEditionItemAvailabilityRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void CreateActionsOnPlayersInSegmentTask(AdminModels::CreateActionsOnPlayerSegmentTaskRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void CreateCloudScriptTask(AdminModels::CreateCloudScriptTaskRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void CreatePlayerSharedSecret(AdminModels::CreatePlayerSharedSecretRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void CreatePlayerStatisticDefinition(AdminModels::CreatePlayerStatisticDefinitionRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void DeleteContent(AdminModels::DeleteContentRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void DeletePlayer(AdminModels::DeletePlayerRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void DeletePlayerSharedSecret(AdminModels::DeletePlayerSharedSecretRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void DeleteStore(AdminModels::DeleteStoreRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void DeleteTask(AdminModels::DeleteTaskRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void DeleteTitle(AdminModels::DeleteTitleRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetActionsOnPlayersInSegmentTaskInstance(AdminModels::GetTaskInstanceRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetAllSegments(AdminModels::GetAllSegmentsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCatalogItems(AdminModels::GetCatalogItemsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCloudScriptRevision(AdminModels::GetCloudScriptRevisionRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCloudScriptTaskInstance(AdminModels::GetTaskInstanceRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCloudScriptVersions(AdminModels::GetCloudScriptVersionsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetContentList(AdminModels::GetContentListRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetContentUploadUrl(AdminModels::GetContentUploadUrlRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetDataReport(AdminModels::GetDataReportRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetMatchmakerGameInfo(AdminModels::GetMatchmakerGameInfoRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetMatchmakerGameModes(AdminModels::GetMatchmakerGameModesRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerIdFromAuthToken(AdminModels::GetPlayerIdFromAuthTokenRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerProfile(AdminModels::GetPlayerProfileRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerSegments(AdminModels::GetPlayersSegmentsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerSharedSecrets(AdminModels::GetPlayerSharedSecretsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayersInSegment(AdminModels::GetPlayersInSegmentRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerStatisticDefinitions(AdminModels::GetPlayerStatisticDefinitionsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerStatisticVersions(AdminModels::GetPlayerStatisticVersionsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerTags(AdminModels::GetPlayerTagsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPolicy(AdminModels::GetPolicyRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPublisherData(AdminModels::GetPublisherDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetRandomResultTables(AdminModels::GetRandomResultTablesRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetServerBuildInfo(AdminModels::GetServerBuildInfoRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetServerBuildUploadUrl(AdminModels::GetServerBuildUploadURLRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetStoreItems(AdminModels::GetStoreItemsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetTaskInstances(AdminModels::GetTaskInstancesRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetTasks(AdminModels::GetTasksRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetTitleData(AdminModels::GetTitleDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetTitleInternalData(AdminModels::GetTitleDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserAccountInfo(AdminModels::LookupUserAccountInfoRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserBans(AdminModels::GetUserBansRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserData(AdminModels::GetUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserInternalData(AdminModels::GetUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserInventory(AdminModels::GetUserInventoryRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserPublisherData(AdminModels::GetUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserPublisherInternalData(AdminModels::GetUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserPublisherReadOnlyData(AdminModels::GetUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserReadOnlyData(AdminModels::GetUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GrantItemsToUsers(AdminModels::GrantItemsToUsersRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void IncrementLimitedEditionItemAvailability(AdminModels::IncrementLimitedEditionItemAvailabilityRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void IncrementPlayerStatisticVersion(AdminModels::IncrementPlayerStatisticVersionRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ListServerBuilds(AdminModels::ListBuildsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ListVirtualCurrencyTypes(AdminModels::ListVirtualCurrencyTypesRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ModifyMatchmakerGameModes(AdminModels::ModifyMatchmakerGameModesRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ModifyServerBuild(AdminModels::ModifyServerBuildRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RefundPurchase(AdminModels::RefundPurchaseRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RemovePlayerTag(AdminModels::RemovePlayerTagRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RemoveServerBuild(AdminModels::RemoveServerBuildRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RemoveVirtualCurrencyTypes(AdminModels::RemoveVirtualCurrencyTypesRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ResetCharacterStatistics(AdminModels::ResetCharacterStatisticsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ResetPassword(AdminModels::ResetPasswordRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ResetUserStatistics(AdminModels::ResetUserStatisticsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ResolvePurchaseDispute(AdminModels::ResolvePurchaseDisputeRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RevokeAllBansForUser(AdminModels::RevokeAllBansForUserRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RevokeBans(AdminModels::RevokeBansRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RevokeInventoryItem(AdminModels::RevokeInventoryItemRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RevokeInventoryItems(AdminModels::RevokeInventoryItemsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RunTask(AdminModels::RunTaskRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SendAccountRecoveryEmail(AdminModels::SendAccountRecoveryEmailRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetCatalogItems(AdminModels::UpdateCatalogItemsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetPlayerSecret(AdminModels::SetPlayerSecretRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetPublishedRevision(AdminModels::SetPublishedRevisionRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetPublisherData(AdminModels::SetPublisherDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetStoreItems(AdminModels::UpdateStoreItemsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetTitleData(AdminModels::SetTitleDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetTitleInternalData(AdminModels::SetTitleDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetupPushNotification(AdminModels::SetupPushNotificationRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SubtractUserVirtualCurrency(AdminModels::SubtractUserVirtualCurrencyRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateBans(AdminModels::UpdateBansRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateCatalogItems(AdminModels::UpdateCatalogItemsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateCloudScript(AdminModels::UpdateCloudScriptRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdatePlayerSharedSecret(AdminModels::UpdatePlayerSharedSecretRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdatePlayerStatisticDefinition(AdminModels::UpdatePlayerStatisticDefinitionRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdatePolicy(AdminModels::UpdatePolicyRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateRandomResultTables(AdminModels::UpdateRandomResultTablesRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateStoreItems(AdminModels::UpdateStoreItemsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateTask(AdminModels::UpdateTaskRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateUserData(AdminModels::UpdateUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateUserInternalData(AdminModels::UpdateUserInternalDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateUserPublisherData(AdminModels::UpdateUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateUserPublisherInternalData(AdminModels::UpdateUserInternalDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateUserPublisherReadOnlyData(AdminModels::UpdateUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateUserReadOnlyData(AdminModels::UpdateUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateUserTitleDisplayName(AdminModels::UpdateUserTitleDisplayNameRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + + private: + PlayFabAdminAPI(); // Private constructor, static class should never have an instance + PlayFabAdminAPI(const PlayFabAdminAPI& other); // Private copy-constructor, static class should never have an instance + + // ------------ Generated result handlers + static void OnAbortTaskInstanceResult(CallRequestContainer& request); + static void OnAddNewsResult(CallRequestContainer& request); + static void OnAddPlayerTagResult(CallRequestContainer& request); + static void OnAddServerBuildResult(CallRequestContainer& request); + static void OnAddUserVirtualCurrencyResult(CallRequestContainer& request); + static void OnAddVirtualCurrencyTypesResult(CallRequestContainer& request); + static void OnBanUsersResult(CallRequestContainer& request); + static void OnCheckLimitedEditionItemAvailabilityResult(CallRequestContainer& request); + static void OnCreateActionsOnPlayersInSegmentTaskResult(CallRequestContainer& request); + static void OnCreateCloudScriptTaskResult(CallRequestContainer& request); + static void OnCreatePlayerSharedSecretResult(CallRequestContainer& request); + static void OnCreatePlayerStatisticDefinitionResult(CallRequestContainer& request); + static void OnDeleteContentResult(CallRequestContainer& request); + static void OnDeletePlayerResult(CallRequestContainer& request); + static void OnDeletePlayerSharedSecretResult(CallRequestContainer& request); + static void OnDeleteStoreResult(CallRequestContainer& request); + static void OnDeleteTaskResult(CallRequestContainer& request); + static void OnDeleteTitleResult(CallRequestContainer& request); + static void OnGetActionsOnPlayersInSegmentTaskInstanceResult(CallRequestContainer& request); + static void OnGetAllSegmentsResult(CallRequestContainer& request); + static void OnGetCatalogItemsResult(CallRequestContainer& request); + static void OnGetCloudScriptRevisionResult(CallRequestContainer& request); + static void OnGetCloudScriptTaskInstanceResult(CallRequestContainer& request); + static void OnGetCloudScriptVersionsResult(CallRequestContainer& request); + static void OnGetContentListResult(CallRequestContainer& request); + static void OnGetContentUploadUrlResult(CallRequestContainer& request); + static void OnGetDataReportResult(CallRequestContainer& request); + static void OnGetMatchmakerGameInfoResult(CallRequestContainer& request); + static void OnGetMatchmakerGameModesResult(CallRequestContainer& request); + static void OnGetPlayerIdFromAuthTokenResult(CallRequestContainer& request); + static void OnGetPlayerProfileResult(CallRequestContainer& request); + static void OnGetPlayerSegmentsResult(CallRequestContainer& request); + static void OnGetPlayerSharedSecretsResult(CallRequestContainer& request); + static void OnGetPlayersInSegmentResult(CallRequestContainer& request); + static void OnGetPlayerStatisticDefinitionsResult(CallRequestContainer& request); + static void OnGetPlayerStatisticVersionsResult(CallRequestContainer& request); + static void OnGetPlayerTagsResult(CallRequestContainer& request); + static void OnGetPolicyResult(CallRequestContainer& request); + static void OnGetPublisherDataResult(CallRequestContainer& request); + static void OnGetRandomResultTablesResult(CallRequestContainer& request); + static void OnGetServerBuildInfoResult(CallRequestContainer& request); + static void OnGetServerBuildUploadUrlResult(CallRequestContainer& request); + static void OnGetStoreItemsResult(CallRequestContainer& request); + static void OnGetTaskInstancesResult(CallRequestContainer& request); + static void OnGetTasksResult(CallRequestContainer& request); + static void OnGetTitleDataResult(CallRequestContainer& request); + static void OnGetTitleInternalDataResult(CallRequestContainer& request); + static void OnGetUserAccountInfoResult(CallRequestContainer& request); + static void OnGetUserBansResult(CallRequestContainer& request); + static void OnGetUserDataResult(CallRequestContainer& request); + static void OnGetUserInternalDataResult(CallRequestContainer& request); + static void OnGetUserInventoryResult(CallRequestContainer& request); + static void OnGetUserPublisherDataResult(CallRequestContainer& request); + static void OnGetUserPublisherInternalDataResult(CallRequestContainer& request); + static void OnGetUserPublisherReadOnlyDataResult(CallRequestContainer& request); + static void OnGetUserReadOnlyDataResult(CallRequestContainer& request); + static void OnGrantItemsToUsersResult(CallRequestContainer& request); + static void OnIncrementLimitedEditionItemAvailabilityResult(CallRequestContainer& request); + static void OnIncrementPlayerStatisticVersionResult(CallRequestContainer& request); + static void OnListServerBuildsResult(CallRequestContainer& request); + static void OnListVirtualCurrencyTypesResult(CallRequestContainer& request); + static void OnModifyMatchmakerGameModesResult(CallRequestContainer& request); + static void OnModifyServerBuildResult(CallRequestContainer& request); + static void OnRefundPurchaseResult(CallRequestContainer& request); + static void OnRemovePlayerTagResult(CallRequestContainer& request); + static void OnRemoveServerBuildResult(CallRequestContainer& request); + static void OnRemoveVirtualCurrencyTypesResult(CallRequestContainer& request); + static void OnResetCharacterStatisticsResult(CallRequestContainer& request); + static void OnResetPasswordResult(CallRequestContainer& request); + static void OnResetUserStatisticsResult(CallRequestContainer& request); + static void OnResolvePurchaseDisputeResult(CallRequestContainer& request); + static void OnRevokeAllBansForUserResult(CallRequestContainer& request); + static void OnRevokeBansResult(CallRequestContainer& request); + static void OnRevokeInventoryItemResult(CallRequestContainer& request); + static void OnRevokeInventoryItemsResult(CallRequestContainer& request); + static void OnRunTaskResult(CallRequestContainer& request); + static void OnSendAccountRecoveryEmailResult(CallRequestContainer& request); + static void OnSetCatalogItemsResult(CallRequestContainer& request); + static void OnSetPlayerSecretResult(CallRequestContainer& request); + static void OnSetPublishedRevisionResult(CallRequestContainer& request); + static void OnSetPublisherDataResult(CallRequestContainer& request); + static void OnSetStoreItemsResult(CallRequestContainer& request); + static void OnSetTitleDataResult(CallRequestContainer& request); + static void OnSetTitleInternalDataResult(CallRequestContainer& request); + static void OnSetupPushNotificationResult(CallRequestContainer& request); + static void OnSubtractUserVirtualCurrencyResult(CallRequestContainer& request); + static void OnUpdateBansResult(CallRequestContainer& request); + static void OnUpdateCatalogItemsResult(CallRequestContainer& request); + static void OnUpdateCloudScriptResult(CallRequestContainer& request); + static void OnUpdatePlayerSharedSecretResult(CallRequestContainer& request); + static void OnUpdatePlayerStatisticDefinitionResult(CallRequestContainer& request); + static void OnUpdatePolicyResult(CallRequestContainer& request); + static void OnUpdateRandomResultTablesResult(CallRequestContainer& request); + static void OnUpdateStoreItemsResult(CallRequestContainer& request); + static void OnUpdateTaskResult(CallRequestContainer& request); + static void OnUpdateUserDataResult(CallRequestContainer& request); + static void OnUpdateUserInternalDataResult(CallRequestContainer& request); + static void OnUpdateUserPublisherDataResult(CallRequestContainer& request); + static void OnUpdateUserPublisherInternalDataResult(CallRequestContainer& request); + static void OnUpdateUserPublisherReadOnlyDataResult(CallRequestContainer& request); + static void OnUpdateUserReadOnlyDataResult(CallRequestContainer& request); + static void OnUpdateUserTitleDisplayNameResult(CallRequestContainer& request); + + }; +} + +#endif diff --git a/cppsdk/include/playfab/PlayFabAdminDataModels.h b/cppsdk/include/playfab/PlayFabAdminDataModels.h new file mode 100644 index 00000000..1642c430 --- /dev/null +++ b/cppsdk/include/playfab/PlayFabAdminDataModels.h @@ -0,0 +1,12372 @@ +#pragma once + +#ifdef ENABLE_PLAYFABADMIN_API + +#include +#include + +namespace PlayFab +{ + namespace AdminModels + { + // Admin Enums + enum AuthTokenType + { + AuthTokenTypeEmail + }; + + inline void ToJsonEnum(const AuthTokenType input, Json::Value& output) + { + if (input == AuthTokenTypeEmail) output = Json::Value("Email"); + } + inline void FromJsonEnum(const Json::Value& input, AuthTokenType& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Email") output = AuthTokenTypeEmail; + } + + enum Conditionals + { + ConditionalsAny, + ConditionalsTrue, + ConditionalsFalse + }; + + inline void ToJsonEnum(const Conditionals input, Json::Value& output) + { + if (input == ConditionalsAny) output = Json::Value("Any"); + if (input == ConditionalsTrue) output = Json::Value("True"); + if (input == ConditionalsFalse) output = Json::Value("False"); + } + inline void FromJsonEnum(const Json::Value& input, Conditionals& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Any") output = ConditionalsAny; + if (inputStr == "True") output = ConditionalsTrue; + if (inputStr == "False") output = ConditionalsFalse; + } + + enum ContinentCode + { + ContinentCodeAF, + ContinentCodeAN, + ContinentCodeAS, + ContinentCodeEU, + ContinentCodeNA, + ContinentCodeOC, + ContinentCodeSA + }; + + inline void ToJsonEnum(const ContinentCode input, Json::Value& output) + { + if (input == ContinentCodeAF) output = Json::Value("AF"); + if (input == ContinentCodeAN) output = Json::Value("AN"); + if (input == ContinentCodeAS) output = Json::Value("AS"); + if (input == ContinentCodeEU) output = Json::Value("EU"); + if (input == ContinentCodeNA) output = Json::Value("NA"); + if (input == ContinentCodeOC) output = Json::Value("OC"); + if (input == ContinentCodeSA) output = Json::Value("SA"); + } + inline void FromJsonEnum(const Json::Value& input, ContinentCode& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "AF") output = ContinentCodeAF; + if (inputStr == "AN") output = ContinentCodeAN; + if (inputStr == "AS") output = ContinentCodeAS; + if (inputStr == "EU") output = ContinentCodeEU; + if (inputStr == "NA") output = ContinentCodeNA; + if (inputStr == "OC") output = ContinentCodeOC; + if (inputStr == "SA") output = ContinentCodeSA; + } + + enum CountryCode + { + CountryCodeAF, + CountryCodeAX, + CountryCodeAL, + CountryCodeDZ, + CountryCodeAS, + CountryCodeAD, + CountryCodeAO, + CountryCodeAI, + CountryCodeAQ, + CountryCodeAG, + CountryCodeAR, + CountryCodeAM, + CountryCodeAW, + CountryCodeAU, + CountryCodeAT, + CountryCodeAZ, + CountryCodeBS, + CountryCodeBH, + CountryCodeBD, + CountryCodeBB, + CountryCodeBY, + CountryCodeBE, + CountryCodeBZ, + CountryCodeBJ, + CountryCodeBM, + CountryCodeBT, + CountryCodeBO, + CountryCodeBQ, + CountryCodeBA, + CountryCodeBW, + CountryCodeBV, + CountryCodeBR, + CountryCodeIO, + CountryCodeBN, + CountryCodeBG, + CountryCodeBF, + CountryCodeBI, + CountryCodeKH, + CountryCodeCM, + CountryCodeCA, + CountryCodeCV, + CountryCodeKY, + CountryCodeCF, + CountryCodeTD, + CountryCodeCL, + CountryCodeCN, + CountryCodeCX, + CountryCodeCC, + CountryCodeCO, + CountryCodeKM, + CountryCodeCG, + CountryCodeCD, + CountryCodeCK, + CountryCodeCR, + CountryCodeCI, + CountryCodeHR, + CountryCodeCU, + CountryCodeCW, + CountryCodeCY, + CountryCodeCZ, + CountryCodeDK, + CountryCodeDJ, + CountryCodeDM, + CountryCodeDO, + CountryCodeEC, + CountryCodeEG, + CountryCodeSV, + CountryCodeGQ, + CountryCodeER, + CountryCodeEE, + CountryCodeET, + CountryCodeFK, + CountryCodeFO, + CountryCodeFJ, + CountryCodeFI, + CountryCodeFR, + CountryCodeGF, + CountryCodePF, + CountryCodeTF, + CountryCodeGA, + CountryCodeGM, + CountryCodeGE, + CountryCodeDE, + CountryCodeGH, + CountryCodeGI, + CountryCodeGR, + CountryCodeGL, + CountryCodeGD, + CountryCodeGP, + CountryCodeGU, + CountryCodeGT, + CountryCodeGG, + CountryCodeGN, + CountryCodeGW, + CountryCodeGY, + CountryCodeHT, + CountryCodeHM, + CountryCodeVA, + CountryCodeHN, + CountryCodeHK, + CountryCodeHU, + CountryCodeIS, + CountryCodeIN, + CountryCodeID, + CountryCodeIR, + CountryCodeIQ, + CountryCodeIE, + CountryCodeIM, + CountryCodeIL, + CountryCodeIT, + CountryCodeJM, + CountryCodeJP, + CountryCodeJE, + CountryCodeJO, + CountryCodeKZ, + CountryCodeKE, + CountryCodeKI, + CountryCodeKP, + CountryCodeKR, + CountryCodeKW, + CountryCodeKG, + CountryCodeLA, + CountryCodeLV, + CountryCodeLB, + CountryCodeLS, + CountryCodeLR, + CountryCodeLY, + CountryCodeLI, + CountryCodeLT, + CountryCodeLU, + CountryCodeMO, + CountryCodeMK, + CountryCodeMG, + CountryCodeMW, + CountryCodeMY, + CountryCodeMV, + CountryCodeML, + CountryCodeMT, + CountryCodeMH, + CountryCodeMQ, + CountryCodeMR, + CountryCodeMU, + CountryCodeYT, + CountryCodeMX, + CountryCodeFM, + CountryCodeMD, + CountryCodeMC, + CountryCodeMN, + CountryCodeME, + CountryCodeMS, + CountryCodeMA, + CountryCodeMZ, + CountryCodeMM, + CountryCodeNA, + CountryCodeNR, + CountryCodeNP, + CountryCodeNL, + CountryCodeNC, + CountryCodeNZ, + CountryCodeNI, + CountryCodeNE, + CountryCodeNG, + CountryCodeNU, + CountryCodeNF, + CountryCodeMP, + CountryCodeNO, + CountryCodeOM, + CountryCodePK, + CountryCodePW, + CountryCodePS, + CountryCodePA, + CountryCodePG, + CountryCodePY, + CountryCodePE, + CountryCodePH, + CountryCodePN, + CountryCodePL, + CountryCodePT, + CountryCodePR, + CountryCodeQA, + CountryCodeRE, + CountryCodeRO, + CountryCodeRU, + CountryCodeRW, + CountryCodeBL, + CountryCodeSH, + CountryCodeKN, + CountryCodeLC, + CountryCodeMF, + CountryCodePM, + CountryCodeVC, + CountryCodeWS, + CountryCodeSM, + CountryCodeST, + CountryCodeSA, + CountryCodeSN, + CountryCodeRS, + CountryCodeSC, + CountryCodeSL, + CountryCodeSG, + CountryCodeSX, + CountryCodeSK, + CountryCodeSI, + CountryCodeSB, + CountryCodeSO, + CountryCodeZA, + CountryCodeGS, + CountryCodeSS, + CountryCodeES, + CountryCodeLK, + CountryCodeSD, + CountryCodeSR, + CountryCodeSJ, + CountryCodeSZ, + CountryCodeSE, + CountryCodeCH, + CountryCodeSY, + CountryCodeTW, + CountryCodeTJ, + CountryCodeTZ, + CountryCodeTH, + CountryCodeTL, + CountryCodeTG, + CountryCodeTK, + CountryCodeTO, + CountryCodeTT, + CountryCodeTN, + CountryCodeTR, + CountryCodeTM, + CountryCodeTC, + CountryCodeTV, + CountryCodeUG, + CountryCodeUA, + CountryCodeAE, + CountryCodeGB, + CountryCodeUS, + CountryCodeUM, + CountryCodeUY, + CountryCodeUZ, + CountryCodeVU, + CountryCodeVE, + CountryCodeVN, + CountryCodeVG, + CountryCodeVI, + CountryCodeWF, + CountryCodeEH, + CountryCodeYE, + CountryCodeZM, + CountryCodeZW + }; + + inline void ToJsonEnum(const CountryCode input, Json::Value& output) + { + if (input == CountryCodeAF) output = Json::Value("AF"); + if (input == CountryCodeAX) output = Json::Value("AX"); + if (input == CountryCodeAL) output = Json::Value("AL"); + if (input == CountryCodeDZ) output = Json::Value("DZ"); + if (input == CountryCodeAS) output = Json::Value("AS"); + if (input == CountryCodeAD) output = Json::Value("AD"); + if (input == CountryCodeAO) output = Json::Value("AO"); + if (input == CountryCodeAI) output = Json::Value("AI"); + if (input == CountryCodeAQ) output = Json::Value("AQ"); + if (input == CountryCodeAG) output = Json::Value("AG"); + if (input == CountryCodeAR) output = Json::Value("AR"); + if (input == CountryCodeAM) output = Json::Value("AM"); + if (input == CountryCodeAW) output = Json::Value("AW"); + if (input == CountryCodeAU) output = Json::Value("AU"); + if (input == CountryCodeAT) output = Json::Value("AT"); + if (input == CountryCodeAZ) output = Json::Value("AZ"); + if (input == CountryCodeBS) output = Json::Value("BS"); + if (input == CountryCodeBH) output = Json::Value("BH"); + if (input == CountryCodeBD) output = Json::Value("BD"); + if (input == CountryCodeBB) output = Json::Value("BB"); + if (input == CountryCodeBY) output = Json::Value("BY"); + if (input == CountryCodeBE) output = Json::Value("BE"); + if (input == CountryCodeBZ) output = Json::Value("BZ"); + if (input == CountryCodeBJ) output = Json::Value("BJ"); + if (input == CountryCodeBM) output = Json::Value("BM"); + if (input == CountryCodeBT) output = Json::Value("BT"); + if (input == CountryCodeBO) output = Json::Value("BO"); + if (input == CountryCodeBQ) output = Json::Value("BQ"); + if (input == CountryCodeBA) output = Json::Value("BA"); + if (input == CountryCodeBW) output = Json::Value("BW"); + if (input == CountryCodeBV) output = Json::Value("BV"); + if (input == CountryCodeBR) output = Json::Value("BR"); + if (input == CountryCodeIO) output = Json::Value("IO"); + if (input == CountryCodeBN) output = Json::Value("BN"); + if (input == CountryCodeBG) output = Json::Value("BG"); + if (input == CountryCodeBF) output = Json::Value("BF"); + if (input == CountryCodeBI) output = Json::Value("BI"); + if (input == CountryCodeKH) output = Json::Value("KH"); + if (input == CountryCodeCM) output = Json::Value("CM"); + if (input == CountryCodeCA) output = Json::Value("CA"); + if (input == CountryCodeCV) output = Json::Value("CV"); + if (input == CountryCodeKY) output = Json::Value("KY"); + if (input == CountryCodeCF) output = Json::Value("CF"); + if (input == CountryCodeTD) output = Json::Value("TD"); + if (input == CountryCodeCL) output = Json::Value("CL"); + if (input == CountryCodeCN) output = Json::Value("CN"); + if (input == CountryCodeCX) output = Json::Value("CX"); + if (input == CountryCodeCC) output = Json::Value("CC"); + if (input == CountryCodeCO) output = Json::Value("CO"); + if (input == CountryCodeKM) output = Json::Value("KM"); + if (input == CountryCodeCG) output = Json::Value("CG"); + if (input == CountryCodeCD) output = Json::Value("CD"); + if (input == CountryCodeCK) output = Json::Value("CK"); + if (input == CountryCodeCR) output = Json::Value("CR"); + if (input == CountryCodeCI) output = Json::Value("CI"); + if (input == CountryCodeHR) output = Json::Value("HR"); + if (input == CountryCodeCU) output = Json::Value("CU"); + if (input == CountryCodeCW) output = Json::Value("CW"); + if (input == CountryCodeCY) output = Json::Value("CY"); + if (input == CountryCodeCZ) output = Json::Value("CZ"); + if (input == CountryCodeDK) output = Json::Value("DK"); + if (input == CountryCodeDJ) output = Json::Value("DJ"); + if (input == CountryCodeDM) output = Json::Value("DM"); + if (input == CountryCodeDO) output = Json::Value("DO"); + if (input == CountryCodeEC) output = Json::Value("EC"); + if (input == CountryCodeEG) output = Json::Value("EG"); + if (input == CountryCodeSV) output = Json::Value("SV"); + if (input == CountryCodeGQ) output = Json::Value("GQ"); + if (input == CountryCodeER) output = Json::Value("ER"); + if (input == CountryCodeEE) output = Json::Value("EE"); + if (input == CountryCodeET) output = Json::Value("ET"); + if (input == CountryCodeFK) output = Json::Value("FK"); + if (input == CountryCodeFO) output = Json::Value("FO"); + if (input == CountryCodeFJ) output = Json::Value("FJ"); + if (input == CountryCodeFI) output = Json::Value("FI"); + if (input == CountryCodeFR) output = Json::Value("FR"); + if (input == CountryCodeGF) output = Json::Value("GF"); + if (input == CountryCodePF) output = Json::Value("PF"); + if (input == CountryCodeTF) output = Json::Value("TF"); + if (input == CountryCodeGA) output = Json::Value("GA"); + if (input == CountryCodeGM) output = Json::Value("GM"); + if (input == CountryCodeGE) output = Json::Value("GE"); + if (input == CountryCodeDE) output = Json::Value("DE"); + if (input == CountryCodeGH) output = Json::Value("GH"); + if (input == CountryCodeGI) output = Json::Value("GI"); + if (input == CountryCodeGR) output = Json::Value("GR"); + if (input == CountryCodeGL) output = Json::Value("GL"); + if (input == CountryCodeGD) output = Json::Value("GD"); + if (input == CountryCodeGP) output = Json::Value("GP"); + if (input == CountryCodeGU) output = Json::Value("GU"); + if (input == CountryCodeGT) output = Json::Value("GT"); + if (input == CountryCodeGG) output = Json::Value("GG"); + if (input == CountryCodeGN) output = Json::Value("GN"); + if (input == CountryCodeGW) output = Json::Value("GW"); + if (input == CountryCodeGY) output = Json::Value("GY"); + if (input == CountryCodeHT) output = Json::Value("HT"); + if (input == CountryCodeHM) output = Json::Value("HM"); + if (input == CountryCodeVA) output = Json::Value("VA"); + if (input == CountryCodeHN) output = Json::Value("HN"); + if (input == CountryCodeHK) output = Json::Value("HK"); + if (input == CountryCodeHU) output = Json::Value("HU"); + if (input == CountryCodeIS) output = Json::Value("IS"); + if (input == CountryCodeIN) output = Json::Value("IN"); + if (input == CountryCodeID) output = Json::Value("ID"); + if (input == CountryCodeIR) output = Json::Value("IR"); + if (input == CountryCodeIQ) output = Json::Value("IQ"); + if (input == CountryCodeIE) output = Json::Value("IE"); + if (input == CountryCodeIM) output = Json::Value("IM"); + if (input == CountryCodeIL) output = Json::Value("IL"); + if (input == CountryCodeIT) output = Json::Value("IT"); + if (input == CountryCodeJM) output = Json::Value("JM"); + if (input == CountryCodeJP) output = Json::Value("JP"); + if (input == CountryCodeJE) output = Json::Value("JE"); + if (input == CountryCodeJO) output = Json::Value("JO"); + if (input == CountryCodeKZ) output = Json::Value("KZ"); + if (input == CountryCodeKE) output = Json::Value("KE"); + if (input == CountryCodeKI) output = Json::Value("KI"); + if (input == CountryCodeKP) output = Json::Value("KP"); + if (input == CountryCodeKR) output = Json::Value("KR"); + if (input == CountryCodeKW) output = Json::Value("KW"); + if (input == CountryCodeKG) output = Json::Value("KG"); + if (input == CountryCodeLA) output = Json::Value("LA"); + if (input == CountryCodeLV) output = Json::Value("LV"); + if (input == CountryCodeLB) output = Json::Value("LB"); + if (input == CountryCodeLS) output = Json::Value("LS"); + if (input == CountryCodeLR) output = Json::Value("LR"); + if (input == CountryCodeLY) output = Json::Value("LY"); + if (input == CountryCodeLI) output = Json::Value("LI"); + if (input == CountryCodeLT) output = Json::Value("LT"); + if (input == CountryCodeLU) output = Json::Value("LU"); + if (input == CountryCodeMO) output = Json::Value("MO"); + if (input == CountryCodeMK) output = Json::Value("MK"); + if (input == CountryCodeMG) output = Json::Value("MG"); + if (input == CountryCodeMW) output = Json::Value("MW"); + if (input == CountryCodeMY) output = Json::Value("MY"); + if (input == CountryCodeMV) output = Json::Value("MV"); + if (input == CountryCodeML) output = Json::Value("ML"); + if (input == CountryCodeMT) output = Json::Value("MT"); + if (input == CountryCodeMH) output = Json::Value("MH"); + if (input == CountryCodeMQ) output = Json::Value("MQ"); + if (input == CountryCodeMR) output = Json::Value("MR"); + if (input == CountryCodeMU) output = Json::Value("MU"); + if (input == CountryCodeYT) output = Json::Value("YT"); + if (input == CountryCodeMX) output = Json::Value("MX"); + if (input == CountryCodeFM) output = Json::Value("FM"); + if (input == CountryCodeMD) output = Json::Value("MD"); + if (input == CountryCodeMC) output = Json::Value("MC"); + if (input == CountryCodeMN) output = Json::Value("MN"); + if (input == CountryCodeME) output = Json::Value("ME"); + if (input == CountryCodeMS) output = Json::Value("MS"); + if (input == CountryCodeMA) output = Json::Value("MA"); + if (input == CountryCodeMZ) output = Json::Value("MZ"); + if (input == CountryCodeMM) output = Json::Value("MM"); + if (input == CountryCodeNA) output = Json::Value("NA"); + if (input == CountryCodeNR) output = Json::Value("NR"); + if (input == CountryCodeNP) output = Json::Value("NP"); + if (input == CountryCodeNL) output = Json::Value("NL"); + if (input == CountryCodeNC) output = Json::Value("NC"); + if (input == CountryCodeNZ) output = Json::Value("NZ"); + if (input == CountryCodeNI) output = Json::Value("NI"); + if (input == CountryCodeNE) output = Json::Value("NE"); + if (input == CountryCodeNG) output = Json::Value("NG"); + if (input == CountryCodeNU) output = Json::Value("NU"); + if (input == CountryCodeNF) output = Json::Value("NF"); + if (input == CountryCodeMP) output = Json::Value("MP"); + if (input == CountryCodeNO) output = Json::Value("NO"); + if (input == CountryCodeOM) output = Json::Value("OM"); + if (input == CountryCodePK) output = Json::Value("PK"); + if (input == CountryCodePW) output = Json::Value("PW"); + if (input == CountryCodePS) output = Json::Value("PS"); + if (input == CountryCodePA) output = Json::Value("PA"); + if (input == CountryCodePG) output = Json::Value("PG"); + if (input == CountryCodePY) output = Json::Value("PY"); + if (input == CountryCodePE) output = Json::Value("PE"); + if (input == CountryCodePH) output = Json::Value("PH"); + if (input == CountryCodePN) output = Json::Value("PN"); + if (input == CountryCodePL) output = Json::Value("PL"); + if (input == CountryCodePT) output = Json::Value("PT"); + if (input == CountryCodePR) output = Json::Value("PR"); + if (input == CountryCodeQA) output = Json::Value("QA"); + if (input == CountryCodeRE) output = Json::Value("RE"); + if (input == CountryCodeRO) output = Json::Value("RO"); + if (input == CountryCodeRU) output = Json::Value("RU"); + if (input == CountryCodeRW) output = Json::Value("RW"); + if (input == CountryCodeBL) output = Json::Value("BL"); + if (input == CountryCodeSH) output = Json::Value("SH"); + if (input == CountryCodeKN) output = Json::Value("KN"); + if (input == CountryCodeLC) output = Json::Value("LC"); + if (input == CountryCodeMF) output = Json::Value("MF"); + if (input == CountryCodePM) output = Json::Value("PM"); + if (input == CountryCodeVC) output = Json::Value("VC"); + if (input == CountryCodeWS) output = Json::Value("WS"); + if (input == CountryCodeSM) output = Json::Value("SM"); + if (input == CountryCodeST) output = Json::Value("ST"); + if (input == CountryCodeSA) output = Json::Value("SA"); + if (input == CountryCodeSN) output = Json::Value("SN"); + if (input == CountryCodeRS) output = Json::Value("RS"); + if (input == CountryCodeSC) output = Json::Value("SC"); + if (input == CountryCodeSL) output = Json::Value("SL"); + if (input == CountryCodeSG) output = Json::Value("SG"); + if (input == CountryCodeSX) output = Json::Value("SX"); + if (input == CountryCodeSK) output = Json::Value("SK"); + if (input == CountryCodeSI) output = Json::Value("SI"); + if (input == CountryCodeSB) output = Json::Value("SB"); + if (input == CountryCodeSO) output = Json::Value("SO"); + if (input == CountryCodeZA) output = Json::Value("ZA"); + if (input == CountryCodeGS) output = Json::Value("GS"); + if (input == CountryCodeSS) output = Json::Value("SS"); + if (input == CountryCodeES) output = Json::Value("ES"); + if (input == CountryCodeLK) output = Json::Value("LK"); + if (input == CountryCodeSD) output = Json::Value("SD"); + if (input == CountryCodeSR) output = Json::Value("SR"); + if (input == CountryCodeSJ) output = Json::Value("SJ"); + if (input == CountryCodeSZ) output = Json::Value("SZ"); + if (input == CountryCodeSE) output = Json::Value("SE"); + if (input == CountryCodeCH) output = Json::Value("CH"); + if (input == CountryCodeSY) output = Json::Value("SY"); + if (input == CountryCodeTW) output = Json::Value("TW"); + if (input == CountryCodeTJ) output = Json::Value("TJ"); + if (input == CountryCodeTZ) output = Json::Value("TZ"); + if (input == CountryCodeTH) output = Json::Value("TH"); + if (input == CountryCodeTL) output = Json::Value("TL"); + if (input == CountryCodeTG) output = Json::Value("TG"); + if (input == CountryCodeTK) output = Json::Value("TK"); + if (input == CountryCodeTO) output = Json::Value("TO"); + if (input == CountryCodeTT) output = Json::Value("TT"); + if (input == CountryCodeTN) output = Json::Value("TN"); + if (input == CountryCodeTR) output = Json::Value("TR"); + if (input == CountryCodeTM) output = Json::Value("TM"); + if (input == CountryCodeTC) output = Json::Value("TC"); + if (input == CountryCodeTV) output = Json::Value("TV"); + if (input == CountryCodeUG) output = Json::Value("UG"); + if (input == CountryCodeUA) output = Json::Value("UA"); + if (input == CountryCodeAE) output = Json::Value("AE"); + if (input == CountryCodeGB) output = Json::Value("GB"); + if (input == CountryCodeUS) output = Json::Value("US"); + if (input == CountryCodeUM) output = Json::Value("UM"); + if (input == CountryCodeUY) output = Json::Value("UY"); + if (input == CountryCodeUZ) output = Json::Value("UZ"); + if (input == CountryCodeVU) output = Json::Value("VU"); + if (input == CountryCodeVE) output = Json::Value("VE"); + if (input == CountryCodeVN) output = Json::Value("VN"); + if (input == CountryCodeVG) output = Json::Value("VG"); + if (input == CountryCodeVI) output = Json::Value("VI"); + if (input == CountryCodeWF) output = Json::Value("WF"); + if (input == CountryCodeEH) output = Json::Value("EH"); + if (input == CountryCodeYE) output = Json::Value("YE"); + if (input == CountryCodeZM) output = Json::Value("ZM"); + if (input == CountryCodeZW) output = Json::Value("ZW"); + } + inline void FromJsonEnum(const Json::Value& input, CountryCode& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "AF") output = CountryCodeAF; + if (inputStr == "AX") output = CountryCodeAX; + if (inputStr == "AL") output = CountryCodeAL; + if (inputStr == "DZ") output = CountryCodeDZ; + if (inputStr == "AS") output = CountryCodeAS; + if (inputStr == "AD") output = CountryCodeAD; + if (inputStr == "AO") output = CountryCodeAO; + if (inputStr == "AI") output = CountryCodeAI; + if (inputStr == "AQ") output = CountryCodeAQ; + if (inputStr == "AG") output = CountryCodeAG; + if (inputStr == "AR") output = CountryCodeAR; + if (inputStr == "AM") output = CountryCodeAM; + if (inputStr == "AW") output = CountryCodeAW; + if (inputStr == "AU") output = CountryCodeAU; + if (inputStr == "AT") output = CountryCodeAT; + if (inputStr == "AZ") output = CountryCodeAZ; + if (inputStr == "BS") output = CountryCodeBS; + if (inputStr == "BH") output = CountryCodeBH; + if (inputStr == "BD") output = CountryCodeBD; + if (inputStr == "BB") output = CountryCodeBB; + if (inputStr == "BY") output = CountryCodeBY; + if (inputStr == "BE") output = CountryCodeBE; + if (inputStr == "BZ") output = CountryCodeBZ; + if (inputStr == "BJ") output = CountryCodeBJ; + if (inputStr == "BM") output = CountryCodeBM; + if (inputStr == "BT") output = CountryCodeBT; + if (inputStr == "BO") output = CountryCodeBO; + if (inputStr == "BQ") output = CountryCodeBQ; + if (inputStr == "BA") output = CountryCodeBA; + if (inputStr == "BW") output = CountryCodeBW; + if (inputStr == "BV") output = CountryCodeBV; + if (inputStr == "BR") output = CountryCodeBR; + if (inputStr == "IO") output = CountryCodeIO; + if (inputStr == "BN") output = CountryCodeBN; + if (inputStr == "BG") output = CountryCodeBG; + if (inputStr == "BF") output = CountryCodeBF; + if (inputStr == "BI") output = CountryCodeBI; + if (inputStr == "KH") output = CountryCodeKH; + if (inputStr == "CM") output = CountryCodeCM; + if (inputStr == "CA") output = CountryCodeCA; + if (inputStr == "CV") output = CountryCodeCV; + if (inputStr == "KY") output = CountryCodeKY; + if (inputStr == "CF") output = CountryCodeCF; + if (inputStr == "TD") output = CountryCodeTD; + if (inputStr == "CL") output = CountryCodeCL; + if (inputStr == "CN") output = CountryCodeCN; + if (inputStr == "CX") output = CountryCodeCX; + if (inputStr == "CC") output = CountryCodeCC; + if (inputStr == "CO") output = CountryCodeCO; + if (inputStr == "KM") output = CountryCodeKM; + if (inputStr == "CG") output = CountryCodeCG; + if (inputStr == "CD") output = CountryCodeCD; + if (inputStr == "CK") output = CountryCodeCK; + if (inputStr == "CR") output = CountryCodeCR; + if (inputStr == "CI") output = CountryCodeCI; + if (inputStr == "HR") output = CountryCodeHR; + if (inputStr == "CU") output = CountryCodeCU; + if (inputStr == "CW") output = CountryCodeCW; + if (inputStr == "CY") output = CountryCodeCY; + if (inputStr == "CZ") output = CountryCodeCZ; + if (inputStr == "DK") output = CountryCodeDK; + if (inputStr == "DJ") output = CountryCodeDJ; + if (inputStr == "DM") output = CountryCodeDM; + if (inputStr == "DO") output = CountryCodeDO; + if (inputStr == "EC") output = CountryCodeEC; + if (inputStr == "EG") output = CountryCodeEG; + if (inputStr == "SV") output = CountryCodeSV; + if (inputStr == "GQ") output = CountryCodeGQ; + if (inputStr == "ER") output = CountryCodeER; + if (inputStr == "EE") output = CountryCodeEE; + if (inputStr == "ET") output = CountryCodeET; + if (inputStr == "FK") output = CountryCodeFK; + if (inputStr == "FO") output = CountryCodeFO; + if (inputStr == "FJ") output = CountryCodeFJ; + if (inputStr == "FI") output = CountryCodeFI; + if (inputStr == "FR") output = CountryCodeFR; + if (inputStr == "GF") output = CountryCodeGF; + if (inputStr == "PF") output = CountryCodePF; + if (inputStr == "TF") output = CountryCodeTF; + if (inputStr == "GA") output = CountryCodeGA; + if (inputStr == "GM") output = CountryCodeGM; + if (inputStr == "GE") output = CountryCodeGE; + if (inputStr == "DE") output = CountryCodeDE; + if (inputStr == "GH") output = CountryCodeGH; + if (inputStr == "GI") output = CountryCodeGI; + if (inputStr == "GR") output = CountryCodeGR; + if (inputStr == "GL") output = CountryCodeGL; + if (inputStr == "GD") output = CountryCodeGD; + if (inputStr == "GP") output = CountryCodeGP; + if (inputStr == "GU") output = CountryCodeGU; + if (inputStr == "GT") output = CountryCodeGT; + if (inputStr == "GG") output = CountryCodeGG; + if (inputStr == "GN") output = CountryCodeGN; + if (inputStr == "GW") output = CountryCodeGW; + if (inputStr == "GY") output = CountryCodeGY; + if (inputStr == "HT") output = CountryCodeHT; + if (inputStr == "HM") output = CountryCodeHM; + if (inputStr == "VA") output = CountryCodeVA; + if (inputStr == "HN") output = CountryCodeHN; + if (inputStr == "HK") output = CountryCodeHK; + if (inputStr == "HU") output = CountryCodeHU; + if (inputStr == "IS") output = CountryCodeIS; + if (inputStr == "IN") output = CountryCodeIN; + if (inputStr == "ID") output = CountryCodeID; + if (inputStr == "IR") output = CountryCodeIR; + if (inputStr == "IQ") output = CountryCodeIQ; + if (inputStr == "IE") output = CountryCodeIE; + if (inputStr == "IM") output = CountryCodeIM; + if (inputStr == "IL") output = CountryCodeIL; + if (inputStr == "IT") output = CountryCodeIT; + if (inputStr == "JM") output = CountryCodeJM; + if (inputStr == "JP") output = CountryCodeJP; + if (inputStr == "JE") output = CountryCodeJE; + if (inputStr == "JO") output = CountryCodeJO; + if (inputStr == "KZ") output = CountryCodeKZ; + if (inputStr == "KE") output = CountryCodeKE; + if (inputStr == "KI") output = CountryCodeKI; + if (inputStr == "KP") output = CountryCodeKP; + if (inputStr == "KR") output = CountryCodeKR; + if (inputStr == "KW") output = CountryCodeKW; + if (inputStr == "KG") output = CountryCodeKG; + if (inputStr == "LA") output = CountryCodeLA; + if (inputStr == "LV") output = CountryCodeLV; + if (inputStr == "LB") output = CountryCodeLB; + if (inputStr == "LS") output = CountryCodeLS; + if (inputStr == "LR") output = CountryCodeLR; + if (inputStr == "LY") output = CountryCodeLY; + if (inputStr == "LI") output = CountryCodeLI; + if (inputStr == "LT") output = CountryCodeLT; + if (inputStr == "LU") output = CountryCodeLU; + if (inputStr == "MO") output = CountryCodeMO; + if (inputStr == "MK") output = CountryCodeMK; + if (inputStr == "MG") output = CountryCodeMG; + if (inputStr == "MW") output = CountryCodeMW; + if (inputStr == "MY") output = CountryCodeMY; + if (inputStr == "MV") output = CountryCodeMV; + if (inputStr == "ML") output = CountryCodeML; + if (inputStr == "MT") output = CountryCodeMT; + if (inputStr == "MH") output = CountryCodeMH; + if (inputStr == "MQ") output = CountryCodeMQ; + if (inputStr == "MR") output = CountryCodeMR; + if (inputStr == "MU") output = CountryCodeMU; + if (inputStr == "YT") output = CountryCodeYT; + if (inputStr == "MX") output = CountryCodeMX; + if (inputStr == "FM") output = CountryCodeFM; + if (inputStr == "MD") output = CountryCodeMD; + if (inputStr == "MC") output = CountryCodeMC; + if (inputStr == "MN") output = CountryCodeMN; + if (inputStr == "ME") output = CountryCodeME; + if (inputStr == "MS") output = CountryCodeMS; + if (inputStr == "MA") output = CountryCodeMA; + if (inputStr == "MZ") output = CountryCodeMZ; + if (inputStr == "MM") output = CountryCodeMM; + if (inputStr == "NA") output = CountryCodeNA; + if (inputStr == "NR") output = CountryCodeNR; + if (inputStr == "NP") output = CountryCodeNP; + if (inputStr == "NL") output = CountryCodeNL; + if (inputStr == "NC") output = CountryCodeNC; + if (inputStr == "NZ") output = CountryCodeNZ; + if (inputStr == "NI") output = CountryCodeNI; + if (inputStr == "NE") output = CountryCodeNE; + if (inputStr == "NG") output = CountryCodeNG; + if (inputStr == "NU") output = CountryCodeNU; + if (inputStr == "NF") output = CountryCodeNF; + if (inputStr == "MP") output = CountryCodeMP; + if (inputStr == "NO") output = CountryCodeNO; + if (inputStr == "OM") output = CountryCodeOM; + if (inputStr == "PK") output = CountryCodePK; + if (inputStr == "PW") output = CountryCodePW; + if (inputStr == "PS") output = CountryCodePS; + if (inputStr == "PA") output = CountryCodePA; + if (inputStr == "PG") output = CountryCodePG; + if (inputStr == "PY") output = CountryCodePY; + if (inputStr == "PE") output = CountryCodePE; + if (inputStr == "PH") output = CountryCodePH; + if (inputStr == "PN") output = CountryCodePN; + if (inputStr == "PL") output = CountryCodePL; + if (inputStr == "PT") output = CountryCodePT; + if (inputStr == "PR") output = CountryCodePR; + if (inputStr == "QA") output = CountryCodeQA; + if (inputStr == "RE") output = CountryCodeRE; + if (inputStr == "RO") output = CountryCodeRO; + if (inputStr == "RU") output = CountryCodeRU; + if (inputStr == "RW") output = CountryCodeRW; + if (inputStr == "BL") output = CountryCodeBL; + if (inputStr == "SH") output = CountryCodeSH; + if (inputStr == "KN") output = CountryCodeKN; + if (inputStr == "LC") output = CountryCodeLC; + if (inputStr == "MF") output = CountryCodeMF; + if (inputStr == "PM") output = CountryCodePM; + if (inputStr == "VC") output = CountryCodeVC; + if (inputStr == "WS") output = CountryCodeWS; + if (inputStr == "SM") output = CountryCodeSM; + if (inputStr == "ST") output = CountryCodeST; + if (inputStr == "SA") output = CountryCodeSA; + if (inputStr == "SN") output = CountryCodeSN; + if (inputStr == "RS") output = CountryCodeRS; + if (inputStr == "SC") output = CountryCodeSC; + if (inputStr == "SL") output = CountryCodeSL; + if (inputStr == "SG") output = CountryCodeSG; + if (inputStr == "SX") output = CountryCodeSX; + if (inputStr == "SK") output = CountryCodeSK; + if (inputStr == "SI") output = CountryCodeSI; + if (inputStr == "SB") output = CountryCodeSB; + if (inputStr == "SO") output = CountryCodeSO; + if (inputStr == "ZA") output = CountryCodeZA; + if (inputStr == "GS") output = CountryCodeGS; + if (inputStr == "SS") output = CountryCodeSS; + if (inputStr == "ES") output = CountryCodeES; + if (inputStr == "LK") output = CountryCodeLK; + if (inputStr == "SD") output = CountryCodeSD; + if (inputStr == "SR") output = CountryCodeSR; + if (inputStr == "SJ") output = CountryCodeSJ; + if (inputStr == "SZ") output = CountryCodeSZ; + if (inputStr == "SE") output = CountryCodeSE; + if (inputStr == "CH") output = CountryCodeCH; + if (inputStr == "SY") output = CountryCodeSY; + if (inputStr == "TW") output = CountryCodeTW; + if (inputStr == "TJ") output = CountryCodeTJ; + if (inputStr == "TZ") output = CountryCodeTZ; + if (inputStr == "TH") output = CountryCodeTH; + if (inputStr == "TL") output = CountryCodeTL; + if (inputStr == "TG") output = CountryCodeTG; + if (inputStr == "TK") output = CountryCodeTK; + if (inputStr == "TO") output = CountryCodeTO; + if (inputStr == "TT") output = CountryCodeTT; + if (inputStr == "TN") output = CountryCodeTN; + if (inputStr == "TR") output = CountryCodeTR; + if (inputStr == "TM") output = CountryCodeTM; + if (inputStr == "TC") output = CountryCodeTC; + if (inputStr == "TV") output = CountryCodeTV; + if (inputStr == "UG") output = CountryCodeUG; + if (inputStr == "UA") output = CountryCodeUA; + if (inputStr == "AE") output = CountryCodeAE; + if (inputStr == "GB") output = CountryCodeGB; + if (inputStr == "US") output = CountryCodeUS; + if (inputStr == "UM") output = CountryCodeUM; + if (inputStr == "UY") output = CountryCodeUY; + if (inputStr == "UZ") output = CountryCodeUZ; + if (inputStr == "VU") output = CountryCodeVU; + if (inputStr == "VE") output = CountryCodeVE; + if (inputStr == "VN") output = CountryCodeVN; + if (inputStr == "VG") output = CountryCodeVG; + if (inputStr == "VI") output = CountryCodeVI; + if (inputStr == "WF") output = CountryCodeWF; + if (inputStr == "EH") output = CountryCodeEH; + if (inputStr == "YE") output = CountryCodeYE; + if (inputStr == "ZM") output = CountryCodeZM; + if (inputStr == "ZW") output = CountryCodeZW; + } + + enum Currency + { + CurrencyAED, + CurrencyAFN, + CurrencyALL, + CurrencyAMD, + CurrencyANG, + CurrencyAOA, + CurrencyARS, + CurrencyAUD, + CurrencyAWG, + CurrencyAZN, + CurrencyBAM, + CurrencyBBD, + CurrencyBDT, + CurrencyBGN, + CurrencyBHD, + CurrencyBIF, + CurrencyBMD, + CurrencyBND, + CurrencyBOB, + CurrencyBRL, + CurrencyBSD, + CurrencyBTN, + CurrencyBWP, + CurrencyBYR, + CurrencyBZD, + CurrencyCAD, + CurrencyCDF, + CurrencyCHF, + CurrencyCLP, + CurrencyCNY, + CurrencyCOP, + CurrencyCRC, + CurrencyCUC, + CurrencyCUP, + CurrencyCVE, + CurrencyCZK, + CurrencyDJF, + CurrencyDKK, + CurrencyDOP, + CurrencyDZD, + CurrencyEGP, + CurrencyERN, + CurrencyETB, + CurrencyEUR, + CurrencyFJD, + CurrencyFKP, + CurrencyGBP, + CurrencyGEL, + CurrencyGGP, + CurrencyGHS, + CurrencyGIP, + CurrencyGMD, + CurrencyGNF, + CurrencyGTQ, + CurrencyGYD, + CurrencyHKD, + CurrencyHNL, + CurrencyHRK, + CurrencyHTG, + CurrencyHUF, + CurrencyIDR, + CurrencyILS, + CurrencyIMP, + CurrencyINR, + CurrencyIQD, + CurrencyIRR, + CurrencyISK, + CurrencyJEP, + CurrencyJMD, + CurrencyJOD, + CurrencyJPY, + CurrencyKES, + CurrencyKGS, + CurrencyKHR, + CurrencyKMF, + CurrencyKPW, + CurrencyKRW, + CurrencyKWD, + CurrencyKYD, + CurrencyKZT, + CurrencyLAK, + CurrencyLBP, + CurrencyLKR, + CurrencyLRD, + CurrencyLSL, + CurrencyLYD, + CurrencyMAD, + CurrencyMDL, + CurrencyMGA, + CurrencyMKD, + CurrencyMMK, + CurrencyMNT, + CurrencyMOP, + CurrencyMRO, + CurrencyMUR, + CurrencyMVR, + CurrencyMWK, + CurrencyMXN, + CurrencyMYR, + CurrencyMZN, + CurrencyNAD, + CurrencyNGN, + CurrencyNIO, + CurrencyNOK, + CurrencyNPR, + CurrencyNZD, + CurrencyOMR, + CurrencyPAB, + CurrencyPEN, + CurrencyPGK, + CurrencyPHP, + CurrencyPKR, + CurrencyPLN, + CurrencyPYG, + CurrencyQAR, + CurrencyRON, + CurrencyRSD, + CurrencyRUB, + CurrencyRWF, + CurrencySAR, + CurrencySBD, + CurrencySCR, + CurrencySDG, + CurrencySEK, + CurrencySGD, + CurrencySHP, + CurrencySLL, + CurrencySOS, + CurrencySPL, + CurrencySRD, + CurrencySTD, + CurrencySVC, + CurrencySYP, + CurrencySZL, + CurrencyTHB, + CurrencyTJS, + CurrencyTMT, + CurrencyTND, + CurrencyTOP, + CurrencyTRY, + CurrencyTTD, + CurrencyTVD, + CurrencyTWD, + CurrencyTZS, + CurrencyUAH, + CurrencyUGX, + CurrencyUSD, + CurrencyUYU, + CurrencyUZS, + CurrencyVEF, + CurrencyVND, + CurrencyVUV, + CurrencyWST, + CurrencyXAF, + CurrencyXCD, + CurrencyXDR, + CurrencyXOF, + CurrencyXPF, + CurrencyYER, + CurrencyZAR, + CurrencyZMW, + CurrencyZWD + }; + + inline void ToJsonEnum(const Currency input, Json::Value& output) + { + if (input == CurrencyAED) output = Json::Value("AED"); + if (input == CurrencyAFN) output = Json::Value("AFN"); + if (input == CurrencyALL) output = Json::Value("ALL"); + if (input == CurrencyAMD) output = Json::Value("AMD"); + if (input == CurrencyANG) output = Json::Value("ANG"); + if (input == CurrencyAOA) output = Json::Value("AOA"); + if (input == CurrencyARS) output = Json::Value("ARS"); + if (input == CurrencyAUD) output = Json::Value("AUD"); + if (input == CurrencyAWG) output = Json::Value("AWG"); + if (input == CurrencyAZN) output = Json::Value("AZN"); + if (input == CurrencyBAM) output = Json::Value("BAM"); + if (input == CurrencyBBD) output = Json::Value("BBD"); + if (input == CurrencyBDT) output = Json::Value("BDT"); + if (input == CurrencyBGN) output = Json::Value("BGN"); + if (input == CurrencyBHD) output = Json::Value("BHD"); + if (input == CurrencyBIF) output = Json::Value("BIF"); + if (input == CurrencyBMD) output = Json::Value("BMD"); + if (input == CurrencyBND) output = Json::Value("BND"); + if (input == CurrencyBOB) output = Json::Value("BOB"); + if (input == CurrencyBRL) output = Json::Value("BRL"); + if (input == CurrencyBSD) output = Json::Value("BSD"); + if (input == CurrencyBTN) output = Json::Value("BTN"); + if (input == CurrencyBWP) output = Json::Value("BWP"); + if (input == CurrencyBYR) output = Json::Value("BYR"); + if (input == CurrencyBZD) output = Json::Value("BZD"); + if (input == CurrencyCAD) output = Json::Value("CAD"); + if (input == CurrencyCDF) output = Json::Value("CDF"); + if (input == CurrencyCHF) output = Json::Value("CHF"); + if (input == CurrencyCLP) output = Json::Value("CLP"); + if (input == CurrencyCNY) output = Json::Value("CNY"); + if (input == CurrencyCOP) output = Json::Value("COP"); + if (input == CurrencyCRC) output = Json::Value("CRC"); + if (input == CurrencyCUC) output = Json::Value("CUC"); + if (input == CurrencyCUP) output = Json::Value("CUP"); + if (input == CurrencyCVE) output = Json::Value("CVE"); + if (input == CurrencyCZK) output = Json::Value("CZK"); + if (input == CurrencyDJF) output = Json::Value("DJF"); + if (input == CurrencyDKK) output = Json::Value("DKK"); + if (input == CurrencyDOP) output = Json::Value("DOP"); + if (input == CurrencyDZD) output = Json::Value("DZD"); + if (input == CurrencyEGP) output = Json::Value("EGP"); + if (input == CurrencyERN) output = Json::Value("ERN"); + if (input == CurrencyETB) output = Json::Value("ETB"); + if (input == CurrencyEUR) output = Json::Value("EUR"); + if (input == CurrencyFJD) output = Json::Value("FJD"); + if (input == CurrencyFKP) output = Json::Value("FKP"); + if (input == CurrencyGBP) output = Json::Value("GBP"); + if (input == CurrencyGEL) output = Json::Value("GEL"); + if (input == CurrencyGGP) output = Json::Value("GGP"); + if (input == CurrencyGHS) output = Json::Value("GHS"); + if (input == CurrencyGIP) output = Json::Value("GIP"); + if (input == CurrencyGMD) output = Json::Value("GMD"); + if (input == CurrencyGNF) output = Json::Value("GNF"); + if (input == CurrencyGTQ) output = Json::Value("GTQ"); + if (input == CurrencyGYD) output = Json::Value("GYD"); + if (input == CurrencyHKD) output = Json::Value("HKD"); + if (input == CurrencyHNL) output = Json::Value("HNL"); + if (input == CurrencyHRK) output = Json::Value("HRK"); + if (input == CurrencyHTG) output = Json::Value("HTG"); + if (input == CurrencyHUF) output = Json::Value("HUF"); + if (input == CurrencyIDR) output = Json::Value("IDR"); + if (input == CurrencyILS) output = Json::Value("ILS"); + if (input == CurrencyIMP) output = Json::Value("IMP"); + if (input == CurrencyINR) output = Json::Value("INR"); + if (input == CurrencyIQD) output = Json::Value("IQD"); + if (input == CurrencyIRR) output = Json::Value("IRR"); + if (input == CurrencyISK) output = Json::Value("ISK"); + if (input == CurrencyJEP) output = Json::Value("JEP"); + if (input == CurrencyJMD) output = Json::Value("JMD"); + if (input == CurrencyJOD) output = Json::Value("JOD"); + if (input == CurrencyJPY) output = Json::Value("JPY"); + if (input == CurrencyKES) output = Json::Value("KES"); + if (input == CurrencyKGS) output = Json::Value("KGS"); + if (input == CurrencyKHR) output = Json::Value("KHR"); + if (input == CurrencyKMF) output = Json::Value("KMF"); + if (input == CurrencyKPW) output = Json::Value("KPW"); + if (input == CurrencyKRW) output = Json::Value("KRW"); + if (input == CurrencyKWD) output = Json::Value("KWD"); + if (input == CurrencyKYD) output = Json::Value("KYD"); + if (input == CurrencyKZT) output = Json::Value("KZT"); + if (input == CurrencyLAK) output = Json::Value("LAK"); + if (input == CurrencyLBP) output = Json::Value("LBP"); + if (input == CurrencyLKR) output = Json::Value("LKR"); + if (input == CurrencyLRD) output = Json::Value("LRD"); + if (input == CurrencyLSL) output = Json::Value("LSL"); + if (input == CurrencyLYD) output = Json::Value("LYD"); + if (input == CurrencyMAD) output = Json::Value("MAD"); + if (input == CurrencyMDL) output = Json::Value("MDL"); + if (input == CurrencyMGA) output = Json::Value("MGA"); + if (input == CurrencyMKD) output = Json::Value("MKD"); + if (input == CurrencyMMK) output = Json::Value("MMK"); + if (input == CurrencyMNT) output = Json::Value("MNT"); + if (input == CurrencyMOP) output = Json::Value("MOP"); + if (input == CurrencyMRO) output = Json::Value("MRO"); + if (input == CurrencyMUR) output = Json::Value("MUR"); + if (input == CurrencyMVR) output = Json::Value("MVR"); + if (input == CurrencyMWK) output = Json::Value("MWK"); + if (input == CurrencyMXN) output = Json::Value("MXN"); + if (input == CurrencyMYR) output = Json::Value("MYR"); + if (input == CurrencyMZN) output = Json::Value("MZN"); + if (input == CurrencyNAD) output = Json::Value("NAD"); + if (input == CurrencyNGN) output = Json::Value("NGN"); + if (input == CurrencyNIO) output = Json::Value("NIO"); + if (input == CurrencyNOK) output = Json::Value("NOK"); + if (input == CurrencyNPR) output = Json::Value("NPR"); + if (input == CurrencyNZD) output = Json::Value("NZD"); + if (input == CurrencyOMR) output = Json::Value("OMR"); + if (input == CurrencyPAB) output = Json::Value("PAB"); + if (input == CurrencyPEN) output = Json::Value("PEN"); + if (input == CurrencyPGK) output = Json::Value("PGK"); + if (input == CurrencyPHP) output = Json::Value("PHP"); + if (input == CurrencyPKR) output = Json::Value("PKR"); + if (input == CurrencyPLN) output = Json::Value("PLN"); + if (input == CurrencyPYG) output = Json::Value("PYG"); + if (input == CurrencyQAR) output = Json::Value("QAR"); + if (input == CurrencyRON) output = Json::Value("RON"); + if (input == CurrencyRSD) output = Json::Value("RSD"); + if (input == CurrencyRUB) output = Json::Value("RUB"); + if (input == CurrencyRWF) output = Json::Value("RWF"); + if (input == CurrencySAR) output = Json::Value("SAR"); + if (input == CurrencySBD) output = Json::Value("SBD"); + if (input == CurrencySCR) output = Json::Value("SCR"); + if (input == CurrencySDG) output = Json::Value("SDG"); + if (input == CurrencySEK) output = Json::Value("SEK"); + if (input == CurrencySGD) output = Json::Value("SGD"); + if (input == CurrencySHP) output = Json::Value("SHP"); + if (input == CurrencySLL) output = Json::Value("SLL"); + if (input == CurrencySOS) output = Json::Value("SOS"); + if (input == CurrencySPL) output = Json::Value("SPL"); + if (input == CurrencySRD) output = Json::Value("SRD"); + if (input == CurrencySTD) output = Json::Value("STD"); + if (input == CurrencySVC) output = Json::Value("SVC"); + if (input == CurrencySYP) output = Json::Value("SYP"); + if (input == CurrencySZL) output = Json::Value("SZL"); + if (input == CurrencyTHB) output = Json::Value("THB"); + if (input == CurrencyTJS) output = Json::Value("TJS"); + if (input == CurrencyTMT) output = Json::Value("TMT"); + if (input == CurrencyTND) output = Json::Value("TND"); + if (input == CurrencyTOP) output = Json::Value("TOP"); + if (input == CurrencyTRY) output = Json::Value("TRY"); + if (input == CurrencyTTD) output = Json::Value("TTD"); + if (input == CurrencyTVD) output = Json::Value("TVD"); + if (input == CurrencyTWD) output = Json::Value("TWD"); + if (input == CurrencyTZS) output = Json::Value("TZS"); + if (input == CurrencyUAH) output = Json::Value("UAH"); + if (input == CurrencyUGX) output = Json::Value("UGX"); + if (input == CurrencyUSD) output = Json::Value("USD"); + if (input == CurrencyUYU) output = Json::Value("UYU"); + if (input == CurrencyUZS) output = Json::Value("UZS"); + if (input == CurrencyVEF) output = Json::Value("VEF"); + if (input == CurrencyVND) output = Json::Value("VND"); + if (input == CurrencyVUV) output = Json::Value("VUV"); + if (input == CurrencyWST) output = Json::Value("WST"); + if (input == CurrencyXAF) output = Json::Value("XAF"); + if (input == CurrencyXCD) output = Json::Value("XCD"); + if (input == CurrencyXDR) output = Json::Value("XDR"); + if (input == CurrencyXOF) output = Json::Value("XOF"); + if (input == CurrencyXPF) output = Json::Value("XPF"); + if (input == CurrencyYER) output = Json::Value("YER"); + if (input == CurrencyZAR) output = Json::Value("ZAR"); + if (input == CurrencyZMW) output = Json::Value("ZMW"); + if (input == CurrencyZWD) output = Json::Value("ZWD"); + } + inline void FromJsonEnum(const Json::Value& input, Currency& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "AED") output = CurrencyAED; + if (inputStr == "AFN") output = CurrencyAFN; + if (inputStr == "ALL") output = CurrencyALL; + if (inputStr == "AMD") output = CurrencyAMD; + if (inputStr == "ANG") output = CurrencyANG; + if (inputStr == "AOA") output = CurrencyAOA; + if (inputStr == "ARS") output = CurrencyARS; + if (inputStr == "AUD") output = CurrencyAUD; + if (inputStr == "AWG") output = CurrencyAWG; + if (inputStr == "AZN") output = CurrencyAZN; + if (inputStr == "BAM") output = CurrencyBAM; + if (inputStr == "BBD") output = CurrencyBBD; + if (inputStr == "BDT") output = CurrencyBDT; + if (inputStr == "BGN") output = CurrencyBGN; + if (inputStr == "BHD") output = CurrencyBHD; + if (inputStr == "BIF") output = CurrencyBIF; + if (inputStr == "BMD") output = CurrencyBMD; + if (inputStr == "BND") output = CurrencyBND; + if (inputStr == "BOB") output = CurrencyBOB; + if (inputStr == "BRL") output = CurrencyBRL; + if (inputStr == "BSD") output = CurrencyBSD; + if (inputStr == "BTN") output = CurrencyBTN; + if (inputStr == "BWP") output = CurrencyBWP; + if (inputStr == "BYR") output = CurrencyBYR; + if (inputStr == "BZD") output = CurrencyBZD; + if (inputStr == "CAD") output = CurrencyCAD; + if (inputStr == "CDF") output = CurrencyCDF; + if (inputStr == "CHF") output = CurrencyCHF; + if (inputStr == "CLP") output = CurrencyCLP; + if (inputStr == "CNY") output = CurrencyCNY; + if (inputStr == "COP") output = CurrencyCOP; + if (inputStr == "CRC") output = CurrencyCRC; + if (inputStr == "CUC") output = CurrencyCUC; + if (inputStr == "CUP") output = CurrencyCUP; + if (inputStr == "CVE") output = CurrencyCVE; + if (inputStr == "CZK") output = CurrencyCZK; + if (inputStr == "DJF") output = CurrencyDJF; + if (inputStr == "DKK") output = CurrencyDKK; + if (inputStr == "DOP") output = CurrencyDOP; + if (inputStr == "DZD") output = CurrencyDZD; + if (inputStr == "EGP") output = CurrencyEGP; + if (inputStr == "ERN") output = CurrencyERN; + if (inputStr == "ETB") output = CurrencyETB; + if (inputStr == "EUR") output = CurrencyEUR; + if (inputStr == "FJD") output = CurrencyFJD; + if (inputStr == "FKP") output = CurrencyFKP; + if (inputStr == "GBP") output = CurrencyGBP; + if (inputStr == "GEL") output = CurrencyGEL; + if (inputStr == "GGP") output = CurrencyGGP; + if (inputStr == "GHS") output = CurrencyGHS; + if (inputStr == "GIP") output = CurrencyGIP; + if (inputStr == "GMD") output = CurrencyGMD; + if (inputStr == "GNF") output = CurrencyGNF; + if (inputStr == "GTQ") output = CurrencyGTQ; + if (inputStr == "GYD") output = CurrencyGYD; + if (inputStr == "HKD") output = CurrencyHKD; + if (inputStr == "HNL") output = CurrencyHNL; + if (inputStr == "HRK") output = CurrencyHRK; + if (inputStr == "HTG") output = CurrencyHTG; + if (inputStr == "HUF") output = CurrencyHUF; + if (inputStr == "IDR") output = CurrencyIDR; + if (inputStr == "ILS") output = CurrencyILS; + if (inputStr == "IMP") output = CurrencyIMP; + if (inputStr == "INR") output = CurrencyINR; + if (inputStr == "IQD") output = CurrencyIQD; + if (inputStr == "IRR") output = CurrencyIRR; + if (inputStr == "ISK") output = CurrencyISK; + if (inputStr == "JEP") output = CurrencyJEP; + if (inputStr == "JMD") output = CurrencyJMD; + if (inputStr == "JOD") output = CurrencyJOD; + if (inputStr == "JPY") output = CurrencyJPY; + if (inputStr == "KES") output = CurrencyKES; + if (inputStr == "KGS") output = CurrencyKGS; + if (inputStr == "KHR") output = CurrencyKHR; + if (inputStr == "KMF") output = CurrencyKMF; + if (inputStr == "KPW") output = CurrencyKPW; + if (inputStr == "KRW") output = CurrencyKRW; + if (inputStr == "KWD") output = CurrencyKWD; + if (inputStr == "KYD") output = CurrencyKYD; + if (inputStr == "KZT") output = CurrencyKZT; + if (inputStr == "LAK") output = CurrencyLAK; + if (inputStr == "LBP") output = CurrencyLBP; + if (inputStr == "LKR") output = CurrencyLKR; + if (inputStr == "LRD") output = CurrencyLRD; + if (inputStr == "LSL") output = CurrencyLSL; + if (inputStr == "LYD") output = CurrencyLYD; + if (inputStr == "MAD") output = CurrencyMAD; + if (inputStr == "MDL") output = CurrencyMDL; + if (inputStr == "MGA") output = CurrencyMGA; + if (inputStr == "MKD") output = CurrencyMKD; + if (inputStr == "MMK") output = CurrencyMMK; + if (inputStr == "MNT") output = CurrencyMNT; + if (inputStr == "MOP") output = CurrencyMOP; + if (inputStr == "MRO") output = CurrencyMRO; + if (inputStr == "MUR") output = CurrencyMUR; + if (inputStr == "MVR") output = CurrencyMVR; + if (inputStr == "MWK") output = CurrencyMWK; + if (inputStr == "MXN") output = CurrencyMXN; + if (inputStr == "MYR") output = CurrencyMYR; + if (inputStr == "MZN") output = CurrencyMZN; + if (inputStr == "NAD") output = CurrencyNAD; + if (inputStr == "NGN") output = CurrencyNGN; + if (inputStr == "NIO") output = CurrencyNIO; + if (inputStr == "NOK") output = CurrencyNOK; + if (inputStr == "NPR") output = CurrencyNPR; + if (inputStr == "NZD") output = CurrencyNZD; + if (inputStr == "OMR") output = CurrencyOMR; + if (inputStr == "PAB") output = CurrencyPAB; + if (inputStr == "PEN") output = CurrencyPEN; + if (inputStr == "PGK") output = CurrencyPGK; + if (inputStr == "PHP") output = CurrencyPHP; + if (inputStr == "PKR") output = CurrencyPKR; + if (inputStr == "PLN") output = CurrencyPLN; + if (inputStr == "PYG") output = CurrencyPYG; + if (inputStr == "QAR") output = CurrencyQAR; + if (inputStr == "RON") output = CurrencyRON; + if (inputStr == "RSD") output = CurrencyRSD; + if (inputStr == "RUB") output = CurrencyRUB; + if (inputStr == "RWF") output = CurrencyRWF; + if (inputStr == "SAR") output = CurrencySAR; + if (inputStr == "SBD") output = CurrencySBD; + if (inputStr == "SCR") output = CurrencySCR; + if (inputStr == "SDG") output = CurrencySDG; + if (inputStr == "SEK") output = CurrencySEK; + if (inputStr == "SGD") output = CurrencySGD; + if (inputStr == "SHP") output = CurrencySHP; + if (inputStr == "SLL") output = CurrencySLL; + if (inputStr == "SOS") output = CurrencySOS; + if (inputStr == "SPL") output = CurrencySPL; + if (inputStr == "SRD") output = CurrencySRD; + if (inputStr == "STD") output = CurrencySTD; + if (inputStr == "SVC") output = CurrencySVC; + if (inputStr == "SYP") output = CurrencySYP; + if (inputStr == "SZL") output = CurrencySZL; + if (inputStr == "THB") output = CurrencyTHB; + if (inputStr == "TJS") output = CurrencyTJS; + if (inputStr == "TMT") output = CurrencyTMT; + if (inputStr == "TND") output = CurrencyTND; + if (inputStr == "TOP") output = CurrencyTOP; + if (inputStr == "TRY") output = CurrencyTRY; + if (inputStr == "TTD") output = CurrencyTTD; + if (inputStr == "TVD") output = CurrencyTVD; + if (inputStr == "TWD") output = CurrencyTWD; + if (inputStr == "TZS") output = CurrencyTZS; + if (inputStr == "UAH") output = CurrencyUAH; + if (inputStr == "UGX") output = CurrencyUGX; + if (inputStr == "USD") output = CurrencyUSD; + if (inputStr == "UYU") output = CurrencyUYU; + if (inputStr == "UZS") output = CurrencyUZS; + if (inputStr == "VEF") output = CurrencyVEF; + if (inputStr == "VND") output = CurrencyVND; + if (inputStr == "VUV") output = CurrencyVUV; + if (inputStr == "WST") output = CurrencyWST; + if (inputStr == "XAF") output = CurrencyXAF; + if (inputStr == "XCD") output = CurrencyXCD; + if (inputStr == "XDR") output = CurrencyXDR; + if (inputStr == "XOF") output = CurrencyXOF; + if (inputStr == "XPF") output = CurrencyXPF; + if (inputStr == "YER") output = CurrencyYER; + if (inputStr == "ZAR") output = CurrencyZAR; + if (inputStr == "ZMW") output = CurrencyZMW; + if (inputStr == "ZWD") output = CurrencyZWD; + } + + enum EffectType + { + EffectTypeAllow, + EffectTypeDeny + }; + + inline void ToJsonEnum(const EffectType input, Json::Value& output) + { + if (input == EffectTypeAllow) output = Json::Value("Allow"); + if (input == EffectTypeDeny) output = Json::Value("Deny"); + } + inline void FromJsonEnum(const Json::Value& input, EffectType& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Allow") output = EffectTypeAllow; + if (inputStr == "Deny") output = EffectTypeDeny; + } + + enum EmailVerificationStatus + { + EmailVerificationStatusUnverified, + EmailVerificationStatusPending, + EmailVerificationStatusConfirmed + }; + + inline void ToJsonEnum(const EmailVerificationStatus input, Json::Value& output) + { + if (input == EmailVerificationStatusUnverified) output = Json::Value("Unverified"); + if (input == EmailVerificationStatusPending) output = Json::Value("Pending"); + if (input == EmailVerificationStatusConfirmed) output = Json::Value("Confirmed"); + } + inline void FromJsonEnum(const Json::Value& input, EmailVerificationStatus& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Unverified") output = EmailVerificationStatusUnverified; + if (inputStr == "Pending") output = EmailVerificationStatusPending; + if (inputStr == "Confirmed") output = EmailVerificationStatusConfirmed; + } + + enum EntityTypes + { + EntityTypestitle, + EntityTypesmaster_player_account, + EntityTypestitle_player_account, + EntityTypescharacter, + EntityTypesgroup + }; + + inline void ToJsonEnum(const EntityTypes input, Json::Value& output) + { + if (input == EntityTypestitle) output = Json::Value("title"); + if (input == EntityTypesmaster_player_account) output = Json::Value("master_player_account"); + if (input == EntityTypestitle_player_account) output = Json::Value("title_player_account"); + if (input == EntityTypescharacter) output = Json::Value("character"); + if (input == EntityTypesgroup) output = Json::Value("group"); + } + inline void FromJsonEnum(const Json::Value& input, EntityTypes& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "title") output = EntityTypestitle; + if (inputStr == "master_player_account") output = EntityTypesmaster_player_account; + if (inputStr == "title_player_account") output = EntityTypestitle_player_account; + if (inputStr == "character") output = EntityTypescharacter; + if (inputStr == "group") output = EntityTypesgroup; + } + + enum GameBuildStatus + { + GameBuildStatusAvailable, + GameBuildStatusValidating, + GameBuildStatusInvalidBuildPackage, + GameBuildStatusProcessing, + GameBuildStatusFailedToProcess + }; + + inline void ToJsonEnum(const GameBuildStatus input, Json::Value& output) + { + if (input == GameBuildStatusAvailable) output = Json::Value("Available"); + if (input == GameBuildStatusValidating) output = Json::Value("Validating"); + if (input == GameBuildStatusInvalidBuildPackage) output = Json::Value("InvalidBuildPackage"); + if (input == GameBuildStatusProcessing) output = Json::Value("Processing"); + if (input == GameBuildStatusFailedToProcess) output = Json::Value("FailedToProcess"); + } + inline void FromJsonEnum(const Json::Value& input, GameBuildStatus& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Available") output = GameBuildStatusAvailable; + if (inputStr == "Validating") output = GameBuildStatusValidating; + if (inputStr == "InvalidBuildPackage") output = GameBuildStatusInvalidBuildPackage; + if (inputStr == "Processing") output = GameBuildStatusProcessing; + if (inputStr == "FailedToProcess") output = GameBuildStatusFailedToProcess; + } + + enum GenericErrorCodes + { + GenericErrorCodesSuccess, + GenericErrorCodesInvalidParams, + GenericErrorCodesAccountNotFound, + GenericErrorCodesAccountBanned, + GenericErrorCodesInvalidUsernameOrPassword, + GenericErrorCodesInvalidTitleId, + GenericErrorCodesInvalidEmailAddress, + GenericErrorCodesEmailAddressNotAvailable, + GenericErrorCodesInvalidUsername, + GenericErrorCodesInvalidPassword, + GenericErrorCodesUsernameNotAvailable, + GenericErrorCodesInvalidSteamTicket, + GenericErrorCodesAccountAlreadyLinked, + GenericErrorCodesLinkedAccountAlreadyClaimed, + GenericErrorCodesInvalidFacebookToken, + GenericErrorCodesAccountNotLinked, + GenericErrorCodesFailedByPaymentProvider, + GenericErrorCodesCouponCodeNotFound, + GenericErrorCodesInvalidContainerItem, + GenericErrorCodesContainerNotOwned, + GenericErrorCodesKeyNotOwned, + GenericErrorCodesInvalidItemIdInTable, + GenericErrorCodesInvalidReceipt, + GenericErrorCodesReceiptAlreadyUsed, + GenericErrorCodesReceiptCancelled, + GenericErrorCodesGameNotFound, + GenericErrorCodesGameModeNotFound, + GenericErrorCodesInvalidGoogleToken, + GenericErrorCodesUserIsNotPartOfDeveloper, + GenericErrorCodesInvalidTitleForDeveloper, + GenericErrorCodesTitleNameConflicts, + GenericErrorCodesUserisNotValid, + GenericErrorCodesValueAlreadyExists, + GenericErrorCodesBuildNotFound, + GenericErrorCodesPlayerNotInGame, + GenericErrorCodesInvalidTicket, + GenericErrorCodesInvalidDeveloper, + GenericErrorCodesInvalidOrderInfo, + GenericErrorCodesRegistrationIncomplete, + GenericErrorCodesInvalidPlatform, + GenericErrorCodesUnknownError, + GenericErrorCodesSteamApplicationNotOwned, + GenericErrorCodesWrongSteamAccount, + GenericErrorCodesTitleNotActivated, + GenericErrorCodesRegistrationSessionNotFound, + GenericErrorCodesNoSuchMod, + GenericErrorCodesFileNotFound, + GenericErrorCodesDuplicateEmail, + GenericErrorCodesItemNotFound, + GenericErrorCodesItemNotOwned, + GenericErrorCodesItemNotRecycleable, + GenericErrorCodesItemNotAffordable, + GenericErrorCodesInvalidVirtualCurrency, + GenericErrorCodesWrongVirtualCurrency, + GenericErrorCodesWrongPrice, + GenericErrorCodesNonPositiveValue, + GenericErrorCodesInvalidRegion, + GenericErrorCodesRegionAtCapacity, + GenericErrorCodesServerFailedToStart, + GenericErrorCodesNameNotAvailable, + GenericErrorCodesInsufficientFunds, + GenericErrorCodesInvalidDeviceID, + GenericErrorCodesInvalidPushNotificationToken, + GenericErrorCodesNoRemainingUses, + GenericErrorCodesInvalidPaymentProvider, + GenericErrorCodesPurchaseInitializationFailure, + GenericErrorCodesDuplicateUsername, + GenericErrorCodesInvalidBuyerInfo, + GenericErrorCodesNoGameModeParamsSet, + GenericErrorCodesBodyTooLarge, + GenericErrorCodesReservedWordInBody, + GenericErrorCodesInvalidTypeInBody, + GenericErrorCodesInvalidRequest, + GenericErrorCodesReservedEventName, + GenericErrorCodesInvalidUserStatistics, + GenericErrorCodesNotAuthenticated, + GenericErrorCodesStreamAlreadyExists, + GenericErrorCodesErrorCreatingStream, + GenericErrorCodesStreamNotFound, + GenericErrorCodesInvalidAccount, + GenericErrorCodesPurchaseDoesNotExist, + GenericErrorCodesInvalidPurchaseTransactionStatus, + GenericErrorCodesAPINotEnabledForGameClientAccess, + GenericErrorCodesNoPushNotificationARNForTitle, + GenericErrorCodesBuildAlreadyExists, + GenericErrorCodesBuildPackageDoesNotExist, + GenericErrorCodesCustomAnalyticsEventsNotEnabledForTitle, + GenericErrorCodesInvalidSharedGroupId, + GenericErrorCodesNotAuthorized, + GenericErrorCodesMissingTitleGoogleProperties, + GenericErrorCodesInvalidItemProperties, + GenericErrorCodesInvalidPSNAuthCode, + GenericErrorCodesInvalidItemId, + GenericErrorCodesPushNotEnabledForAccount, + GenericErrorCodesPushServiceError, + GenericErrorCodesReceiptDoesNotContainInAppItems, + GenericErrorCodesReceiptContainsMultipleInAppItems, + GenericErrorCodesInvalidBundleID, + GenericErrorCodesJavascriptException, + GenericErrorCodesInvalidSessionTicket, + GenericErrorCodesUnableToConnectToDatabase, + GenericErrorCodesInternalServerError, + GenericErrorCodesInvalidReportDate, + GenericErrorCodesReportNotAvailable, + GenericErrorCodesDatabaseThroughputExceeded, + GenericErrorCodesInvalidGameTicket, + GenericErrorCodesExpiredGameTicket, + GenericErrorCodesGameTicketDoesNotMatchLobby, + GenericErrorCodesLinkedDeviceAlreadyClaimed, + GenericErrorCodesDeviceAlreadyLinked, + GenericErrorCodesDeviceNotLinked, + GenericErrorCodesPartialFailure, + GenericErrorCodesPublisherNotSet, + GenericErrorCodesServiceUnavailable, + GenericErrorCodesVersionNotFound, + GenericErrorCodesRevisionNotFound, + GenericErrorCodesInvalidPublisherId, + GenericErrorCodesDownstreamServiceUnavailable, + GenericErrorCodesAPINotIncludedInTitleUsageTier, + GenericErrorCodesDAULimitExceeded, + GenericErrorCodesAPIRequestLimitExceeded, + GenericErrorCodesInvalidAPIEndpoint, + GenericErrorCodesBuildNotAvailable, + GenericErrorCodesConcurrentEditError, + GenericErrorCodesContentNotFound, + GenericErrorCodesCharacterNotFound, + GenericErrorCodesCloudScriptNotFound, + GenericErrorCodesContentQuotaExceeded, + GenericErrorCodesInvalidCharacterStatistics, + GenericErrorCodesPhotonNotEnabledForTitle, + GenericErrorCodesPhotonApplicationNotFound, + GenericErrorCodesPhotonApplicationNotAssociatedWithTitle, + GenericErrorCodesInvalidEmailOrPassword, + GenericErrorCodesFacebookAPIError, + GenericErrorCodesInvalidContentType, + GenericErrorCodesKeyLengthExceeded, + GenericErrorCodesDataLengthExceeded, + GenericErrorCodesTooManyKeys, + GenericErrorCodesFreeTierCannotHaveVirtualCurrency, + GenericErrorCodesMissingAmazonSharedKey, + GenericErrorCodesAmazonValidationError, + GenericErrorCodesInvalidPSNIssuerId, + GenericErrorCodesPSNInaccessible, + GenericErrorCodesExpiredAuthToken, + GenericErrorCodesFailedToGetEntitlements, + GenericErrorCodesFailedToConsumeEntitlement, + GenericErrorCodesTradeAcceptingUserNotAllowed, + GenericErrorCodesTradeInventoryItemIsAssignedToCharacter, + GenericErrorCodesTradeInventoryItemIsBundle, + GenericErrorCodesTradeStatusNotValidForCancelling, + GenericErrorCodesTradeStatusNotValidForAccepting, + GenericErrorCodesTradeDoesNotExist, + GenericErrorCodesTradeCancelled, + GenericErrorCodesTradeAlreadyFilled, + GenericErrorCodesTradeWaitForStatusTimeout, + GenericErrorCodesTradeInventoryItemExpired, + GenericErrorCodesTradeMissingOfferedAndAcceptedItems, + GenericErrorCodesTradeAcceptedItemIsBundle, + GenericErrorCodesTradeAcceptedItemIsStackable, + GenericErrorCodesTradeInventoryItemInvalidStatus, + GenericErrorCodesTradeAcceptedCatalogItemInvalid, + GenericErrorCodesTradeAllowedUsersInvalid, + GenericErrorCodesTradeInventoryItemDoesNotExist, + GenericErrorCodesTradeInventoryItemIsConsumed, + GenericErrorCodesTradeInventoryItemIsStackable, + GenericErrorCodesTradeAcceptedItemsMismatch, + GenericErrorCodesInvalidKongregateToken, + GenericErrorCodesFeatureNotConfiguredForTitle, + GenericErrorCodesNoMatchingCatalogItemForReceipt, + GenericErrorCodesInvalidCurrencyCode, + GenericErrorCodesNoRealMoneyPriceForCatalogItem, + GenericErrorCodesTradeInventoryItemIsNotTradable, + GenericErrorCodesTradeAcceptedCatalogItemIsNotTradable, + GenericErrorCodesUsersAlreadyFriends, + GenericErrorCodesLinkedIdentifierAlreadyClaimed, + GenericErrorCodesCustomIdNotLinked, + GenericErrorCodesTotalDataSizeExceeded, + GenericErrorCodesDeleteKeyConflict, + GenericErrorCodesInvalidXboxLiveToken, + GenericErrorCodesExpiredXboxLiveToken, + GenericErrorCodesResettableStatisticVersionRequired, + GenericErrorCodesNotAuthorizedByTitle, + GenericErrorCodesNoPartnerEnabled, + GenericErrorCodesInvalidPartnerResponse, + GenericErrorCodesAPINotEnabledForGameServerAccess, + GenericErrorCodesStatisticNotFound, + GenericErrorCodesStatisticNameConflict, + GenericErrorCodesStatisticVersionClosedForWrites, + GenericErrorCodesStatisticVersionInvalid, + GenericErrorCodesAPIClientRequestRateLimitExceeded, + GenericErrorCodesInvalidJSONContent, + GenericErrorCodesInvalidDropTable, + GenericErrorCodesStatisticVersionAlreadyIncrementedForScheduledInterval, + GenericErrorCodesStatisticCountLimitExceeded, + GenericErrorCodesStatisticVersionIncrementRateExceeded, + GenericErrorCodesContainerKeyInvalid, + GenericErrorCodesCloudScriptExecutionTimeLimitExceeded, + GenericErrorCodesNoWritePermissionsForEvent, + GenericErrorCodesCloudScriptFunctionArgumentSizeExceeded, + GenericErrorCodesCloudScriptAPIRequestCountExceeded, + GenericErrorCodesCloudScriptAPIRequestError, + GenericErrorCodesCloudScriptHTTPRequestError, + GenericErrorCodesInsufficientGuildRole, + GenericErrorCodesGuildNotFound, + GenericErrorCodesOverLimit, + GenericErrorCodesEventNotFound, + GenericErrorCodesInvalidEventField, + GenericErrorCodesInvalidEventName, + GenericErrorCodesCatalogNotConfigured, + GenericErrorCodesOperationNotSupportedForPlatform, + GenericErrorCodesSegmentNotFound, + GenericErrorCodesStoreNotFound, + GenericErrorCodesInvalidStatisticName, + GenericErrorCodesTitleNotQualifiedForLimit, + GenericErrorCodesInvalidServiceLimitLevel, + GenericErrorCodesServiceLimitLevelInTransition, + GenericErrorCodesCouponAlreadyRedeemed, + GenericErrorCodesGameServerBuildSizeLimitExceeded, + GenericErrorCodesGameServerBuildCountLimitExceeded, + GenericErrorCodesVirtualCurrencyCountLimitExceeded, + GenericErrorCodesVirtualCurrencyCodeExists, + GenericErrorCodesTitleNewsItemCountLimitExceeded, + GenericErrorCodesInvalidTwitchToken, + GenericErrorCodesTwitchResponseError, + GenericErrorCodesProfaneDisplayName, + GenericErrorCodesUserAlreadyAdded, + GenericErrorCodesInvalidVirtualCurrencyCode, + GenericErrorCodesVirtualCurrencyCannotBeDeleted, + GenericErrorCodesIdentifierAlreadyClaimed, + GenericErrorCodesIdentifierNotLinked, + GenericErrorCodesInvalidContinuationToken, + GenericErrorCodesExpiredContinuationToken, + GenericErrorCodesInvalidSegment, + GenericErrorCodesInvalidSessionId, + GenericErrorCodesSessionLogNotFound, + GenericErrorCodesInvalidSearchTerm, + GenericErrorCodesTwoFactorAuthenticationTokenRequired, + GenericErrorCodesGameServerHostCountLimitExceeded, + GenericErrorCodesPlayerTagCountLimitExceeded, + GenericErrorCodesRequestAlreadyRunning, + GenericErrorCodesActionGroupNotFound, + GenericErrorCodesMaximumSegmentBulkActionJobsRunning, + GenericErrorCodesNoActionsOnPlayersInSegmentJob, + GenericErrorCodesDuplicateStatisticName, + GenericErrorCodesScheduledTaskNameConflict, + GenericErrorCodesScheduledTaskCreateConflict, + GenericErrorCodesInvalidScheduledTaskName, + GenericErrorCodesInvalidTaskSchedule, + GenericErrorCodesSteamNotEnabledForTitle, + GenericErrorCodesLimitNotAnUpgradeOption, + GenericErrorCodesNoSecretKeyEnabledForCloudScript, + GenericErrorCodesTaskNotFound, + GenericErrorCodesTaskInstanceNotFound, + GenericErrorCodesInvalidIdentityProviderId, + GenericErrorCodesMisconfiguredIdentityProvider, + GenericErrorCodesInvalidScheduledTaskType, + GenericErrorCodesBillingInformationRequired, + GenericErrorCodesLimitedEditionItemUnavailable, + GenericErrorCodesInvalidAdPlacementAndReward, + GenericErrorCodesAllAdPlacementViewsAlreadyConsumed, + GenericErrorCodesGoogleOAuthNotConfiguredForTitle, + GenericErrorCodesGoogleOAuthError, + GenericErrorCodesUserNotFriend, + GenericErrorCodesInvalidSignature, + GenericErrorCodesInvalidPublicKey, + GenericErrorCodesGoogleOAuthNoIdTokenIncludedInResponse, + GenericErrorCodesStatisticUpdateInProgress, + GenericErrorCodesLeaderboardVersionNotAvailable, + GenericErrorCodesStatisticAlreadyHasPrizeTable, + GenericErrorCodesPrizeTableHasOverlappingRanks, + GenericErrorCodesPrizeTableHasMissingRanks, + GenericErrorCodesPrizeTableRankStartsAtZero, + GenericErrorCodesInvalidStatistic, + GenericErrorCodesExpressionParseFailure, + GenericErrorCodesExpressionInvokeFailure, + GenericErrorCodesExpressionTooLong, + GenericErrorCodesDataUpdateRateExceeded, + GenericErrorCodesRestrictedEmailDomain, + GenericErrorCodesEncryptionKeyDisabled, + GenericErrorCodesEncryptionKeyMissing, + GenericErrorCodesEncryptionKeyBroken, + GenericErrorCodesNoSharedSecretKeyConfigured, + GenericErrorCodesSecretKeyNotFound, + GenericErrorCodesPlayerSecretAlreadyConfigured, + GenericErrorCodesAPIRequestsDisabledForTitle, + GenericErrorCodesInvalidSharedSecretKey, + GenericErrorCodesPrizeTableHasNoRanks, + GenericErrorCodesProfileDoesNotExist, + GenericErrorCodesContentS3OriginBucketNotConfigured, + GenericErrorCodesInvalidEnvironmentForReceipt, + GenericErrorCodesEncryptedRequestNotAllowed, + GenericErrorCodesSignedRequestNotAllowed, + GenericErrorCodesRequestViewConstraintParamsNotAllowed, + GenericErrorCodesBadPartnerConfiguration, + GenericErrorCodesXboxBPCertificateFailure, + GenericErrorCodesXboxXASSExchangeFailure, + GenericErrorCodesInvalidEntityId, + GenericErrorCodesStatisticValueAggregationOverflow, + GenericErrorCodesEmailMessageFromAddressIsMissing, + GenericErrorCodesEmailMessageToAddressIsMissing, + GenericErrorCodesSmtpServerAuthenticationError, + GenericErrorCodesSmtpServerLimitExceeded, + GenericErrorCodesSmtpServerInsufficientStorage, + GenericErrorCodesSmtpServerCommunicationError, + GenericErrorCodesSmtpServerGeneralFailure, + GenericErrorCodesEmailClientTimeout, + GenericErrorCodesEmailClientCanceledTask, + GenericErrorCodesEmailTemplateMissing, + GenericErrorCodesInvalidHostForTitleId, + GenericErrorCodesEmailConfirmationTokenDoesNotExist, + GenericErrorCodesEmailConfirmationTokenExpired, + GenericErrorCodesAccountDeleted, + GenericErrorCodesPlayerSecretNotConfigured, + GenericErrorCodesInvalidSignatureTime, + GenericErrorCodesNoContactEmailAddressFound, + GenericErrorCodesInvalidAuthToken, + GenericErrorCodesAuthTokenDoesNotExist, + GenericErrorCodesAuthTokenExpired, + GenericErrorCodesAuthTokenAlreadyUsedToResetPassword, + GenericErrorCodesMembershipNameTooLong, + GenericErrorCodesMembershipNotFound, + GenericErrorCodesGoogleServiceAccountInvalid, + GenericErrorCodesGoogleServiceAccountParseFailure, + GenericErrorCodesEntityTokenMissing, + GenericErrorCodesEntityTokenInvalid, + GenericErrorCodesEntityTokenExpired, + GenericErrorCodesEntityTokenRevoked, + GenericErrorCodesInvalidProductForSubscription, + GenericErrorCodesXboxInaccessible, + GenericErrorCodesSubscriptionAlreadyTaken, + GenericErrorCodesSmtpAddonNotEnabled, + GenericErrorCodesAPIConcurrentRequestLimitExceeded, + GenericErrorCodesXboxRejectedXSTSExchangeRequest, + GenericErrorCodesVariableNotDefined, + GenericErrorCodesTemplateVersionNotDefined, + GenericErrorCodesFileTooLarge, + GenericErrorCodesTitleDeleted, + GenericErrorCodesTitleContainsUserAccounts, + GenericErrorCodesTitleDeletionPlayerCleanupFailure, + GenericErrorCodesEntityFileOperationPending, + GenericErrorCodesNoEntityFileOperationPending, + GenericErrorCodesEntityProfileVersionMismatch, + GenericErrorCodesTemplateVersionTooOld, + GenericErrorCodesMembershipDefinitionInUse, + GenericErrorCodesPaymentPageNotConfigured, + GenericErrorCodesFailedLoginAttemptRateLimitExceeded, + GenericErrorCodesEntityBlockedByGroup, + GenericErrorCodesRoleDoesNotExist, + GenericErrorCodesEntityIsAlreadyMember, + GenericErrorCodesDuplicateRoleId, + GenericErrorCodesGroupInvitationNotFound, + GenericErrorCodesGroupApplicationNotFound, + GenericErrorCodesOutstandingInvitationAcceptedInstead, + GenericErrorCodesOutstandingApplicationAcceptedInstead, + GenericErrorCodesRoleIsGroupDefaultMember, + GenericErrorCodesRoleIsGroupAdmin, + GenericErrorCodesRoleNameNotAvailable, + GenericErrorCodesGroupNameNotAvailable, + GenericErrorCodesEmailReportAlreadySent, + GenericErrorCodesEmailReportRecipientBlacklisted, + GenericErrorCodesEventNamespaceNotAllowed, + GenericErrorCodesEventEntityNotAllowed + }; + + inline void ToJsonEnum(const GenericErrorCodes input, Json::Value& output) + { + if (input == GenericErrorCodesSuccess) output = Json::Value("Success"); + if (input == GenericErrorCodesInvalidParams) output = Json::Value("InvalidParams"); + if (input == GenericErrorCodesAccountNotFound) output = Json::Value("AccountNotFound"); + if (input == GenericErrorCodesAccountBanned) output = Json::Value("AccountBanned"); + if (input == GenericErrorCodesInvalidUsernameOrPassword) output = Json::Value("InvalidUsernameOrPassword"); + if (input == GenericErrorCodesInvalidTitleId) output = Json::Value("InvalidTitleId"); + if (input == GenericErrorCodesInvalidEmailAddress) output = Json::Value("InvalidEmailAddress"); + if (input == GenericErrorCodesEmailAddressNotAvailable) output = Json::Value("EmailAddressNotAvailable"); + if (input == GenericErrorCodesInvalidUsername) output = Json::Value("InvalidUsername"); + if (input == GenericErrorCodesInvalidPassword) output = Json::Value("InvalidPassword"); + if (input == GenericErrorCodesUsernameNotAvailable) output = Json::Value("UsernameNotAvailable"); + if (input == GenericErrorCodesInvalidSteamTicket) output = Json::Value("InvalidSteamTicket"); + if (input == GenericErrorCodesAccountAlreadyLinked) output = Json::Value("AccountAlreadyLinked"); + if (input == GenericErrorCodesLinkedAccountAlreadyClaimed) output = Json::Value("LinkedAccountAlreadyClaimed"); + if (input == GenericErrorCodesInvalidFacebookToken) output = Json::Value("InvalidFacebookToken"); + if (input == GenericErrorCodesAccountNotLinked) output = Json::Value("AccountNotLinked"); + if (input == GenericErrorCodesFailedByPaymentProvider) output = Json::Value("FailedByPaymentProvider"); + if (input == GenericErrorCodesCouponCodeNotFound) output = Json::Value("CouponCodeNotFound"); + if (input == GenericErrorCodesInvalidContainerItem) output = Json::Value("InvalidContainerItem"); + if (input == GenericErrorCodesContainerNotOwned) output = Json::Value("ContainerNotOwned"); + if (input == GenericErrorCodesKeyNotOwned) output = Json::Value("KeyNotOwned"); + if (input == GenericErrorCodesInvalidItemIdInTable) output = Json::Value("InvalidItemIdInTable"); + if (input == GenericErrorCodesInvalidReceipt) output = Json::Value("InvalidReceipt"); + if (input == GenericErrorCodesReceiptAlreadyUsed) output = Json::Value("ReceiptAlreadyUsed"); + if (input == GenericErrorCodesReceiptCancelled) output = Json::Value("ReceiptCancelled"); + if (input == GenericErrorCodesGameNotFound) output = Json::Value("GameNotFound"); + if (input == GenericErrorCodesGameModeNotFound) output = Json::Value("GameModeNotFound"); + if (input == GenericErrorCodesInvalidGoogleToken) output = Json::Value("InvalidGoogleToken"); + if (input == GenericErrorCodesUserIsNotPartOfDeveloper) output = Json::Value("UserIsNotPartOfDeveloper"); + if (input == GenericErrorCodesInvalidTitleForDeveloper) output = Json::Value("InvalidTitleForDeveloper"); + if (input == GenericErrorCodesTitleNameConflicts) output = Json::Value("TitleNameConflicts"); + if (input == GenericErrorCodesUserisNotValid) output = Json::Value("UserisNotValid"); + if (input == GenericErrorCodesValueAlreadyExists) output = Json::Value("ValueAlreadyExists"); + if (input == GenericErrorCodesBuildNotFound) output = Json::Value("BuildNotFound"); + if (input == GenericErrorCodesPlayerNotInGame) output = Json::Value("PlayerNotInGame"); + if (input == GenericErrorCodesInvalidTicket) output = Json::Value("InvalidTicket"); + if (input == GenericErrorCodesInvalidDeveloper) output = Json::Value("InvalidDeveloper"); + if (input == GenericErrorCodesInvalidOrderInfo) output = Json::Value("InvalidOrderInfo"); + if (input == GenericErrorCodesRegistrationIncomplete) output = Json::Value("RegistrationIncomplete"); + if (input == GenericErrorCodesInvalidPlatform) output = Json::Value("InvalidPlatform"); + if (input == GenericErrorCodesUnknownError) output = Json::Value("UnknownError"); + if (input == GenericErrorCodesSteamApplicationNotOwned) output = Json::Value("SteamApplicationNotOwned"); + if (input == GenericErrorCodesWrongSteamAccount) output = Json::Value("WrongSteamAccount"); + if (input == GenericErrorCodesTitleNotActivated) output = Json::Value("TitleNotActivated"); + if (input == GenericErrorCodesRegistrationSessionNotFound) output = Json::Value("RegistrationSessionNotFound"); + if (input == GenericErrorCodesNoSuchMod) output = Json::Value("NoSuchMod"); + if (input == GenericErrorCodesFileNotFound) output = Json::Value("FileNotFound"); + if (input == GenericErrorCodesDuplicateEmail) output = Json::Value("DuplicateEmail"); + if (input == GenericErrorCodesItemNotFound) output = Json::Value("ItemNotFound"); + if (input == GenericErrorCodesItemNotOwned) output = Json::Value("ItemNotOwned"); + if (input == GenericErrorCodesItemNotRecycleable) output = Json::Value("ItemNotRecycleable"); + if (input == GenericErrorCodesItemNotAffordable) output = Json::Value("ItemNotAffordable"); + if (input == GenericErrorCodesInvalidVirtualCurrency) output = Json::Value("InvalidVirtualCurrency"); + if (input == GenericErrorCodesWrongVirtualCurrency) output = Json::Value("WrongVirtualCurrency"); + if (input == GenericErrorCodesWrongPrice) output = Json::Value("WrongPrice"); + if (input == GenericErrorCodesNonPositiveValue) output = Json::Value("NonPositiveValue"); + if (input == GenericErrorCodesInvalidRegion) output = Json::Value("InvalidRegion"); + if (input == GenericErrorCodesRegionAtCapacity) output = Json::Value("RegionAtCapacity"); + if (input == GenericErrorCodesServerFailedToStart) output = Json::Value("ServerFailedToStart"); + if (input == GenericErrorCodesNameNotAvailable) output = Json::Value("NameNotAvailable"); + if (input == GenericErrorCodesInsufficientFunds) output = Json::Value("InsufficientFunds"); + if (input == GenericErrorCodesInvalidDeviceID) output = Json::Value("InvalidDeviceID"); + if (input == GenericErrorCodesInvalidPushNotificationToken) output = Json::Value("InvalidPushNotificationToken"); + if (input == GenericErrorCodesNoRemainingUses) output = Json::Value("NoRemainingUses"); + if (input == GenericErrorCodesInvalidPaymentProvider) output = Json::Value("InvalidPaymentProvider"); + if (input == GenericErrorCodesPurchaseInitializationFailure) output = Json::Value("PurchaseInitializationFailure"); + if (input == GenericErrorCodesDuplicateUsername) output = Json::Value("DuplicateUsername"); + if (input == GenericErrorCodesInvalidBuyerInfo) output = Json::Value("InvalidBuyerInfo"); + if (input == GenericErrorCodesNoGameModeParamsSet) output = Json::Value("NoGameModeParamsSet"); + if (input == GenericErrorCodesBodyTooLarge) output = Json::Value("BodyTooLarge"); + if (input == GenericErrorCodesReservedWordInBody) output = Json::Value("ReservedWordInBody"); + if (input == GenericErrorCodesInvalidTypeInBody) output = Json::Value("InvalidTypeInBody"); + if (input == GenericErrorCodesInvalidRequest) output = Json::Value("InvalidRequest"); + if (input == GenericErrorCodesReservedEventName) output = Json::Value("ReservedEventName"); + if (input == GenericErrorCodesInvalidUserStatistics) output = Json::Value("InvalidUserStatistics"); + if (input == GenericErrorCodesNotAuthenticated) output = Json::Value("NotAuthenticated"); + if (input == GenericErrorCodesStreamAlreadyExists) output = Json::Value("StreamAlreadyExists"); + if (input == GenericErrorCodesErrorCreatingStream) output = Json::Value("ErrorCreatingStream"); + if (input == GenericErrorCodesStreamNotFound) output = Json::Value("StreamNotFound"); + if (input == GenericErrorCodesInvalidAccount) output = Json::Value("InvalidAccount"); + if (input == GenericErrorCodesPurchaseDoesNotExist) output = Json::Value("PurchaseDoesNotExist"); + if (input == GenericErrorCodesInvalidPurchaseTransactionStatus) output = Json::Value("InvalidPurchaseTransactionStatus"); + if (input == GenericErrorCodesAPINotEnabledForGameClientAccess) output = Json::Value("APINotEnabledForGameClientAccess"); + if (input == GenericErrorCodesNoPushNotificationARNForTitle) output = Json::Value("NoPushNotificationARNForTitle"); + if (input == GenericErrorCodesBuildAlreadyExists) output = Json::Value("BuildAlreadyExists"); + if (input == GenericErrorCodesBuildPackageDoesNotExist) output = Json::Value("BuildPackageDoesNotExist"); + if (input == GenericErrorCodesCustomAnalyticsEventsNotEnabledForTitle) output = Json::Value("CustomAnalyticsEventsNotEnabledForTitle"); + if (input == GenericErrorCodesInvalidSharedGroupId) output = Json::Value("InvalidSharedGroupId"); + if (input == GenericErrorCodesNotAuthorized) output = Json::Value("NotAuthorized"); + if (input == GenericErrorCodesMissingTitleGoogleProperties) output = Json::Value("MissingTitleGoogleProperties"); + if (input == GenericErrorCodesInvalidItemProperties) output = Json::Value("InvalidItemProperties"); + if (input == GenericErrorCodesInvalidPSNAuthCode) output = Json::Value("InvalidPSNAuthCode"); + if (input == GenericErrorCodesInvalidItemId) output = Json::Value("InvalidItemId"); + if (input == GenericErrorCodesPushNotEnabledForAccount) output = Json::Value("PushNotEnabledForAccount"); + if (input == GenericErrorCodesPushServiceError) output = Json::Value("PushServiceError"); + if (input == GenericErrorCodesReceiptDoesNotContainInAppItems) output = Json::Value("ReceiptDoesNotContainInAppItems"); + if (input == GenericErrorCodesReceiptContainsMultipleInAppItems) output = Json::Value("ReceiptContainsMultipleInAppItems"); + if (input == GenericErrorCodesInvalidBundleID) output = Json::Value("InvalidBundleID"); + if (input == GenericErrorCodesJavascriptException) output = Json::Value("JavascriptException"); + if (input == GenericErrorCodesInvalidSessionTicket) output = Json::Value("InvalidSessionTicket"); + if (input == GenericErrorCodesUnableToConnectToDatabase) output = Json::Value("UnableToConnectToDatabase"); + if (input == GenericErrorCodesInternalServerError) output = Json::Value("InternalServerError"); + if (input == GenericErrorCodesInvalidReportDate) output = Json::Value("InvalidReportDate"); + if (input == GenericErrorCodesReportNotAvailable) output = Json::Value("ReportNotAvailable"); + if (input == GenericErrorCodesDatabaseThroughputExceeded) output = Json::Value("DatabaseThroughputExceeded"); + if (input == GenericErrorCodesInvalidGameTicket) output = Json::Value("InvalidGameTicket"); + if (input == GenericErrorCodesExpiredGameTicket) output = Json::Value("ExpiredGameTicket"); + if (input == GenericErrorCodesGameTicketDoesNotMatchLobby) output = Json::Value("GameTicketDoesNotMatchLobby"); + if (input == GenericErrorCodesLinkedDeviceAlreadyClaimed) output = Json::Value("LinkedDeviceAlreadyClaimed"); + if (input == GenericErrorCodesDeviceAlreadyLinked) output = Json::Value("DeviceAlreadyLinked"); + if (input == GenericErrorCodesDeviceNotLinked) output = Json::Value("DeviceNotLinked"); + if (input == GenericErrorCodesPartialFailure) output = Json::Value("PartialFailure"); + if (input == GenericErrorCodesPublisherNotSet) output = Json::Value("PublisherNotSet"); + if (input == GenericErrorCodesServiceUnavailable) output = Json::Value("ServiceUnavailable"); + if (input == GenericErrorCodesVersionNotFound) output = Json::Value("VersionNotFound"); + if (input == GenericErrorCodesRevisionNotFound) output = Json::Value("RevisionNotFound"); + if (input == GenericErrorCodesInvalidPublisherId) output = Json::Value("InvalidPublisherId"); + if (input == GenericErrorCodesDownstreamServiceUnavailable) output = Json::Value("DownstreamServiceUnavailable"); + if (input == GenericErrorCodesAPINotIncludedInTitleUsageTier) output = Json::Value("APINotIncludedInTitleUsageTier"); + if (input == GenericErrorCodesDAULimitExceeded) output = Json::Value("DAULimitExceeded"); + if (input == GenericErrorCodesAPIRequestLimitExceeded) output = Json::Value("APIRequestLimitExceeded"); + if (input == GenericErrorCodesInvalidAPIEndpoint) output = Json::Value("InvalidAPIEndpoint"); + if (input == GenericErrorCodesBuildNotAvailable) output = Json::Value("BuildNotAvailable"); + if (input == GenericErrorCodesConcurrentEditError) output = Json::Value("ConcurrentEditError"); + if (input == GenericErrorCodesContentNotFound) output = Json::Value("ContentNotFound"); + if (input == GenericErrorCodesCharacterNotFound) output = Json::Value("CharacterNotFound"); + if (input == GenericErrorCodesCloudScriptNotFound) output = Json::Value("CloudScriptNotFound"); + if (input == GenericErrorCodesContentQuotaExceeded) output = Json::Value("ContentQuotaExceeded"); + if (input == GenericErrorCodesInvalidCharacterStatistics) output = Json::Value("InvalidCharacterStatistics"); + if (input == GenericErrorCodesPhotonNotEnabledForTitle) output = Json::Value("PhotonNotEnabledForTitle"); + if (input == GenericErrorCodesPhotonApplicationNotFound) output = Json::Value("PhotonApplicationNotFound"); + if (input == GenericErrorCodesPhotonApplicationNotAssociatedWithTitle) output = Json::Value("PhotonApplicationNotAssociatedWithTitle"); + if (input == GenericErrorCodesInvalidEmailOrPassword) output = Json::Value("InvalidEmailOrPassword"); + if (input == GenericErrorCodesFacebookAPIError) output = Json::Value("FacebookAPIError"); + if (input == GenericErrorCodesInvalidContentType) output = Json::Value("InvalidContentType"); + if (input == GenericErrorCodesKeyLengthExceeded) output = Json::Value("KeyLengthExceeded"); + if (input == GenericErrorCodesDataLengthExceeded) output = Json::Value("DataLengthExceeded"); + if (input == GenericErrorCodesTooManyKeys) output = Json::Value("TooManyKeys"); + if (input == GenericErrorCodesFreeTierCannotHaveVirtualCurrency) output = Json::Value("FreeTierCannotHaveVirtualCurrency"); + if (input == GenericErrorCodesMissingAmazonSharedKey) output = Json::Value("MissingAmazonSharedKey"); + if (input == GenericErrorCodesAmazonValidationError) output = Json::Value("AmazonValidationError"); + if (input == GenericErrorCodesInvalidPSNIssuerId) output = Json::Value("InvalidPSNIssuerId"); + if (input == GenericErrorCodesPSNInaccessible) output = Json::Value("PSNInaccessible"); + if (input == GenericErrorCodesExpiredAuthToken) output = Json::Value("ExpiredAuthToken"); + if (input == GenericErrorCodesFailedToGetEntitlements) output = Json::Value("FailedToGetEntitlements"); + if (input == GenericErrorCodesFailedToConsumeEntitlement) output = Json::Value("FailedToConsumeEntitlement"); + if (input == GenericErrorCodesTradeAcceptingUserNotAllowed) output = Json::Value("TradeAcceptingUserNotAllowed"); + if (input == GenericErrorCodesTradeInventoryItemIsAssignedToCharacter) output = Json::Value("TradeInventoryItemIsAssignedToCharacter"); + if (input == GenericErrorCodesTradeInventoryItemIsBundle) output = Json::Value("TradeInventoryItemIsBundle"); + if (input == GenericErrorCodesTradeStatusNotValidForCancelling) output = Json::Value("TradeStatusNotValidForCancelling"); + if (input == GenericErrorCodesTradeStatusNotValidForAccepting) output = Json::Value("TradeStatusNotValidForAccepting"); + if (input == GenericErrorCodesTradeDoesNotExist) output = Json::Value("TradeDoesNotExist"); + if (input == GenericErrorCodesTradeCancelled) output = Json::Value("TradeCancelled"); + if (input == GenericErrorCodesTradeAlreadyFilled) output = Json::Value("TradeAlreadyFilled"); + if (input == GenericErrorCodesTradeWaitForStatusTimeout) output = Json::Value("TradeWaitForStatusTimeout"); + if (input == GenericErrorCodesTradeInventoryItemExpired) output = Json::Value("TradeInventoryItemExpired"); + if (input == GenericErrorCodesTradeMissingOfferedAndAcceptedItems) output = Json::Value("TradeMissingOfferedAndAcceptedItems"); + if (input == GenericErrorCodesTradeAcceptedItemIsBundle) output = Json::Value("TradeAcceptedItemIsBundle"); + if (input == GenericErrorCodesTradeAcceptedItemIsStackable) output = Json::Value("TradeAcceptedItemIsStackable"); + if (input == GenericErrorCodesTradeInventoryItemInvalidStatus) output = Json::Value("TradeInventoryItemInvalidStatus"); + if (input == GenericErrorCodesTradeAcceptedCatalogItemInvalid) output = Json::Value("TradeAcceptedCatalogItemInvalid"); + if (input == GenericErrorCodesTradeAllowedUsersInvalid) output = Json::Value("TradeAllowedUsersInvalid"); + if (input == GenericErrorCodesTradeInventoryItemDoesNotExist) output = Json::Value("TradeInventoryItemDoesNotExist"); + if (input == GenericErrorCodesTradeInventoryItemIsConsumed) output = Json::Value("TradeInventoryItemIsConsumed"); + if (input == GenericErrorCodesTradeInventoryItemIsStackable) output = Json::Value("TradeInventoryItemIsStackable"); + if (input == GenericErrorCodesTradeAcceptedItemsMismatch) output = Json::Value("TradeAcceptedItemsMismatch"); + if (input == GenericErrorCodesInvalidKongregateToken) output = Json::Value("InvalidKongregateToken"); + if (input == GenericErrorCodesFeatureNotConfiguredForTitle) output = Json::Value("FeatureNotConfiguredForTitle"); + if (input == GenericErrorCodesNoMatchingCatalogItemForReceipt) output = Json::Value("NoMatchingCatalogItemForReceipt"); + if (input == GenericErrorCodesInvalidCurrencyCode) output = Json::Value("InvalidCurrencyCode"); + if (input == GenericErrorCodesNoRealMoneyPriceForCatalogItem) output = Json::Value("NoRealMoneyPriceForCatalogItem"); + if (input == GenericErrorCodesTradeInventoryItemIsNotTradable) output = Json::Value("TradeInventoryItemIsNotTradable"); + if (input == GenericErrorCodesTradeAcceptedCatalogItemIsNotTradable) output = Json::Value("TradeAcceptedCatalogItemIsNotTradable"); + if (input == GenericErrorCodesUsersAlreadyFriends) output = Json::Value("UsersAlreadyFriends"); + if (input == GenericErrorCodesLinkedIdentifierAlreadyClaimed) output = Json::Value("LinkedIdentifierAlreadyClaimed"); + if (input == GenericErrorCodesCustomIdNotLinked) output = Json::Value("CustomIdNotLinked"); + if (input == GenericErrorCodesTotalDataSizeExceeded) output = Json::Value("TotalDataSizeExceeded"); + if (input == GenericErrorCodesDeleteKeyConflict) output = Json::Value("DeleteKeyConflict"); + if (input == GenericErrorCodesInvalidXboxLiveToken) output = Json::Value("InvalidXboxLiveToken"); + if (input == GenericErrorCodesExpiredXboxLiveToken) output = Json::Value("ExpiredXboxLiveToken"); + if (input == GenericErrorCodesResettableStatisticVersionRequired) output = Json::Value("ResettableStatisticVersionRequired"); + if (input == GenericErrorCodesNotAuthorizedByTitle) output = Json::Value("NotAuthorizedByTitle"); + if (input == GenericErrorCodesNoPartnerEnabled) output = Json::Value("NoPartnerEnabled"); + if (input == GenericErrorCodesInvalidPartnerResponse) output = Json::Value("InvalidPartnerResponse"); + if (input == GenericErrorCodesAPINotEnabledForGameServerAccess) output = Json::Value("APINotEnabledForGameServerAccess"); + if (input == GenericErrorCodesStatisticNotFound) output = Json::Value("StatisticNotFound"); + if (input == GenericErrorCodesStatisticNameConflict) output = Json::Value("StatisticNameConflict"); + if (input == GenericErrorCodesStatisticVersionClosedForWrites) output = Json::Value("StatisticVersionClosedForWrites"); + if (input == GenericErrorCodesStatisticVersionInvalid) output = Json::Value("StatisticVersionInvalid"); + if (input == GenericErrorCodesAPIClientRequestRateLimitExceeded) output = Json::Value("APIClientRequestRateLimitExceeded"); + if (input == GenericErrorCodesInvalidJSONContent) output = Json::Value("InvalidJSONContent"); + if (input == GenericErrorCodesInvalidDropTable) output = Json::Value("InvalidDropTable"); + if (input == GenericErrorCodesStatisticVersionAlreadyIncrementedForScheduledInterval) output = Json::Value("StatisticVersionAlreadyIncrementedForScheduledInterval"); + if (input == GenericErrorCodesStatisticCountLimitExceeded) output = Json::Value("StatisticCountLimitExceeded"); + if (input == GenericErrorCodesStatisticVersionIncrementRateExceeded) output = Json::Value("StatisticVersionIncrementRateExceeded"); + if (input == GenericErrorCodesContainerKeyInvalid) output = Json::Value("ContainerKeyInvalid"); + if (input == GenericErrorCodesCloudScriptExecutionTimeLimitExceeded) output = Json::Value("CloudScriptExecutionTimeLimitExceeded"); + if (input == GenericErrorCodesNoWritePermissionsForEvent) output = Json::Value("NoWritePermissionsForEvent"); + if (input == GenericErrorCodesCloudScriptFunctionArgumentSizeExceeded) output = Json::Value("CloudScriptFunctionArgumentSizeExceeded"); + if (input == GenericErrorCodesCloudScriptAPIRequestCountExceeded) output = Json::Value("CloudScriptAPIRequestCountExceeded"); + if (input == GenericErrorCodesCloudScriptAPIRequestError) output = Json::Value("CloudScriptAPIRequestError"); + if (input == GenericErrorCodesCloudScriptHTTPRequestError) output = Json::Value("CloudScriptHTTPRequestError"); + if (input == GenericErrorCodesInsufficientGuildRole) output = Json::Value("InsufficientGuildRole"); + if (input == GenericErrorCodesGuildNotFound) output = Json::Value("GuildNotFound"); + if (input == GenericErrorCodesOverLimit) output = Json::Value("OverLimit"); + if (input == GenericErrorCodesEventNotFound) output = Json::Value("EventNotFound"); + if (input == GenericErrorCodesInvalidEventField) output = Json::Value("InvalidEventField"); + if (input == GenericErrorCodesInvalidEventName) output = Json::Value("InvalidEventName"); + if (input == GenericErrorCodesCatalogNotConfigured) output = Json::Value("CatalogNotConfigured"); + if (input == GenericErrorCodesOperationNotSupportedForPlatform) output = Json::Value("OperationNotSupportedForPlatform"); + if (input == GenericErrorCodesSegmentNotFound) output = Json::Value("SegmentNotFound"); + if (input == GenericErrorCodesStoreNotFound) output = Json::Value("StoreNotFound"); + if (input == GenericErrorCodesInvalidStatisticName) output = Json::Value("InvalidStatisticName"); + if (input == GenericErrorCodesTitleNotQualifiedForLimit) output = Json::Value("TitleNotQualifiedForLimit"); + if (input == GenericErrorCodesInvalidServiceLimitLevel) output = Json::Value("InvalidServiceLimitLevel"); + if (input == GenericErrorCodesServiceLimitLevelInTransition) output = Json::Value("ServiceLimitLevelInTransition"); + if (input == GenericErrorCodesCouponAlreadyRedeemed) output = Json::Value("CouponAlreadyRedeemed"); + if (input == GenericErrorCodesGameServerBuildSizeLimitExceeded) output = Json::Value("GameServerBuildSizeLimitExceeded"); + if (input == GenericErrorCodesGameServerBuildCountLimitExceeded) output = Json::Value("GameServerBuildCountLimitExceeded"); + if (input == GenericErrorCodesVirtualCurrencyCountLimitExceeded) output = Json::Value("VirtualCurrencyCountLimitExceeded"); + if (input == GenericErrorCodesVirtualCurrencyCodeExists) output = Json::Value("VirtualCurrencyCodeExists"); + if (input == GenericErrorCodesTitleNewsItemCountLimitExceeded) output = Json::Value("TitleNewsItemCountLimitExceeded"); + if (input == GenericErrorCodesInvalidTwitchToken) output = Json::Value("InvalidTwitchToken"); + if (input == GenericErrorCodesTwitchResponseError) output = Json::Value("TwitchResponseError"); + if (input == GenericErrorCodesProfaneDisplayName) output = Json::Value("ProfaneDisplayName"); + if (input == GenericErrorCodesUserAlreadyAdded) output = Json::Value("UserAlreadyAdded"); + if (input == GenericErrorCodesInvalidVirtualCurrencyCode) output = Json::Value("InvalidVirtualCurrencyCode"); + if (input == GenericErrorCodesVirtualCurrencyCannotBeDeleted) output = Json::Value("VirtualCurrencyCannotBeDeleted"); + if (input == GenericErrorCodesIdentifierAlreadyClaimed) output = Json::Value("IdentifierAlreadyClaimed"); + if (input == GenericErrorCodesIdentifierNotLinked) output = Json::Value("IdentifierNotLinked"); + if (input == GenericErrorCodesInvalidContinuationToken) output = Json::Value("InvalidContinuationToken"); + if (input == GenericErrorCodesExpiredContinuationToken) output = Json::Value("ExpiredContinuationToken"); + if (input == GenericErrorCodesInvalidSegment) output = Json::Value("InvalidSegment"); + if (input == GenericErrorCodesInvalidSessionId) output = Json::Value("InvalidSessionId"); + if (input == GenericErrorCodesSessionLogNotFound) output = Json::Value("SessionLogNotFound"); + if (input == GenericErrorCodesInvalidSearchTerm) output = Json::Value("InvalidSearchTerm"); + if (input == GenericErrorCodesTwoFactorAuthenticationTokenRequired) output = Json::Value("TwoFactorAuthenticationTokenRequired"); + if (input == GenericErrorCodesGameServerHostCountLimitExceeded) output = Json::Value("GameServerHostCountLimitExceeded"); + if (input == GenericErrorCodesPlayerTagCountLimitExceeded) output = Json::Value("PlayerTagCountLimitExceeded"); + if (input == GenericErrorCodesRequestAlreadyRunning) output = Json::Value("RequestAlreadyRunning"); + if (input == GenericErrorCodesActionGroupNotFound) output = Json::Value("ActionGroupNotFound"); + if (input == GenericErrorCodesMaximumSegmentBulkActionJobsRunning) output = Json::Value("MaximumSegmentBulkActionJobsRunning"); + if (input == GenericErrorCodesNoActionsOnPlayersInSegmentJob) output = Json::Value("NoActionsOnPlayersInSegmentJob"); + if (input == GenericErrorCodesDuplicateStatisticName) output = Json::Value("DuplicateStatisticName"); + if (input == GenericErrorCodesScheduledTaskNameConflict) output = Json::Value("ScheduledTaskNameConflict"); + if (input == GenericErrorCodesScheduledTaskCreateConflict) output = Json::Value("ScheduledTaskCreateConflict"); + if (input == GenericErrorCodesInvalidScheduledTaskName) output = Json::Value("InvalidScheduledTaskName"); + if (input == GenericErrorCodesInvalidTaskSchedule) output = Json::Value("InvalidTaskSchedule"); + if (input == GenericErrorCodesSteamNotEnabledForTitle) output = Json::Value("SteamNotEnabledForTitle"); + if (input == GenericErrorCodesLimitNotAnUpgradeOption) output = Json::Value("LimitNotAnUpgradeOption"); + if (input == GenericErrorCodesNoSecretKeyEnabledForCloudScript) output = Json::Value("NoSecretKeyEnabledForCloudScript"); + if (input == GenericErrorCodesTaskNotFound) output = Json::Value("TaskNotFound"); + if (input == GenericErrorCodesTaskInstanceNotFound) output = Json::Value("TaskInstanceNotFound"); + if (input == GenericErrorCodesInvalidIdentityProviderId) output = Json::Value("InvalidIdentityProviderId"); + if (input == GenericErrorCodesMisconfiguredIdentityProvider) output = Json::Value("MisconfiguredIdentityProvider"); + if (input == GenericErrorCodesInvalidScheduledTaskType) output = Json::Value("InvalidScheduledTaskType"); + if (input == GenericErrorCodesBillingInformationRequired) output = Json::Value("BillingInformationRequired"); + if (input == GenericErrorCodesLimitedEditionItemUnavailable) output = Json::Value("LimitedEditionItemUnavailable"); + if (input == GenericErrorCodesInvalidAdPlacementAndReward) output = Json::Value("InvalidAdPlacementAndReward"); + if (input == GenericErrorCodesAllAdPlacementViewsAlreadyConsumed) output = Json::Value("AllAdPlacementViewsAlreadyConsumed"); + if (input == GenericErrorCodesGoogleOAuthNotConfiguredForTitle) output = Json::Value("GoogleOAuthNotConfiguredForTitle"); + if (input == GenericErrorCodesGoogleOAuthError) output = Json::Value("GoogleOAuthError"); + if (input == GenericErrorCodesUserNotFriend) output = Json::Value("UserNotFriend"); + if (input == GenericErrorCodesInvalidSignature) output = Json::Value("InvalidSignature"); + if (input == GenericErrorCodesInvalidPublicKey) output = Json::Value("InvalidPublicKey"); + if (input == GenericErrorCodesGoogleOAuthNoIdTokenIncludedInResponse) output = Json::Value("GoogleOAuthNoIdTokenIncludedInResponse"); + if (input == GenericErrorCodesStatisticUpdateInProgress) output = Json::Value("StatisticUpdateInProgress"); + if (input == GenericErrorCodesLeaderboardVersionNotAvailable) output = Json::Value("LeaderboardVersionNotAvailable"); + if (input == GenericErrorCodesStatisticAlreadyHasPrizeTable) output = Json::Value("StatisticAlreadyHasPrizeTable"); + if (input == GenericErrorCodesPrizeTableHasOverlappingRanks) output = Json::Value("PrizeTableHasOverlappingRanks"); + if (input == GenericErrorCodesPrizeTableHasMissingRanks) output = Json::Value("PrizeTableHasMissingRanks"); + if (input == GenericErrorCodesPrizeTableRankStartsAtZero) output = Json::Value("PrizeTableRankStartsAtZero"); + if (input == GenericErrorCodesInvalidStatistic) output = Json::Value("InvalidStatistic"); + if (input == GenericErrorCodesExpressionParseFailure) output = Json::Value("ExpressionParseFailure"); + if (input == GenericErrorCodesExpressionInvokeFailure) output = Json::Value("ExpressionInvokeFailure"); + if (input == GenericErrorCodesExpressionTooLong) output = Json::Value("ExpressionTooLong"); + if (input == GenericErrorCodesDataUpdateRateExceeded) output = Json::Value("DataUpdateRateExceeded"); + if (input == GenericErrorCodesRestrictedEmailDomain) output = Json::Value("RestrictedEmailDomain"); + if (input == GenericErrorCodesEncryptionKeyDisabled) output = Json::Value("EncryptionKeyDisabled"); + if (input == GenericErrorCodesEncryptionKeyMissing) output = Json::Value("EncryptionKeyMissing"); + if (input == GenericErrorCodesEncryptionKeyBroken) output = Json::Value("EncryptionKeyBroken"); + if (input == GenericErrorCodesNoSharedSecretKeyConfigured) output = Json::Value("NoSharedSecretKeyConfigured"); + if (input == GenericErrorCodesSecretKeyNotFound) output = Json::Value("SecretKeyNotFound"); + if (input == GenericErrorCodesPlayerSecretAlreadyConfigured) output = Json::Value("PlayerSecretAlreadyConfigured"); + if (input == GenericErrorCodesAPIRequestsDisabledForTitle) output = Json::Value("APIRequestsDisabledForTitle"); + if (input == GenericErrorCodesInvalidSharedSecretKey) output = Json::Value("InvalidSharedSecretKey"); + if (input == GenericErrorCodesPrizeTableHasNoRanks) output = Json::Value("PrizeTableHasNoRanks"); + if (input == GenericErrorCodesProfileDoesNotExist) output = Json::Value("ProfileDoesNotExist"); + if (input == GenericErrorCodesContentS3OriginBucketNotConfigured) output = Json::Value("ContentS3OriginBucketNotConfigured"); + if (input == GenericErrorCodesInvalidEnvironmentForReceipt) output = Json::Value("InvalidEnvironmentForReceipt"); + if (input == GenericErrorCodesEncryptedRequestNotAllowed) output = Json::Value("EncryptedRequestNotAllowed"); + if (input == GenericErrorCodesSignedRequestNotAllowed) output = Json::Value("SignedRequestNotAllowed"); + if (input == GenericErrorCodesRequestViewConstraintParamsNotAllowed) output = Json::Value("RequestViewConstraintParamsNotAllowed"); + if (input == GenericErrorCodesBadPartnerConfiguration) output = Json::Value("BadPartnerConfiguration"); + if (input == GenericErrorCodesXboxBPCertificateFailure) output = Json::Value("XboxBPCertificateFailure"); + if (input == GenericErrorCodesXboxXASSExchangeFailure) output = Json::Value("XboxXASSExchangeFailure"); + if (input == GenericErrorCodesInvalidEntityId) output = Json::Value("InvalidEntityId"); + if (input == GenericErrorCodesStatisticValueAggregationOverflow) output = Json::Value("StatisticValueAggregationOverflow"); + if (input == GenericErrorCodesEmailMessageFromAddressIsMissing) output = Json::Value("EmailMessageFromAddressIsMissing"); + if (input == GenericErrorCodesEmailMessageToAddressIsMissing) output = Json::Value("EmailMessageToAddressIsMissing"); + if (input == GenericErrorCodesSmtpServerAuthenticationError) output = Json::Value("SmtpServerAuthenticationError"); + if (input == GenericErrorCodesSmtpServerLimitExceeded) output = Json::Value("SmtpServerLimitExceeded"); + if (input == GenericErrorCodesSmtpServerInsufficientStorage) output = Json::Value("SmtpServerInsufficientStorage"); + if (input == GenericErrorCodesSmtpServerCommunicationError) output = Json::Value("SmtpServerCommunicationError"); + if (input == GenericErrorCodesSmtpServerGeneralFailure) output = Json::Value("SmtpServerGeneralFailure"); + if (input == GenericErrorCodesEmailClientTimeout) output = Json::Value("EmailClientTimeout"); + if (input == GenericErrorCodesEmailClientCanceledTask) output = Json::Value("EmailClientCanceledTask"); + if (input == GenericErrorCodesEmailTemplateMissing) output = Json::Value("EmailTemplateMissing"); + if (input == GenericErrorCodesInvalidHostForTitleId) output = Json::Value("InvalidHostForTitleId"); + if (input == GenericErrorCodesEmailConfirmationTokenDoesNotExist) output = Json::Value("EmailConfirmationTokenDoesNotExist"); + if (input == GenericErrorCodesEmailConfirmationTokenExpired) output = Json::Value("EmailConfirmationTokenExpired"); + if (input == GenericErrorCodesAccountDeleted) output = Json::Value("AccountDeleted"); + if (input == GenericErrorCodesPlayerSecretNotConfigured) output = Json::Value("PlayerSecretNotConfigured"); + if (input == GenericErrorCodesInvalidSignatureTime) output = Json::Value("InvalidSignatureTime"); + if (input == GenericErrorCodesNoContactEmailAddressFound) output = Json::Value("NoContactEmailAddressFound"); + if (input == GenericErrorCodesInvalidAuthToken) output = Json::Value("InvalidAuthToken"); + if (input == GenericErrorCodesAuthTokenDoesNotExist) output = Json::Value("AuthTokenDoesNotExist"); + if (input == GenericErrorCodesAuthTokenExpired) output = Json::Value("AuthTokenExpired"); + if (input == GenericErrorCodesAuthTokenAlreadyUsedToResetPassword) output = Json::Value("AuthTokenAlreadyUsedToResetPassword"); + if (input == GenericErrorCodesMembershipNameTooLong) output = Json::Value("MembershipNameTooLong"); + if (input == GenericErrorCodesMembershipNotFound) output = Json::Value("MembershipNotFound"); + if (input == GenericErrorCodesGoogleServiceAccountInvalid) output = Json::Value("GoogleServiceAccountInvalid"); + if (input == GenericErrorCodesGoogleServiceAccountParseFailure) output = Json::Value("GoogleServiceAccountParseFailure"); + if (input == GenericErrorCodesEntityTokenMissing) output = Json::Value("EntityTokenMissing"); + if (input == GenericErrorCodesEntityTokenInvalid) output = Json::Value("EntityTokenInvalid"); + if (input == GenericErrorCodesEntityTokenExpired) output = Json::Value("EntityTokenExpired"); + if (input == GenericErrorCodesEntityTokenRevoked) output = Json::Value("EntityTokenRevoked"); + if (input == GenericErrorCodesInvalidProductForSubscription) output = Json::Value("InvalidProductForSubscription"); + if (input == GenericErrorCodesXboxInaccessible) output = Json::Value("XboxInaccessible"); + if (input == GenericErrorCodesSubscriptionAlreadyTaken) output = Json::Value("SubscriptionAlreadyTaken"); + if (input == GenericErrorCodesSmtpAddonNotEnabled) output = Json::Value("SmtpAddonNotEnabled"); + if (input == GenericErrorCodesAPIConcurrentRequestLimitExceeded) output = Json::Value("APIConcurrentRequestLimitExceeded"); + if (input == GenericErrorCodesXboxRejectedXSTSExchangeRequest) output = Json::Value("XboxRejectedXSTSExchangeRequest"); + if (input == GenericErrorCodesVariableNotDefined) output = Json::Value("VariableNotDefined"); + if (input == GenericErrorCodesTemplateVersionNotDefined) output = Json::Value("TemplateVersionNotDefined"); + if (input == GenericErrorCodesFileTooLarge) output = Json::Value("FileTooLarge"); + if (input == GenericErrorCodesTitleDeleted) output = Json::Value("TitleDeleted"); + if (input == GenericErrorCodesTitleContainsUserAccounts) output = Json::Value("TitleContainsUserAccounts"); + if (input == GenericErrorCodesTitleDeletionPlayerCleanupFailure) output = Json::Value("TitleDeletionPlayerCleanupFailure"); + if (input == GenericErrorCodesEntityFileOperationPending) output = Json::Value("EntityFileOperationPending"); + if (input == GenericErrorCodesNoEntityFileOperationPending) output = Json::Value("NoEntityFileOperationPending"); + if (input == GenericErrorCodesEntityProfileVersionMismatch) output = Json::Value("EntityProfileVersionMismatch"); + if (input == GenericErrorCodesTemplateVersionTooOld) output = Json::Value("TemplateVersionTooOld"); + if (input == GenericErrorCodesMembershipDefinitionInUse) output = Json::Value("MembershipDefinitionInUse"); + if (input == GenericErrorCodesPaymentPageNotConfigured) output = Json::Value("PaymentPageNotConfigured"); + if (input == GenericErrorCodesFailedLoginAttemptRateLimitExceeded) output = Json::Value("FailedLoginAttemptRateLimitExceeded"); + if (input == GenericErrorCodesEntityBlockedByGroup) output = Json::Value("EntityBlockedByGroup"); + if (input == GenericErrorCodesRoleDoesNotExist) output = Json::Value("RoleDoesNotExist"); + if (input == GenericErrorCodesEntityIsAlreadyMember) output = Json::Value("EntityIsAlreadyMember"); + if (input == GenericErrorCodesDuplicateRoleId) output = Json::Value("DuplicateRoleId"); + if (input == GenericErrorCodesGroupInvitationNotFound) output = Json::Value("GroupInvitationNotFound"); + if (input == GenericErrorCodesGroupApplicationNotFound) output = Json::Value("GroupApplicationNotFound"); + if (input == GenericErrorCodesOutstandingInvitationAcceptedInstead) output = Json::Value("OutstandingInvitationAcceptedInstead"); + if (input == GenericErrorCodesOutstandingApplicationAcceptedInstead) output = Json::Value("OutstandingApplicationAcceptedInstead"); + if (input == GenericErrorCodesRoleIsGroupDefaultMember) output = Json::Value("RoleIsGroupDefaultMember"); + if (input == GenericErrorCodesRoleIsGroupAdmin) output = Json::Value("RoleIsGroupAdmin"); + if (input == GenericErrorCodesRoleNameNotAvailable) output = Json::Value("RoleNameNotAvailable"); + if (input == GenericErrorCodesGroupNameNotAvailable) output = Json::Value("GroupNameNotAvailable"); + if (input == GenericErrorCodesEmailReportAlreadySent) output = Json::Value("EmailReportAlreadySent"); + if (input == GenericErrorCodesEmailReportRecipientBlacklisted) output = Json::Value("EmailReportRecipientBlacklisted"); + if (input == GenericErrorCodesEventNamespaceNotAllowed) output = Json::Value("EventNamespaceNotAllowed"); + if (input == GenericErrorCodesEventEntityNotAllowed) output = Json::Value("EventEntityNotAllowed"); + } + inline void FromJsonEnum(const Json::Value& input, GenericErrorCodes& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Success") output = GenericErrorCodesSuccess; + if (inputStr == "InvalidParams") output = GenericErrorCodesInvalidParams; + if (inputStr == "AccountNotFound") output = GenericErrorCodesAccountNotFound; + if (inputStr == "AccountBanned") output = GenericErrorCodesAccountBanned; + if (inputStr == "InvalidUsernameOrPassword") output = GenericErrorCodesInvalidUsernameOrPassword; + if (inputStr == "InvalidTitleId") output = GenericErrorCodesInvalidTitleId; + if (inputStr == "InvalidEmailAddress") output = GenericErrorCodesInvalidEmailAddress; + if (inputStr == "EmailAddressNotAvailable") output = GenericErrorCodesEmailAddressNotAvailable; + if (inputStr == "InvalidUsername") output = GenericErrorCodesInvalidUsername; + if (inputStr == "InvalidPassword") output = GenericErrorCodesInvalidPassword; + if (inputStr == "UsernameNotAvailable") output = GenericErrorCodesUsernameNotAvailable; + if (inputStr == "InvalidSteamTicket") output = GenericErrorCodesInvalidSteamTicket; + if (inputStr == "AccountAlreadyLinked") output = GenericErrorCodesAccountAlreadyLinked; + if (inputStr == "LinkedAccountAlreadyClaimed") output = GenericErrorCodesLinkedAccountAlreadyClaimed; + if (inputStr == "InvalidFacebookToken") output = GenericErrorCodesInvalidFacebookToken; + if (inputStr == "AccountNotLinked") output = GenericErrorCodesAccountNotLinked; + if (inputStr == "FailedByPaymentProvider") output = GenericErrorCodesFailedByPaymentProvider; + if (inputStr == "CouponCodeNotFound") output = GenericErrorCodesCouponCodeNotFound; + if (inputStr == "InvalidContainerItem") output = GenericErrorCodesInvalidContainerItem; + if (inputStr == "ContainerNotOwned") output = GenericErrorCodesContainerNotOwned; + if (inputStr == "KeyNotOwned") output = GenericErrorCodesKeyNotOwned; + if (inputStr == "InvalidItemIdInTable") output = GenericErrorCodesInvalidItemIdInTable; + if (inputStr == "InvalidReceipt") output = GenericErrorCodesInvalidReceipt; + if (inputStr == "ReceiptAlreadyUsed") output = GenericErrorCodesReceiptAlreadyUsed; + if (inputStr == "ReceiptCancelled") output = GenericErrorCodesReceiptCancelled; + if (inputStr == "GameNotFound") output = GenericErrorCodesGameNotFound; + if (inputStr == "GameModeNotFound") output = GenericErrorCodesGameModeNotFound; + if (inputStr == "InvalidGoogleToken") output = GenericErrorCodesInvalidGoogleToken; + if (inputStr == "UserIsNotPartOfDeveloper") output = GenericErrorCodesUserIsNotPartOfDeveloper; + if (inputStr == "InvalidTitleForDeveloper") output = GenericErrorCodesInvalidTitleForDeveloper; + if (inputStr == "TitleNameConflicts") output = GenericErrorCodesTitleNameConflicts; + if (inputStr == "UserisNotValid") output = GenericErrorCodesUserisNotValid; + if (inputStr == "ValueAlreadyExists") output = GenericErrorCodesValueAlreadyExists; + if (inputStr == "BuildNotFound") output = GenericErrorCodesBuildNotFound; + if (inputStr == "PlayerNotInGame") output = GenericErrorCodesPlayerNotInGame; + if (inputStr == "InvalidTicket") output = GenericErrorCodesInvalidTicket; + if (inputStr == "InvalidDeveloper") output = GenericErrorCodesInvalidDeveloper; + if (inputStr == "InvalidOrderInfo") output = GenericErrorCodesInvalidOrderInfo; + if (inputStr == "RegistrationIncomplete") output = GenericErrorCodesRegistrationIncomplete; + if (inputStr == "InvalidPlatform") output = GenericErrorCodesInvalidPlatform; + if (inputStr == "UnknownError") output = GenericErrorCodesUnknownError; + if (inputStr == "SteamApplicationNotOwned") output = GenericErrorCodesSteamApplicationNotOwned; + if (inputStr == "WrongSteamAccount") output = GenericErrorCodesWrongSteamAccount; + if (inputStr == "TitleNotActivated") output = GenericErrorCodesTitleNotActivated; + if (inputStr == "RegistrationSessionNotFound") output = GenericErrorCodesRegistrationSessionNotFound; + if (inputStr == "NoSuchMod") output = GenericErrorCodesNoSuchMod; + if (inputStr == "FileNotFound") output = GenericErrorCodesFileNotFound; + if (inputStr == "DuplicateEmail") output = GenericErrorCodesDuplicateEmail; + if (inputStr == "ItemNotFound") output = GenericErrorCodesItemNotFound; + if (inputStr == "ItemNotOwned") output = GenericErrorCodesItemNotOwned; + if (inputStr == "ItemNotRecycleable") output = GenericErrorCodesItemNotRecycleable; + if (inputStr == "ItemNotAffordable") output = GenericErrorCodesItemNotAffordable; + if (inputStr == "InvalidVirtualCurrency") output = GenericErrorCodesInvalidVirtualCurrency; + if (inputStr == "WrongVirtualCurrency") output = GenericErrorCodesWrongVirtualCurrency; + if (inputStr == "WrongPrice") output = GenericErrorCodesWrongPrice; + if (inputStr == "NonPositiveValue") output = GenericErrorCodesNonPositiveValue; + if (inputStr == "InvalidRegion") output = GenericErrorCodesInvalidRegion; + if (inputStr == "RegionAtCapacity") output = GenericErrorCodesRegionAtCapacity; + if (inputStr == "ServerFailedToStart") output = GenericErrorCodesServerFailedToStart; + if (inputStr == "NameNotAvailable") output = GenericErrorCodesNameNotAvailable; + if (inputStr == "InsufficientFunds") output = GenericErrorCodesInsufficientFunds; + if (inputStr == "InvalidDeviceID") output = GenericErrorCodesInvalidDeviceID; + if (inputStr == "InvalidPushNotificationToken") output = GenericErrorCodesInvalidPushNotificationToken; + if (inputStr == "NoRemainingUses") output = GenericErrorCodesNoRemainingUses; + if (inputStr == "InvalidPaymentProvider") output = GenericErrorCodesInvalidPaymentProvider; + if (inputStr == "PurchaseInitializationFailure") output = GenericErrorCodesPurchaseInitializationFailure; + if (inputStr == "DuplicateUsername") output = GenericErrorCodesDuplicateUsername; + if (inputStr == "InvalidBuyerInfo") output = GenericErrorCodesInvalidBuyerInfo; + if (inputStr == "NoGameModeParamsSet") output = GenericErrorCodesNoGameModeParamsSet; + if (inputStr == "BodyTooLarge") output = GenericErrorCodesBodyTooLarge; + if (inputStr == "ReservedWordInBody") output = GenericErrorCodesReservedWordInBody; + if (inputStr == "InvalidTypeInBody") output = GenericErrorCodesInvalidTypeInBody; + if (inputStr == "InvalidRequest") output = GenericErrorCodesInvalidRequest; + if (inputStr == "ReservedEventName") output = GenericErrorCodesReservedEventName; + if (inputStr == "InvalidUserStatistics") output = GenericErrorCodesInvalidUserStatistics; + if (inputStr == "NotAuthenticated") output = GenericErrorCodesNotAuthenticated; + if (inputStr == "StreamAlreadyExists") output = GenericErrorCodesStreamAlreadyExists; + if (inputStr == "ErrorCreatingStream") output = GenericErrorCodesErrorCreatingStream; + if (inputStr == "StreamNotFound") output = GenericErrorCodesStreamNotFound; + if (inputStr == "InvalidAccount") output = GenericErrorCodesInvalidAccount; + if (inputStr == "PurchaseDoesNotExist") output = GenericErrorCodesPurchaseDoesNotExist; + if (inputStr == "InvalidPurchaseTransactionStatus") output = GenericErrorCodesInvalidPurchaseTransactionStatus; + if (inputStr == "APINotEnabledForGameClientAccess") output = GenericErrorCodesAPINotEnabledForGameClientAccess; + if (inputStr == "NoPushNotificationARNForTitle") output = GenericErrorCodesNoPushNotificationARNForTitle; + if (inputStr == "BuildAlreadyExists") output = GenericErrorCodesBuildAlreadyExists; + if (inputStr == "BuildPackageDoesNotExist") output = GenericErrorCodesBuildPackageDoesNotExist; + if (inputStr == "CustomAnalyticsEventsNotEnabledForTitle") output = GenericErrorCodesCustomAnalyticsEventsNotEnabledForTitle; + if (inputStr == "InvalidSharedGroupId") output = GenericErrorCodesInvalidSharedGroupId; + if (inputStr == "NotAuthorized") output = GenericErrorCodesNotAuthorized; + if (inputStr == "MissingTitleGoogleProperties") output = GenericErrorCodesMissingTitleGoogleProperties; + if (inputStr == "InvalidItemProperties") output = GenericErrorCodesInvalidItemProperties; + if (inputStr == "InvalidPSNAuthCode") output = GenericErrorCodesInvalidPSNAuthCode; + if (inputStr == "InvalidItemId") output = GenericErrorCodesInvalidItemId; + if (inputStr == "PushNotEnabledForAccount") output = GenericErrorCodesPushNotEnabledForAccount; + if (inputStr == "PushServiceError") output = GenericErrorCodesPushServiceError; + if (inputStr == "ReceiptDoesNotContainInAppItems") output = GenericErrorCodesReceiptDoesNotContainInAppItems; + if (inputStr == "ReceiptContainsMultipleInAppItems") output = GenericErrorCodesReceiptContainsMultipleInAppItems; + if (inputStr == "InvalidBundleID") output = GenericErrorCodesInvalidBundleID; + if (inputStr == "JavascriptException") output = GenericErrorCodesJavascriptException; + if (inputStr == "InvalidSessionTicket") output = GenericErrorCodesInvalidSessionTicket; + if (inputStr == "UnableToConnectToDatabase") output = GenericErrorCodesUnableToConnectToDatabase; + if (inputStr == "InternalServerError") output = GenericErrorCodesInternalServerError; + if (inputStr == "InvalidReportDate") output = GenericErrorCodesInvalidReportDate; + if (inputStr == "ReportNotAvailable") output = GenericErrorCodesReportNotAvailable; + if (inputStr == "DatabaseThroughputExceeded") output = GenericErrorCodesDatabaseThroughputExceeded; + if (inputStr == "InvalidGameTicket") output = GenericErrorCodesInvalidGameTicket; + if (inputStr == "ExpiredGameTicket") output = GenericErrorCodesExpiredGameTicket; + if (inputStr == "GameTicketDoesNotMatchLobby") output = GenericErrorCodesGameTicketDoesNotMatchLobby; + if (inputStr == "LinkedDeviceAlreadyClaimed") output = GenericErrorCodesLinkedDeviceAlreadyClaimed; + if (inputStr == "DeviceAlreadyLinked") output = GenericErrorCodesDeviceAlreadyLinked; + if (inputStr == "DeviceNotLinked") output = GenericErrorCodesDeviceNotLinked; + if (inputStr == "PartialFailure") output = GenericErrorCodesPartialFailure; + if (inputStr == "PublisherNotSet") output = GenericErrorCodesPublisherNotSet; + if (inputStr == "ServiceUnavailable") output = GenericErrorCodesServiceUnavailable; + if (inputStr == "VersionNotFound") output = GenericErrorCodesVersionNotFound; + if (inputStr == "RevisionNotFound") output = GenericErrorCodesRevisionNotFound; + if (inputStr == "InvalidPublisherId") output = GenericErrorCodesInvalidPublisherId; + if (inputStr == "DownstreamServiceUnavailable") output = GenericErrorCodesDownstreamServiceUnavailable; + if (inputStr == "APINotIncludedInTitleUsageTier") output = GenericErrorCodesAPINotIncludedInTitleUsageTier; + if (inputStr == "DAULimitExceeded") output = GenericErrorCodesDAULimitExceeded; + if (inputStr == "APIRequestLimitExceeded") output = GenericErrorCodesAPIRequestLimitExceeded; + if (inputStr == "InvalidAPIEndpoint") output = GenericErrorCodesInvalidAPIEndpoint; + if (inputStr == "BuildNotAvailable") output = GenericErrorCodesBuildNotAvailable; + if (inputStr == "ConcurrentEditError") output = GenericErrorCodesConcurrentEditError; + if (inputStr == "ContentNotFound") output = GenericErrorCodesContentNotFound; + if (inputStr == "CharacterNotFound") output = GenericErrorCodesCharacterNotFound; + if (inputStr == "CloudScriptNotFound") output = GenericErrorCodesCloudScriptNotFound; + if (inputStr == "ContentQuotaExceeded") output = GenericErrorCodesContentQuotaExceeded; + if (inputStr == "InvalidCharacterStatistics") output = GenericErrorCodesInvalidCharacterStatistics; + if (inputStr == "PhotonNotEnabledForTitle") output = GenericErrorCodesPhotonNotEnabledForTitle; + if (inputStr == "PhotonApplicationNotFound") output = GenericErrorCodesPhotonApplicationNotFound; + if (inputStr == "PhotonApplicationNotAssociatedWithTitle") output = GenericErrorCodesPhotonApplicationNotAssociatedWithTitle; + if (inputStr == "InvalidEmailOrPassword") output = GenericErrorCodesInvalidEmailOrPassword; + if (inputStr == "FacebookAPIError") output = GenericErrorCodesFacebookAPIError; + if (inputStr == "InvalidContentType") output = GenericErrorCodesInvalidContentType; + if (inputStr == "KeyLengthExceeded") output = GenericErrorCodesKeyLengthExceeded; + if (inputStr == "DataLengthExceeded") output = GenericErrorCodesDataLengthExceeded; + if (inputStr == "TooManyKeys") output = GenericErrorCodesTooManyKeys; + if (inputStr == "FreeTierCannotHaveVirtualCurrency") output = GenericErrorCodesFreeTierCannotHaveVirtualCurrency; + if (inputStr == "MissingAmazonSharedKey") output = GenericErrorCodesMissingAmazonSharedKey; + if (inputStr == "AmazonValidationError") output = GenericErrorCodesAmazonValidationError; + if (inputStr == "InvalidPSNIssuerId") output = GenericErrorCodesInvalidPSNIssuerId; + if (inputStr == "PSNInaccessible") output = GenericErrorCodesPSNInaccessible; + if (inputStr == "ExpiredAuthToken") output = GenericErrorCodesExpiredAuthToken; + if (inputStr == "FailedToGetEntitlements") output = GenericErrorCodesFailedToGetEntitlements; + if (inputStr == "FailedToConsumeEntitlement") output = GenericErrorCodesFailedToConsumeEntitlement; + if (inputStr == "TradeAcceptingUserNotAllowed") output = GenericErrorCodesTradeAcceptingUserNotAllowed; + if (inputStr == "TradeInventoryItemIsAssignedToCharacter") output = GenericErrorCodesTradeInventoryItemIsAssignedToCharacter; + if (inputStr == "TradeInventoryItemIsBundle") output = GenericErrorCodesTradeInventoryItemIsBundle; + if (inputStr == "TradeStatusNotValidForCancelling") output = GenericErrorCodesTradeStatusNotValidForCancelling; + if (inputStr == "TradeStatusNotValidForAccepting") output = GenericErrorCodesTradeStatusNotValidForAccepting; + if (inputStr == "TradeDoesNotExist") output = GenericErrorCodesTradeDoesNotExist; + if (inputStr == "TradeCancelled") output = GenericErrorCodesTradeCancelled; + if (inputStr == "TradeAlreadyFilled") output = GenericErrorCodesTradeAlreadyFilled; + if (inputStr == "TradeWaitForStatusTimeout") output = GenericErrorCodesTradeWaitForStatusTimeout; + if (inputStr == "TradeInventoryItemExpired") output = GenericErrorCodesTradeInventoryItemExpired; + if (inputStr == "TradeMissingOfferedAndAcceptedItems") output = GenericErrorCodesTradeMissingOfferedAndAcceptedItems; + if (inputStr == "TradeAcceptedItemIsBundle") output = GenericErrorCodesTradeAcceptedItemIsBundle; + if (inputStr == "TradeAcceptedItemIsStackable") output = GenericErrorCodesTradeAcceptedItemIsStackable; + if (inputStr == "TradeInventoryItemInvalidStatus") output = GenericErrorCodesTradeInventoryItemInvalidStatus; + if (inputStr == "TradeAcceptedCatalogItemInvalid") output = GenericErrorCodesTradeAcceptedCatalogItemInvalid; + if (inputStr == "TradeAllowedUsersInvalid") output = GenericErrorCodesTradeAllowedUsersInvalid; + if (inputStr == "TradeInventoryItemDoesNotExist") output = GenericErrorCodesTradeInventoryItemDoesNotExist; + if (inputStr == "TradeInventoryItemIsConsumed") output = GenericErrorCodesTradeInventoryItemIsConsumed; + if (inputStr == "TradeInventoryItemIsStackable") output = GenericErrorCodesTradeInventoryItemIsStackable; + if (inputStr == "TradeAcceptedItemsMismatch") output = GenericErrorCodesTradeAcceptedItemsMismatch; + if (inputStr == "InvalidKongregateToken") output = GenericErrorCodesInvalidKongregateToken; + if (inputStr == "FeatureNotConfiguredForTitle") output = GenericErrorCodesFeatureNotConfiguredForTitle; + if (inputStr == "NoMatchingCatalogItemForReceipt") output = GenericErrorCodesNoMatchingCatalogItemForReceipt; + if (inputStr == "InvalidCurrencyCode") output = GenericErrorCodesInvalidCurrencyCode; + if (inputStr == "NoRealMoneyPriceForCatalogItem") output = GenericErrorCodesNoRealMoneyPriceForCatalogItem; + if (inputStr == "TradeInventoryItemIsNotTradable") output = GenericErrorCodesTradeInventoryItemIsNotTradable; + if (inputStr == "TradeAcceptedCatalogItemIsNotTradable") output = GenericErrorCodesTradeAcceptedCatalogItemIsNotTradable; + if (inputStr == "UsersAlreadyFriends") output = GenericErrorCodesUsersAlreadyFriends; + if (inputStr == "LinkedIdentifierAlreadyClaimed") output = GenericErrorCodesLinkedIdentifierAlreadyClaimed; + if (inputStr == "CustomIdNotLinked") output = GenericErrorCodesCustomIdNotLinked; + if (inputStr == "TotalDataSizeExceeded") output = GenericErrorCodesTotalDataSizeExceeded; + if (inputStr == "DeleteKeyConflict") output = GenericErrorCodesDeleteKeyConflict; + if (inputStr == "InvalidXboxLiveToken") output = GenericErrorCodesInvalidXboxLiveToken; + if (inputStr == "ExpiredXboxLiveToken") output = GenericErrorCodesExpiredXboxLiveToken; + if (inputStr == "ResettableStatisticVersionRequired") output = GenericErrorCodesResettableStatisticVersionRequired; + if (inputStr == "NotAuthorizedByTitle") output = GenericErrorCodesNotAuthorizedByTitle; + if (inputStr == "NoPartnerEnabled") output = GenericErrorCodesNoPartnerEnabled; + if (inputStr == "InvalidPartnerResponse") output = GenericErrorCodesInvalidPartnerResponse; + if (inputStr == "APINotEnabledForGameServerAccess") output = GenericErrorCodesAPINotEnabledForGameServerAccess; + if (inputStr == "StatisticNotFound") output = GenericErrorCodesStatisticNotFound; + if (inputStr == "StatisticNameConflict") output = GenericErrorCodesStatisticNameConflict; + if (inputStr == "StatisticVersionClosedForWrites") output = GenericErrorCodesStatisticVersionClosedForWrites; + if (inputStr == "StatisticVersionInvalid") output = GenericErrorCodesStatisticVersionInvalid; + if (inputStr == "APIClientRequestRateLimitExceeded") output = GenericErrorCodesAPIClientRequestRateLimitExceeded; + if (inputStr == "InvalidJSONContent") output = GenericErrorCodesInvalidJSONContent; + if (inputStr == "InvalidDropTable") output = GenericErrorCodesInvalidDropTable; + if (inputStr == "StatisticVersionAlreadyIncrementedForScheduledInterval") output = GenericErrorCodesStatisticVersionAlreadyIncrementedForScheduledInterval; + if (inputStr == "StatisticCountLimitExceeded") output = GenericErrorCodesStatisticCountLimitExceeded; + if (inputStr == "StatisticVersionIncrementRateExceeded") output = GenericErrorCodesStatisticVersionIncrementRateExceeded; + if (inputStr == "ContainerKeyInvalid") output = GenericErrorCodesContainerKeyInvalid; + if (inputStr == "CloudScriptExecutionTimeLimitExceeded") output = GenericErrorCodesCloudScriptExecutionTimeLimitExceeded; + if (inputStr == "NoWritePermissionsForEvent") output = GenericErrorCodesNoWritePermissionsForEvent; + if (inputStr == "CloudScriptFunctionArgumentSizeExceeded") output = GenericErrorCodesCloudScriptFunctionArgumentSizeExceeded; + if (inputStr == "CloudScriptAPIRequestCountExceeded") output = GenericErrorCodesCloudScriptAPIRequestCountExceeded; + if (inputStr == "CloudScriptAPIRequestError") output = GenericErrorCodesCloudScriptAPIRequestError; + if (inputStr == "CloudScriptHTTPRequestError") output = GenericErrorCodesCloudScriptHTTPRequestError; + if (inputStr == "InsufficientGuildRole") output = GenericErrorCodesInsufficientGuildRole; + if (inputStr == "GuildNotFound") output = GenericErrorCodesGuildNotFound; + if (inputStr == "OverLimit") output = GenericErrorCodesOverLimit; + if (inputStr == "EventNotFound") output = GenericErrorCodesEventNotFound; + if (inputStr == "InvalidEventField") output = GenericErrorCodesInvalidEventField; + if (inputStr == "InvalidEventName") output = GenericErrorCodesInvalidEventName; + if (inputStr == "CatalogNotConfigured") output = GenericErrorCodesCatalogNotConfigured; + if (inputStr == "OperationNotSupportedForPlatform") output = GenericErrorCodesOperationNotSupportedForPlatform; + if (inputStr == "SegmentNotFound") output = GenericErrorCodesSegmentNotFound; + if (inputStr == "StoreNotFound") output = GenericErrorCodesStoreNotFound; + if (inputStr == "InvalidStatisticName") output = GenericErrorCodesInvalidStatisticName; + if (inputStr == "TitleNotQualifiedForLimit") output = GenericErrorCodesTitleNotQualifiedForLimit; + if (inputStr == "InvalidServiceLimitLevel") output = GenericErrorCodesInvalidServiceLimitLevel; + if (inputStr == "ServiceLimitLevelInTransition") output = GenericErrorCodesServiceLimitLevelInTransition; + if (inputStr == "CouponAlreadyRedeemed") output = GenericErrorCodesCouponAlreadyRedeemed; + if (inputStr == "GameServerBuildSizeLimitExceeded") output = GenericErrorCodesGameServerBuildSizeLimitExceeded; + if (inputStr == "GameServerBuildCountLimitExceeded") output = GenericErrorCodesGameServerBuildCountLimitExceeded; + if (inputStr == "VirtualCurrencyCountLimitExceeded") output = GenericErrorCodesVirtualCurrencyCountLimitExceeded; + if (inputStr == "VirtualCurrencyCodeExists") output = GenericErrorCodesVirtualCurrencyCodeExists; + if (inputStr == "TitleNewsItemCountLimitExceeded") output = GenericErrorCodesTitleNewsItemCountLimitExceeded; + if (inputStr == "InvalidTwitchToken") output = GenericErrorCodesInvalidTwitchToken; + if (inputStr == "TwitchResponseError") output = GenericErrorCodesTwitchResponseError; + if (inputStr == "ProfaneDisplayName") output = GenericErrorCodesProfaneDisplayName; + if (inputStr == "UserAlreadyAdded") output = GenericErrorCodesUserAlreadyAdded; + if (inputStr == "InvalidVirtualCurrencyCode") output = GenericErrorCodesInvalidVirtualCurrencyCode; + if (inputStr == "VirtualCurrencyCannotBeDeleted") output = GenericErrorCodesVirtualCurrencyCannotBeDeleted; + if (inputStr == "IdentifierAlreadyClaimed") output = GenericErrorCodesIdentifierAlreadyClaimed; + if (inputStr == "IdentifierNotLinked") output = GenericErrorCodesIdentifierNotLinked; + if (inputStr == "InvalidContinuationToken") output = GenericErrorCodesInvalidContinuationToken; + if (inputStr == "ExpiredContinuationToken") output = GenericErrorCodesExpiredContinuationToken; + if (inputStr == "InvalidSegment") output = GenericErrorCodesInvalidSegment; + if (inputStr == "InvalidSessionId") output = GenericErrorCodesInvalidSessionId; + if (inputStr == "SessionLogNotFound") output = GenericErrorCodesSessionLogNotFound; + if (inputStr == "InvalidSearchTerm") output = GenericErrorCodesInvalidSearchTerm; + if (inputStr == "TwoFactorAuthenticationTokenRequired") output = GenericErrorCodesTwoFactorAuthenticationTokenRequired; + if (inputStr == "GameServerHostCountLimitExceeded") output = GenericErrorCodesGameServerHostCountLimitExceeded; + if (inputStr == "PlayerTagCountLimitExceeded") output = GenericErrorCodesPlayerTagCountLimitExceeded; + if (inputStr == "RequestAlreadyRunning") output = GenericErrorCodesRequestAlreadyRunning; + if (inputStr == "ActionGroupNotFound") output = GenericErrorCodesActionGroupNotFound; + if (inputStr == "MaximumSegmentBulkActionJobsRunning") output = GenericErrorCodesMaximumSegmentBulkActionJobsRunning; + if (inputStr == "NoActionsOnPlayersInSegmentJob") output = GenericErrorCodesNoActionsOnPlayersInSegmentJob; + if (inputStr == "DuplicateStatisticName") output = GenericErrorCodesDuplicateStatisticName; + if (inputStr == "ScheduledTaskNameConflict") output = GenericErrorCodesScheduledTaskNameConflict; + if (inputStr == "ScheduledTaskCreateConflict") output = GenericErrorCodesScheduledTaskCreateConflict; + if (inputStr == "InvalidScheduledTaskName") output = GenericErrorCodesInvalidScheduledTaskName; + if (inputStr == "InvalidTaskSchedule") output = GenericErrorCodesInvalidTaskSchedule; + if (inputStr == "SteamNotEnabledForTitle") output = GenericErrorCodesSteamNotEnabledForTitle; + if (inputStr == "LimitNotAnUpgradeOption") output = GenericErrorCodesLimitNotAnUpgradeOption; + if (inputStr == "NoSecretKeyEnabledForCloudScript") output = GenericErrorCodesNoSecretKeyEnabledForCloudScript; + if (inputStr == "TaskNotFound") output = GenericErrorCodesTaskNotFound; + if (inputStr == "TaskInstanceNotFound") output = GenericErrorCodesTaskInstanceNotFound; + if (inputStr == "InvalidIdentityProviderId") output = GenericErrorCodesInvalidIdentityProviderId; + if (inputStr == "MisconfiguredIdentityProvider") output = GenericErrorCodesMisconfiguredIdentityProvider; + if (inputStr == "InvalidScheduledTaskType") output = GenericErrorCodesInvalidScheduledTaskType; + if (inputStr == "BillingInformationRequired") output = GenericErrorCodesBillingInformationRequired; + if (inputStr == "LimitedEditionItemUnavailable") output = GenericErrorCodesLimitedEditionItemUnavailable; + if (inputStr == "InvalidAdPlacementAndReward") output = GenericErrorCodesInvalidAdPlacementAndReward; + if (inputStr == "AllAdPlacementViewsAlreadyConsumed") output = GenericErrorCodesAllAdPlacementViewsAlreadyConsumed; + if (inputStr == "GoogleOAuthNotConfiguredForTitle") output = GenericErrorCodesGoogleOAuthNotConfiguredForTitle; + if (inputStr == "GoogleOAuthError") output = GenericErrorCodesGoogleOAuthError; + if (inputStr == "UserNotFriend") output = GenericErrorCodesUserNotFriend; + if (inputStr == "InvalidSignature") output = GenericErrorCodesInvalidSignature; + if (inputStr == "InvalidPublicKey") output = GenericErrorCodesInvalidPublicKey; + if (inputStr == "GoogleOAuthNoIdTokenIncludedInResponse") output = GenericErrorCodesGoogleOAuthNoIdTokenIncludedInResponse; + if (inputStr == "StatisticUpdateInProgress") output = GenericErrorCodesStatisticUpdateInProgress; + if (inputStr == "LeaderboardVersionNotAvailable") output = GenericErrorCodesLeaderboardVersionNotAvailable; + if (inputStr == "StatisticAlreadyHasPrizeTable") output = GenericErrorCodesStatisticAlreadyHasPrizeTable; + if (inputStr == "PrizeTableHasOverlappingRanks") output = GenericErrorCodesPrizeTableHasOverlappingRanks; + if (inputStr == "PrizeTableHasMissingRanks") output = GenericErrorCodesPrizeTableHasMissingRanks; + if (inputStr == "PrizeTableRankStartsAtZero") output = GenericErrorCodesPrizeTableRankStartsAtZero; + if (inputStr == "InvalidStatistic") output = GenericErrorCodesInvalidStatistic; + if (inputStr == "ExpressionParseFailure") output = GenericErrorCodesExpressionParseFailure; + if (inputStr == "ExpressionInvokeFailure") output = GenericErrorCodesExpressionInvokeFailure; + if (inputStr == "ExpressionTooLong") output = GenericErrorCodesExpressionTooLong; + if (inputStr == "DataUpdateRateExceeded") output = GenericErrorCodesDataUpdateRateExceeded; + if (inputStr == "RestrictedEmailDomain") output = GenericErrorCodesRestrictedEmailDomain; + if (inputStr == "EncryptionKeyDisabled") output = GenericErrorCodesEncryptionKeyDisabled; + if (inputStr == "EncryptionKeyMissing") output = GenericErrorCodesEncryptionKeyMissing; + if (inputStr == "EncryptionKeyBroken") output = GenericErrorCodesEncryptionKeyBroken; + if (inputStr == "NoSharedSecretKeyConfigured") output = GenericErrorCodesNoSharedSecretKeyConfigured; + if (inputStr == "SecretKeyNotFound") output = GenericErrorCodesSecretKeyNotFound; + if (inputStr == "PlayerSecretAlreadyConfigured") output = GenericErrorCodesPlayerSecretAlreadyConfigured; + if (inputStr == "APIRequestsDisabledForTitle") output = GenericErrorCodesAPIRequestsDisabledForTitle; + if (inputStr == "InvalidSharedSecretKey") output = GenericErrorCodesInvalidSharedSecretKey; + if (inputStr == "PrizeTableHasNoRanks") output = GenericErrorCodesPrizeTableHasNoRanks; + if (inputStr == "ProfileDoesNotExist") output = GenericErrorCodesProfileDoesNotExist; + if (inputStr == "ContentS3OriginBucketNotConfigured") output = GenericErrorCodesContentS3OriginBucketNotConfigured; + if (inputStr == "InvalidEnvironmentForReceipt") output = GenericErrorCodesInvalidEnvironmentForReceipt; + if (inputStr == "EncryptedRequestNotAllowed") output = GenericErrorCodesEncryptedRequestNotAllowed; + if (inputStr == "SignedRequestNotAllowed") output = GenericErrorCodesSignedRequestNotAllowed; + if (inputStr == "RequestViewConstraintParamsNotAllowed") output = GenericErrorCodesRequestViewConstraintParamsNotAllowed; + if (inputStr == "BadPartnerConfiguration") output = GenericErrorCodesBadPartnerConfiguration; + if (inputStr == "XboxBPCertificateFailure") output = GenericErrorCodesXboxBPCertificateFailure; + if (inputStr == "XboxXASSExchangeFailure") output = GenericErrorCodesXboxXASSExchangeFailure; + if (inputStr == "InvalidEntityId") output = GenericErrorCodesInvalidEntityId; + if (inputStr == "StatisticValueAggregationOverflow") output = GenericErrorCodesStatisticValueAggregationOverflow; + if (inputStr == "EmailMessageFromAddressIsMissing") output = GenericErrorCodesEmailMessageFromAddressIsMissing; + if (inputStr == "EmailMessageToAddressIsMissing") output = GenericErrorCodesEmailMessageToAddressIsMissing; + if (inputStr == "SmtpServerAuthenticationError") output = GenericErrorCodesSmtpServerAuthenticationError; + if (inputStr == "SmtpServerLimitExceeded") output = GenericErrorCodesSmtpServerLimitExceeded; + if (inputStr == "SmtpServerInsufficientStorage") output = GenericErrorCodesSmtpServerInsufficientStorage; + if (inputStr == "SmtpServerCommunicationError") output = GenericErrorCodesSmtpServerCommunicationError; + if (inputStr == "SmtpServerGeneralFailure") output = GenericErrorCodesSmtpServerGeneralFailure; + if (inputStr == "EmailClientTimeout") output = GenericErrorCodesEmailClientTimeout; + if (inputStr == "EmailClientCanceledTask") output = GenericErrorCodesEmailClientCanceledTask; + if (inputStr == "EmailTemplateMissing") output = GenericErrorCodesEmailTemplateMissing; + if (inputStr == "InvalidHostForTitleId") output = GenericErrorCodesInvalidHostForTitleId; + if (inputStr == "EmailConfirmationTokenDoesNotExist") output = GenericErrorCodesEmailConfirmationTokenDoesNotExist; + if (inputStr == "EmailConfirmationTokenExpired") output = GenericErrorCodesEmailConfirmationTokenExpired; + if (inputStr == "AccountDeleted") output = GenericErrorCodesAccountDeleted; + if (inputStr == "PlayerSecretNotConfigured") output = GenericErrorCodesPlayerSecretNotConfigured; + if (inputStr == "InvalidSignatureTime") output = GenericErrorCodesInvalidSignatureTime; + if (inputStr == "NoContactEmailAddressFound") output = GenericErrorCodesNoContactEmailAddressFound; + if (inputStr == "InvalidAuthToken") output = GenericErrorCodesInvalidAuthToken; + if (inputStr == "AuthTokenDoesNotExist") output = GenericErrorCodesAuthTokenDoesNotExist; + if (inputStr == "AuthTokenExpired") output = GenericErrorCodesAuthTokenExpired; + if (inputStr == "AuthTokenAlreadyUsedToResetPassword") output = GenericErrorCodesAuthTokenAlreadyUsedToResetPassword; + if (inputStr == "MembershipNameTooLong") output = GenericErrorCodesMembershipNameTooLong; + if (inputStr == "MembershipNotFound") output = GenericErrorCodesMembershipNotFound; + if (inputStr == "GoogleServiceAccountInvalid") output = GenericErrorCodesGoogleServiceAccountInvalid; + if (inputStr == "GoogleServiceAccountParseFailure") output = GenericErrorCodesGoogleServiceAccountParseFailure; + if (inputStr == "EntityTokenMissing") output = GenericErrorCodesEntityTokenMissing; + if (inputStr == "EntityTokenInvalid") output = GenericErrorCodesEntityTokenInvalid; + if (inputStr == "EntityTokenExpired") output = GenericErrorCodesEntityTokenExpired; + if (inputStr == "EntityTokenRevoked") output = GenericErrorCodesEntityTokenRevoked; + if (inputStr == "InvalidProductForSubscription") output = GenericErrorCodesInvalidProductForSubscription; + if (inputStr == "XboxInaccessible") output = GenericErrorCodesXboxInaccessible; + if (inputStr == "SubscriptionAlreadyTaken") output = GenericErrorCodesSubscriptionAlreadyTaken; + if (inputStr == "SmtpAddonNotEnabled") output = GenericErrorCodesSmtpAddonNotEnabled; + if (inputStr == "APIConcurrentRequestLimitExceeded") output = GenericErrorCodesAPIConcurrentRequestLimitExceeded; + if (inputStr == "XboxRejectedXSTSExchangeRequest") output = GenericErrorCodesXboxRejectedXSTSExchangeRequest; + if (inputStr == "VariableNotDefined") output = GenericErrorCodesVariableNotDefined; + if (inputStr == "TemplateVersionNotDefined") output = GenericErrorCodesTemplateVersionNotDefined; + if (inputStr == "FileTooLarge") output = GenericErrorCodesFileTooLarge; + if (inputStr == "TitleDeleted") output = GenericErrorCodesTitleDeleted; + if (inputStr == "TitleContainsUserAccounts") output = GenericErrorCodesTitleContainsUserAccounts; + if (inputStr == "TitleDeletionPlayerCleanupFailure") output = GenericErrorCodesTitleDeletionPlayerCleanupFailure; + if (inputStr == "EntityFileOperationPending") output = GenericErrorCodesEntityFileOperationPending; + if (inputStr == "NoEntityFileOperationPending") output = GenericErrorCodesNoEntityFileOperationPending; + if (inputStr == "EntityProfileVersionMismatch") output = GenericErrorCodesEntityProfileVersionMismatch; + if (inputStr == "TemplateVersionTooOld") output = GenericErrorCodesTemplateVersionTooOld; + if (inputStr == "MembershipDefinitionInUse") output = GenericErrorCodesMembershipDefinitionInUse; + if (inputStr == "PaymentPageNotConfigured") output = GenericErrorCodesPaymentPageNotConfigured; + if (inputStr == "FailedLoginAttemptRateLimitExceeded") output = GenericErrorCodesFailedLoginAttemptRateLimitExceeded; + if (inputStr == "EntityBlockedByGroup") output = GenericErrorCodesEntityBlockedByGroup; + if (inputStr == "RoleDoesNotExist") output = GenericErrorCodesRoleDoesNotExist; + if (inputStr == "EntityIsAlreadyMember") output = GenericErrorCodesEntityIsAlreadyMember; + if (inputStr == "DuplicateRoleId") output = GenericErrorCodesDuplicateRoleId; + if (inputStr == "GroupInvitationNotFound") output = GenericErrorCodesGroupInvitationNotFound; + if (inputStr == "GroupApplicationNotFound") output = GenericErrorCodesGroupApplicationNotFound; + if (inputStr == "OutstandingInvitationAcceptedInstead") output = GenericErrorCodesOutstandingInvitationAcceptedInstead; + if (inputStr == "OutstandingApplicationAcceptedInstead") output = GenericErrorCodesOutstandingApplicationAcceptedInstead; + if (inputStr == "RoleIsGroupDefaultMember") output = GenericErrorCodesRoleIsGroupDefaultMember; + if (inputStr == "RoleIsGroupAdmin") output = GenericErrorCodesRoleIsGroupAdmin; + if (inputStr == "RoleNameNotAvailable") output = GenericErrorCodesRoleNameNotAvailable; + if (inputStr == "GroupNameNotAvailable") output = GenericErrorCodesGroupNameNotAvailable; + if (inputStr == "EmailReportAlreadySent") output = GenericErrorCodesEmailReportAlreadySent; + if (inputStr == "EmailReportRecipientBlacklisted") output = GenericErrorCodesEmailReportRecipientBlacklisted; + if (inputStr == "EventNamespaceNotAllowed") output = GenericErrorCodesEventNamespaceNotAllowed; + if (inputStr == "EventEntityNotAllowed") output = GenericErrorCodesEventEntityNotAllowed; + } + + enum LoginIdentityProvider + { + LoginIdentityProviderUnknown, + LoginIdentityProviderPlayFab, + LoginIdentityProviderCustom, + LoginIdentityProviderGameCenter, + LoginIdentityProviderGooglePlay, + LoginIdentityProviderSteam, + LoginIdentityProviderXBoxLive, + LoginIdentityProviderPSN, + LoginIdentityProviderKongregate, + LoginIdentityProviderFacebook, + LoginIdentityProviderIOSDevice, + LoginIdentityProviderAndroidDevice, + LoginIdentityProviderTwitch, + LoginIdentityProviderWindowsHello + }; + + inline void ToJsonEnum(const LoginIdentityProvider input, Json::Value& output) + { + if (input == LoginIdentityProviderUnknown) output = Json::Value("Unknown"); + if (input == LoginIdentityProviderPlayFab) output = Json::Value("PlayFab"); + if (input == LoginIdentityProviderCustom) output = Json::Value("Custom"); + if (input == LoginIdentityProviderGameCenter) output = Json::Value("GameCenter"); + if (input == LoginIdentityProviderGooglePlay) output = Json::Value("GooglePlay"); + if (input == LoginIdentityProviderSteam) output = Json::Value("Steam"); + if (input == LoginIdentityProviderXBoxLive) output = Json::Value("XBoxLive"); + if (input == LoginIdentityProviderPSN) output = Json::Value("PSN"); + if (input == LoginIdentityProviderKongregate) output = Json::Value("Kongregate"); + if (input == LoginIdentityProviderFacebook) output = Json::Value("Facebook"); + if (input == LoginIdentityProviderIOSDevice) output = Json::Value("IOSDevice"); + if (input == LoginIdentityProviderAndroidDevice) output = Json::Value("AndroidDevice"); + if (input == LoginIdentityProviderTwitch) output = Json::Value("Twitch"); + if (input == LoginIdentityProviderWindowsHello) output = Json::Value("WindowsHello"); + } + inline void FromJsonEnum(const Json::Value& input, LoginIdentityProvider& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Unknown") output = LoginIdentityProviderUnknown; + if (inputStr == "PlayFab") output = LoginIdentityProviderPlayFab; + if (inputStr == "Custom") output = LoginIdentityProviderCustom; + if (inputStr == "GameCenter") output = LoginIdentityProviderGameCenter; + if (inputStr == "GooglePlay") output = LoginIdentityProviderGooglePlay; + if (inputStr == "Steam") output = LoginIdentityProviderSteam; + if (inputStr == "XBoxLive") output = LoginIdentityProviderXBoxLive; + if (inputStr == "PSN") output = LoginIdentityProviderPSN; + if (inputStr == "Kongregate") output = LoginIdentityProviderKongregate; + if (inputStr == "Facebook") output = LoginIdentityProviderFacebook; + if (inputStr == "IOSDevice") output = LoginIdentityProviderIOSDevice; + if (inputStr == "AndroidDevice") output = LoginIdentityProviderAndroidDevice; + if (inputStr == "Twitch") output = LoginIdentityProviderTwitch; + if (inputStr == "WindowsHello") output = LoginIdentityProviderWindowsHello; + } + + enum PushNotificationPlatform + { + PushNotificationPlatformApplePushNotificationService, + PushNotificationPlatformGoogleCloudMessaging + }; + + inline void ToJsonEnum(const PushNotificationPlatform input, Json::Value& output) + { + if (input == PushNotificationPlatformApplePushNotificationService) output = Json::Value("ApplePushNotificationService"); + if (input == PushNotificationPlatformGoogleCloudMessaging) output = Json::Value("GoogleCloudMessaging"); + } + inline void FromJsonEnum(const Json::Value& input, PushNotificationPlatform& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "ApplePushNotificationService") output = PushNotificationPlatformApplePushNotificationService; + if (inputStr == "GoogleCloudMessaging") output = PushNotificationPlatformGoogleCloudMessaging; + } + + enum PushSetupPlatform + { + PushSetupPlatformGCM, + PushSetupPlatformAPNS, + PushSetupPlatformAPNS_SANDBOX + }; + + inline void ToJsonEnum(const PushSetupPlatform input, Json::Value& output) + { + if (input == PushSetupPlatformGCM) output = Json::Value("GCM"); + if (input == PushSetupPlatformAPNS) output = Json::Value("APNS"); + if (input == PushSetupPlatformAPNS_SANDBOX) output = Json::Value("APNS_SANDBOX"); + } + inline void FromJsonEnum(const Json::Value& input, PushSetupPlatform& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "GCM") output = PushSetupPlatformGCM; + if (inputStr == "APNS") output = PushSetupPlatformAPNS; + if (inputStr == "APNS_SANDBOX") output = PushSetupPlatformAPNS_SANDBOX; + } + + enum Region + { + RegionUSCentral, + RegionUSEast, + RegionEUWest, + RegionSingapore, + RegionJapan, + RegionBrazil, + RegionAustralia + }; + + inline void ToJsonEnum(const Region input, Json::Value& output) + { + if (input == RegionUSCentral) output = Json::Value("USCentral"); + if (input == RegionUSEast) output = Json::Value("USEast"); + if (input == RegionEUWest) output = Json::Value("EUWest"); + if (input == RegionSingapore) output = Json::Value("Singapore"); + if (input == RegionJapan) output = Json::Value("Japan"); + if (input == RegionBrazil) output = Json::Value("Brazil"); + if (input == RegionAustralia) output = Json::Value("Australia"); + } + inline void FromJsonEnum(const Json::Value& input, Region& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "USCentral") output = RegionUSCentral; + if (inputStr == "USEast") output = RegionUSEast; + if (inputStr == "EUWest") output = RegionEUWest; + if (inputStr == "Singapore") output = RegionSingapore; + if (inputStr == "Japan") output = RegionJapan; + if (inputStr == "Brazil") output = RegionBrazil; + if (inputStr == "Australia") output = RegionAustralia; + } + + enum ResolutionOutcome + { + ResolutionOutcomeRevoke, + ResolutionOutcomeReinstate, + ResolutionOutcomeManual + }; + + inline void ToJsonEnum(const ResolutionOutcome input, Json::Value& output) + { + if (input == ResolutionOutcomeRevoke) output = Json::Value("Revoke"); + if (input == ResolutionOutcomeReinstate) output = Json::Value("Reinstate"); + if (input == ResolutionOutcomeManual) output = Json::Value("Manual"); + } + inline void FromJsonEnum(const Json::Value& input, ResolutionOutcome& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Revoke") output = ResolutionOutcomeRevoke; + if (inputStr == "Reinstate") output = ResolutionOutcomeReinstate; + if (inputStr == "Manual") output = ResolutionOutcomeManual; + } + + enum ResultTableNodeType + { + ResultTableNodeTypeItemId, + ResultTableNodeTypeTableId + }; + + inline void ToJsonEnum(const ResultTableNodeType input, Json::Value& output) + { + if (input == ResultTableNodeTypeItemId) output = Json::Value("ItemId"); + if (input == ResultTableNodeTypeTableId) output = Json::Value("TableId"); + } + inline void FromJsonEnum(const Json::Value& input, ResultTableNodeType& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "ItemId") output = ResultTableNodeTypeItemId; + if (inputStr == "TableId") output = ResultTableNodeTypeTableId; + } + + enum ScheduledTaskType + { + ScheduledTaskTypeCloudScript, + ScheduledTaskTypeActionsOnPlayerSegment + }; + + inline void ToJsonEnum(const ScheduledTaskType input, Json::Value& output) + { + if (input == ScheduledTaskTypeCloudScript) output = Json::Value("CloudScript"); + if (input == ScheduledTaskTypeActionsOnPlayerSegment) output = Json::Value("ActionsOnPlayerSegment"); + } + inline void FromJsonEnum(const Json::Value& input, ScheduledTaskType& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "CloudScript") output = ScheduledTaskTypeCloudScript; + if (inputStr == "ActionsOnPlayerSegment") output = ScheduledTaskTypeActionsOnPlayerSegment; + } + + enum SourceType + { + SourceTypeAdmin, + SourceTypeBackEnd, + SourceTypeGameClient, + SourceTypeGameServer, + SourceTypePartner + }; + + inline void ToJsonEnum(const SourceType input, Json::Value& output) + { + if (input == SourceTypeAdmin) output = Json::Value("Admin"); + if (input == SourceTypeBackEnd) output = Json::Value("BackEnd"); + if (input == SourceTypeGameClient) output = Json::Value("GameClient"); + if (input == SourceTypeGameServer) output = Json::Value("GameServer"); + if (input == SourceTypePartner) output = Json::Value("Partner"); + } + inline void FromJsonEnum(const Json::Value& input, SourceType& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Admin") output = SourceTypeAdmin; + if (inputStr == "BackEnd") output = SourceTypeBackEnd; + if (inputStr == "GameClient") output = SourceTypeGameClient; + if (inputStr == "GameServer") output = SourceTypeGameServer; + if (inputStr == "Partner") output = SourceTypePartner; + } + + enum StatisticAggregationMethod + { + StatisticAggregationMethodLast, + StatisticAggregationMethodMin, + StatisticAggregationMethodMax, + StatisticAggregationMethodSum + }; + + inline void ToJsonEnum(const StatisticAggregationMethod input, Json::Value& output) + { + if (input == StatisticAggregationMethodLast) output = Json::Value("Last"); + if (input == StatisticAggregationMethodMin) output = Json::Value("Min"); + if (input == StatisticAggregationMethodMax) output = Json::Value("Max"); + if (input == StatisticAggregationMethodSum) output = Json::Value("Sum"); + } + inline void FromJsonEnum(const Json::Value& input, StatisticAggregationMethod& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Last") output = StatisticAggregationMethodLast; + if (inputStr == "Min") output = StatisticAggregationMethodMin; + if (inputStr == "Max") output = StatisticAggregationMethodMax; + if (inputStr == "Sum") output = StatisticAggregationMethodSum; + } + + enum StatisticResetIntervalOption + { + StatisticResetIntervalOptionNever, + StatisticResetIntervalOptionHour, + StatisticResetIntervalOptionDay, + StatisticResetIntervalOptionWeek, + StatisticResetIntervalOptionMonth + }; + + inline void ToJsonEnum(const StatisticResetIntervalOption input, Json::Value& output) + { + if (input == StatisticResetIntervalOptionNever) output = Json::Value("Never"); + if (input == StatisticResetIntervalOptionHour) output = Json::Value("Hour"); + if (input == StatisticResetIntervalOptionDay) output = Json::Value("Day"); + if (input == StatisticResetIntervalOptionWeek) output = Json::Value("Week"); + if (input == StatisticResetIntervalOptionMonth) output = Json::Value("Month"); + } + inline void FromJsonEnum(const Json::Value& input, StatisticResetIntervalOption& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Never") output = StatisticResetIntervalOptionNever; + if (inputStr == "Hour") output = StatisticResetIntervalOptionHour; + if (inputStr == "Day") output = StatisticResetIntervalOptionDay; + if (inputStr == "Week") output = StatisticResetIntervalOptionWeek; + if (inputStr == "Month") output = StatisticResetIntervalOptionMonth; + } + + enum StatisticVersionArchivalStatus + { + StatisticVersionArchivalStatusNotScheduled, + StatisticVersionArchivalStatusScheduled, + StatisticVersionArchivalStatusQueued, + StatisticVersionArchivalStatusInProgress, + StatisticVersionArchivalStatusComplete + }; + + inline void ToJsonEnum(const StatisticVersionArchivalStatus input, Json::Value& output) + { + if (input == StatisticVersionArchivalStatusNotScheduled) output = Json::Value("NotScheduled"); + if (input == StatisticVersionArchivalStatusScheduled) output = Json::Value("Scheduled"); + if (input == StatisticVersionArchivalStatusQueued) output = Json::Value("Queued"); + if (input == StatisticVersionArchivalStatusInProgress) output = Json::Value("InProgress"); + if (input == StatisticVersionArchivalStatusComplete) output = Json::Value("Complete"); + } + inline void FromJsonEnum(const Json::Value& input, StatisticVersionArchivalStatus& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "NotScheduled") output = StatisticVersionArchivalStatusNotScheduled; + if (inputStr == "Scheduled") output = StatisticVersionArchivalStatusScheduled; + if (inputStr == "Queued") output = StatisticVersionArchivalStatusQueued; + if (inputStr == "InProgress") output = StatisticVersionArchivalStatusInProgress; + if (inputStr == "Complete") output = StatisticVersionArchivalStatusComplete; + } + + enum StatisticVersionStatus + { + StatisticVersionStatusActive, + StatisticVersionStatusSnapshotPending, + StatisticVersionStatusSnapshot, + StatisticVersionStatusArchivalPending, + StatisticVersionStatusArchived + }; + + inline void ToJsonEnum(const StatisticVersionStatus input, Json::Value& output) + { + if (input == StatisticVersionStatusActive) output = Json::Value("Active"); + if (input == StatisticVersionStatusSnapshotPending) output = Json::Value("SnapshotPending"); + if (input == StatisticVersionStatusSnapshot) output = Json::Value("Snapshot"); + if (input == StatisticVersionStatusArchivalPending) output = Json::Value("ArchivalPending"); + if (input == StatisticVersionStatusArchived) output = Json::Value("Archived"); + } + inline void FromJsonEnum(const Json::Value& input, StatisticVersionStatus& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Active") output = StatisticVersionStatusActive; + if (inputStr == "SnapshotPending") output = StatisticVersionStatusSnapshotPending; + if (inputStr == "Snapshot") output = StatisticVersionStatusSnapshot; + if (inputStr == "ArchivalPending") output = StatisticVersionStatusArchivalPending; + if (inputStr == "Archived") output = StatisticVersionStatusArchived; + } + + enum SubscriptionProviderStatus + { + SubscriptionProviderStatusNoError, + SubscriptionProviderStatusCancelled, + SubscriptionProviderStatusUnknownError, + SubscriptionProviderStatusBillingError, + SubscriptionProviderStatusProductUnavailable, + SubscriptionProviderStatusCustomerDidNotAcceptPriceChange, + SubscriptionProviderStatusFreeTrial, + SubscriptionProviderStatusPaymentPending + }; + + inline void ToJsonEnum(const SubscriptionProviderStatus input, Json::Value& output) + { + if (input == SubscriptionProviderStatusNoError) output = Json::Value("NoError"); + if (input == SubscriptionProviderStatusCancelled) output = Json::Value("Cancelled"); + if (input == SubscriptionProviderStatusUnknownError) output = Json::Value("UnknownError"); + if (input == SubscriptionProviderStatusBillingError) output = Json::Value("BillingError"); + if (input == SubscriptionProviderStatusProductUnavailable) output = Json::Value("ProductUnavailable"); + if (input == SubscriptionProviderStatusCustomerDidNotAcceptPriceChange) output = Json::Value("CustomerDidNotAcceptPriceChange"); + if (input == SubscriptionProviderStatusFreeTrial) output = Json::Value("FreeTrial"); + if (input == SubscriptionProviderStatusPaymentPending) output = Json::Value("PaymentPending"); + } + inline void FromJsonEnum(const Json::Value& input, SubscriptionProviderStatus& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "NoError") output = SubscriptionProviderStatusNoError; + if (inputStr == "Cancelled") output = SubscriptionProviderStatusCancelled; + if (inputStr == "UnknownError") output = SubscriptionProviderStatusUnknownError; + if (inputStr == "BillingError") output = SubscriptionProviderStatusBillingError; + if (inputStr == "ProductUnavailable") output = SubscriptionProviderStatusProductUnavailable; + if (inputStr == "CustomerDidNotAcceptPriceChange") output = SubscriptionProviderStatusCustomerDidNotAcceptPriceChange; + if (inputStr == "FreeTrial") output = SubscriptionProviderStatusFreeTrial; + if (inputStr == "PaymentPending") output = SubscriptionProviderStatusPaymentPending; + } + + enum TaskInstanceStatus + { + TaskInstanceStatusSucceeded, + TaskInstanceStatusStarting, + TaskInstanceStatusInProgress, + TaskInstanceStatusFailed, + TaskInstanceStatusAborted, + TaskInstanceStatusPending + }; + + inline void ToJsonEnum(const TaskInstanceStatus input, Json::Value& output) + { + if (input == TaskInstanceStatusSucceeded) output = Json::Value("Succeeded"); + if (input == TaskInstanceStatusStarting) output = Json::Value("Starting"); + if (input == TaskInstanceStatusInProgress) output = Json::Value("InProgress"); + if (input == TaskInstanceStatusFailed) output = Json::Value("Failed"); + if (input == TaskInstanceStatusAborted) output = Json::Value("Aborted"); + if (input == TaskInstanceStatusPending) output = Json::Value("Pending"); + } + inline void FromJsonEnum(const Json::Value& input, TaskInstanceStatus& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Succeeded") output = TaskInstanceStatusSucceeded; + if (inputStr == "Starting") output = TaskInstanceStatusStarting; + if (inputStr == "InProgress") output = TaskInstanceStatusInProgress; + if (inputStr == "Failed") output = TaskInstanceStatusFailed; + if (inputStr == "Aborted") output = TaskInstanceStatusAborted; + if (inputStr == "Pending") output = TaskInstanceStatusPending; + } + + enum TitleActivationStatus + { + TitleActivationStatusNone, + TitleActivationStatusActivatedTitleKey, + TitleActivationStatusPendingSteam, + TitleActivationStatusActivatedSteam, + TitleActivationStatusRevokedSteam + }; + + inline void ToJsonEnum(const TitleActivationStatus input, Json::Value& output) + { + if (input == TitleActivationStatusNone) output = Json::Value("None"); + if (input == TitleActivationStatusActivatedTitleKey) output = Json::Value("ActivatedTitleKey"); + if (input == TitleActivationStatusPendingSteam) output = Json::Value("PendingSteam"); + if (input == TitleActivationStatusActivatedSteam) output = Json::Value("ActivatedSteam"); + if (input == TitleActivationStatusRevokedSteam) output = Json::Value("RevokedSteam"); + } + inline void FromJsonEnum(const Json::Value& input, TitleActivationStatus& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "None") output = TitleActivationStatusNone; + if (inputStr == "ActivatedTitleKey") output = TitleActivationStatusActivatedTitleKey; + if (inputStr == "PendingSteam") output = TitleActivationStatusPendingSteam; + if (inputStr == "ActivatedSteam") output = TitleActivationStatusActivatedSteam; + if (inputStr == "RevokedSteam") output = TitleActivationStatusRevokedSteam; + } + + enum UserDataPermission + { + UserDataPermissionPrivate, + UserDataPermissionPublic + }; + + inline void ToJsonEnum(const UserDataPermission input, Json::Value& output) + { + if (input == UserDataPermissionPrivate) output = Json::Value("Private"); + if (input == UserDataPermissionPublic) output = Json::Value("Public"); + } + inline void FromJsonEnum(const Json::Value& input, UserDataPermission& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Private") output = UserDataPermissionPrivate; + if (inputStr == "Public") output = UserDataPermissionPublic; + } + + enum UserOrigination + { + UserOriginationOrganic, + UserOriginationSteam, + UserOriginationGoogle, + UserOriginationAmazon, + UserOriginationFacebook, + UserOriginationKongregate, + UserOriginationGamersFirst, + UserOriginationUnknown, + UserOriginationIOS, + UserOriginationLoadTest, + UserOriginationAndroid, + UserOriginationPSN, + UserOriginationGameCenter, + UserOriginationCustomId, + UserOriginationXboxLive, + UserOriginationParse, + UserOriginationTwitch, + UserOriginationWindowsHello + }; + + inline void ToJsonEnum(const UserOrigination input, Json::Value& output) + { + if (input == UserOriginationOrganic) output = Json::Value("Organic"); + if (input == UserOriginationSteam) output = Json::Value("Steam"); + if (input == UserOriginationGoogle) output = Json::Value("Google"); + if (input == UserOriginationAmazon) output = Json::Value("Amazon"); + if (input == UserOriginationFacebook) output = Json::Value("Facebook"); + if (input == UserOriginationKongregate) output = Json::Value("Kongregate"); + if (input == UserOriginationGamersFirst) output = Json::Value("GamersFirst"); + if (input == UserOriginationUnknown) output = Json::Value("Unknown"); + if (input == UserOriginationIOS) output = Json::Value("IOS"); + if (input == UserOriginationLoadTest) output = Json::Value("LoadTest"); + if (input == UserOriginationAndroid) output = Json::Value("Android"); + if (input == UserOriginationPSN) output = Json::Value("PSN"); + if (input == UserOriginationGameCenter) output = Json::Value("GameCenter"); + if (input == UserOriginationCustomId) output = Json::Value("CustomId"); + if (input == UserOriginationXboxLive) output = Json::Value("XboxLive"); + if (input == UserOriginationParse) output = Json::Value("Parse"); + if (input == UserOriginationTwitch) output = Json::Value("Twitch"); + if (input == UserOriginationWindowsHello) output = Json::Value("WindowsHello"); + } + inline void FromJsonEnum(const Json::Value& input, UserOrigination& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Organic") output = UserOriginationOrganic; + if (inputStr == "Steam") output = UserOriginationSteam; + if (inputStr == "Google") output = UserOriginationGoogle; + if (inputStr == "Amazon") output = UserOriginationAmazon; + if (inputStr == "Facebook") output = UserOriginationFacebook; + if (inputStr == "Kongregate") output = UserOriginationKongregate; + if (inputStr == "GamersFirst") output = UserOriginationGamersFirst; + if (inputStr == "Unknown") output = UserOriginationUnknown; + if (inputStr == "IOS") output = UserOriginationIOS; + if (inputStr == "LoadTest") output = UserOriginationLoadTest; + if (inputStr == "Android") output = UserOriginationAndroid; + if (inputStr == "PSN") output = UserOriginationPSN; + if (inputStr == "GameCenter") output = UserOriginationGameCenter; + if (inputStr == "CustomId") output = UserOriginationCustomId; + if (inputStr == "XboxLive") output = UserOriginationXboxLive; + if (inputStr == "Parse") output = UserOriginationParse; + if (inputStr == "Twitch") output = UserOriginationTwitch; + if (inputStr == "WindowsHello") output = UserOriginationWindowsHello; + } + + // Admin Classes + struct AbortTaskInstanceRequest : public PlayFabRequestCommon + { + std::string TaskInstanceId; + + AbortTaskInstanceRequest() : + PlayFabRequestCommon(), + TaskInstanceId() + {} + + AbortTaskInstanceRequest(const AbortTaskInstanceRequest& src) : + PlayFabRequestCommon(), + TaskInstanceId(src.TaskInstanceId) + {} + + ~AbortTaskInstanceRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["TaskInstanceId"], TaskInstanceId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_TaskInstanceId; ToJsonUtilS(TaskInstanceId, each_TaskInstanceId); output["TaskInstanceId"] = each_TaskInstanceId; + return output; + } + }; + + struct ActionsOnPlayersInSegmentTaskParameter : public PlayFabBaseModel + { + std::string ActionId; + std::string SegmentId; + + ActionsOnPlayersInSegmentTaskParameter() : + PlayFabBaseModel(), + ActionId(), + SegmentId() + {} + + ActionsOnPlayersInSegmentTaskParameter(const ActionsOnPlayersInSegmentTaskParameter& src) : + PlayFabBaseModel(), + ActionId(src.ActionId), + SegmentId(src.SegmentId) + {} + + ~ActionsOnPlayersInSegmentTaskParameter() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ActionId"], ActionId); + FromJsonUtilS(input["SegmentId"], SegmentId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ActionId; ToJsonUtilS(ActionId, each_ActionId); output["ActionId"] = each_ActionId; + Json::Value each_SegmentId; ToJsonUtilS(SegmentId, each_SegmentId); output["SegmentId"] = each_SegmentId; + return output; + } + }; + + struct NameIdentifier : public PlayFabBaseModel + { + std::string Id; + std::string Name; + + NameIdentifier() : + PlayFabBaseModel(), + Id(), + Name() + {} + + NameIdentifier(const NameIdentifier& src) : + PlayFabBaseModel(), + Id(src.Id), + Name(src.Name) + {} + + ~NameIdentifier() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Id"], Id); + FromJsonUtilS(input["Name"], Name); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Id; ToJsonUtilS(Id, each_Id); output["Id"] = each_Id; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + return output; + } + }; + + struct ActionsOnPlayersInSegmentTaskSummary : public PlayFabBaseModel + { + Boxed CompletedAt; + std::string ErrorMessage; + Boxed ErrorWasFatal; + Boxed EstimatedSecondsRemaining; + Boxed PercentComplete; + std::string ScheduledByUserId; + time_t StartedAt; + Boxed Status; + Boxed TaskIdentifier; + std::string TaskInstanceId; + Boxed TotalPlayersInSegment; + Boxed TotalPlayersProcessed; + + ActionsOnPlayersInSegmentTaskSummary() : + PlayFabBaseModel(), + CompletedAt(), + ErrorMessage(), + ErrorWasFatal(), + EstimatedSecondsRemaining(), + PercentComplete(), + ScheduledByUserId(), + StartedAt(), + Status(), + TaskIdentifier(), + TaskInstanceId(), + TotalPlayersInSegment(), + TotalPlayersProcessed() + {} + + ActionsOnPlayersInSegmentTaskSummary(const ActionsOnPlayersInSegmentTaskSummary& src) : + PlayFabBaseModel(), + CompletedAt(src.CompletedAt), + ErrorMessage(src.ErrorMessage), + ErrorWasFatal(src.ErrorWasFatal), + EstimatedSecondsRemaining(src.EstimatedSecondsRemaining), + PercentComplete(src.PercentComplete), + ScheduledByUserId(src.ScheduledByUserId), + StartedAt(src.StartedAt), + Status(src.Status), + TaskIdentifier(src.TaskIdentifier), + TaskInstanceId(src.TaskInstanceId), + TotalPlayersInSegment(src.TotalPlayersInSegment), + TotalPlayersProcessed(src.TotalPlayersProcessed) + {} + + ~ActionsOnPlayersInSegmentTaskSummary() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["CompletedAt"], CompletedAt); + FromJsonUtilS(input["ErrorMessage"], ErrorMessage); + FromJsonUtilP(input["ErrorWasFatal"], ErrorWasFatal); + FromJsonUtilP(input["EstimatedSecondsRemaining"], EstimatedSecondsRemaining); + FromJsonUtilP(input["PercentComplete"], PercentComplete); + FromJsonUtilS(input["ScheduledByUserId"], ScheduledByUserId); + FromJsonUtilT(input["StartedAt"], StartedAt); + FromJsonUtilE(input["Status"], Status); + FromJsonUtilO(input["TaskIdentifier"], TaskIdentifier); + FromJsonUtilS(input["TaskInstanceId"], TaskInstanceId); + FromJsonUtilP(input["TotalPlayersInSegment"], TotalPlayersInSegment); + FromJsonUtilP(input["TotalPlayersProcessed"], TotalPlayersProcessed); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CompletedAt; ToJsonUtilT(CompletedAt, each_CompletedAt); output["CompletedAt"] = each_CompletedAt; + Json::Value each_ErrorMessage; ToJsonUtilS(ErrorMessage, each_ErrorMessage); output["ErrorMessage"] = each_ErrorMessage; + Json::Value each_ErrorWasFatal; ToJsonUtilP(ErrorWasFatal, each_ErrorWasFatal); output["ErrorWasFatal"] = each_ErrorWasFatal; + Json::Value each_EstimatedSecondsRemaining; ToJsonUtilP(EstimatedSecondsRemaining, each_EstimatedSecondsRemaining); output["EstimatedSecondsRemaining"] = each_EstimatedSecondsRemaining; + Json::Value each_PercentComplete; ToJsonUtilP(PercentComplete, each_PercentComplete); output["PercentComplete"] = each_PercentComplete; + Json::Value each_ScheduledByUserId; ToJsonUtilS(ScheduledByUserId, each_ScheduledByUserId); output["ScheduledByUserId"] = each_ScheduledByUserId; + Json::Value each_StartedAt; ToJsonUtilT(StartedAt, each_StartedAt); output["StartedAt"] = each_StartedAt; + Json::Value each_Status; ToJsonUtilE(Status, each_Status); output["Status"] = each_Status; + Json::Value each_TaskIdentifier; ToJsonUtilO(TaskIdentifier, each_TaskIdentifier); output["TaskIdentifier"] = each_TaskIdentifier; + Json::Value each_TaskInstanceId; ToJsonUtilS(TaskInstanceId, each_TaskInstanceId); output["TaskInstanceId"] = each_TaskInstanceId; + Json::Value each_TotalPlayersInSegment; ToJsonUtilP(TotalPlayersInSegment, each_TotalPlayersInSegment); output["TotalPlayersInSegment"] = each_TotalPlayersInSegment; + Json::Value each_TotalPlayersProcessed; ToJsonUtilP(TotalPlayersProcessed, each_TotalPlayersProcessed); output["TotalPlayersProcessed"] = each_TotalPlayersProcessed; + return output; + } + }; + + struct AdCampaignAttribution : public PlayFabBaseModel + { + time_t AttributedAt; + std::string CampaignId; + std::string Platform; + + AdCampaignAttribution() : + PlayFabBaseModel(), + AttributedAt(), + CampaignId(), + Platform() + {} + + AdCampaignAttribution(const AdCampaignAttribution& src) : + PlayFabBaseModel(), + AttributedAt(src.AttributedAt), + CampaignId(src.CampaignId), + Platform(src.Platform) + {} + + ~AdCampaignAttribution() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["AttributedAt"], AttributedAt); + FromJsonUtilS(input["CampaignId"], CampaignId); + FromJsonUtilS(input["Platform"], Platform); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AttributedAt; ToJsonUtilT(AttributedAt, each_AttributedAt); output["AttributedAt"] = each_AttributedAt; + Json::Value each_CampaignId; ToJsonUtilS(CampaignId, each_CampaignId); output["CampaignId"] = each_CampaignId; + Json::Value each_Platform; ToJsonUtilS(Platform, each_Platform); output["Platform"] = each_Platform; + return output; + } + }; + + struct AdCampaignAttributionModel : public PlayFabBaseModel + { + time_t AttributedAt; + std::string CampaignId; + std::string Platform; + + AdCampaignAttributionModel() : + PlayFabBaseModel(), + AttributedAt(), + CampaignId(), + Platform() + {} + + AdCampaignAttributionModel(const AdCampaignAttributionModel& src) : + PlayFabBaseModel(), + AttributedAt(src.AttributedAt), + CampaignId(src.CampaignId), + Platform(src.Platform) + {} + + ~AdCampaignAttributionModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["AttributedAt"], AttributedAt); + FromJsonUtilS(input["CampaignId"], CampaignId); + FromJsonUtilS(input["Platform"], Platform); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AttributedAt; ToJsonUtilT(AttributedAt, each_AttributedAt); output["AttributedAt"] = each_AttributedAt; + Json::Value each_CampaignId; ToJsonUtilS(CampaignId, each_CampaignId); output["CampaignId"] = each_CampaignId; + Json::Value each_Platform; ToJsonUtilS(Platform, each_Platform); output["Platform"] = each_Platform; + return output; + } + }; + + struct AddNewsRequest : public PlayFabRequestCommon + { + std::string Body; + Boxed Timestamp; + std::string Title; + + AddNewsRequest() : + PlayFabRequestCommon(), + Body(), + Timestamp(), + Title() + {} + + AddNewsRequest(const AddNewsRequest& src) : + PlayFabRequestCommon(), + Body(src.Body), + Timestamp(src.Timestamp), + Title(src.Title) + {} + + ~AddNewsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Body"], Body); + FromJsonUtilT(input["Timestamp"], Timestamp); + FromJsonUtilS(input["Title"], Title); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Body; ToJsonUtilS(Body, each_Body); output["Body"] = each_Body; + Json::Value each_Timestamp; ToJsonUtilT(Timestamp, each_Timestamp); output["Timestamp"] = each_Timestamp; + Json::Value each_Title; ToJsonUtilS(Title, each_Title); output["Title"] = each_Title; + return output; + } + }; + + struct AddNewsResult : public PlayFabResultCommon + { + std::string NewsId; + + AddNewsResult() : + PlayFabResultCommon(), + NewsId() + {} + + AddNewsResult(const AddNewsResult& src) : + PlayFabResultCommon(), + NewsId(src.NewsId) + {} + + ~AddNewsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["NewsId"], NewsId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_NewsId; ToJsonUtilS(NewsId, each_NewsId); output["NewsId"] = each_NewsId; + return output; + } + }; + + struct AddPlayerTagRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + std::string TagName; + + AddPlayerTagRequest() : + PlayFabRequestCommon(), + PlayFabId(), + TagName() + {} + + AddPlayerTagRequest(const AddPlayerTagRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId), + TagName(src.TagName) + {} + + ~AddPlayerTagRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["TagName"], TagName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_TagName; ToJsonUtilS(TagName, each_TagName); output["TagName"] = each_TagName; + return output; + } + }; + + struct AddPlayerTagResult : public PlayFabResultCommon + { + + AddPlayerTagResult() : + PlayFabResultCommon() + {} + + AddPlayerTagResult(const AddPlayerTagResult&) : + PlayFabResultCommon() + {} + + ~AddPlayerTagResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct AddServerBuildRequest : public PlayFabRequestCommon + { + std::list ActiveRegions; + std::string BuildId; + std::string CommandLineTemplate; + std::string Comment; + std::string ExecutablePath; + Int32 MaxGamesPerHost; + Int32 MinFreeGameSlots; + + AddServerBuildRequest() : + PlayFabRequestCommon(), + ActiveRegions(), + BuildId(), + CommandLineTemplate(), + Comment(), + ExecutablePath(), + MaxGamesPerHost(), + MinFreeGameSlots() + {} + + AddServerBuildRequest(const AddServerBuildRequest& src) : + PlayFabRequestCommon(), + ActiveRegions(src.ActiveRegions), + BuildId(src.BuildId), + CommandLineTemplate(src.CommandLineTemplate), + Comment(src.Comment), + ExecutablePath(src.ExecutablePath), + MaxGamesPerHost(src.MaxGamesPerHost), + MinFreeGameSlots(src.MinFreeGameSlots) + {} + + ~AddServerBuildRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilE(input["ActiveRegions"], ActiveRegions); + FromJsonUtilS(input["BuildId"], BuildId); + FromJsonUtilS(input["CommandLineTemplate"], CommandLineTemplate); + FromJsonUtilS(input["Comment"], Comment); + FromJsonUtilS(input["ExecutablePath"], ExecutablePath); + FromJsonUtilP(input["MaxGamesPerHost"], MaxGamesPerHost); + FromJsonUtilP(input["MinFreeGameSlots"], MinFreeGameSlots); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ActiveRegions; ToJsonUtilE(ActiveRegions, each_ActiveRegions); output["ActiveRegions"] = each_ActiveRegions; + Json::Value each_BuildId; ToJsonUtilS(BuildId, each_BuildId); output["BuildId"] = each_BuildId; + Json::Value each_CommandLineTemplate; ToJsonUtilS(CommandLineTemplate, each_CommandLineTemplate); output["CommandLineTemplate"] = each_CommandLineTemplate; + Json::Value each_Comment; ToJsonUtilS(Comment, each_Comment); output["Comment"] = each_Comment; + Json::Value each_ExecutablePath; ToJsonUtilS(ExecutablePath, each_ExecutablePath); output["ExecutablePath"] = each_ExecutablePath; + Json::Value each_MaxGamesPerHost; ToJsonUtilP(MaxGamesPerHost, each_MaxGamesPerHost); output["MaxGamesPerHost"] = each_MaxGamesPerHost; + Json::Value each_MinFreeGameSlots; ToJsonUtilP(MinFreeGameSlots, each_MinFreeGameSlots); output["MinFreeGameSlots"] = each_MinFreeGameSlots; + return output; + } + }; + + struct AddServerBuildResult : public PlayFabResultCommon + { + std::list ActiveRegions; + std::string BuildId; + std::string CommandLineTemplate; + std::string Comment; + std::string ExecutablePath; + Int32 MaxGamesPerHost; + Int32 MinFreeGameSlots; + Boxed Status; + time_t Timestamp; + std::string TitleId; + + AddServerBuildResult() : + PlayFabResultCommon(), + ActiveRegions(), + BuildId(), + CommandLineTemplate(), + Comment(), + ExecutablePath(), + MaxGamesPerHost(), + MinFreeGameSlots(), + Status(), + Timestamp(), + TitleId() + {} + + AddServerBuildResult(const AddServerBuildResult& src) : + PlayFabResultCommon(), + ActiveRegions(src.ActiveRegions), + BuildId(src.BuildId), + CommandLineTemplate(src.CommandLineTemplate), + Comment(src.Comment), + ExecutablePath(src.ExecutablePath), + MaxGamesPerHost(src.MaxGamesPerHost), + MinFreeGameSlots(src.MinFreeGameSlots), + Status(src.Status), + Timestamp(src.Timestamp), + TitleId(src.TitleId) + {} + + ~AddServerBuildResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilE(input["ActiveRegions"], ActiveRegions); + FromJsonUtilS(input["BuildId"], BuildId); + FromJsonUtilS(input["CommandLineTemplate"], CommandLineTemplate); + FromJsonUtilS(input["Comment"], Comment); + FromJsonUtilS(input["ExecutablePath"], ExecutablePath); + FromJsonUtilP(input["MaxGamesPerHost"], MaxGamesPerHost); + FromJsonUtilP(input["MinFreeGameSlots"], MinFreeGameSlots); + FromJsonUtilE(input["Status"], Status); + FromJsonUtilT(input["Timestamp"], Timestamp); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ActiveRegions; ToJsonUtilE(ActiveRegions, each_ActiveRegions); output["ActiveRegions"] = each_ActiveRegions; + Json::Value each_BuildId; ToJsonUtilS(BuildId, each_BuildId); output["BuildId"] = each_BuildId; + Json::Value each_CommandLineTemplate; ToJsonUtilS(CommandLineTemplate, each_CommandLineTemplate); output["CommandLineTemplate"] = each_CommandLineTemplate; + Json::Value each_Comment; ToJsonUtilS(Comment, each_Comment); output["Comment"] = each_Comment; + Json::Value each_ExecutablePath; ToJsonUtilS(ExecutablePath, each_ExecutablePath); output["ExecutablePath"] = each_ExecutablePath; + Json::Value each_MaxGamesPerHost; ToJsonUtilP(MaxGamesPerHost, each_MaxGamesPerHost); output["MaxGamesPerHost"] = each_MaxGamesPerHost; + Json::Value each_MinFreeGameSlots; ToJsonUtilP(MinFreeGameSlots, each_MinFreeGameSlots); output["MinFreeGameSlots"] = each_MinFreeGameSlots; + Json::Value each_Status; ToJsonUtilE(Status, each_Status); output["Status"] = each_Status; + Json::Value each_Timestamp; ToJsonUtilT(Timestamp, each_Timestamp); output["Timestamp"] = each_Timestamp; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct AddUserVirtualCurrencyRequest : public PlayFabRequestCommon + { + Int32 Amount; + std::string PlayFabId; + std::string VirtualCurrency; + + AddUserVirtualCurrencyRequest() : + PlayFabRequestCommon(), + Amount(), + PlayFabId(), + VirtualCurrency() + {} + + AddUserVirtualCurrencyRequest(const AddUserVirtualCurrencyRequest& src) : + PlayFabRequestCommon(), + Amount(src.Amount), + PlayFabId(src.PlayFabId), + VirtualCurrency(src.VirtualCurrency) + {} + + ~AddUserVirtualCurrencyRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Amount"], Amount); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["VirtualCurrency"], VirtualCurrency); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Amount; ToJsonUtilP(Amount, each_Amount); output["Amount"] = each_Amount; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_VirtualCurrency; ToJsonUtilS(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + return output; + } + }; + + struct VirtualCurrencyData : public PlayFabBaseModel + { + std::string CurrencyCode; + std::string DisplayName; + Boxed InitialDeposit; + Boxed RechargeMax; + Boxed RechargeRate; + + VirtualCurrencyData() : + PlayFabBaseModel(), + CurrencyCode(), + DisplayName(), + InitialDeposit(), + RechargeMax(), + RechargeRate() + {} + + VirtualCurrencyData(const VirtualCurrencyData& src) : + PlayFabBaseModel(), + CurrencyCode(src.CurrencyCode), + DisplayName(src.DisplayName), + InitialDeposit(src.InitialDeposit), + RechargeMax(src.RechargeMax), + RechargeRate(src.RechargeRate) + {} + + ~VirtualCurrencyData() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CurrencyCode"], CurrencyCode); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilP(input["InitialDeposit"], InitialDeposit); + FromJsonUtilP(input["RechargeMax"], RechargeMax); + FromJsonUtilP(input["RechargeRate"], RechargeRate); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CurrencyCode; ToJsonUtilS(CurrencyCode, each_CurrencyCode); output["CurrencyCode"] = each_CurrencyCode; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_InitialDeposit; ToJsonUtilP(InitialDeposit, each_InitialDeposit); output["InitialDeposit"] = each_InitialDeposit; + Json::Value each_RechargeMax; ToJsonUtilP(RechargeMax, each_RechargeMax); output["RechargeMax"] = each_RechargeMax; + Json::Value each_RechargeRate; ToJsonUtilP(RechargeRate, each_RechargeRate); output["RechargeRate"] = each_RechargeRate; + return output; + } + }; + + struct AddVirtualCurrencyTypesRequest : public PlayFabRequestCommon + { + std::list VirtualCurrencies; + + AddVirtualCurrencyTypesRequest() : + PlayFabRequestCommon(), + VirtualCurrencies() + {} + + AddVirtualCurrencyTypesRequest(const AddVirtualCurrencyTypesRequest& src) : + PlayFabRequestCommon(), + VirtualCurrencies(src.VirtualCurrencies) + {} + + ~AddVirtualCurrencyTypesRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["VirtualCurrencies"], VirtualCurrencies); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_VirtualCurrencies; ToJsonUtilO(VirtualCurrencies, each_VirtualCurrencies); output["VirtualCurrencies"] = each_VirtualCurrencies; + return output; + } + }; + + struct ApiCondition : public PlayFabBaseModel + { + Boxed HasSignatureOrEncryption; + + ApiCondition() : + PlayFabBaseModel(), + HasSignatureOrEncryption() + {} + + ApiCondition(const ApiCondition& src) : + PlayFabBaseModel(), + HasSignatureOrEncryption(src.HasSignatureOrEncryption) + {} + + ~ApiCondition() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilE(input["HasSignatureOrEncryption"], HasSignatureOrEncryption); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_HasSignatureOrEncryption; ToJsonUtilE(HasSignatureOrEncryption, each_HasSignatureOrEncryption); output["HasSignatureOrEncryption"] = each_HasSignatureOrEncryption; + return output; + } + }; + + struct BanInfo : public PlayFabBaseModel + { + bool Active; + std::string BanId; + Boxed Created; + Boxed Expires; + std::string IPAddress; + std::string MACAddress; + std::string PlayFabId; + std::string Reason; + + BanInfo() : + PlayFabBaseModel(), + Active(), + BanId(), + Created(), + Expires(), + IPAddress(), + MACAddress(), + PlayFabId(), + Reason() + {} + + BanInfo(const BanInfo& src) : + PlayFabBaseModel(), + Active(src.Active), + BanId(src.BanId), + Created(src.Created), + Expires(src.Expires), + IPAddress(src.IPAddress), + MACAddress(src.MACAddress), + PlayFabId(src.PlayFabId), + Reason(src.Reason) + {} + + ~BanInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Active"], Active); + FromJsonUtilS(input["BanId"], BanId); + FromJsonUtilT(input["Created"], Created); + FromJsonUtilT(input["Expires"], Expires); + FromJsonUtilS(input["IPAddress"], IPAddress); + FromJsonUtilS(input["MACAddress"], MACAddress); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["Reason"], Reason); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Active; ToJsonUtilP(Active, each_Active); output["Active"] = each_Active; + Json::Value each_BanId; ToJsonUtilS(BanId, each_BanId); output["BanId"] = each_BanId; + Json::Value each_Created; ToJsonUtilT(Created, each_Created); output["Created"] = each_Created; + Json::Value each_Expires; ToJsonUtilT(Expires, each_Expires); output["Expires"] = each_Expires; + Json::Value each_IPAddress; ToJsonUtilS(IPAddress, each_IPAddress); output["IPAddress"] = each_IPAddress; + Json::Value each_MACAddress; ToJsonUtilS(MACAddress, each_MACAddress); output["MACAddress"] = each_MACAddress; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Reason; ToJsonUtilS(Reason, each_Reason); output["Reason"] = each_Reason; + return output; + } + }; + + struct BanRequest : public PlayFabRequestCommon + { + Boxed DurationInHours; + std::string IPAddress; + std::string MACAddress; + std::string PlayFabId; + std::string Reason; + + BanRequest() : + PlayFabRequestCommon(), + DurationInHours(), + IPAddress(), + MACAddress(), + PlayFabId(), + Reason() + {} + + BanRequest(const BanRequest& src) : + PlayFabRequestCommon(), + DurationInHours(src.DurationInHours), + IPAddress(src.IPAddress), + MACAddress(src.MACAddress), + PlayFabId(src.PlayFabId), + Reason(src.Reason) + {} + + ~BanRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["DurationInHours"], DurationInHours); + FromJsonUtilS(input["IPAddress"], IPAddress); + FromJsonUtilS(input["MACAddress"], MACAddress); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["Reason"], Reason); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DurationInHours; ToJsonUtilP(DurationInHours, each_DurationInHours); output["DurationInHours"] = each_DurationInHours; + Json::Value each_IPAddress; ToJsonUtilS(IPAddress, each_IPAddress); output["IPAddress"] = each_IPAddress; + Json::Value each_MACAddress; ToJsonUtilS(MACAddress, each_MACAddress); output["MACAddress"] = each_MACAddress; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Reason; ToJsonUtilS(Reason, each_Reason); output["Reason"] = each_Reason; + return output; + } + }; + + struct BanUsersRequest : public PlayFabRequestCommon + { + std::list Bans; + + BanUsersRequest() : + PlayFabRequestCommon(), + Bans() + {} + + BanUsersRequest(const BanUsersRequest& src) : + PlayFabRequestCommon(), + Bans(src.Bans) + {} + + ~BanUsersRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Bans"], Bans); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Bans; ToJsonUtilO(Bans, each_Bans); output["Bans"] = each_Bans; + return output; + } + }; + + struct BanUsersResult : public PlayFabResultCommon + { + std::list BanData; + + BanUsersResult() : + PlayFabResultCommon(), + BanData() + {} + + BanUsersResult(const BanUsersResult& src) : + PlayFabResultCommon(), + BanData(src.BanData) + {} + + ~BanUsersResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["BanData"], BanData); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BanData; ToJsonUtilO(BanData, each_BanData); output["BanData"] = each_BanData; + return output; + } + }; + + struct BlankResult : public PlayFabResultCommon + { + + BlankResult() : + PlayFabResultCommon() + {} + + BlankResult(const BlankResult&) : + PlayFabResultCommon() + {} + + ~BlankResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct CatalogItemBundleInfo : public PlayFabBaseModel + { + std::list BundledItems; + std::list BundledResultTables; + std::map BundledVirtualCurrencies; + + CatalogItemBundleInfo() : + PlayFabBaseModel(), + BundledItems(), + BundledResultTables(), + BundledVirtualCurrencies() + {} + + CatalogItemBundleInfo(const CatalogItemBundleInfo& src) : + PlayFabBaseModel(), + BundledItems(src.BundledItems), + BundledResultTables(src.BundledResultTables), + BundledVirtualCurrencies(src.BundledVirtualCurrencies) + {} + + ~CatalogItemBundleInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["BundledItems"], BundledItems); + FromJsonUtilS(input["BundledResultTables"], BundledResultTables); + FromJsonUtilP(input["BundledVirtualCurrencies"], BundledVirtualCurrencies); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BundledItems; ToJsonUtilS(BundledItems, each_BundledItems); output["BundledItems"] = each_BundledItems; + Json::Value each_BundledResultTables; ToJsonUtilS(BundledResultTables, each_BundledResultTables); output["BundledResultTables"] = each_BundledResultTables; + Json::Value each_BundledVirtualCurrencies; ToJsonUtilP(BundledVirtualCurrencies, each_BundledVirtualCurrencies); output["BundledVirtualCurrencies"] = each_BundledVirtualCurrencies; + return output; + } + }; + + struct CatalogItemConsumableInfo : public PlayFabBaseModel + { + Boxed UsageCount; + Boxed UsagePeriod; + std::string UsagePeriodGroup; + + CatalogItemConsumableInfo() : + PlayFabBaseModel(), + UsageCount(), + UsagePeriod(), + UsagePeriodGroup() + {} + + CatalogItemConsumableInfo(const CatalogItemConsumableInfo& src) : + PlayFabBaseModel(), + UsageCount(src.UsageCount), + UsagePeriod(src.UsagePeriod), + UsagePeriodGroup(src.UsagePeriodGroup) + {} + + ~CatalogItemConsumableInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["UsageCount"], UsageCount); + FromJsonUtilP(input["UsagePeriod"], UsagePeriod); + FromJsonUtilS(input["UsagePeriodGroup"], UsagePeriodGroup); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_UsageCount; ToJsonUtilP(UsageCount, each_UsageCount); output["UsageCount"] = each_UsageCount; + Json::Value each_UsagePeriod; ToJsonUtilP(UsagePeriod, each_UsagePeriod); output["UsagePeriod"] = each_UsagePeriod; + Json::Value each_UsagePeriodGroup; ToJsonUtilS(UsagePeriodGroup, each_UsagePeriodGroup); output["UsagePeriodGroup"] = each_UsagePeriodGroup; + return output; + } + }; + + struct CatalogItemContainerInfo : public PlayFabBaseModel + { + std::list ItemContents; + std::string KeyItemId; + std::list ResultTableContents; + std::map VirtualCurrencyContents; + + CatalogItemContainerInfo() : + PlayFabBaseModel(), + ItemContents(), + KeyItemId(), + ResultTableContents(), + VirtualCurrencyContents() + {} + + CatalogItemContainerInfo(const CatalogItemContainerInfo& src) : + PlayFabBaseModel(), + ItemContents(src.ItemContents), + KeyItemId(src.KeyItemId), + ResultTableContents(src.ResultTableContents), + VirtualCurrencyContents(src.VirtualCurrencyContents) + {} + + ~CatalogItemContainerInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ItemContents"], ItemContents); + FromJsonUtilS(input["KeyItemId"], KeyItemId); + FromJsonUtilS(input["ResultTableContents"], ResultTableContents); + FromJsonUtilP(input["VirtualCurrencyContents"], VirtualCurrencyContents); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ItemContents; ToJsonUtilS(ItemContents, each_ItemContents); output["ItemContents"] = each_ItemContents; + Json::Value each_KeyItemId; ToJsonUtilS(KeyItemId, each_KeyItemId); output["KeyItemId"] = each_KeyItemId; + Json::Value each_ResultTableContents; ToJsonUtilS(ResultTableContents, each_ResultTableContents); output["ResultTableContents"] = each_ResultTableContents; + Json::Value each_VirtualCurrencyContents; ToJsonUtilP(VirtualCurrencyContents, each_VirtualCurrencyContents); output["VirtualCurrencyContents"] = each_VirtualCurrencyContents; + return output; + } + }; + + struct CatalogItem : public PlayFabBaseModel + { + Boxed Bundle; + bool CanBecomeCharacter; + std::string CatalogVersion; + Boxed Consumable; + Boxed Container; + std::string CustomData; + std::string Description; + std::string DisplayName; + Int32 InitialLimitedEditionCount; + bool IsLimitedEdition; + bool IsStackable; + bool IsTradable; + std::string ItemClass; + std::string ItemId; + std::string ItemImageUrl; + std::map RealCurrencyPrices; + std::list Tags; + std::map VirtualCurrencyPrices; + + CatalogItem() : + PlayFabBaseModel(), + Bundle(), + CanBecomeCharacter(), + CatalogVersion(), + Consumable(), + Container(), + CustomData(), + Description(), + DisplayName(), + InitialLimitedEditionCount(), + IsLimitedEdition(), + IsStackable(), + IsTradable(), + ItemClass(), + ItemId(), + ItemImageUrl(), + RealCurrencyPrices(), + Tags(), + VirtualCurrencyPrices() + {} + + CatalogItem(const CatalogItem& src) : + PlayFabBaseModel(), + Bundle(src.Bundle), + CanBecomeCharacter(src.CanBecomeCharacter), + CatalogVersion(src.CatalogVersion), + Consumable(src.Consumable), + Container(src.Container), + CustomData(src.CustomData), + Description(src.Description), + DisplayName(src.DisplayName), + InitialLimitedEditionCount(src.InitialLimitedEditionCount), + IsLimitedEdition(src.IsLimitedEdition), + IsStackable(src.IsStackable), + IsTradable(src.IsTradable), + ItemClass(src.ItemClass), + ItemId(src.ItemId), + ItemImageUrl(src.ItemImageUrl), + RealCurrencyPrices(src.RealCurrencyPrices), + Tags(src.Tags), + VirtualCurrencyPrices(src.VirtualCurrencyPrices) + {} + + ~CatalogItem() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Bundle"], Bundle); + FromJsonUtilP(input["CanBecomeCharacter"], CanBecomeCharacter); + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilO(input["Consumable"], Consumable); + FromJsonUtilO(input["Container"], Container); + FromJsonUtilS(input["CustomData"], CustomData); + FromJsonUtilS(input["Description"], Description); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilP(input["InitialLimitedEditionCount"], InitialLimitedEditionCount); + FromJsonUtilP(input["IsLimitedEdition"], IsLimitedEdition); + FromJsonUtilP(input["IsStackable"], IsStackable); + FromJsonUtilP(input["IsTradable"], IsTradable); + FromJsonUtilS(input["ItemClass"], ItemClass); + FromJsonUtilS(input["ItemId"], ItemId); + FromJsonUtilS(input["ItemImageUrl"], ItemImageUrl); + FromJsonUtilP(input["RealCurrencyPrices"], RealCurrencyPrices); + FromJsonUtilS(input["Tags"], Tags); + FromJsonUtilP(input["VirtualCurrencyPrices"], VirtualCurrencyPrices); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Bundle; ToJsonUtilO(Bundle, each_Bundle); output["Bundle"] = each_Bundle; + Json::Value each_CanBecomeCharacter; ToJsonUtilP(CanBecomeCharacter, each_CanBecomeCharacter); output["CanBecomeCharacter"] = each_CanBecomeCharacter; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_Consumable; ToJsonUtilO(Consumable, each_Consumable); output["Consumable"] = each_Consumable; + Json::Value each_Container; ToJsonUtilO(Container, each_Container); output["Container"] = each_Container; + Json::Value each_CustomData; ToJsonUtilS(CustomData, each_CustomData); output["CustomData"] = each_CustomData; + Json::Value each_Description; ToJsonUtilS(Description, each_Description); output["Description"] = each_Description; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_InitialLimitedEditionCount; ToJsonUtilP(InitialLimitedEditionCount, each_InitialLimitedEditionCount); output["InitialLimitedEditionCount"] = each_InitialLimitedEditionCount; + Json::Value each_IsLimitedEdition; ToJsonUtilP(IsLimitedEdition, each_IsLimitedEdition); output["IsLimitedEdition"] = each_IsLimitedEdition; + Json::Value each_IsStackable; ToJsonUtilP(IsStackable, each_IsStackable); output["IsStackable"] = each_IsStackable; + Json::Value each_IsTradable; ToJsonUtilP(IsTradable, each_IsTradable); output["IsTradable"] = each_IsTradable; + Json::Value each_ItemClass; ToJsonUtilS(ItemClass, each_ItemClass); output["ItemClass"] = each_ItemClass; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + Json::Value each_ItemImageUrl; ToJsonUtilS(ItemImageUrl, each_ItemImageUrl); output["ItemImageUrl"] = each_ItemImageUrl; + Json::Value each_RealCurrencyPrices; ToJsonUtilP(RealCurrencyPrices, each_RealCurrencyPrices); output["RealCurrencyPrices"] = each_RealCurrencyPrices; + Json::Value each_Tags; ToJsonUtilS(Tags, each_Tags); output["Tags"] = each_Tags; + Json::Value each_VirtualCurrencyPrices; ToJsonUtilP(VirtualCurrencyPrices, each_VirtualCurrencyPrices); output["VirtualCurrencyPrices"] = each_VirtualCurrencyPrices; + return output; + } + }; + + struct CheckLimitedEditionItemAvailabilityRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::string ItemId; + + CheckLimitedEditionItemAvailabilityRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + ItemId() + {} + + CheckLimitedEditionItemAvailabilityRequest(const CheckLimitedEditionItemAvailabilityRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + ItemId(src.ItemId) + {} + + ~CheckLimitedEditionItemAvailabilityRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["ItemId"], ItemId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + return output; + } + }; + + struct CheckLimitedEditionItemAvailabilityResult : public PlayFabResultCommon + { + Int32 Amount; + + CheckLimitedEditionItemAvailabilityResult() : + PlayFabResultCommon(), + Amount() + {} + + CheckLimitedEditionItemAvailabilityResult(const CheckLimitedEditionItemAvailabilityResult& src) : + PlayFabResultCommon(), + Amount(src.Amount) + {} + + ~CheckLimitedEditionItemAvailabilityResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Amount"], Amount); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Amount; ToJsonUtilP(Amount, each_Amount); output["Amount"] = each_Amount; + return output; + } + }; + + struct CloudScriptFile : public PlayFabBaseModel + { + std::string FileContents; + std::string Filename; + + CloudScriptFile() : + PlayFabBaseModel(), + FileContents(), + Filename() + {} + + CloudScriptFile(const CloudScriptFile& src) : + PlayFabBaseModel(), + FileContents(src.FileContents), + Filename(src.Filename) + {} + + ~CloudScriptFile() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FileContents"], FileContents); + FromJsonUtilS(input["Filename"], Filename); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FileContents; ToJsonUtilS(FileContents, each_FileContents); output["FileContents"] = each_FileContents; + Json::Value each_Filename; ToJsonUtilS(Filename, each_Filename); output["Filename"] = each_Filename; + return output; + } + }; + + struct CloudScriptTaskParameter : public PlayFabBaseModel + { + Json::Value Argument; + std::string FunctionName; + + CloudScriptTaskParameter() : + PlayFabBaseModel(), + Argument(), + FunctionName() + {} + + CloudScriptTaskParameter(const CloudScriptTaskParameter& src) : + PlayFabBaseModel(), + Argument(src.Argument), + FunctionName(src.FunctionName) + {} + + ~CloudScriptTaskParameter() { } + + void FromJson(Json::Value& input) override + { + Argument = input["Argument"]; + FromJsonUtilS(input["FunctionName"], FunctionName); + } + + Json::Value ToJson() const override + { + Json::Value output; + output["Argument"] = Argument; + Json::Value each_FunctionName; ToJsonUtilS(FunctionName, each_FunctionName); output["FunctionName"] = each_FunctionName; + return output; + } + }; + + struct ScriptExecutionError : public PlayFabBaseModel + { + std::string Error; + std::string Message; + std::string StackTrace; + + ScriptExecutionError() : + PlayFabBaseModel(), + Error(), + Message(), + StackTrace() + {} + + ScriptExecutionError(const ScriptExecutionError& src) : + PlayFabBaseModel(), + Error(src.Error), + Message(src.Message), + StackTrace(src.StackTrace) + {} + + ~ScriptExecutionError() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Error"], Error); + FromJsonUtilS(input["Message"], Message); + FromJsonUtilS(input["StackTrace"], StackTrace); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Error; ToJsonUtilS(Error, each_Error); output["Error"] = each_Error; + Json::Value each_Message; ToJsonUtilS(Message, each_Message); output["Message"] = each_Message; + Json::Value each_StackTrace; ToJsonUtilS(StackTrace, each_StackTrace); output["StackTrace"] = each_StackTrace; + return output; + } + }; + + struct LogStatement : public PlayFabBaseModel + { + Json::Value Data; + std::string Level; + std::string Message; + + LogStatement() : + PlayFabBaseModel(), + Data(), + Level(), + Message() + {} + + LogStatement(const LogStatement& src) : + PlayFabBaseModel(), + Data(src.Data), + Level(src.Level), + Message(src.Message) + {} + + ~LogStatement() { } + + void FromJson(Json::Value& input) override + { + Data = input["Data"]; + FromJsonUtilS(input["Level"], Level); + FromJsonUtilS(input["Message"], Message); + } + + Json::Value ToJson() const override + { + Json::Value output; + output["Data"] = Data; + Json::Value each_Level; ToJsonUtilS(Level, each_Level); output["Level"] = each_Level; + Json::Value each_Message; ToJsonUtilS(Message, each_Message); output["Message"] = each_Message; + return output; + } + }; + + struct ExecuteCloudScriptResult : public PlayFabResultCommon + { + Int32 APIRequestsIssued; + Boxed Error; + double ExecutionTimeSeconds; + std::string FunctionName; + Json::Value FunctionResult; + Boxed FunctionResultTooLarge; + Int32 HttpRequestsIssued; + std::list Logs; + Boxed LogsTooLarge; + Uint32 MemoryConsumedBytes; + double ProcessorTimeSeconds; + Int32 Revision; + + ExecuteCloudScriptResult() : + PlayFabResultCommon(), + APIRequestsIssued(), + Error(), + ExecutionTimeSeconds(), + FunctionName(), + FunctionResult(), + FunctionResultTooLarge(), + HttpRequestsIssued(), + Logs(), + LogsTooLarge(), + MemoryConsumedBytes(), + ProcessorTimeSeconds(), + Revision() + {} + + ExecuteCloudScriptResult(const ExecuteCloudScriptResult& src) : + PlayFabResultCommon(), + APIRequestsIssued(src.APIRequestsIssued), + Error(src.Error), + ExecutionTimeSeconds(src.ExecutionTimeSeconds), + FunctionName(src.FunctionName), + FunctionResult(src.FunctionResult), + FunctionResultTooLarge(src.FunctionResultTooLarge), + HttpRequestsIssued(src.HttpRequestsIssued), + Logs(src.Logs), + LogsTooLarge(src.LogsTooLarge), + MemoryConsumedBytes(src.MemoryConsumedBytes), + ProcessorTimeSeconds(src.ProcessorTimeSeconds), + Revision(src.Revision) + {} + + ~ExecuteCloudScriptResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["APIRequestsIssued"], APIRequestsIssued); + FromJsonUtilO(input["Error"], Error); + FromJsonUtilP(input["ExecutionTimeSeconds"], ExecutionTimeSeconds); + FromJsonUtilS(input["FunctionName"], FunctionName); + FunctionResult = input["FunctionResult"]; + FromJsonUtilP(input["FunctionResultTooLarge"], FunctionResultTooLarge); + FromJsonUtilP(input["HttpRequestsIssued"], HttpRequestsIssued); + FromJsonUtilO(input["Logs"], Logs); + FromJsonUtilP(input["LogsTooLarge"], LogsTooLarge); + FromJsonUtilP(input["MemoryConsumedBytes"], MemoryConsumedBytes); + FromJsonUtilP(input["ProcessorTimeSeconds"], ProcessorTimeSeconds); + FromJsonUtilP(input["Revision"], Revision); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_APIRequestsIssued; ToJsonUtilP(APIRequestsIssued, each_APIRequestsIssued); output["APIRequestsIssued"] = each_APIRequestsIssued; + Json::Value each_Error; ToJsonUtilO(Error, each_Error); output["Error"] = each_Error; + Json::Value each_ExecutionTimeSeconds; ToJsonUtilP(ExecutionTimeSeconds, each_ExecutionTimeSeconds); output["ExecutionTimeSeconds"] = each_ExecutionTimeSeconds; + Json::Value each_FunctionName; ToJsonUtilS(FunctionName, each_FunctionName); output["FunctionName"] = each_FunctionName; + output["FunctionResult"] = FunctionResult; + Json::Value each_FunctionResultTooLarge; ToJsonUtilP(FunctionResultTooLarge, each_FunctionResultTooLarge); output["FunctionResultTooLarge"] = each_FunctionResultTooLarge; + Json::Value each_HttpRequestsIssued; ToJsonUtilP(HttpRequestsIssued, each_HttpRequestsIssued); output["HttpRequestsIssued"] = each_HttpRequestsIssued; + Json::Value each_Logs; ToJsonUtilO(Logs, each_Logs); output["Logs"] = each_Logs; + Json::Value each_LogsTooLarge; ToJsonUtilP(LogsTooLarge, each_LogsTooLarge); output["LogsTooLarge"] = each_LogsTooLarge; + Json::Value each_MemoryConsumedBytes; ToJsonUtilP(MemoryConsumedBytes, each_MemoryConsumedBytes); output["MemoryConsumedBytes"] = each_MemoryConsumedBytes; + Json::Value each_ProcessorTimeSeconds; ToJsonUtilP(ProcessorTimeSeconds, each_ProcessorTimeSeconds); output["ProcessorTimeSeconds"] = each_ProcessorTimeSeconds; + Json::Value each_Revision; ToJsonUtilP(Revision, each_Revision); output["Revision"] = each_Revision; + return output; + } + }; + + struct CloudScriptTaskSummary : public PlayFabBaseModel + { + Boxed CompletedAt; + Boxed EstimatedSecondsRemaining; + Boxed PercentComplete; + Boxed Result; + std::string ScheduledByUserId; + time_t StartedAt; + Boxed Status; + Boxed TaskIdentifier; + std::string TaskInstanceId; + + CloudScriptTaskSummary() : + PlayFabBaseModel(), + CompletedAt(), + EstimatedSecondsRemaining(), + PercentComplete(), + Result(), + ScheduledByUserId(), + StartedAt(), + Status(), + TaskIdentifier(), + TaskInstanceId() + {} + + CloudScriptTaskSummary(const CloudScriptTaskSummary& src) : + PlayFabBaseModel(), + CompletedAt(src.CompletedAt), + EstimatedSecondsRemaining(src.EstimatedSecondsRemaining), + PercentComplete(src.PercentComplete), + Result(src.Result), + ScheduledByUserId(src.ScheduledByUserId), + StartedAt(src.StartedAt), + Status(src.Status), + TaskIdentifier(src.TaskIdentifier), + TaskInstanceId(src.TaskInstanceId) + {} + + ~CloudScriptTaskSummary() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["CompletedAt"], CompletedAt); + FromJsonUtilP(input["EstimatedSecondsRemaining"], EstimatedSecondsRemaining); + FromJsonUtilP(input["PercentComplete"], PercentComplete); + FromJsonUtilO(input["Result"], Result); + FromJsonUtilS(input["ScheduledByUserId"], ScheduledByUserId); + FromJsonUtilT(input["StartedAt"], StartedAt); + FromJsonUtilE(input["Status"], Status); + FromJsonUtilO(input["TaskIdentifier"], TaskIdentifier); + FromJsonUtilS(input["TaskInstanceId"], TaskInstanceId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CompletedAt; ToJsonUtilT(CompletedAt, each_CompletedAt); output["CompletedAt"] = each_CompletedAt; + Json::Value each_EstimatedSecondsRemaining; ToJsonUtilP(EstimatedSecondsRemaining, each_EstimatedSecondsRemaining); output["EstimatedSecondsRemaining"] = each_EstimatedSecondsRemaining; + Json::Value each_PercentComplete; ToJsonUtilP(PercentComplete, each_PercentComplete); output["PercentComplete"] = each_PercentComplete; + Json::Value each_Result; ToJsonUtilO(Result, each_Result); output["Result"] = each_Result; + Json::Value each_ScheduledByUserId; ToJsonUtilS(ScheduledByUserId, each_ScheduledByUserId); output["ScheduledByUserId"] = each_ScheduledByUserId; + Json::Value each_StartedAt; ToJsonUtilT(StartedAt, each_StartedAt); output["StartedAt"] = each_StartedAt; + Json::Value each_Status; ToJsonUtilE(Status, each_Status); output["Status"] = each_Status; + Json::Value each_TaskIdentifier; ToJsonUtilO(TaskIdentifier, each_TaskIdentifier); output["TaskIdentifier"] = each_TaskIdentifier; + Json::Value each_TaskInstanceId; ToJsonUtilS(TaskInstanceId, each_TaskInstanceId); output["TaskInstanceId"] = each_TaskInstanceId; + return output; + } + }; + + struct CloudScriptVersionStatus : public PlayFabBaseModel + { + Int32 LatestRevision; + Int32 PublishedRevision; + Int32 Version; + + CloudScriptVersionStatus() : + PlayFabBaseModel(), + LatestRevision(), + PublishedRevision(), + Version() + {} + + CloudScriptVersionStatus(const CloudScriptVersionStatus& src) : + PlayFabBaseModel(), + LatestRevision(src.LatestRevision), + PublishedRevision(src.PublishedRevision), + Version(src.Version) + {} + + ~CloudScriptVersionStatus() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["LatestRevision"], LatestRevision); + FromJsonUtilP(input["PublishedRevision"], PublishedRevision); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LatestRevision; ToJsonUtilP(LatestRevision, each_LatestRevision); output["LatestRevision"] = each_LatestRevision; + Json::Value each_PublishedRevision; ToJsonUtilP(PublishedRevision, each_PublishedRevision); output["PublishedRevision"] = each_PublishedRevision; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct ContactEmailInfo : public PlayFabBaseModel + { + std::string EmailAddress; + std::string Name; + Boxed VerificationStatus; + + ContactEmailInfo() : + PlayFabBaseModel(), + EmailAddress(), + Name(), + VerificationStatus() + {} + + ContactEmailInfo(const ContactEmailInfo& src) : + PlayFabBaseModel(), + EmailAddress(src.EmailAddress), + Name(src.Name), + VerificationStatus(src.VerificationStatus) + {} + + ~ContactEmailInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["EmailAddress"], EmailAddress); + FromJsonUtilS(input["Name"], Name); + FromJsonUtilE(input["VerificationStatus"], VerificationStatus); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_EmailAddress; ToJsonUtilS(EmailAddress, each_EmailAddress); output["EmailAddress"] = each_EmailAddress; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + Json::Value each_VerificationStatus; ToJsonUtilE(VerificationStatus, each_VerificationStatus); output["VerificationStatus"] = each_VerificationStatus; + return output; + } + }; + + struct ContactEmailInfoModel : public PlayFabBaseModel + { + std::string EmailAddress; + std::string Name; + Boxed VerificationStatus; + + ContactEmailInfoModel() : + PlayFabBaseModel(), + EmailAddress(), + Name(), + VerificationStatus() + {} + + ContactEmailInfoModel(const ContactEmailInfoModel& src) : + PlayFabBaseModel(), + EmailAddress(src.EmailAddress), + Name(src.Name), + VerificationStatus(src.VerificationStatus) + {} + + ~ContactEmailInfoModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["EmailAddress"], EmailAddress); + FromJsonUtilS(input["Name"], Name); + FromJsonUtilE(input["VerificationStatus"], VerificationStatus); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_EmailAddress; ToJsonUtilS(EmailAddress, each_EmailAddress); output["EmailAddress"] = each_EmailAddress; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + Json::Value each_VerificationStatus; ToJsonUtilE(VerificationStatus, each_VerificationStatus); output["VerificationStatus"] = each_VerificationStatus; + return output; + } + }; + + struct ContentInfo : public PlayFabBaseModel + { + std::string Key; + time_t LastModified; + Uint32 Size; + + ContentInfo() : + PlayFabBaseModel(), + Key(), + LastModified(), + Size() + {} + + ContentInfo(const ContentInfo& src) : + PlayFabBaseModel(), + Key(src.Key), + LastModified(src.LastModified), + Size(src.Size) + {} + + ~ContentInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Key"], Key); + FromJsonUtilT(input["LastModified"], LastModified); + FromJsonUtilP(input["Size"], Size); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Key; ToJsonUtilS(Key, each_Key); output["Key"] = each_Key; + Json::Value each_LastModified; ToJsonUtilT(LastModified, each_LastModified); output["LastModified"] = each_LastModified; + Json::Value each_Size; ToJsonUtilP(Size, each_Size); output["Size"] = each_Size; + return output; + } + }; + + struct CreateActionsOnPlayerSegmentTaskRequest : public PlayFabRequestCommon + { + std::string Description; + bool IsActive; + std::string Name; + ActionsOnPlayersInSegmentTaskParameter Parameter; + std::string Schedule; + + CreateActionsOnPlayerSegmentTaskRequest() : + PlayFabRequestCommon(), + Description(), + IsActive(), + Name(), + Parameter(), + Schedule() + {} + + CreateActionsOnPlayerSegmentTaskRequest(const CreateActionsOnPlayerSegmentTaskRequest& src) : + PlayFabRequestCommon(), + Description(src.Description), + IsActive(src.IsActive), + Name(src.Name), + Parameter(src.Parameter), + Schedule(src.Schedule) + {} + + ~CreateActionsOnPlayerSegmentTaskRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Description"], Description); + FromJsonUtilP(input["IsActive"], IsActive); + FromJsonUtilS(input["Name"], Name); + FromJsonUtilO(input["Parameter"], Parameter); + FromJsonUtilS(input["Schedule"], Schedule); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Description; ToJsonUtilS(Description, each_Description); output["Description"] = each_Description; + Json::Value each_IsActive; ToJsonUtilP(IsActive, each_IsActive); output["IsActive"] = each_IsActive; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + Json::Value each_Parameter; ToJsonUtilO(Parameter, each_Parameter); output["Parameter"] = each_Parameter; + Json::Value each_Schedule; ToJsonUtilS(Schedule, each_Schedule); output["Schedule"] = each_Schedule; + return output; + } + }; + + struct CreateCloudScriptTaskRequest : public PlayFabRequestCommon + { + std::string Description; + bool IsActive; + std::string Name; + CloudScriptTaskParameter Parameter; + std::string Schedule; + + CreateCloudScriptTaskRequest() : + PlayFabRequestCommon(), + Description(), + IsActive(), + Name(), + Parameter(), + Schedule() + {} + + CreateCloudScriptTaskRequest(const CreateCloudScriptTaskRequest& src) : + PlayFabRequestCommon(), + Description(src.Description), + IsActive(src.IsActive), + Name(src.Name), + Parameter(src.Parameter), + Schedule(src.Schedule) + {} + + ~CreateCloudScriptTaskRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Description"], Description); + FromJsonUtilP(input["IsActive"], IsActive); + FromJsonUtilS(input["Name"], Name); + FromJsonUtilO(input["Parameter"], Parameter); + FromJsonUtilS(input["Schedule"], Schedule); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Description; ToJsonUtilS(Description, each_Description); output["Description"] = each_Description; + Json::Value each_IsActive; ToJsonUtilP(IsActive, each_IsActive); output["IsActive"] = each_IsActive; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + Json::Value each_Parameter; ToJsonUtilO(Parameter, each_Parameter); output["Parameter"] = each_Parameter; + Json::Value each_Schedule; ToJsonUtilS(Schedule, each_Schedule); output["Schedule"] = each_Schedule; + return output; + } + }; + + struct CreatePlayerSharedSecretRequest : public PlayFabRequestCommon + { + std::string FriendlyName; + + CreatePlayerSharedSecretRequest() : + PlayFabRequestCommon(), + FriendlyName() + {} + + CreatePlayerSharedSecretRequest(const CreatePlayerSharedSecretRequest& src) : + PlayFabRequestCommon(), + FriendlyName(src.FriendlyName) + {} + + ~CreatePlayerSharedSecretRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FriendlyName"], FriendlyName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FriendlyName; ToJsonUtilS(FriendlyName, each_FriendlyName); output["FriendlyName"] = each_FriendlyName; + return output; + } + }; + + struct CreatePlayerSharedSecretResult : public PlayFabResultCommon + { + std::string SecretKey; + + CreatePlayerSharedSecretResult() : + PlayFabResultCommon(), + SecretKey() + {} + + CreatePlayerSharedSecretResult(const CreatePlayerSharedSecretResult& src) : + PlayFabResultCommon(), + SecretKey(src.SecretKey) + {} + + ~CreatePlayerSharedSecretResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["SecretKey"], SecretKey); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_SecretKey; ToJsonUtilS(SecretKey, each_SecretKey); output["SecretKey"] = each_SecretKey; + return output; + } + }; + + struct CreatePlayerStatisticDefinitionRequest : public PlayFabRequestCommon + { + Boxed AggregationMethod; + std::string StatisticName; + Boxed VersionChangeInterval; + + CreatePlayerStatisticDefinitionRequest() : + PlayFabRequestCommon(), + AggregationMethod(), + StatisticName(), + VersionChangeInterval() + {} + + CreatePlayerStatisticDefinitionRequest(const CreatePlayerStatisticDefinitionRequest& src) : + PlayFabRequestCommon(), + AggregationMethod(src.AggregationMethod), + StatisticName(src.StatisticName), + VersionChangeInterval(src.VersionChangeInterval) + {} + + ~CreatePlayerStatisticDefinitionRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilE(input["AggregationMethod"], AggregationMethod); + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilE(input["VersionChangeInterval"], VersionChangeInterval); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AggregationMethod; ToJsonUtilE(AggregationMethod, each_AggregationMethod); output["AggregationMethod"] = each_AggregationMethod; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_VersionChangeInterval; ToJsonUtilE(VersionChangeInterval, each_VersionChangeInterval); output["VersionChangeInterval"] = each_VersionChangeInterval; + return output; + } + }; + + struct PlayerStatisticDefinition : public PlayFabBaseModel + { + Boxed AggregationMethod; + Uint32 CurrentVersion; + std::string StatisticName; + Boxed VersionChangeInterval; + + PlayerStatisticDefinition() : + PlayFabBaseModel(), + AggregationMethod(), + CurrentVersion(), + StatisticName(), + VersionChangeInterval() + {} + + PlayerStatisticDefinition(const PlayerStatisticDefinition& src) : + PlayFabBaseModel(), + AggregationMethod(src.AggregationMethod), + CurrentVersion(src.CurrentVersion), + StatisticName(src.StatisticName), + VersionChangeInterval(src.VersionChangeInterval) + {} + + ~PlayerStatisticDefinition() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilE(input["AggregationMethod"], AggregationMethod); + FromJsonUtilP(input["CurrentVersion"], CurrentVersion); + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilE(input["VersionChangeInterval"], VersionChangeInterval); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AggregationMethod; ToJsonUtilE(AggregationMethod, each_AggregationMethod); output["AggregationMethod"] = each_AggregationMethod; + Json::Value each_CurrentVersion; ToJsonUtilP(CurrentVersion, each_CurrentVersion); output["CurrentVersion"] = each_CurrentVersion; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_VersionChangeInterval; ToJsonUtilE(VersionChangeInterval, each_VersionChangeInterval); output["VersionChangeInterval"] = each_VersionChangeInterval; + return output; + } + }; + + struct CreatePlayerStatisticDefinitionResult : public PlayFabResultCommon + { + Boxed Statistic; + + CreatePlayerStatisticDefinitionResult() : + PlayFabResultCommon(), + Statistic() + {} + + CreatePlayerStatisticDefinitionResult(const CreatePlayerStatisticDefinitionResult& src) : + PlayFabResultCommon(), + Statistic(src.Statistic) + {} + + ~CreatePlayerStatisticDefinitionResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Statistic"], Statistic); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Statistic; ToJsonUtilO(Statistic, each_Statistic); output["Statistic"] = each_Statistic; + return output; + } + }; + + struct CreateTaskResult : public PlayFabResultCommon + { + std::string TaskId; + + CreateTaskResult() : + PlayFabResultCommon(), + TaskId() + {} + + CreateTaskResult(const CreateTaskResult& src) : + PlayFabResultCommon(), + TaskId(src.TaskId) + {} + + ~CreateTaskResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["TaskId"], TaskId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_TaskId; ToJsonUtilS(TaskId, each_TaskId); output["TaskId"] = each_TaskId; + return output; + } + }; + + struct DeleteContentRequest : public PlayFabRequestCommon + { + std::string Key; + + DeleteContentRequest() : + PlayFabRequestCommon(), + Key() + {} + + DeleteContentRequest(const DeleteContentRequest& src) : + PlayFabRequestCommon(), + Key(src.Key) + {} + + ~DeleteContentRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Key"], Key); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Key; ToJsonUtilS(Key, each_Key); output["Key"] = each_Key; + return output; + } + }; + + struct DeletePlayerRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + + DeletePlayerRequest() : + PlayFabRequestCommon(), + PlayFabId() + {} + + DeletePlayerRequest(const DeletePlayerRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId) + {} + + ~DeletePlayerRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct DeletePlayerResult : public PlayFabResultCommon + { + + DeletePlayerResult() : + PlayFabResultCommon() + {} + + DeletePlayerResult(const DeletePlayerResult&) : + PlayFabResultCommon() + {} + + ~DeletePlayerResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct DeletePlayerSharedSecretRequest : public PlayFabRequestCommon + { + std::string SecretKey; + + DeletePlayerSharedSecretRequest() : + PlayFabRequestCommon(), + SecretKey() + {} + + DeletePlayerSharedSecretRequest(const DeletePlayerSharedSecretRequest& src) : + PlayFabRequestCommon(), + SecretKey(src.SecretKey) + {} + + ~DeletePlayerSharedSecretRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["SecretKey"], SecretKey); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_SecretKey; ToJsonUtilS(SecretKey, each_SecretKey); output["SecretKey"] = each_SecretKey; + return output; + } + }; + + struct DeletePlayerSharedSecretResult : public PlayFabResultCommon + { + + DeletePlayerSharedSecretResult() : + PlayFabResultCommon() + {} + + DeletePlayerSharedSecretResult(const DeletePlayerSharedSecretResult&) : + PlayFabResultCommon() + {} + + ~DeletePlayerSharedSecretResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct DeleteStoreRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::string StoreId; + + DeleteStoreRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + StoreId() + {} + + DeleteStoreRequest(const DeleteStoreRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + StoreId(src.StoreId) + {} + + ~DeleteStoreRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["StoreId"], StoreId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_StoreId; ToJsonUtilS(StoreId, each_StoreId); output["StoreId"] = each_StoreId; + return output; + } + }; + + struct DeleteStoreResult : public PlayFabResultCommon + { + + DeleteStoreResult() : + PlayFabResultCommon() + {} + + DeleteStoreResult(const DeleteStoreResult&) : + PlayFabResultCommon() + {} + + ~DeleteStoreResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct DeleteTaskRequest : public PlayFabRequestCommon + { + Boxed Identifier; + + DeleteTaskRequest() : + PlayFabRequestCommon(), + Identifier() + {} + + DeleteTaskRequest(const DeleteTaskRequest& src) : + PlayFabRequestCommon(), + Identifier(src.Identifier) + {} + + ~DeleteTaskRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Identifier"], Identifier); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Identifier; ToJsonUtilO(Identifier, each_Identifier); output["Identifier"] = each_Identifier; + return output; + } + }; + + struct DeleteTitleRequest : public PlayFabRequestCommon + { + + DeleteTitleRequest() : + PlayFabRequestCommon() + {} + + DeleteTitleRequest(const DeleteTitleRequest&) : + PlayFabRequestCommon() + {} + + ~DeleteTitleRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct DeleteTitleResult : public PlayFabResultCommon + { + + DeleteTitleResult() : + PlayFabResultCommon() + {} + + DeleteTitleResult(const DeleteTitleResult&) : + PlayFabResultCommon() + {} + + ~DeleteTitleResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct DeleteUsersRequest : public PlayFabRequestCommon + { + std::list PlayFabIds; + std::string TitleId; + + DeleteUsersRequest() : + PlayFabRequestCommon(), + PlayFabIds(), + TitleId() + {} + + DeleteUsersRequest(const DeleteUsersRequest& src) : + PlayFabRequestCommon(), + PlayFabIds(src.PlayFabIds), + TitleId(src.TitleId) + {} + + ~DeleteUsersRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabIds"], PlayFabIds); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabIds; ToJsonUtilS(PlayFabIds, each_PlayFabIds); output["PlayFabIds"] = each_PlayFabIds; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct DeleteUsersResult : public PlayFabResultCommon + { + + DeleteUsersResult() : + PlayFabResultCommon() + {} + + DeleteUsersResult(const DeleteUsersResult&) : + PlayFabResultCommon() + {} + + ~DeleteUsersResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct EmptyResult : public PlayFabResultCommon + { + + EmptyResult() : + PlayFabResultCommon() + {} + + EmptyResult(const EmptyResult&) : + PlayFabResultCommon() + {} + + ~EmptyResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct EntityKey : public PlayFabBaseModel + { + std::string Id; + Boxed Type; + std::string TypeString; + + EntityKey() : + PlayFabBaseModel(), + Id(), + Type(), + TypeString() + {} + + EntityKey(const EntityKey& src) : + PlayFabBaseModel(), + Id(src.Id), + Type(src.Type), + TypeString(src.TypeString) + {} + + ~EntityKey() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Id"], Id); + FromJsonUtilE(input["Type"], Type); + FromJsonUtilS(input["TypeString"], TypeString); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Id; ToJsonUtilS(Id, each_Id); output["Id"] = each_Id; + Json::Value each_Type; ToJsonUtilE(Type, each_Type); output["Type"] = each_Type; + Json::Value each_TypeString; ToJsonUtilS(TypeString, each_TypeString); output["TypeString"] = each_TypeString; + return output; + } + }; + + struct GameModeInfo : public PlayFabBaseModel + { + std::string Gamemode; + Uint32 MaxPlayerCount; + Uint32 MinPlayerCount; + Boxed StartOpen; + + GameModeInfo() : + PlayFabBaseModel(), + Gamemode(), + MaxPlayerCount(), + MinPlayerCount(), + StartOpen() + {} + + GameModeInfo(const GameModeInfo& src) : + PlayFabBaseModel(), + Gamemode(src.Gamemode), + MaxPlayerCount(src.MaxPlayerCount), + MinPlayerCount(src.MinPlayerCount), + StartOpen(src.StartOpen) + {} + + ~GameModeInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Gamemode"], Gamemode); + FromJsonUtilP(input["MaxPlayerCount"], MaxPlayerCount); + FromJsonUtilP(input["MinPlayerCount"], MinPlayerCount); + FromJsonUtilP(input["StartOpen"], StartOpen); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Gamemode; ToJsonUtilS(Gamemode, each_Gamemode); output["Gamemode"] = each_Gamemode; + Json::Value each_MaxPlayerCount; ToJsonUtilP(MaxPlayerCount, each_MaxPlayerCount); output["MaxPlayerCount"] = each_MaxPlayerCount; + Json::Value each_MinPlayerCount; ToJsonUtilP(MinPlayerCount, each_MinPlayerCount); output["MinPlayerCount"] = each_MinPlayerCount; + Json::Value each_StartOpen; ToJsonUtilP(StartOpen, each_StartOpen); output["StartOpen"] = each_StartOpen; + return output; + } + }; + + struct GetActionsOnPlayersInSegmentTaskInstanceResult : public PlayFabResultCommon + { + Boxed Parameter; + Boxed Summary; + + GetActionsOnPlayersInSegmentTaskInstanceResult() : + PlayFabResultCommon(), + Parameter(), + Summary() + {} + + GetActionsOnPlayersInSegmentTaskInstanceResult(const GetActionsOnPlayersInSegmentTaskInstanceResult& src) : + PlayFabResultCommon(), + Parameter(src.Parameter), + Summary(src.Summary) + {} + + ~GetActionsOnPlayersInSegmentTaskInstanceResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Parameter"], Parameter); + FromJsonUtilO(input["Summary"], Summary); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Parameter; ToJsonUtilO(Parameter, each_Parameter); output["Parameter"] = each_Parameter; + Json::Value each_Summary; ToJsonUtilO(Summary, each_Summary); output["Summary"] = each_Summary; + return output; + } + }; + + struct GetAllSegmentsRequest : public PlayFabRequestCommon + { + + GetAllSegmentsRequest() : + PlayFabRequestCommon() + {} + + GetAllSegmentsRequest(const GetAllSegmentsRequest&) : + PlayFabRequestCommon() + {} + + ~GetAllSegmentsRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct GetSegmentResult : public PlayFabResultCommon + { + std::string ABTestParent; + std::string Id; + std::string Name; + + GetSegmentResult() : + PlayFabResultCommon(), + ABTestParent(), + Id(), + Name() + {} + + GetSegmentResult(const GetSegmentResult& src) : + PlayFabResultCommon(), + ABTestParent(src.ABTestParent), + Id(src.Id), + Name(src.Name) + {} + + ~GetSegmentResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ABTestParent"], ABTestParent); + FromJsonUtilS(input["Id"], Id); + FromJsonUtilS(input["Name"], Name); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ABTestParent; ToJsonUtilS(ABTestParent, each_ABTestParent); output["ABTestParent"] = each_ABTestParent; + Json::Value each_Id; ToJsonUtilS(Id, each_Id); output["Id"] = each_Id; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + return output; + } + }; + + struct GetAllSegmentsResult : public PlayFabResultCommon + { + std::list Segments; + + GetAllSegmentsResult() : + PlayFabResultCommon(), + Segments() + {} + + GetAllSegmentsResult(const GetAllSegmentsResult& src) : + PlayFabResultCommon(), + Segments(src.Segments) + {} + + ~GetAllSegmentsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Segments"], Segments); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Segments; ToJsonUtilO(Segments, each_Segments); output["Segments"] = each_Segments; + return output; + } + }; + + struct GetCatalogItemsRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + + GetCatalogItemsRequest() : + PlayFabRequestCommon(), + CatalogVersion() + {} + + GetCatalogItemsRequest(const GetCatalogItemsRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion) + {} + + ~GetCatalogItemsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + return output; + } + }; + + struct GetCatalogItemsResult : public PlayFabResultCommon + { + std::list Catalog; + + GetCatalogItemsResult() : + PlayFabResultCommon(), + Catalog() + {} + + GetCatalogItemsResult(const GetCatalogItemsResult& src) : + PlayFabResultCommon(), + Catalog(src.Catalog) + {} + + ~GetCatalogItemsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Catalog"], Catalog); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Catalog; ToJsonUtilO(Catalog, each_Catalog); output["Catalog"] = each_Catalog; + return output; + } + }; + + struct GetCloudScriptRevisionRequest : public PlayFabRequestCommon + { + Boxed Revision; + Boxed Version; + + GetCloudScriptRevisionRequest() : + PlayFabRequestCommon(), + Revision(), + Version() + {} + + GetCloudScriptRevisionRequest(const GetCloudScriptRevisionRequest& src) : + PlayFabRequestCommon(), + Revision(src.Revision), + Version(src.Version) + {} + + ~GetCloudScriptRevisionRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Revision"], Revision); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Revision; ToJsonUtilP(Revision, each_Revision); output["Revision"] = each_Revision; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetCloudScriptRevisionResult : public PlayFabResultCommon + { + time_t CreatedAt; + std::list Files; + bool IsPublished; + Int32 Revision; + Int32 Version; + + GetCloudScriptRevisionResult() : + PlayFabResultCommon(), + CreatedAt(), + Files(), + IsPublished(), + Revision(), + Version() + {} + + GetCloudScriptRevisionResult(const GetCloudScriptRevisionResult& src) : + PlayFabResultCommon(), + CreatedAt(src.CreatedAt), + Files(src.Files), + IsPublished(src.IsPublished), + Revision(src.Revision), + Version(src.Version) + {} + + ~GetCloudScriptRevisionResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["CreatedAt"], CreatedAt); + FromJsonUtilO(input["Files"], Files); + FromJsonUtilP(input["IsPublished"], IsPublished); + FromJsonUtilP(input["Revision"], Revision); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CreatedAt; ToJsonUtilT(CreatedAt, each_CreatedAt); output["CreatedAt"] = each_CreatedAt; + Json::Value each_Files; ToJsonUtilO(Files, each_Files); output["Files"] = each_Files; + Json::Value each_IsPublished; ToJsonUtilP(IsPublished, each_IsPublished); output["IsPublished"] = each_IsPublished; + Json::Value each_Revision; ToJsonUtilP(Revision, each_Revision); output["Revision"] = each_Revision; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetCloudScriptTaskInstanceResult : public PlayFabResultCommon + { + Boxed Parameter; + Boxed Summary; + + GetCloudScriptTaskInstanceResult() : + PlayFabResultCommon(), + Parameter(), + Summary() + {} + + GetCloudScriptTaskInstanceResult(const GetCloudScriptTaskInstanceResult& src) : + PlayFabResultCommon(), + Parameter(src.Parameter), + Summary(src.Summary) + {} + + ~GetCloudScriptTaskInstanceResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Parameter"], Parameter); + FromJsonUtilO(input["Summary"], Summary); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Parameter; ToJsonUtilO(Parameter, each_Parameter); output["Parameter"] = each_Parameter; + Json::Value each_Summary; ToJsonUtilO(Summary, each_Summary); output["Summary"] = each_Summary; + return output; + } + }; + + struct GetCloudScriptVersionsRequest : public PlayFabRequestCommon + { + + GetCloudScriptVersionsRequest() : + PlayFabRequestCommon() + {} + + GetCloudScriptVersionsRequest(const GetCloudScriptVersionsRequest&) : + PlayFabRequestCommon() + {} + + ~GetCloudScriptVersionsRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct GetCloudScriptVersionsResult : public PlayFabResultCommon + { + std::list Versions; + + GetCloudScriptVersionsResult() : + PlayFabResultCommon(), + Versions() + {} + + GetCloudScriptVersionsResult(const GetCloudScriptVersionsResult& src) : + PlayFabResultCommon(), + Versions(src.Versions) + {} + + ~GetCloudScriptVersionsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Versions"], Versions); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Versions; ToJsonUtilO(Versions, each_Versions); output["Versions"] = each_Versions; + return output; + } + }; + + struct GetContentListRequest : public PlayFabRequestCommon + { + std::string Prefix; + + GetContentListRequest() : + PlayFabRequestCommon(), + Prefix() + {} + + GetContentListRequest(const GetContentListRequest& src) : + PlayFabRequestCommon(), + Prefix(src.Prefix) + {} + + ~GetContentListRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Prefix"], Prefix); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Prefix; ToJsonUtilS(Prefix, each_Prefix); output["Prefix"] = each_Prefix; + return output; + } + }; + + struct GetContentListResult : public PlayFabResultCommon + { + std::list Contents; + Int32 ItemCount; + Uint32 TotalSize; + + GetContentListResult() : + PlayFabResultCommon(), + Contents(), + ItemCount(), + TotalSize() + {} + + GetContentListResult(const GetContentListResult& src) : + PlayFabResultCommon(), + Contents(src.Contents), + ItemCount(src.ItemCount), + TotalSize(src.TotalSize) + {} + + ~GetContentListResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Contents"], Contents); + FromJsonUtilP(input["ItemCount"], ItemCount); + FromJsonUtilP(input["TotalSize"], TotalSize); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Contents; ToJsonUtilO(Contents, each_Contents); output["Contents"] = each_Contents; + Json::Value each_ItemCount; ToJsonUtilP(ItemCount, each_ItemCount); output["ItemCount"] = each_ItemCount; + Json::Value each_TotalSize; ToJsonUtilP(TotalSize, each_TotalSize); output["TotalSize"] = each_TotalSize; + return output; + } + }; + + struct GetContentUploadUrlRequest : public PlayFabRequestCommon + { + std::string ContentType; + std::string Key; + + GetContentUploadUrlRequest() : + PlayFabRequestCommon(), + ContentType(), + Key() + {} + + GetContentUploadUrlRequest(const GetContentUploadUrlRequest& src) : + PlayFabRequestCommon(), + ContentType(src.ContentType), + Key(src.Key) + {} + + ~GetContentUploadUrlRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ContentType"], ContentType); + FromJsonUtilS(input["Key"], Key); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ContentType; ToJsonUtilS(ContentType, each_ContentType); output["ContentType"] = each_ContentType; + Json::Value each_Key; ToJsonUtilS(Key, each_Key); output["Key"] = each_Key; + return output; + } + }; + + struct GetContentUploadUrlResult : public PlayFabResultCommon + { + std::string URL; + + GetContentUploadUrlResult() : + PlayFabResultCommon(), + URL() + {} + + GetContentUploadUrlResult(const GetContentUploadUrlResult& src) : + PlayFabResultCommon(), + URL(src.URL) + {} + + ~GetContentUploadUrlResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["URL"], URL); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_URL; ToJsonUtilS(URL, each_URL); output["URL"] = each_URL; + return output; + } + }; + + struct GetDataReportRequest : public PlayFabRequestCommon + { + Int32 Day; + Int32 Month; + std::string ReportName; + Int32 Year; + + GetDataReportRequest() : + PlayFabRequestCommon(), + Day(), + Month(), + ReportName(), + Year() + {} + + GetDataReportRequest(const GetDataReportRequest& src) : + PlayFabRequestCommon(), + Day(src.Day), + Month(src.Month), + ReportName(src.ReportName), + Year(src.Year) + {} + + ~GetDataReportRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Day"], Day); + FromJsonUtilP(input["Month"], Month); + FromJsonUtilS(input["ReportName"], ReportName); + FromJsonUtilP(input["Year"], Year); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Day; ToJsonUtilP(Day, each_Day); output["Day"] = each_Day; + Json::Value each_Month; ToJsonUtilP(Month, each_Month); output["Month"] = each_Month; + Json::Value each_ReportName; ToJsonUtilS(ReportName, each_ReportName); output["ReportName"] = each_ReportName; + Json::Value each_Year; ToJsonUtilP(Year, each_Year); output["Year"] = each_Year; + return output; + } + }; + + struct GetDataReportResult : public PlayFabResultCommon + { + std::string DownloadUrl; + + GetDataReportResult() : + PlayFabResultCommon(), + DownloadUrl() + {} + + GetDataReportResult(const GetDataReportResult& src) : + PlayFabResultCommon(), + DownloadUrl(src.DownloadUrl) + {} + + ~GetDataReportResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["DownloadUrl"], DownloadUrl); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DownloadUrl; ToJsonUtilS(DownloadUrl, each_DownloadUrl); output["DownloadUrl"] = each_DownloadUrl; + return output; + } + }; + + struct GetMatchmakerGameInfoRequest : public PlayFabRequestCommon + { + std::string LobbyId; + + GetMatchmakerGameInfoRequest() : + PlayFabRequestCommon(), + LobbyId() + {} + + GetMatchmakerGameInfoRequest(const GetMatchmakerGameInfoRequest& src) : + PlayFabRequestCommon(), + LobbyId(src.LobbyId) + {} + + ~GetMatchmakerGameInfoRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["LobbyId"], LobbyId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LobbyId; ToJsonUtilS(LobbyId, each_LobbyId); output["LobbyId"] = each_LobbyId; + return output; + } + }; + + struct GetMatchmakerGameInfoResult : public PlayFabResultCommon + { + std::string BuildVersion; + Boxed EndTime; + std::string LobbyId; + std::string Mode; + std::list Players; + Boxed pfRegion; + std::string ServerAddress; + Uint32 ServerPort; + time_t StartTime; + std::string TitleId; + + GetMatchmakerGameInfoResult() : + PlayFabResultCommon(), + BuildVersion(), + EndTime(), + LobbyId(), + Mode(), + Players(), + pfRegion(), + ServerAddress(), + ServerPort(), + StartTime(), + TitleId() + {} + + GetMatchmakerGameInfoResult(const GetMatchmakerGameInfoResult& src) : + PlayFabResultCommon(), + BuildVersion(src.BuildVersion), + EndTime(src.EndTime), + LobbyId(src.LobbyId), + Mode(src.Mode), + Players(src.Players), + pfRegion(src.pfRegion), + ServerAddress(src.ServerAddress), + ServerPort(src.ServerPort), + StartTime(src.StartTime), + TitleId(src.TitleId) + {} + + ~GetMatchmakerGameInfoResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["BuildVersion"], BuildVersion); + FromJsonUtilT(input["EndTime"], EndTime); + FromJsonUtilS(input["LobbyId"], LobbyId); + FromJsonUtilS(input["Mode"], Mode); + FromJsonUtilS(input["Players"], Players); + FromJsonUtilE(input["pfRegion"], pfRegion); + FromJsonUtilS(input["ServerAddress"], ServerAddress); + FromJsonUtilP(input["ServerPort"], ServerPort); + FromJsonUtilT(input["StartTime"], StartTime); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BuildVersion; ToJsonUtilS(BuildVersion, each_BuildVersion); output["BuildVersion"] = each_BuildVersion; + Json::Value each_EndTime; ToJsonUtilT(EndTime, each_EndTime); output["EndTime"] = each_EndTime; + Json::Value each_LobbyId; ToJsonUtilS(LobbyId, each_LobbyId); output["LobbyId"] = each_LobbyId; + Json::Value each_Mode; ToJsonUtilS(Mode, each_Mode); output["Mode"] = each_Mode; + Json::Value each_Players; ToJsonUtilS(Players, each_Players); output["Players"] = each_Players; + Json::Value each_pfRegion; ToJsonUtilE(pfRegion, each_pfRegion); output["Region"] = each_pfRegion; + Json::Value each_ServerAddress; ToJsonUtilS(ServerAddress, each_ServerAddress); output["ServerAddress"] = each_ServerAddress; + Json::Value each_ServerPort; ToJsonUtilP(ServerPort, each_ServerPort); output["ServerPort"] = each_ServerPort; + Json::Value each_StartTime; ToJsonUtilT(StartTime, each_StartTime); output["StartTime"] = each_StartTime; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct GetMatchmakerGameModesRequest : public PlayFabRequestCommon + { + std::string BuildVersion; + + GetMatchmakerGameModesRequest() : + PlayFabRequestCommon(), + BuildVersion() + {} + + GetMatchmakerGameModesRequest(const GetMatchmakerGameModesRequest& src) : + PlayFabRequestCommon(), + BuildVersion(src.BuildVersion) + {} + + ~GetMatchmakerGameModesRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["BuildVersion"], BuildVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BuildVersion; ToJsonUtilS(BuildVersion, each_BuildVersion); output["BuildVersion"] = each_BuildVersion; + return output; + } + }; + + struct GetMatchmakerGameModesResult : public PlayFabResultCommon + { + std::list GameModes; + + GetMatchmakerGameModesResult() : + PlayFabResultCommon(), + GameModes() + {} + + GetMatchmakerGameModesResult(const GetMatchmakerGameModesResult& src) : + PlayFabResultCommon(), + GameModes(src.GameModes) + {} + + ~GetMatchmakerGameModesResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["GameModes"], GameModes); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GameModes; ToJsonUtilO(GameModes, each_GameModes); output["GameModes"] = each_GameModes; + return output; + } + }; + + struct GetPlayerIdFromAuthTokenRequest : public PlayFabRequestCommon + { + std::string Token; + AuthTokenType TokenType; + + GetPlayerIdFromAuthTokenRequest() : + PlayFabRequestCommon(), + Token(), + TokenType() + {} + + GetPlayerIdFromAuthTokenRequest(const GetPlayerIdFromAuthTokenRequest& src) : + PlayFabRequestCommon(), + Token(src.Token), + TokenType(src.TokenType) + {} + + ~GetPlayerIdFromAuthTokenRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Token"], Token); + FromJsonEnum(input["TokenType"], TokenType); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Token; ToJsonUtilS(Token, each_Token); output["Token"] = each_Token; + Json::Value each_TokenType; ToJsonEnum(TokenType, each_TokenType); output["TokenType"] = each_TokenType; + return output; + } + }; + + struct GetPlayerIdFromAuthTokenResult : public PlayFabResultCommon + { + std::string PlayFabId; + + GetPlayerIdFromAuthTokenResult() : + PlayFabResultCommon(), + PlayFabId() + {} + + GetPlayerIdFromAuthTokenResult(const GetPlayerIdFromAuthTokenResult& src) : + PlayFabResultCommon(), + PlayFabId(src.PlayFabId) + {} + + ~GetPlayerIdFromAuthTokenResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct PlayerProfileViewConstraints : public PlayFabBaseModel + { + bool ShowAvatarUrl; + bool ShowBannedUntil; + bool ShowCampaignAttributions; + bool ShowContactEmailAddresses; + bool ShowCreated; + bool ShowDisplayName; + bool ShowLastLogin; + bool ShowLinkedAccounts; + bool ShowLocations; + bool ShowMemberships; + bool ShowOrigination; + bool ShowPushNotificationRegistrations; + bool ShowStatistics; + bool ShowTags; + bool ShowTotalValueToDateInUsd; + bool ShowValuesToDate; + + PlayerProfileViewConstraints() : + PlayFabBaseModel(), + ShowAvatarUrl(), + ShowBannedUntil(), + ShowCampaignAttributions(), + ShowContactEmailAddresses(), + ShowCreated(), + ShowDisplayName(), + ShowLastLogin(), + ShowLinkedAccounts(), + ShowLocations(), + ShowMemberships(), + ShowOrigination(), + ShowPushNotificationRegistrations(), + ShowStatistics(), + ShowTags(), + ShowTotalValueToDateInUsd(), + ShowValuesToDate() + {} + + PlayerProfileViewConstraints(const PlayerProfileViewConstraints& src) : + PlayFabBaseModel(), + ShowAvatarUrl(src.ShowAvatarUrl), + ShowBannedUntil(src.ShowBannedUntil), + ShowCampaignAttributions(src.ShowCampaignAttributions), + ShowContactEmailAddresses(src.ShowContactEmailAddresses), + ShowCreated(src.ShowCreated), + ShowDisplayName(src.ShowDisplayName), + ShowLastLogin(src.ShowLastLogin), + ShowLinkedAccounts(src.ShowLinkedAccounts), + ShowLocations(src.ShowLocations), + ShowMemberships(src.ShowMemberships), + ShowOrigination(src.ShowOrigination), + ShowPushNotificationRegistrations(src.ShowPushNotificationRegistrations), + ShowStatistics(src.ShowStatistics), + ShowTags(src.ShowTags), + ShowTotalValueToDateInUsd(src.ShowTotalValueToDateInUsd), + ShowValuesToDate(src.ShowValuesToDate) + {} + + ~PlayerProfileViewConstraints() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["ShowAvatarUrl"], ShowAvatarUrl); + FromJsonUtilP(input["ShowBannedUntil"], ShowBannedUntil); + FromJsonUtilP(input["ShowCampaignAttributions"], ShowCampaignAttributions); + FromJsonUtilP(input["ShowContactEmailAddresses"], ShowContactEmailAddresses); + FromJsonUtilP(input["ShowCreated"], ShowCreated); + FromJsonUtilP(input["ShowDisplayName"], ShowDisplayName); + FromJsonUtilP(input["ShowLastLogin"], ShowLastLogin); + FromJsonUtilP(input["ShowLinkedAccounts"], ShowLinkedAccounts); + FromJsonUtilP(input["ShowLocations"], ShowLocations); + FromJsonUtilP(input["ShowMemberships"], ShowMemberships); + FromJsonUtilP(input["ShowOrigination"], ShowOrigination); + FromJsonUtilP(input["ShowPushNotificationRegistrations"], ShowPushNotificationRegistrations); + FromJsonUtilP(input["ShowStatistics"], ShowStatistics); + FromJsonUtilP(input["ShowTags"], ShowTags); + FromJsonUtilP(input["ShowTotalValueToDateInUsd"], ShowTotalValueToDateInUsd); + FromJsonUtilP(input["ShowValuesToDate"], ShowValuesToDate); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ShowAvatarUrl; ToJsonUtilP(ShowAvatarUrl, each_ShowAvatarUrl); output["ShowAvatarUrl"] = each_ShowAvatarUrl; + Json::Value each_ShowBannedUntil; ToJsonUtilP(ShowBannedUntil, each_ShowBannedUntil); output["ShowBannedUntil"] = each_ShowBannedUntil; + Json::Value each_ShowCampaignAttributions; ToJsonUtilP(ShowCampaignAttributions, each_ShowCampaignAttributions); output["ShowCampaignAttributions"] = each_ShowCampaignAttributions; + Json::Value each_ShowContactEmailAddresses; ToJsonUtilP(ShowContactEmailAddresses, each_ShowContactEmailAddresses); output["ShowContactEmailAddresses"] = each_ShowContactEmailAddresses; + Json::Value each_ShowCreated; ToJsonUtilP(ShowCreated, each_ShowCreated); output["ShowCreated"] = each_ShowCreated; + Json::Value each_ShowDisplayName; ToJsonUtilP(ShowDisplayName, each_ShowDisplayName); output["ShowDisplayName"] = each_ShowDisplayName; + Json::Value each_ShowLastLogin; ToJsonUtilP(ShowLastLogin, each_ShowLastLogin); output["ShowLastLogin"] = each_ShowLastLogin; + Json::Value each_ShowLinkedAccounts; ToJsonUtilP(ShowLinkedAccounts, each_ShowLinkedAccounts); output["ShowLinkedAccounts"] = each_ShowLinkedAccounts; + Json::Value each_ShowLocations; ToJsonUtilP(ShowLocations, each_ShowLocations); output["ShowLocations"] = each_ShowLocations; + Json::Value each_ShowMemberships; ToJsonUtilP(ShowMemberships, each_ShowMemberships); output["ShowMemberships"] = each_ShowMemberships; + Json::Value each_ShowOrigination; ToJsonUtilP(ShowOrigination, each_ShowOrigination); output["ShowOrigination"] = each_ShowOrigination; + Json::Value each_ShowPushNotificationRegistrations; ToJsonUtilP(ShowPushNotificationRegistrations, each_ShowPushNotificationRegistrations); output["ShowPushNotificationRegistrations"] = each_ShowPushNotificationRegistrations; + Json::Value each_ShowStatistics; ToJsonUtilP(ShowStatistics, each_ShowStatistics); output["ShowStatistics"] = each_ShowStatistics; + Json::Value each_ShowTags; ToJsonUtilP(ShowTags, each_ShowTags); output["ShowTags"] = each_ShowTags; + Json::Value each_ShowTotalValueToDateInUsd; ToJsonUtilP(ShowTotalValueToDateInUsd, each_ShowTotalValueToDateInUsd); output["ShowTotalValueToDateInUsd"] = each_ShowTotalValueToDateInUsd; + Json::Value each_ShowValuesToDate; ToJsonUtilP(ShowValuesToDate, each_ShowValuesToDate); output["ShowValuesToDate"] = each_ShowValuesToDate; + return output; + } + }; + + struct GetPlayerProfileRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + Boxed ProfileConstraints; + + GetPlayerProfileRequest() : + PlayFabRequestCommon(), + PlayFabId(), + ProfileConstraints() + {} + + GetPlayerProfileRequest(const GetPlayerProfileRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId), + ProfileConstraints(src.ProfileConstraints) + {} + + ~GetPlayerProfileRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilO(input["ProfileConstraints"], ProfileConstraints); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_ProfileConstraints; ToJsonUtilO(ProfileConstraints, each_ProfileConstraints); output["ProfileConstraints"] = each_ProfileConstraints; + return output; + } + }; + + struct LinkedPlatformAccountModel : public PlayFabBaseModel + { + std::string Email; + Boxed Platform; + std::string PlatformUserId; + std::string Username; + + LinkedPlatformAccountModel() : + PlayFabBaseModel(), + Email(), + Platform(), + PlatformUserId(), + Username() + {} + + LinkedPlatformAccountModel(const LinkedPlatformAccountModel& src) : + PlayFabBaseModel(), + Email(src.Email), + Platform(src.Platform), + PlatformUserId(src.PlatformUserId), + Username(src.Username) + {} + + ~LinkedPlatformAccountModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Email"], Email); + FromJsonUtilE(input["Platform"], Platform); + FromJsonUtilS(input["PlatformUserId"], PlatformUserId); + FromJsonUtilS(input["Username"], Username); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Email; ToJsonUtilS(Email, each_Email); output["Email"] = each_Email; + Json::Value each_Platform; ToJsonUtilE(Platform, each_Platform); output["Platform"] = each_Platform; + Json::Value each_PlatformUserId; ToJsonUtilS(PlatformUserId, each_PlatformUserId); output["PlatformUserId"] = each_PlatformUserId; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + return output; + } + }; + + struct LocationModel : public PlayFabBaseModel + { + std::string City; + Boxed pfContinentCode; + Boxed pfCountryCode; + Boxed Latitude; + Boxed Longitude; + + LocationModel() : + PlayFabBaseModel(), + City(), + pfContinentCode(), + pfCountryCode(), + Latitude(), + Longitude() + {} + + LocationModel(const LocationModel& src) : + PlayFabBaseModel(), + City(src.City), + pfContinentCode(src.pfContinentCode), + pfCountryCode(src.pfCountryCode), + Latitude(src.Latitude), + Longitude(src.Longitude) + {} + + ~LocationModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["City"], City); + FromJsonUtilE(input["pfContinentCode"], pfContinentCode); + FromJsonUtilE(input["pfCountryCode"], pfCountryCode); + FromJsonUtilP(input["Latitude"], Latitude); + FromJsonUtilP(input["Longitude"], Longitude); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_City; ToJsonUtilS(City, each_City); output["City"] = each_City; + Json::Value each_pfContinentCode; ToJsonUtilE(pfContinentCode, each_pfContinentCode); output["ContinentCode"] = each_pfContinentCode; + Json::Value each_pfCountryCode; ToJsonUtilE(pfCountryCode, each_pfCountryCode); output["CountryCode"] = each_pfCountryCode; + Json::Value each_Latitude; ToJsonUtilP(Latitude, each_Latitude); output["Latitude"] = each_Latitude; + Json::Value each_Longitude; ToJsonUtilP(Longitude, each_Longitude); output["Longitude"] = each_Longitude; + return output; + } + }; + + struct SubscriptionModel : public PlayFabBaseModel + { + time_t Expiration; + time_t InitialSubscriptionTime; + bool IsActive; + Boxed Status; + std::string SubscriptionId; + std::string SubscriptionItemId; + std::string SubscriptionProvider; + + SubscriptionModel() : + PlayFabBaseModel(), + Expiration(), + InitialSubscriptionTime(), + IsActive(), + Status(), + SubscriptionId(), + SubscriptionItemId(), + SubscriptionProvider() + {} + + SubscriptionModel(const SubscriptionModel& src) : + PlayFabBaseModel(), + Expiration(src.Expiration), + InitialSubscriptionTime(src.InitialSubscriptionTime), + IsActive(src.IsActive), + Status(src.Status), + SubscriptionId(src.SubscriptionId), + SubscriptionItemId(src.SubscriptionItemId), + SubscriptionProvider(src.SubscriptionProvider) + {} + + ~SubscriptionModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["Expiration"], Expiration); + FromJsonUtilT(input["InitialSubscriptionTime"], InitialSubscriptionTime); + FromJsonUtilP(input["IsActive"], IsActive); + FromJsonUtilE(input["Status"], Status); + FromJsonUtilS(input["SubscriptionId"], SubscriptionId); + FromJsonUtilS(input["SubscriptionItemId"], SubscriptionItemId); + FromJsonUtilS(input["SubscriptionProvider"], SubscriptionProvider); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Expiration; ToJsonUtilT(Expiration, each_Expiration); output["Expiration"] = each_Expiration; + Json::Value each_InitialSubscriptionTime; ToJsonUtilT(InitialSubscriptionTime, each_InitialSubscriptionTime); output["InitialSubscriptionTime"] = each_InitialSubscriptionTime; + Json::Value each_IsActive; ToJsonUtilP(IsActive, each_IsActive); output["IsActive"] = each_IsActive; + Json::Value each_Status; ToJsonUtilE(Status, each_Status); output["Status"] = each_Status; + Json::Value each_SubscriptionId; ToJsonUtilS(SubscriptionId, each_SubscriptionId); output["SubscriptionId"] = each_SubscriptionId; + Json::Value each_SubscriptionItemId; ToJsonUtilS(SubscriptionItemId, each_SubscriptionItemId); output["SubscriptionItemId"] = each_SubscriptionItemId; + Json::Value each_SubscriptionProvider; ToJsonUtilS(SubscriptionProvider, each_SubscriptionProvider); output["SubscriptionProvider"] = each_SubscriptionProvider; + return output; + } + }; + + struct MembershipModel : public PlayFabBaseModel + { + bool IsActive; + time_t MembershipExpiration; + std::string MembershipId; + Boxed OverrideExpiration; + std::list Subscriptions; + + MembershipModel() : + PlayFabBaseModel(), + IsActive(), + MembershipExpiration(), + MembershipId(), + OverrideExpiration(), + Subscriptions() + {} + + MembershipModel(const MembershipModel& src) : + PlayFabBaseModel(), + IsActive(src.IsActive), + MembershipExpiration(src.MembershipExpiration), + MembershipId(src.MembershipId), + OverrideExpiration(src.OverrideExpiration), + Subscriptions(src.Subscriptions) + {} + + ~MembershipModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["IsActive"], IsActive); + FromJsonUtilT(input["MembershipExpiration"], MembershipExpiration); + FromJsonUtilS(input["MembershipId"], MembershipId); + FromJsonUtilT(input["OverrideExpiration"], OverrideExpiration); + FromJsonUtilO(input["Subscriptions"], Subscriptions); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_IsActive; ToJsonUtilP(IsActive, each_IsActive); output["IsActive"] = each_IsActive; + Json::Value each_MembershipExpiration; ToJsonUtilT(MembershipExpiration, each_MembershipExpiration); output["MembershipExpiration"] = each_MembershipExpiration; + Json::Value each_MembershipId; ToJsonUtilS(MembershipId, each_MembershipId); output["MembershipId"] = each_MembershipId; + Json::Value each_OverrideExpiration; ToJsonUtilT(OverrideExpiration, each_OverrideExpiration); output["OverrideExpiration"] = each_OverrideExpiration; + Json::Value each_Subscriptions; ToJsonUtilO(Subscriptions, each_Subscriptions); output["Subscriptions"] = each_Subscriptions; + return output; + } + }; + + struct PushNotificationRegistrationModel : public PlayFabBaseModel + { + std::string NotificationEndpointARN; + Boxed Platform; + + PushNotificationRegistrationModel() : + PlayFabBaseModel(), + NotificationEndpointARN(), + Platform() + {} + + PushNotificationRegistrationModel(const PushNotificationRegistrationModel& src) : + PlayFabBaseModel(), + NotificationEndpointARN(src.NotificationEndpointARN), + Platform(src.Platform) + {} + + ~PushNotificationRegistrationModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["NotificationEndpointARN"], NotificationEndpointARN); + FromJsonUtilE(input["Platform"], Platform); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_NotificationEndpointARN; ToJsonUtilS(NotificationEndpointARN, each_NotificationEndpointARN); output["NotificationEndpointARN"] = each_NotificationEndpointARN; + Json::Value each_Platform; ToJsonUtilE(Platform, each_Platform); output["Platform"] = each_Platform; + return output; + } + }; + + struct StatisticModel : public PlayFabBaseModel + { + std::string Name; + Int32 Value; + Int32 Version; + + StatisticModel() : + PlayFabBaseModel(), + Name(), + Value(), + Version() + {} + + StatisticModel(const StatisticModel& src) : + PlayFabBaseModel(), + Name(src.Name), + Value(src.Value), + Version(src.Version) + {} + + ~StatisticModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Name"], Name); + FromJsonUtilP(input["Value"], Value); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + Json::Value each_Value; ToJsonUtilP(Value, each_Value); output["Value"] = each_Value; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct TagModel : public PlayFabBaseModel + { + std::string TagValue; + + TagModel() : + PlayFabBaseModel(), + TagValue() + {} + + TagModel(const TagModel& src) : + PlayFabBaseModel(), + TagValue(src.TagValue) + {} + + ~TagModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["TagValue"], TagValue); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_TagValue; ToJsonUtilS(TagValue, each_TagValue); output["TagValue"] = each_TagValue; + return output; + } + }; + + struct ValueToDateModel : public PlayFabBaseModel + { + std::string Currency; + Uint32 TotalValue; + std::string TotalValueAsDecimal; + + ValueToDateModel() : + PlayFabBaseModel(), + Currency(), + TotalValue(), + TotalValueAsDecimal() + {} + + ValueToDateModel(const ValueToDateModel& src) : + PlayFabBaseModel(), + Currency(src.Currency), + TotalValue(src.TotalValue), + TotalValueAsDecimal(src.TotalValueAsDecimal) + {} + + ~ValueToDateModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Currency"], Currency); + FromJsonUtilP(input["TotalValue"], TotalValue); + FromJsonUtilS(input["TotalValueAsDecimal"], TotalValueAsDecimal); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Currency; ToJsonUtilS(Currency, each_Currency); output["Currency"] = each_Currency; + Json::Value each_TotalValue; ToJsonUtilP(TotalValue, each_TotalValue); output["TotalValue"] = each_TotalValue; + Json::Value each_TotalValueAsDecimal; ToJsonUtilS(TotalValueAsDecimal, each_TotalValueAsDecimal); output["TotalValueAsDecimal"] = each_TotalValueAsDecimal; + return output; + } + }; + + struct PlayerProfileModel : public PlayFabBaseModel + { + std::list AdCampaignAttributions; + std::string AvatarUrl; + Boxed BannedUntil; + std::list ContactEmailAddresses; + Boxed Created; + std::string DisplayName; + Boxed LastLogin; + std::list LinkedAccounts; + std::list Locations; + std::list Memberships; + Boxed Origination; + std::string PlayerId; + std::string PublisherId; + std::list PushNotificationRegistrations; + std::list Statistics; + std::list Tags; + std::string TitleId; + Boxed TotalValueToDateInUSD; + std::list ValuesToDate; + + PlayerProfileModel() : + PlayFabBaseModel(), + AdCampaignAttributions(), + AvatarUrl(), + BannedUntil(), + ContactEmailAddresses(), + Created(), + DisplayName(), + LastLogin(), + LinkedAccounts(), + Locations(), + Memberships(), + Origination(), + PlayerId(), + PublisherId(), + PushNotificationRegistrations(), + Statistics(), + Tags(), + TitleId(), + TotalValueToDateInUSD(), + ValuesToDate() + {} + + PlayerProfileModel(const PlayerProfileModel& src) : + PlayFabBaseModel(), + AdCampaignAttributions(src.AdCampaignAttributions), + AvatarUrl(src.AvatarUrl), + BannedUntil(src.BannedUntil), + ContactEmailAddresses(src.ContactEmailAddresses), + Created(src.Created), + DisplayName(src.DisplayName), + LastLogin(src.LastLogin), + LinkedAccounts(src.LinkedAccounts), + Locations(src.Locations), + Memberships(src.Memberships), + Origination(src.Origination), + PlayerId(src.PlayerId), + PublisherId(src.PublisherId), + PushNotificationRegistrations(src.PushNotificationRegistrations), + Statistics(src.Statistics), + Tags(src.Tags), + TitleId(src.TitleId), + TotalValueToDateInUSD(src.TotalValueToDateInUSD), + ValuesToDate(src.ValuesToDate) + {} + + ~PlayerProfileModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["AdCampaignAttributions"], AdCampaignAttributions); + FromJsonUtilS(input["AvatarUrl"], AvatarUrl); + FromJsonUtilT(input["BannedUntil"], BannedUntil); + FromJsonUtilO(input["ContactEmailAddresses"], ContactEmailAddresses); + FromJsonUtilT(input["Created"], Created); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilT(input["LastLogin"], LastLogin); + FromJsonUtilO(input["LinkedAccounts"], LinkedAccounts); + FromJsonUtilO(input["Locations"], Locations); + FromJsonUtilO(input["Memberships"], Memberships); + FromJsonUtilE(input["Origination"], Origination); + FromJsonUtilS(input["PlayerId"], PlayerId); + FromJsonUtilS(input["PublisherId"], PublisherId); + FromJsonUtilO(input["PushNotificationRegistrations"], PushNotificationRegistrations); + FromJsonUtilO(input["Statistics"], Statistics); + FromJsonUtilO(input["Tags"], Tags); + FromJsonUtilS(input["TitleId"], TitleId); + FromJsonUtilP(input["TotalValueToDateInUSD"], TotalValueToDateInUSD); + FromJsonUtilO(input["ValuesToDate"], ValuesToDate); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AdCampaignAttributions; ToJsonUtilO(AdCampaignAttributions, each_AdCampaignAttributions); output["AdCampaignAttributions"] = each_AdCampaignAttributions; + Json::Value each_AvatarUrl; ToJsonUtilS(AvatarUrl, each_AvatarUrl); output["AvatarUrl"] = each_AvatarUrl; + Json::Value each_BannedUntil; ToJsonUtilT(BannedUntil, each_BannedUntil); output["BannedUntil"] = each_BannedUntil; + Json::Value each_ContactEmailAddresses; ToJsonUtilO(ContactEmailAddresses, each_ContactEmailAddresses); output["ContactEmailAddresses"] = each_ContactEmailAddresses; + Json::Value each_Created; ToJsonUtilT(Created, each_Created); output["Created"] = each_Created; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_LastLogin; ToJsonUtilT(LastLogin, each_LastLogin); output["LastLogin"] = each_LastLogin; + Json::Value each_LinkedAccounts; ToJsonUtilO(LinkedAccounts, each_LinkedAccounts); output["LinkedAccounts"] = each_LinkedAccounts; + Json::Value each_Locations; ToJsonUtilO(Locations, each_Locations); output["Locations"] = each_Locations; + Json::Value each_Memberships; ToJsonUtilO(Memberships, each_Memberships); output["Memberships"] = each_Memberships; + Json::Value each_Origination; ToJsonUtilE(Origination, each_Origination); output["Origination"] = each_Origination; + Json::Value each_PlayerId; ToJsonUtilS(PlayerId, each_PlayerId); output["PlayerId"] = each_PlayerId; + Json::Value each_PublisherId; ToJsonUtilS(PublisherId, each_PublisherId); output["PublisherId"] = each_PublisherId; + Json::Value each_PushNotificationRegistrations; ToJsonUtilO(PushNotificationRegistrations, each_PushNotificationRegistrations); output["PushNotificationRegistrations"] = each_PushNotificationRegistrations; + Json::Value each_Statistics; ToJsonUtilO(Statistics, each_Statistics); output["Statistics"] = each_Statistics; + Json::Value each_Tags; ToJsonUtilO(Tags, each_Tags); output["Tags"] = each_Tags; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + Json::Value each_TotalValueToDateInUSD; ToJsonUtilP(TotalValueToDateInUSD, each_TotalValueToDateInUSD); output["TotalValueToDateInUSD"] = each_TotalValueToDateInUSD; + Json::Value each_ValuesToDate; ToJsonUtilO(ValuesToDate, each_ValuesToDate); output["ValuesToDate"] = each_ValuesToDate; + return output; + } + }; + + struct GetPlayerProfileResult : public PlayFabResultCommon + { + Boxed PlayerProfile; + + GetPlayerProfileResult() : + PlayFabResultCommon(), + PlayerProfile() + {} + + GetPlayerProfileResult(const GetPlayerProfileResult& src) : + PlayFabResultCommon(), + PlayerProfile(src.PlayerProfile) + {} + + ~GetPlayerProfileResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["PlayerProfile"], PlayerProfile); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayerProfile; ToJsonUtilO(PlayerProfile, each_PlayerProfile); output["PlayerProfile"] = each_PlayerProfile; + return output; + } + }; + + struct GetPlayerSegmentsResult : public PlayFabResultCommon + { + std::list Segments; + + GetPlayerSegmentsResult() : + PlayFabResultCommon(), + Segments() + {} + + GetPlayerSegmentsResult(const GetPlayerSegmentsResult& src) : + PlayFabResultCommon(), + Segments(src.Segments) + {} + + ~GetPlayerSegmentsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Segments"], Segments); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Segments; ToJsonUtilO(Segments, each_Segments); output["Segments"] = each_Segments; + return output; + } + }; + + struct GetPlayerSharedSecretsRequest : public PlayFabRequestCommon + { + + GetPlayerSharedSecretsRequest() : + PlayFabRequestCommon() + {} + + GetPlayerSharedSecretsRequest(const GetPlayerSharedSecretsRequest&) : + PlayFabRequestCommon() + {} + + ~GetPlayerSharedSecretsRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SharedSecret : public PlayFabBaseModel + { + bool Disabled; + std::string FriendlyName; + std::string SecretKey; + + SharedSecret() : + PlayFabBaseModel(), + Disabled(), + FriendlyName(), + SecretKey() + {} + + SharedSecret(const SharedSecret& src) : + PlayFabBaseModel(), + Disabled(src.Disabled), + FriendlyName(src.FriendlyName), + SecretKey(src.SecretKey) + {} + + ~SharedSecret() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Disabled"], Disabled); + FromJsonUtilS(input["FriendlyName"], FriendlyName); + FromJsonUtilS(input["SecretKey"], SecretKey); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Disabled; ToJsonUtilP(Disabled, each_Disabled); output["Disabled"] = each_Disabled; + Json::Value each_FriendlyName; ToJsonUtilS(FriendlyName, each_FriendlyName); output["FriendlyName"] = each_FriendlyName; + Json::Value each_SecretKey; ToJsonUtilS(SecretKey, each_SecretKey); output["SecretKey"] = each_SecretKey; + return output; + } + }; + + struct GetPlayerSharedSecretsResult : public PlayFabResultCommon + { + std::list SharedSecrets; + + GetPlayerSharedSecretsResult() : + PlayFabResultCommon(), + SharedSecrets() + {} + + GetPlayerSharedSecretsResult(const GetPlayerSharedSecretsResult& src) : + PlayFabResultCommon(), + SharedSecrets(src.SharedSecrets) + {} + + ~GetPlayerSharedSecretsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["SharedSecrets"], SharedSecrets); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_SharedSecrets; ToJsonUtilO(SharedSecrets, each_SharedSecrets); output["SharedSecrets"] = each_SharedSecrets; + return output; + } + }; + + struct GetPlayersInSegmentRequest : public PlayFabRequestCommon + { + std::string ContinuationToken; + Boxed MaxBatchSize; + Boxed SecondsToLive; + std::string SegmentId; + + GetPlayersInSegmentRequest() : + PlayFabRequestCommon(), + ContinuationToken(), + MaxBatchSize(), + SecondsToLive(), + SegmentId() + {} + + GetPlayersInSegmentRequest(const GetPlayersInSegmentRequest& src) : + PlayFabRequestCommon(), + ContinuationToken(src.ContinuationToken), + MaxBatchSize(src.MaxBatchSize), + SecondsToLive(src.SecondsToLive), + SegmentId(src.SegmentId) + {} + + ~GetPlayersInSegmentRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ContinuationToken"], ContinuationToken); + FromJsonUtilP(input["MaxBatchSize"], MaxBatchSize); + FromJsonUtilP(input["SecondsToLive"], SecondsToLive); + FromJsonUtilS(input["SegmentId"], SegmentId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ContinuationToken; ToJsonUtilS(ContinuationToken, each_ContinuationToken); output["ContinuationToken"] = each_ContinuationToken; + Json::Value each_MaxBatchSize; ToJsonUtilP(MaxBatchSize, each_MaxBatchSize); output["MaxBatchSize"] = each_MaxBatchSize; + Json::Value each_SecondsToLive; ToJsonUtilP(SecondsToLive, each_SecondsToLive); output["SecondsToLive"] = each_SecondsToLive; + Json::Value each_SegmentId; ToJsonUtilS(SegmentId, each_SegmentId); output["SegmentId"] = each_SegmentId; + return output; + } + }; + + struct PlayerLinkedAccount : public PlayFabBaseModel + { + std::string Email; + Boxed Platform; + std::string PlatformUserId; + std::string Username; + + PlayerLinkedAccount() : + PlayFabBaseModel(), + Email(), + Platform(), + PlatformUserId(), + Username() + {} + + PlayerLinkedAccount(const PlayerLinkedAccount& src) : + PlayFabBaseModel(), + Email(src.Email), + Platform(src.Platform), + PlatformUserId(src.PlatformUserId), + Username(src.Username) + {} + + ~PlayerLinkedAccount() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Email"], Email); + FromJsonUtilE(input["Platform"], Platform); + FromJsonUtilS(input["PlatformUserId"], PlatformUserId); + FromJsonUtilS(input["Username"], Username); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Email; ToJsonUtilS(Email, each_Email); output["Email"] = each_Email; + Json::Value each_Platform; ToJsonUtilE(Platform, each_Platform); output["Platform"] = each_Platform; + Json::Value each_PlatformUserId; ToJsonUtilS(PlatformUserId, each_PlatformUserId); output["PlatformUserId"] = each_PlatformUserId; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + return output; + } + }; + + struct PlayerLocation : public PlayFabBaseModel + { + std::string City; + ContinentCode pfContinentCode; + CountryCode pfCountryCode; + Boxed Latitude; + Boxed Longitude; + + PlayerLocation() : + PlayFabBaseModel(), + City(), + pfContinentCode(), + pfCountryCode(), + Latitude(), + Longitude() + {} + + PlayerLocation(const PlayerLocation& src) : + PlayFabBaseModel(), + City(src.City), + pfContinentCode(src.pfContinentCode), + pfCountryCode(src.pfCountryCode), + Latitude(src.Latitude), + Longitude(src.Longitude) + {} + + ~PlayerLocation() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["City"], City); + FromJsonEnum(input["pfContinentCode"], pfContinentCode); + FromJsonEnum(input["pfCountryCode"], pfCountryCode); + FromJsonUtilP(input["Latitude"], Latitude); + FromJsonUtilP(input["Longitude"], Longitude); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_City; ToJsonUtilS(City, each_City); output["City"] = each_City; + Json::Value each_pfContinentCode; ToJsonEnum(pfContinentCode, each_pfContinentCode); output["ContinentCode"] = each_pfContinentCode; + Json::Value each_pfCountryCode; ToJsonEnum(pfCountryCode, each_pfCountryCode); output["CountryCode"] = each_pfCountryCode; + Json::Value each_Latitude; ToJsonUtilP(Latitude, each_Latitude); output["Latitude"] = each_Latitude; + Json::Value each_Longitude; ToJsonUtilP(Longitude, each_Longitude); output["Longitude"] = each_Longitude; + return output; + } + }; + + struct PlayerStatistic : public PlayFabBaseModel + { + std::string Id; + std::string Name; + Int32 StatisticValue; + Int32 StatisticVersion; + + PlayerStatistic() : + PlayFabBaseModel(), + Id(), + Name(), + StatisticValue(), + StatisticVersion() + {} + + PlayerStatistic(const PlayerStatistic& src) : + PlayFabBaseModel(), + Id(src.Id), + Name(src.Name), + StatisticValue(src.StatisticValue), + StatisticVersion(src.StatisticVersion) + {} + + ~PlayerStatistic() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Id"], Id); + FromJsonUtilS(input["Name"], Name); + FromJsonUtilP(input["StatisticValue"], StatisticValue); + FromJsonUtilP(input["StatisticVersion"], StatisticVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Id; ToJsonUtilS(Id, each_Id); output["Id"] = each_Id; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + Json::Value each_StatisticValue; ToJsonUtilP(StatisticValue, each_StatisticValue); output["StatisticValue"] = each_StatisticValue; + Json::Value each_StatisticVersion; ToJsonUtilP(StatisticVersion, each_StatisticVersion); output["StatisticVersion"] = each_StatisticVersion; + return output; + } + }; + + struct PushNotificationRegistration : public PlayFabBaseModel + { + std::string NotificationEndpointARN; + Boxed Platform; + + PushNotificationRegistration() : + PlayFabBaseModel(), + NotificationEndpointARN(), + Platform() + {} + + PushNotificationRegistration(const PushNotificationRegistration& src) : + PlayFabBaseModel(), + NotificationEndpointARN(src.NotificationEndpointARN), + Platform(src.Platform) + {} + + ~PushNotificationRegistration() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["NotificationEndpointARN"], NotificationEndpointARN); + FromJsonUtilE(input["Platform"], Platform); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_NotificationEndpointARN; ToJsonUtilS(NotificationEndpointARN, each_NotificationEndpointARN); output["NotificationEndpointARN"] = each_NotificationEndpointARN; + Json::Value each_Platform; ToJsonUtilE(Platform, each_Platform); output["Platform"] = each_Platform; + return output; + } + }; + + struct PlayerProfile : public PlayFabBaseModel + { + std::list AdCampaignAttributions; + std::string AvatarUrl; + Boxed BannedUntil; + std::list ContactEmailAddresses; + Boxed Created; + std::string DisplayName; + Boxed LastLogin; + std::list LinkedAccounts; + std::map Locations; + Boxed Origination; + std::string PlayerId; + std::list PlayerStatistics; + std::string PublisherId; + std::list PushNotificationRegistrations; + std::map Statistics; + std::list Tags; + std::string TitleId; + Boxed TotalValueToDateInUSD; + std::map ValuesToDate; + std::map VirtualCurrencyBalances; + + PlayerProfile() : + PlayFabBaseModel(), + AdCampaignAttributions(), + AvatarUrl(), + BannedUntil(), + ContactEmailAddresses(), + Created(), + DisplayName(), + LastLogin(), + LinkedAccounts(), + Locations(), + Origination(), + PlayerId(), + PlayerStatistics(), + PublisherId(), + PushNotificationRegistrations(), + Statistics(), + Tags(), + TitleId(), + TotalValueToDateInUSD(), + ValuesToDate(), + VirtualCurrencyBalances() + {} + + PlayerProfile(const PlayerProfile& src) : + PlayFabBaseModel(), + AdCampaignAttributions(src.AdCampaignAttributions), + AvatarUrl(src.AvatarUrl), + BannedUntil(src.BannedUntil), + ContactEmailAddresses(src.ContactEmailAddresses), + Created(src.Created), + DisplayName(src.DisplayName), + LastLogin(src.LastLogin), + LinkedAccounts(src.LinkedAccounts), + Locations(src.Locations), + Origination(src.Origination), + PlayerId(src.PlayerId), + PlayerStatistics(src.PlayerStatistics), + PublisherId(src.PublisherId), + PushNotificationRegistrations(src.PushNotificationRegistrations), + Statistics(src.Statistics), + Tags(src.Tags), + TitleId(src.TitleId), + TotalValueToDateInUSD(src.TotalValueToDateInUSD), + ValuesToDate(src.ValuesToDate), + VirtualCurrencyBalances(src.VirtualCurrencyBalances) + {} + + ~PlayerProfile() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["AdCampaignAttributions"], AdCampaignAttributions); + FromJsonUtilS(input["AvatarUrl"], AvatarUrl); + FromJsonUtilT(input["BannedUntil"], BannedUntil); + FromJsonUtilO(input["ContactEmailAddresses"], ContactEmailAddresses); + FromJsonUtilT(input["Created"], Created); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilT(input["LastLogin"], LastLogin); + FromJsonUtilO(input["LinkedAccounts"], LinkedAccounts); + FromJsonUtilO(input["Locations"], Locations); + FromJsonUtilE(input["Origination"], Origination); + FromJsonUtilS(input["PlayerId"], PlayerId); + FromJsonUtilO(input["PlayerStatistics"], PlayerStatistics); + FromJsonUtilS(input["PublisherId"], PublisherId); + FromJsonUtilO(input["PushNotificationRegistrations"], PushNotificationRegistrations); + FromJsonUtilP(input["Statistics"], Statistics); + FromJsonUtilS(input["Tags"], Tags); + FromJsonUtilS(input["TitleId"], TitleId); + FromJsonUtilP(input["TotalValueToDateInUSD"], TotalValueToDateInUSD); + FromJsonUtilP(input["ValuesToDate"], ValuesToDate); + FromJsonUtilP(input["VirtualCurrencyBalances"], VirtualCurrencyBalances); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AdCampaignAttributions; ToJsonUtilO(AdCampaignAttributions, each_AdCampaignAttributions); output["AdCampaignAttributions"] = each_AdCampaignAttributions; + Json::Value each_AvatarUrl; ToJsonUtilS(AvatarUrl, each_AvatarUrl); output["AvatarUrl"] = each_AvatarUrl; + Json::Value each_BannedUntil; ToJsonUtilT(BannedUntil, each_BannedUntil); output["BannedUntil"] = each_BannedUntil; + Json::Value each_ContactEmailAddresses; ToJsonUtilO(ContactEmailAddresses, each_ContactEmailAddresses); output["ContactEmailAddresses"] = each_ContactEmailAddresses; + Json::Value each_Created; ToJsonUtilT(Created, each_Created); output["Created"] = each_Created; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_LastLogin; ToJsonUtilT(LastLogin, each_LastLogin); output["LastLogin"] = each_LastLogin; + Json::Value each_LinkedAccounts; ToJsonUtilO(LinkedAccounts, each_LinkedAccounts); output["LinkedAccounts"] = each_LinkedAccounts; + Json::Value each_Locations; ToJsonUtilO(Locations, each_Locations); output["Locations"] = each_Locations; + Json::Value each_Origination; ToJsonUtilE(Origination, each_Origination); output["Origination"] = each_Origination; + Json::Value each_PlayerId; ToJsonUtilS(PlayerId, each_PlayerId); output["PlayerId"] = each_PlayerId; + Json::Value each_PlayerStatistics; ToJsonUtilO(PlayerStatistics, each_PlayerStatistics); output["PlayerStatistics"] = each_PlayerStatistics; + Json::Value each_PublisherId; ToJsonUtilS(PublisherId, each_PublisherId); output["PublisherId"] = each_PublisherId; + Json::Value each_PushNotificationRegistrations; ToJsonUtilO(PushNotificationRegistrations, each_PushNotificationRegistrations); output["PushNotificationRegistrations"] = each_PushNotificationRegistrations; + Json::Value each_Statistics; ToJsonUtilP(Statistics, each_Statistics); output["Statistics"] = each_Statistics; + Json::Value each_Tags; ToJsonUtilS(Tags, each_Tags); output["Tags"] = each_Tags; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + Json::Value each_TotalValueToDateInUSD; ToJsonUtilP(TotalValueToDateInUSD, each_TotalValueToDateInUSD); output["TotalValueToDateInUSD"] = each_TotalValueToDateInUSD; + Json::Value each_ValuesToDate; ToJsonUtilP(ValuesToDate, each_ValuesToDate); output["ValuesToDate"] = each_ValuesToDate; + Json::Value each_VirtualCurrencyBalances; ToJsonUtilP(VirtualCurrencyBalances, each_VirtualCurrencyBalances); output["VirtualCurrencyBalances"] = each_VirtualCurrencyBalances; + return output; + } + }; + + struct GetPlayersInSegmentResult : public PlayFabResultCommon + { + std::string ContinuationToken; + std::list PlayerProfiles; + Int32 ProfilesInSegment; + + GetPlayersInSegmentResult() : + PlayFabResultCommon(), + ContinuationToken(), + PlayerProfiles(), + ProfilesInSegment() + {} + + GetPlayersInSegmentResult(const GetPlayersInSegmentResult& src) : + PlayFabResultCommon(), + ContinuationToken(src.ContinuationToken), + PlayerProfiles(src.PlayerProfiles), + ProfilesInSegment(src.ProfilesInSegment) + {} + + ~GetPlayersInSegmentResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ContinuationToken"], ContinuationToken); + FromJsonUtilO(input["PlayerProfiles"], PlayerProfiles); + FromJsonUtilP(input["ProfilesInSegment"], ProfilesInSegment); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ContinuationToken; ToJsonUtilS(ContinuationToken, each_ContinuationToken); output["ContinuationToken"] = each_ContinuationToken; + Json::Value each_PlayerProfiles; ToJsonUtilO(PlayerProfiles, each_PlayerProfiles); output["PlayerProfiles"] = each_PlayerProfiles; + Json::Value each_ProfilesInSegment; ToJsonUtilP(ProfilesInSegment, each_ProfilesInSegment); output["ProfilesInSegment"] = each_ProfilesInSegment; + return output; + } + }; + + struct GetPlayersSegmentsRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + + GetPlayersSegmentsRequest() : + PlayFabRequestCommon(), + PlayFabId() + {} + + GetPlayersSegmentsRequest(const GetPlayersSegmentsRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId) + {} + + ~GetPlayersSegmentsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetPlayerStatisticDefinitionsRequest : public PlayFabRequestCommon + { + + GetPlayerStatisticDefinitionsRequest() : + PlayFabRequestCommon() + {} + + GetPlayerStatisticDefinitionsRequest(const GetPlayerStatisticDefinitionsRequest&) : + PlayFabRequestCommon() + {} + + ~GetPlayerStatisticDefinitionsRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct GetPlayerStatisticDefinitionsResult : public PlayFabResultCommon + { + std::list Statistics; + + GetPlayerStatisticDefinitionsResult() : + PlayFabResultCommon(), + Statistics() + {} + + GetPlayerStatisticDefinitionsResult(const GetPlayerStatisticDefinitionsResult& src) : + PlayFabResultCommon(), + Statistics(src.Statistics) + {} + + ~GetPlayerStatisticDefinitionsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Statistics"], Statistics); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Statistics; ToJsonUtilO(Statistics, each_Statistics); output["Statistics"] = each_Statistics; + return output; + } + }; + + struct GetPlayerStatisticVersionsRequest : public PlayFabRequestCommon + { + std::string StatisticName; + + GetPlayerStatisticVersionsRequest() : + PlayFabRequestCommon(), + StatisticName() + {} + + GetPlayerStatisticVersionsRequest(const GetPlayerStatisticVersionsRequest& src) : + PlayFabRequestCommon(), + StatisticName(src.StatisticName) + {} + + ~GetPlayerStatisticVersionsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["StatisticName"], StatisticName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + return output; + } + }; + + struct PlayerStatisticVersion : public PlayFabBaseModel + { + time_t ActivationTime; + std::string ArchiveDownloadUrl; + Boxed DeactivationTime; + Boxed ScheduledActivationTime; + Boxed ScheduledDeactivationTime; + std::string StatisticName; + Boxed Status; + Uint32 Version; + + PlayerStatisticVersion() : + PlayFabBaseModel(), + ActivationTime(), + ArchiveDownloadUrl(), + DeactivationTime(), + ScheduledActivationTime(), + ScheduledDeactivationTime(), + StatisticName(), + Status(), + Version() + {} + + PlayerStatisticVersion(const PlayerStatisticVersion& src) : + PlayFabBaseModel(), + ActivationTime(src.ActivationTime), + ArchiveDownloadUrl(src.ArchiveDownloadUrl), + DeactivationTime(src.DeactivationTime), + ScheduledActivationTime(src.ScheduledActivationTime), + ScheduledDeactivationTime(src.ScheduledDeactivationTime), + StatisticName(src.StatisticName), + Status(src.Status), + Version(src.Version) + {} + + ~PlayerStatisticVersion() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["ActivationTime"], ActivationTime); + FromJsonUtilS(input["ArchiveDownloadUrl"], ArchiveDownloadUrl); + FromJsonUtilT(input["DeactivationTime"], DeactivationTime); + FromJsonUtilT(input["ScheduledActivationTime"], ScheduledActivationTime); + FromJsonUtilT(input["ScheduledDeactivationTime"], ScheduledDeactivationTime); + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilE(input["Status"], Status); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ActivationTime; ToJsonUtilT(ActivationTime, each_ActivationTime); output["ActivationTime"] = each_ActivationTime; + Json::Value each_ArchiveDownloadUrl; ToJsonUtilS(ArchiveDownloadUrl, each_ArchiveDownloadUrl); output["ArchiveDownloadUrl"] = each_ArchiveDownloadUrl; + Json::Value each_DeactivationTime; ToJsonUtilT(DeactivationTime, each_DeactivationTime); output["DeactivationTime"] = each_DeactivationTime; + Json::Value each_ScheduledActivationTime; ToJsonUtilT(ScheduledActivationTime, each_ScheduledActivationTime); output["ScheduledActivationTime"] = each_ScheduledActivationTime; + Json::Value each_ScheduledDeactivationTime; ToJsonUtilT(ScheduledDeactivationTime, each_ScheduledDeactivationTime); output["ScheduledDeactivationTime"] = each_ScheduledDeactivationTime; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_Status; ToJsonUtilE(Status, each_Status); output["Status"] = each_Status; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetPlayerStatisticVersionsResult : public PlayFabResultCommon + { + std::list StatisticVersions; + + GetPlayerStatisticVersionsResult() : + PlayFabResultCommon(), + StatisticVersions() + {} + + GetPlayerStatisticVersionsResult(const GetPlayerStatisticVersionsResult& src) : + PlayFabResultCommon(), + StatisticVersions(src.StatisticVersions) + {} + + ~GetPlayerStatisticVersionsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["StatisticVersions"], StatisticVersions); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_StatisticVersions; ToJsonUtilO(StatisticVersions, each_StatisticVersions); output["StatisticVersions"] = each_StatisticVersions; + return output; + } + }; + + struct GetPlayerTagsRequest : public PlayFabRequestCommon + { + std::string Namespace; + std::string PlayFabId; + + GetPlayerTagsRequest() : + PlayFabRequestCommon(), + Namespace(), + PlayFabId() + {} + + GetPlayerTagsRequest(const GetPlayerTagsRequest& src) : + PlayFabRequestCommon(), + Namespace(src.Namespace), + PlayFabId(src.PlayFabId) + {} + + ~GetPlayerTagsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Namespace"], Namespace); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Namespace; ToJsonUtilS(Namespace, each_Namespace); output["Namespace"] = each_Namespace; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetPlayerTagsResult : public PlayFabResultCommon + { + std::string PlayFabId; + std::list Tags; + + GetPlayerTagsResult() : + PlayFabResultCommon(), + PlayFabId(), + Tags() + {} + + GetPlayerTagsResult(const GetPlayerTagsResult& src) : + PlayFabResultCommon(), + PlayFabId(src.PlayFabId), + Tags(src.Tags) + {} + + ~GetPlayerTagsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["Tags"], Tags); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Tags; ToJsonUtilS(Tags, each_Tags); output["Tags"] = each_Tags; + return output; + } + }; + + struct GetPolicyRequest : public PlayFabRequestCommon + { + std::string PolicyName; + + GetPolicyRequest() : + PlayFabRequestCommon(), + PolicyName() + {} + + GetPolicyRequest(const GetPolicyRequest& src) : + PlayFabRequestCommon(), + PolicyName(src.PolicyName) + {} + + ~GetPolicyRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PolicyName"], PolicyName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PolicyName; ToJsonUtilS(PolicyName, each_PolicyName); output["PolicyName"] = each_PolicyName; + return output; + } + }; + + struct PermissionStatement : public PlayFabBaseModel + { + std::string Action; + Boxed ApiConditions; + std::string Comment; + EffectType Effect; + std::string Principal; + std::string Resource; + + PermissionStatement() : + PlayFabBaseModel(), + Action(), + ApiConditions(), + Comment(), + Effect(), + Principal(), + Resource() + {} + + PermissionStatement(const PermissionStatement& src) : + PlayFabBaseModel(), + Action(src.Action), + ApiConditions(src.ApiConditions), + Comment(src.Comment), + Effect(src.Effect), + Principal(src.Principal), + Resource(src.Resource) + {} + + ~PermissionStatement() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Action"], Action); + FromJsonUtilO(input["ApiConditions"], ApiConditions); + FromJsonUtilS(input["Comment"], Comment); + FromJsonEnum(input["Effect"], Effect); + FromJsonUtilS(input["Principal"], Principal); + FromJsonUtilS(input["Resource"], Resource); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Action; ToJsonUtilS(Action, each_Action); output["Action"] = each_Action; + Json::Value each_ApiConditions; ToJsonUtilO(ApiConditions, each_ApiConditions); output["ApiConditions"] = each_ApiConditions; + Json::Value each_Comment; ToJsonUtilS(Comment, each_Comment); output["Comment"] = each_Comment; + Json::Value each_Effect; ToJsonEnum(Effect, each_Effect); output["Effect"] = each_Effect; + Json::Value each_Principal; ToJsonUtilS(Principal, each_Principal); output["Principal"] = each_Principal; + Json::Value each_Resource; ToJsonUtilS(Resource, each_Resource); output["Resource"] = each_Resource; + return output; + } + }; + + struct GetPolicyResponse : public PlayFabResultCommon + { + std::string PolicyName; + std::list Statements; + + GetPolicyResponse() : + PlayFabResultCommon(), + PolicyName(), + Statements() + {} + + GetPolicyResponse(const GetPolicyResponse& src) : + PlayFabResultCommon(), + PolicyName(src.PolicyName), + Statements(src.Statements) + {} + + ~GetPolicyResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PolicyName"], PolicyName); + FromJsonUtilO(input["Statements"], Statements); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PolicyName; ToJsonUtilS(PolicyName, each_PolicyName); output["PolicyName"] = each_PolicyName; + Json::Value each_Statements; ToJsonUtilO(Statements, each_Statements); output["Statements"] = each_Statements; + return output; + } + }; + + struct GetPublisherDataRequest : public PlayFabRequestCommon + { + std::list Keys; + + GetPublisherDataRequest() : + PlayFabRequestCommon(), + Keys() + {} + + GetPublisherDataRequest(const GetPublisherDataRequest& src) : + PlayFabRequestCommon(), + Keys(src.Keys) + {} + + ~GetPublisherDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Keys"], Keys); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Keys; ToJsonUtilS(Keys, each_Keys); output["Keys"] = each_Keys; + return output; + } + }; + + struct GetPublisherDataResult : public PlayFabResultCommon + { + std::map Data; + + GetPublisherDataResult() : + PlayFabResultCommon(), + Data() + {} + + GetPublisherDataResult(const GetPublisherDataResult& src) : + PlayFabResultCommon(), + Data(src.Data) + {} + + ~GetPublisherDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Data"], Data); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + return output; + } + }; + + struct GetRandomResultTablesRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + + GetRandomResultTablesRequest() : + PlayFabRequestCommon(), + CatalogVersion() + {} + + GetRandomResultTablesRequest(const GetRandomResultTablesRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion) + {} + + ~GetRandomResultTablesRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + return output; + } + }; + + struct ResultTableNode : public PlayFabBaseModel + { + std::string ResultItem; + ResultTableNodeType ResultItemType; + Int32 Weight; + + ResultTableNode() : + PlayFabBaseModel(), + ResultItem(), + ResultItemType(), + Weight() + {} + + ResultTableNode(const ResultTableNode& src) : + PlayFabBaseModel(), + ResultItem(src.ResultItem), + ResultItemType(src.ResultItemType), + Weight(src.Weight) + {} + + ~ResultTableNode() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ResultItem"], ResultItem); + FromJsonEnum(input["ResultItemType"], ResultItemType); + FromJsonUtilP(input["Weight"], Weight); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ResultItem; ToJsonUtilS(ResultItem, each_ResultItem); output["ResultItem"] = each_ResultItem; + Json::Value each_ResultItemType; ToJsonEnum(ResultItemType, each_ResultItemType); output["ResultItemType"] = each_ResultItemType; + Json::Value each_Weight; ToJsonUtilP(Weight, each_Weight); output["Weight"] = each_Weight; + return output; + } + }; + + struct RandomResultTableListing : public PlayFabBaseModel + { + std::string CatalogVersion; + std::list Nodes; + std::string TableId; + + RandomResultTableListing() : + PlayFabBaseModel(), + CatalogVersion(), + Nodes(), + TableId() + {} + + RandomResultTableListing(const RandomResultTableListing& src) : + PlayFabBaseModel(), + CatalogVersion(src.CatalogVersion), + Nodes(src.Nodes), + TableId(src.TableId) + {} + + ~RandomResultTableListing() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilO(input["Nodes"], Nodes); + FromJsonUtilS(input["TableId"], TableId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_Nodes; ToJsonUtilO(Nodes, each_Nodes); output["Nodes"] = each_Nodes; + Json::Value each_TableId; ToJsonUtilS(TableId, each_TableId); output["TableId"] = each_TableId; + return output; + } + }; + + struct GetRandomResultTablesResult : public PlayFabResultCommon + { + std::map Tables; + + GetRandomResultTablesResult() : + PlayFabResultCommon(), + Tables() + {} + + GetRandomResultTablesResult(const GetRandomResultTablesResult& src) : + PlayFabResultCommon(), + Tables(src.Tables) + {} + + ~GetRandomResultTablesResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Tables"], Tables); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Tables; ToJsonUtilO(Tables, each_Tables); output["Tables"] = each_Tables; + return output; + } + }; + + struct GetServerBuildInfoRequest : public PlayFabRequestCommon + { + std::string BuildId; + + GetServerBuildInfoRequest() : + PlayFabRequestCommon(), + BuildId() + {} + + GetServerBuildInfoRequest(const GetServerBuildInfoRequest& src) : + PlayFabRequestCommon(), + BuildId(src.BuildId) + {} + + ~GetServerBuildInfoRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["BuildId"], BuildId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BuildId; ToJsonUtilS(BuildId, each_BuildId); output["BuildId"] = each_BuildId; + return output; + } + }; + + struct GetServerBuildInfoResult : public PlayFabResultCommon + { + std::list ActiveRegions; + std::string BuildId; + std::string Comment; + std::string ErrorMessage; + Int32 MaxGamesPerHost; + Int32 MinFreeGameSlots; + Boxed Status; + time_t Timestamp; + std::string TitleId; + + GetServerBuildInfoResult() : + PlayFabResultCommon(), + ActiveRegions(), + BuildId(), + Comment(), + ErrorMessage(), + MaxGamesPerHost(), + MinFreeGameSlots(), + Status(), + Timestamp(), + TitleId() + {} + + GetServerBuildInfoResult(const GetServerBuildInfoResult& src) : + PlayFabResultCommon(), + ActiveRegions(src.ActiveRegions), + BuildId(src.BuildId), + Comment(src.Comment), + ErrorMessage(src.ErrorMessage), + MaxGamesPerHost(src.MaxGamesPerHost), + MinFreeGameSlots(src.MinFreeGameSlots), + Status(src.Status), + Timestamp(src.Timestamp), + TitleId(src.TitleId) + {} + + ~GetServerBuildInfoResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilE(input["ActiveRegions"], ActiveRegions); + FromJsonUtilS(input["BuildId"], BuildId); + FromJsonUtilS(input["Comment"], Comment); + FromJsonUtilS(input["ErrorMessage"], ErrorMessage); + FromJsonUtilP(input["MaxGamesPerHost"], MaxGamesPerHost); + FromJsonUtilP(input["MinFreeGameSlots"], MinFreeGameSlots); + FromJsonUtilE(input["Status"], Status); + FromJsonUtilT(input["Timestamp"], Timestamp); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ActiveRegions; ToJsonUtilE(ActiveRegions, each_ActiveRegions); output["ActiveRegions"] = each_ActiveRegions; + Json::Value each_BuildId; ToJsonUtilS(BuildId, each_BuildId); output["BuildId"] = each_BuildId; + Json::Value each_Comment; ToJsonUtilS(Comment, each_Comment); output["Comment"] = each_Comment; + Json::Value each_ErrorMessage; ToJsonUtilS(ErrorMessage, each_ErrorMessage); output["ErrorMessage"] = each_ErrorMessage; + Json::Value each_MaxGamesPerHost; ToJsonUtilP(MaxGamesPerHost, each_MaxGamesPerHost); output["MaxGamesPerHost"] = each_MaxGamesPerHost; + Json::Value each_MinFreeGameSlots; ToJsonUtilP(MinFreeGameSlots, each_MinFreeGameSlots); output["MinFreeGameSlots"] = each_MinFreeGameSlots; + Json::Value each_Status; ToJsonUtilE(Status, each_Status); output["Status"] = each_Status; + Json::Value each_Timestamp; ToJsonUtilT(Timestamp, each_Timestamp); output["Timestamp"] = each_Timestamp; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct GetServerBuildUploadURLRequest : public PlayFabRequestCommon + { + std::string BuildId; + + GetServerBuildUploadURLRequest() : + PlayFabRequestCommon(), + BuildId() + {} + + GetServerBuildUploadURLRequest(const GetServerBuildUploadURLRequest& src) : + PlayFabRequestCommon(), + BuildId(src.BuildId) + {} + + ~GetServerBuildUploadURLRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["BuildId"], BuildId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BuildId; ToJsonUtilS(BuildId, each_BuildId); output["BuildId"] = each_BuildId; + return output; + } + }; + + struct GetServerBuildUploadURLResult : public PlayFabResultCommon + { + std::string URL; + + GetServerBuildUploadURLResult() : + PlayFabResultCommon(), + URL() + {} + + GetServerBuildUploadURLResult(const GetServerBuildUploadURLResult& src) : + PlayFabResultCommon(), + URL(src.URL) + {} + + ~GetServerBuildUploadURLResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["URL"], URL); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_URL; ToJsonUtilS(URL, each_URL); output["URL"] = each_URL; + return output; + } + }; + + struct GetStoreItemsRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::string StoreId; + + GetStoreItemsRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + StoreId() + {} + + GetStoreItemsRequest(const GetStoreItemsRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + StoreId(src.StoreId) + {} + + ~GetStoreItemsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["StoreId"], StoreId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_StoreId; ToJsonUtilS(StoreId, each_StoreId); output["StoreId"] = each_StoreId; + return output; + } + }; + + struct StoreMarketingModel : public PlayFabBaseModel + { + std::string Description; + std::string DisplayName; + Json::Value Metadata; + + StoreMarketingModel() : + PlayFabBaseModel(), + Description(), + DisplayName(), + Metadata() + {} + + StoreMarketingModel(const StoreMarketingModel& src) : + PlayFabBaseModel(), + Description(src.Description), + DisplayName(src.DisplayName), + Metadata(src.Metadata) + {} + + ~StoreMarketingModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Description"], Description); + FromJsonUtilS(input["DisplayName"], DisplayName); + Metadata = input["Metadata"]; + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Description; ToJsonUtilS(Description, each_Description); output["Description"] = each_Description; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + output["Metadata"] = Metadata; + return output; + } + }; + + struct StoreItem : public PlayFabBaseModel + { + Json::Value CustomData; + Boxed DisplayPosition; + std::string ItemId; + std::map RealCurrencyPrices; + std::map VirtualCurrencyPrices; + + StoreItem() : + PlayFabBaseModel(), + CustomData(), + DisplayPosition(), + ItemId(), + RealCurrencyPrices(), + VirtualCurrencyPrices() + {} + + StoreItem(const StoreItem& src) : + PlayFabBaseModel(), + CustomData(src.CustomData), + DisplayPosition(src.DisplayPosition), + ItemId(src.ItemId), + RealCurrencyPrices(src.RealCurrencyPrices), + VirtualCurrencyPrices(src.VirtualCurrencyPrices) + {} + + ~StoreItem() { } + + void FromJson(Json::Value& input) override + { + CustomData = input["CustomData"]; + FromJsonUtilP(input["DisplayPosition"], DisplayPosition); + FromJsonUtilS(input["ItemId"], ItemId); + FromJsonUtilP(input["RealCurrencyPrices"], RealCurrencyPrices); + FromJsonUtilP(input["VirtualCurrencyPrices"], VirtualCurrencyPrices); + } + + Json::Value ToJson() const override + { + Json::Value output; + output["CustomData"] = CustomData; + Json::Value each_DisplayPosition; ToJsonUtilP(DisplayPosition, each_DisplayPosition); output["DisplayPosition"] = each_DisplayPosition; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + Json::Value each_RealCurrencyPrices; ToJsonUtilP(RealCurrencyPrices, each_RealCurrencyPrices); output["RealCurrencyPrices"] = each_RealCurrencyPrices; + Json::Value each_VirtualCurrencyPrices; ToJsonUtilP(VirtualCurrencyPrices, each_VirtualCurrencyPrices); output["VirtualCurrencyPrices"] = each_VirtualCurrencyPrices; + return output; + } + }; + + struct GetStoreItemsResult : public PlayFabResultCommon + { + std::string CatalogVersion; + Boxed MarketingData; + Boxed Source; + std::list Store; + std::string StoreId; + + GetStoreItemsResult() : + PlayFabResultCommon(), + CatalogVersion(), + MarketingData(), + Source(), + Store(), + StoreId() + {} + + GetStoreItemsResult(const GetStoreItemsResult& src) : + PlayFabResultCommon(), + CatalogVersion(src.CatalogVersion), + MarketingData(src.MarketingData), + Source(src.Source), + Store(src.Store), + StoreId(src.StoreId) + {} + + ~GetStoreItemsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilO(input["MarketingData"], MarketingData); + FromJsonUtilE(input["Source"], Source); + FromJsonUtilO(input["Store"], Store); + FromJsonUtilS(input["StoreId"], StoreId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_MarketingData; ToJsonUtilO(MarketingData, each_MarketingData); output["MarketingData"] = each_MarketingData; + Json::Value each_Source; ToJsonUtilE(Source, each_Source); output["Source"] = each_Source; + Json::Value each_Store; ToJsonUtilO(Store, each_Store); output["Store"] = each_Store; + Json::Value each_StoreId; ToJsonUtilS(StoreId, each_StoreId); output["StoreId"] = each_StoreId; + return output; + } + }; + + struct GetTaskInstanceRequest : public PlayFabRequestCommon + { + std::string TaskInstanceId; + + GetTaskInstanceRequest() : + PlayFabRequestCommon(), + TaskInstanceId() + {} + + GetTaskInstanceRequest(const GetTaskInstanceRequest& src) : + PlayFabRequestCommon(), + TaskInstanceId(src.TaskInstanceId) + {} + + ~GetTaskInstanceRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["TaskInstanceId"], TaskInstanceId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_TaskInstanceId; ToJsonUtilS(TaskInstanceId, each_TaskInstanceId); output["TaskInstanceId"] = each_TaskInstanceId; + return output; + } + }; + + struct GetTaskInstancesRequest : public PlayFabRequestCommon + { + Boxed StartedAtRangeFrom; + Boxed StartedAtRangeTo; + Boxed StatusFilter; + Boxed TaskIdentifier; + + GetTaskInstancesRequest() : + PlayFabRequestCommon(), + StartedAtRangeFrom(), + StartedAtRangeTo(), + StatusFilter(), + TaskIdentifier() + {} + + GetTaskInstancesRequest(const GetTaskInstancesRequest& src) : + PlayFabRequestCommon(), + StartedAtRangeFrom(src.StartedAtRangeFrom), + StartedAtRangeTo(src.StartedAtRangeTo), + StatusFilter(src.StatusFilter), + TaskIdentifier(src.TaskIdentifier) + {} + + ~GetTaskInstancesRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["StartedAtRangeFrom"], StartedAtRangeFrom); + FromJsonUtilT(input["StartedAtRangeTo"], StartedAtRangeTo); + FromJsonUtilE(input["StatusFilter"], StatusFilter); + FromJsonUtilO(input["TaskIdentifier"], TaskIdentifier); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_StartedAtRangeFrom; ToJsonUtilT(StartedAtRangeFrom, each_StartedAtRangeFrom); output["StartedAtRangeFrom"] = each_StartedAtRangeFrom; + Json::Value each_StartedAtRangeTo; ToJsonUtilT(StartedAtRangeTo, each_StartedAtRangeTo); output["StartedAtRangeTo"] = each_StartedAtRangeTo; + Json::Value each_StatusFilter; ToJsonUtilE(StatusFilter, each_StatusFilter); output["StatusFilter"] = each_StatusFilter; + Json::Value each_TaskIdentifier; ToJsonUtilO(TaskIdentifier, each_TaskIdentifier); output["TaskIdentifier"] = each_TaskIdentifier; + return output; + } + }; + + struct TaskInstanceBasicSummary : public PlayFabBaseModel + { + Boxed CompletedAt; + Boxed EstimatedSecondsRemaining; + Boxed PercentComplete; + std::string ScheduledByUserId; + time_t StartedAt; + Boxed Status; + Boxed TaskIdentifier; + std::string TaskInstanceId; + Boxed Type; + + TaskInstanceBasicSummary() : + PlayFabBaseModel(), + CompletedAt(), + EstimatedSecondsRemaining(), + PercentComplete(), + ScheduledByUserId(), + StartedAt(), + Status(), + TaskIdentifier(), + TaskInstanceId(), + Type() + {} + + TaskInstanceBasicSummary(const TaskInstanceBasicSummary& src) : + PlayFabBaseModel(), + CompletedAt(src.CompletedAt), + EstimatedSecondsRemaining(src.EstimatedSecondsRemaining), + PercentComplete(src.PercentComplete), + ScheduledByUserId(src.ScheduledByUserId), + StartedAt(src.StartedAt), + Status(src.Status), + TaskIdentifier(src.TaskIdentifier), + TaskInstanceId(src.TaskInstanceId), + Type(src.Type) + {} + + ~TaskInstanceBasicSummary() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["CompletedAt"], CompletedAt); + FromJsonUtilP(input["EstimatedSecondsRemaining"], EstimatedSecondsRemaining); + FromJsonUtilP(input["PercentComplete"], PercentComplete); + FromJsonUtilS(input["ScheduledByUserId"], ScheduledByUserId); + FromJsonUtilT(input["StartedAt"], StartedAt); + FromJsonUtilE(input["Status"], Status); + FromJsonUtilO(input["TaskIdentifier"], TaskIdentifier); + FromJsonUtilS(input["TaskInstanceId"], TaskInstanceId); + FromJsonUtilE(input["Type"], Type); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CompletedAt; ToJsonUtilT(CompletedAt, each_CompletedAt); output["CompletedAt"] = each_CompletedAt; + Json::Value each_EstimatedSecondsRemaining; ToJsonUtilP(EstimatedSecondsRemaining, each_EstimatedSecondsRemaining); output["EstimatedSecondsRemaining"] = each_EstimatedSecondsRemaining; + Json::Value each_PercentComplete; ToJsonUtilP(PercentComplete, each_PercentComplete); output["PercentComplete"] = each_PercentComplete; + Json::Value each_ScheduledByUserId; ToJsonUtilS(ScheduledByUserId, each_ScheduledByUserId); output["ScheduledByUserId"] = each_ScheduledByUserId; + Json::Value each_StartedAt; ToJsonUtilT(StartedAt, each_StartedAt); output["StartedAt"] = each_StartedAt; + Json::Value each_Status; ToJsonUtilE(Status, each_Status); output["Status"] = each_Status; + Json::Value each_TaskIdentifier; ToJsonUtilO(TaskIdentifier, each_TaskIdentifier); output["TaskIdentifier"] = each_TaskIdentifier; + Json::Value each_TaskInstanceId; ToJsonUtilS(TaskInstanceId, each_TaskInstanceId); output["TaskInstanceId"] = each_TaskInstanceId; + Json::Value each_Type; ToJsonUtilE(Type, each_Type); output["Type"] = each_Type; + return output; + } + }; + + struct GetTaskInstancesResult : public PlayFabResultCommon + { + std::list Summaries; + + GetTaskInstancesResult() : + PlayFabResultCommon(), + Summaries() + {} + + GetTaskInstancesResult(const GetTaskInstancesResult& src) : + PlayFabResultCommon(), + Summaries(src.Summaries) + {} + + ~GetTaskInstancesResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Summaries"], Summaries); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Summaries; ToJsonUtilO(Summaries, each_Summaries); output["Summaries"] = each_Summaries; + return output; + } + }; + + struct GetTasksRequest : public PlayFabRequestCommon + { + Boxed Identifier; + + GetTasksRequest() : + PlayFabRequestCommon(), + Identifier() + {} + + GetTasksRequest(const GetTasksRequest& src) : + PlayFabRequestCommon(), + Identifier(src.Identifier) + {} + + ~GetTasksRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Identifier"], Identifier); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Identifier; ToJsonUtilO(Identifier, each_Identifier); output["Identifier"] = each_Identifier; + return output; + } + }; + + struct ScheduledTask : public PlayFabBaseModel + { + std::string Description; + bool IsActive; + Boxed LastRunTime; + std::string Name; + Boxed NextRunTime; + Json::Value Parameter; + std::string Schedule; + std::string TaskId; + Boxed Type; + + ScheduledTask() : + PlayFabBaseModel(), + Description(), + IsActive(), + LastRunTime(), + Name(), + NextRunTime(), + Parameter(), + Schedule(), + TaskId(), + Type() + {} + + ScheduledTask(const ScheduledTask& src) : + PlayFabBaseModel(), + Description(src.Description), + IsActive(src.IsActive), + LastRunTime(src.LastRunTime), + Name(src.Name), + NextRunTime(src.NextRunTime), + Parameter(src.Parameter), + Schedule(src.Schedule), + TaskId(src.TaskId), + Type(src.Type) + {} + + ~ScheduledTask() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Description"], Description); + FromJsonUtilP(input["IsActive"], IsActive); + FromJsonUtilT(input["LastRunTime"], LastRunTime); + FromJsonUtilS(input["Name"], Name); + FromJsonUtilT(input["NextRunTime"], NextRunTime); + Parameter = input["Parameter"]; + FromJsonUtilS(input["Schedule"], Schedule); + FromJsonUtilS(input["TaskId"], TaskId); + FromJsonUtilE(input["Type"], Type); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Description; ToJsonUtilS(Description, each_Description); output["Description"] = each_Description; + Json::Value each_IsActive; ToJsonUtilP(IsActive, each_IsActive); output["IsActive"] = each_IsActive; + Json::Value each_LastRunTime; ToJsonUtilT(LastRunTime, each_LastRunTime); output["LastRunTime"] = each_LastRunTime; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + Json::Value each_NextRunTime; ToJsonUtilT(NextRunTime, each_NextRunTime); output["NextRunTime"] = each_NextRunTime; + output["Parameter"] = Parameter; + Json::Value each_Schedule; ToJsonUtilS(Schedule, each_Schedule); output["Schedule"] = each_Schedule; + Json::Value each_TaskId; ToJsonUtilS(TaskId, each_TaskId); output["TaskId"] = each_TaskId; + Json::Value each_Type; ToJsonUtilE(Type, each_Type); output["Type"] = each_Type; + return output; + } + }; + + struct GetTasksResult : public PlayFabResultCommon + { + std::list Tasks; + + GetTasksResult() : + PlayFabResultCommon(), + Tasks() + {} + + GetTasksResult(const GetTasksResult& src) : + PlayFabResultCommon(), + Tasks(src.Tasks) + {} + + ~GetTasksResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Tasks"], Tasks); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Tasks; ToJsonUtilO(Tasks, each_Tasks); output["Tasks"] = each_Tasks; + return output; + } + }; + + struct GetTitleDataRequest : public PlayFabRequestCommon + { + std::list Keys; + + GetTitleDataRequest() : + PlayFabRequestCommon(), + Keys() + {} + + GetTitleDataRequest(const GetTitleDataRequest& src) : + PlayFabRequestCommon(), + Keys(src.Keys) + {} + + ~GetTitleDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Keys"], Keys); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Keys; ToJsonUtilS(Keys, each_Keys); output["Keys"] = each_Keys; + return output; + } + }; + + struct GetTitleDataResult : public PlayFabResultCommon + { + std::map Data; + + GetTitleDataResult() : + PlayFabResultCommon(), + Data() + {} + + GetTitleDataResult(const GetTitleDataResult& src) : + PlayFabResultCommon(), + Data(src.Data) + {} + + ~GetTitleDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Data"], Data); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + return output; + } + }; + + struct GetUserBansRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + + GetUserBansRequest() : + PlayFabRequestCommon(), + PlayFabId() + {} + + GetUserBansRequest(const GetUserBansRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId) + {} + + ~GetUserBansRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetUserBansResult : public PlayFabResultCommon + { + std::list BanData; + + GetUserBansResult() : + PlayFabResultCommon(), + BanData() + {} + + GetUserBansResult(const GetUserBansResult& src) : + PlayFabResultCommon(), + BanData(src.BanData) + {} + + ~GetUserBansResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["BanData"], BanData); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BanData; ToJsonUtilO(BanData, each_BanData); output["BanData"] = each_BanData; + return output; + } + }; + + struct GetUserDataRequest : public PlayFabRequestCommon + { + Boxed IfChangedFromDataVersion; + std::list Keys; + std::string PlayFabId; + + GetUserDataRequest() : + PlayFabRequestCommon(), + IfChangedFromDataVersion(), + Keys(), + PlayFabId() + {} + + GetUserDataRequest(const GetUserDataRequest& src) : + PlayFabRequestCommon(), + IfChangedFromDataVersion(src.IfChangedFromDataVersion), + Keys(src.Keys), + PlayFabId(src.PlayFabId) + {} + + ~GetUserDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["IfChangedFromDataVersion"], IfChangedFromDataVersion); + FromJsonUtilS(input["Keys"], Keys); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_IfChangedFromDataVersion; ToJsonUtilP(IfChangedFromDataVersion, each_IfChangedFromDataVersion); output["IfChangedFromDataVersion"] = each_IfChangedFromDataVersion; + Json::Value each_Keys; ToJsonUtilS(Keys, each_Keys); output["Keys"] = each_Keys; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct UserDataRecord : public PlayFabBaseModel + { + time_t LastUpdated; + Boxed Permission; + std::string Value; + + UserDataRecord() : + PlayFabBaseModel(), + LastUpdated(), + Permission(), + Value() + {} + + UserDataRecord(const UserDataRecord& src) : + PlayFabBaseModel(), + LastUpdated(src.LastUpdated), + Permission(src.Permission), + Value(src.Value) + {} + + ~UserDataRecord() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["LastUpdated"], LastUpdated); + FromJsonUtilE(input["Permission"], Permission); + FromJsonUtilS(input["Value"], Value); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LastUpdated; ToJsonUtilT(LastUpdated, each_LastUpdated); output["LastUpdated"] = each_LastUpdated; + Json::Value each_Permission; ToJsonUtilE(Permission, each_Permission); output["Permission"] = each_Permission; + Json::Value each_Value; ToJsonUtilS(Value, each_Value); output["Value"] = each_Value; + return output; + } + }; + + struct GetUserDataResult : public PlayFabResultCommon + { + std::map Data; + Uint32 DataVersion; + std::string PlayFabId; + + GetUserDataResult() : + PlayFabResultCommon(), + Data(), + DataVersion(), + PlayFabId() + {} + + GetUserDataResult(const GetUserDataResult& src) : + PlayFabResultCommon(), + Data(src.Data), + DataVersion(src.DataVersion), + PlayFabId(src.PlayFabId) + {} + + ~GetUserDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Data"], Data); + FromJsonUtilP(input["DataVersion"], DataVersion); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilO(Data, each_Data); output["Data"] = each_Data; + Json::Value each_DataVersion; ToJsonUtilP(DataVersion, each_DataVersion); output["DataVersion"] = each_DataVersion; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetUserInventoryRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + + GetUserInventoryRequest() : + PlayFabRequestCommon(), + PlayFabId() + {} + + GetUserInventoryRequest(const GetUserInventoryRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId) + {} + + ~GetUserInventoryRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct ItemInstance : public PlayFabBaseModel + { + std::string Annotation; + std::list BundleContents; + std::string BundleParent; + std::string CatalogVersion; + std::map CustomData; + std::string DisplayName; + Boxed Expiration; + std::string ItemClass; + std::string ItemId; + std::string ItemInstanceId; + Boxed PurchaseDate; + Boxed RemainingUses; + std::string UnitCurrency; + Uint32 UnitPrice; + Boxed UsesIncrementedBy; + + ItemInstance() : + PlayFabBaseModel(), + Annotation(), + BundleContents(), + BundleParent(), + CatalogVersion(), + CustomData(), + DisplayName(), + Expiration(), + ItemClass(), + ItemId(), + ItemInstanceId(), + PurchaseDate(), + RemainingUses(), + UnitCurrency(), + UnitPrice(), + UsesIncrementedBy() + {} + + ItemInstance(const ItemInstance& src) : + PlayFabBaseModel(), + Annotation(src.Annotation), + BundleContents(src.BundleContents), + BundleParent(src.BundleParent), + CatalogVersion(src.CatalogVersion), + CustomData(src.CustomData), + DisplayName(src.DisplayName), + Expiration(src.Expiration), + ItemClass(src.ItemClass), + ItemId(src.ItemId), + ItemInstanceId(src.ItemInstanceId), + PurchaseDate(src.PurchaseDate), + RemainingUses(src.RemainingUses), + UnitCurrency(src.UnitCurrency), + UnitPrice(src.UnitPrice), + UsesIncrementedBy(src.UsesIncrementedBy) + {} + + ~ItemInstance() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Annotation"], Annotation); + FromJsonUtilS(input["BundleContents"], BundleContents); + FromJsonUtilS(input["BundleParent"], BundleParent); + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CustomData"], CustomData); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilT(input["Expiration"], Expiration); + FromJsonUtilS(input["ItemClass"], ItemClass); + FromJsonUtilS(input["ItemId"], ItemId); + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilT(input["PurchaseDate"], PurchaseDate); + FromJsonUtilP(input["RemainingUses"], RemainingUses); + FromJsonUtilS(input["UnitCurrency"], UnitCurrency); + FromJsonUtilP(input["UnitPrice"], UnitPrice); + FromJsonUtilP(input["UsesIncrementedBy"], UsesIncrementedBy); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Annotation; ToJsonUtilS(Annotation, each_Annotation); output["Annotation"] = each_Annotation; + Json::Value each_BundleContents; ToJsonUtilS(BundleContents, each_BundleContents); output["BundleContents"] = each_BundleContents; + Json::Value each_BundleParent; ToJsonUtilS(BundleParent, each_BundleParent); output["BundleParent"] = each_BundleParent; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CustomData; ToJsonUtilS(CustomData, each_CustomData); output["CustomData"] = each_CustomData; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_Expiration; ToJsonUtilT(Expiration, each_Expiration); output["Expiration"] = each_Expiration; + Json::Value each_ItemClass; ToJsonUtilS(ItemClass, each_ItemClass); output["ItemClass"] = each_ItemClass; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_PurchaseDate; ToJsonUtilT(PurchaseDate, each_PurchaseDate); output["PurchaseDate"] = each_PurchaseDate; + Json::Value each_RemainingUses; ToJsonUtilP(RemainingUses, each_RemainingUses); output["RemainingUses"] = each_RemainingUses; + Json::Value each_UnitCurrency; ToJsonUtilS(UnitCurrency, each_UnitCurrency); output["UnitCurrency"] = each_UnitCurrency; + Json::Value each_UnitPrice; ToJsonUtilP(UnitPrice, each_UnitPrice); output["UnitPrice"] = each_UnitPrice; + Json::Value each_UsesIncrementedBy; ToJsonUtilP(UsesIncrementedBy, each_UsesIncrementedBy); output["UsesIncrementedBy"] = each_UsesIncrementedBy; + return output; + } + }; + + struct VirtualCurrencyRechargeTime : public PlayFabBaseModel + { + Int32 RechargeMax; + time_t RechargeTime; + Int32 SecondsToRecharge; + + VirtualCurrencyRechargeTime() : + PlayFabBaseModel(), + RechargeMax(), + RechargeTime(), + SecondsToRecharge() + {} + + VirtualCurrencyRechargeTime(const VirtualCurrencyRechargeTime& src) : + PlayFabBaseModel(), + RechargeMax(src.RechargeMax), + RechargeTime(src.RechargeTime), + SecondsToRecharge(src.SecondsToRecharge) + {} + + ~VirtualCurrencyRechargeTime() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["RechargeMax"], RechargeMax); + FromJsonUtilT(input["RechargeTime"], RechargeTime); + FromJsonUtilP(input["SecondsToRecharge"], SecondsToRecharge); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_RechargeMax; ToJsonUtilP(RechargeMax, each_RechargeMax); output["RechargeMax"] = each_RechargeMax; + Json::Value each_RechargeTime; ToJsonUtilT(RechargeTime, each_RechargeTime); output["RechargeTime"] = each_RechargeTime; + Json::Value each_SecondsToRecharge; ToJsonUtilP(SecondsToRecharge, each_SecondsToRecharge); output["SecondsToRecharge"] = each_SecondsToRecharge; + return output; + } + }; + + struct GetUserInventoryResult : public PlayFabResultCommon + { + std::list Inventory; + std::string PlayFabId; + std::map VirtualCurrency; + std::map VirtualCurrencyRechargeTimes; + + GetUserInventoryResult() : + PlayFabResultCommon(), + Inventory(), + PlayFabId(), + VirtualCurrency(), + VirtualCurrencyRechargeTimes() + {} + + GetUserInventoryResult(const GetUserInventoryResult& src) : + PlayFabResultCommon(), + Inventory(src.Inventory), + PlayFabId(src.PlayFabId), + VirtualCurrency(src.VirtualCurrency), + VirtualCurrencyRechargeTimes(src.VirtualCurrencyRechargeTimes) + {} + + ~GetUserInventoryResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Inventory"], Inventory); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilP(input["VirtualCurrency"], VirtualCurrency); + FromJsonUtilO(input["VirtualCurrencyRechargeTimes"], VirtualCurrencyRechargeTimes); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Inventory; ToJsonUtilO(Inventory, each_Inventory); output["Inventory"] = each_Inventory; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_VirtualCurrency; ToJsonUtilP(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + Json::Value each_VirtualCurrencyRechargeTimes; ToJsonUtilO(VirtualCurrencyRechargeTimes, each_VirtualCurrencyRechargeTimes); output["VirtualCurrencyRechargeTimes"] = each_VirtualCurrencyRechargeTimes; + return output; + } + }; + + struct GrantedItemInstance : public PlayFabBaseModel + { + std::string Annotation; + std::list BundleContents; + std::string BundleParent; + std::string CatalogVersion; + std::string CharacterId; + std::map CustomData; + std::string DisplayName; + Boxed Expiration; + std::string ItemClass; + std::string ItemId; + std::string ItemInstanceId; + std::string PlayFabId; + Boxed PurchaseDate; + Boxed RemainingUses; + bool Result; + std::string UnitCurrency; + Uint32 UnitPrice; + Boxed UsesIncrementedBy; + + GrantedItemInstance() : + PlayFabBaseModel(), + Annotation(), + BundleContents(), + BundleParent(), + CatalogVersion(), + CharacterId(), + CustomData(), + DisplayName(), + Expiration(), + ItemClass(), + ItemId(), + ItemInstanceId(), + PlayFabId(), + PurchaseDate(), + RemainingUses(), + Result(), + UnitCurrency(), + UnitPrice(), + UsesIncrementedBy() + {} + + GrantedItemInstance(const GrantedItemInstance& src) : + PlayFabBaseModel(), + Annotation(src.Annotation), + BundleContents(src.BundleContents), + BundleParent(src.BundleParent), + CatalogVersion(src.CatalogVersion), + CharacterId(src.CharacterId), + CustomData(src.CustomData), + DisplayName(src.DisplayName), + Expiration(src.Expiration), + ItemClass(src.ItemClass), + ItemId(src.ItemId), + ItemInstanceId(src.ItemInstanceId), + PlayFabId(src.PlayFabId), + PurchaseDate(src.PurchaseDate), + RemainingUses(src.RemainingUses), + Result(src.Result), + UnitCurrency(src.UnitCurrency), + UnitPrice(src.UnitPrice), + UsesIncrementedBy(src.UsesIncrementedBy) + {} + + ~GrantedItemInstance() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Annotation"], Annotation); + FromJsonUtilS(input["BundleContents"], BundleContents); + FromJsonUtilS(input["BundleParent"], BundleParent); + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["CustomData"], CustomData); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilT(input["Expiration"], Expiration); + FromJsonUtilS(input["ItemClass"], ItemClass); + FromJsonUtilS(input["ItemId"], ItemId); + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilT(input["PurchaseDate"], PurchaseDate); + FromJsonUtilP(input["RemainingUses"], RemainingUses); + FromJsonUtilP(input["Result"], Result); + FromJsonUtilS(input["UnitCurrency"], UnitCurrency); + FromJsonUtilP(input["UnitPrice"], UnitPrice); + FromJsonUtilP(input["UsesIncrementedBy"], UsesIncrementedBy); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Annotation; ToJsonUtilS(Annotation, each_Annotation); output["Annotation"] = each_Annotation; + Json::Value each_BundleContents; ToJsonUtilS(BundleContents, each_BundleContents); output["BundleContents"] = each_BundleContents; + Json::Value each_BundleParent; ToJsonUtilS(BundleParent, each_BundleParent); output["BundleParent"] = each_BundleParent; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_CustomData; ToJsonUtilS(CustomData, each_CustomData); output["CustomData"] = each_CustomData; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_Expiration; ToJsonUtilT(Expiration, each_Expiration); output["Expiration"] = each_Expiration; + Json::Value each_ItemClass; ToJsonUtilS(ItemClass, each_ItemClass); output["ItemClass"] = each_ItemClass; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_PurchaseDate; ToJsonUtilT(PurchaseDate, each_PurchaseDate); output["PurchaseDate"] = each_PurchaseDate; + Json::Value each_RemainingUses; ToJsonUtilP(RemainingUses, each_RemainingUses); output["RemainingUses"] = each_RemainingUses; + Json::Value each_Result; ToJsonUtilP(Result, each_Result); output["Result"] = each_Result; + Json::Value each_UnitCurrency; ToJsonUtilS(UnitCurrency, each_UnitCurrency); output["UnitCurrency"] = each_UnitCurrency; + Json::Value each_UnitPrice; ToJsonUtilP(UnitPrice, each_UnitPrice); output["UnitPrice"] = each_UnitPrice; + Json::Value each_UsesIncrementedBy; ToJsonUtilP(UsesIncrementedBy, each_UsesIncrementedBy); output["UsesIncrementedBy"] = each_UsesIncrementedBy; + return output; + } + }; + + struct ItemGrant : public PlayFabBaseModel + { + std::string Annotation; + std::string CharacterId; + std::map Data; + std::string ItemId; + std::list KeysToRemove; + std::string PlayFabId; + + ItemGrant() : + PlayFabBaseModel(), + Annotation(), + CharacterId(), + Data(), + ItemId(), + KeysToRemove(), + PlayFabId() + {} + + ItemGrant(const ItemGrant& src) : + PlayFabBaseModel(), + Annotation(src.Annotation), + CharacterId(src.CharacterId), + Data(src.Data), + ItemId(src.ItemId), + KeysToRemove(src.KeysToRemove), + PlayFabId(src.PlayFabId) + {} + + ~ItemGrant() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Annotation"], Annotation); + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["Data"], Data); + FromJsonUtilS(input["ItemId"], ItemId); + FromJsonUtilS(input["KeysToRemove"], KeysToRemove); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Annotation; ToJsonUtilS(Annotation, each_Annotation); output["Annotation"] = each_Annotation; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + Json::Value each_KeysToRemove; ToJsonUtilS(KeysToRemove, each_KeysToRemove); output["KeysToRemove"] = each_KeysToRemove; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GrantItemsToUsersRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::list ItemGrants; + + GrantItemsToUsersRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + ItemGrants() + {} + + GrantItemsToUsersRequest(const GrantItemsToUsersRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + ItemGrants(src.ItemGrants) + {} + + ~GrantItemsToUsersRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilO(input["ItemGrants"], ItemGrants); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_ItemGrants; ToJsonUtilO(ItemGrants, each_ItemGrants); output["ItemGrants"] = each_ItemGrants; + return output; + } + }; + + struct GrantItemsToUsersResult : public PlayFabResultCommon + { + std::list ItemGrantResults; + + GrantItemsToUsersResult() : + PlayFabResultCommon(), + ItemGrantResults() + {} + + GrantItemsToUsersResult(const GrantItemsToUsersResult& src) : + PlayFabResultCommon(), + ItemGrantResults(src.ItemGrantResults) + {} + + ~GrantItemsToUsersResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["ItemGrantResults"], ItemGrantResults); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ItemGrantResults; ToJsonUtilO(ItemGrantResults, each_ItemGrantResults); output["ItemGrantResults"] = each_ItemGrantResults; + return output; + } + }; + + struct IncrementLimitedEditionItemAvailabilityRequest : public PlayFabRequestCommon + { + Int32 Amount; + std::string CatalogVersion; + std::string ItemId; + + IncrementLimitedEditionItemAvailabilityRequest() : + PlayFabRequestCommon(), + Amount(), + CatalogVersion(), + ItemId() + {} + + IncrementLimitedEditionItemAvailabilityRequest(const IncrementLimitedEditionItemAvailabilityRequest& src) : + PlayFabRequestCommon(), + Amount(src.Amount), + CatalogVersion(src.CatalogVersion), + ItemId(src.ItemId) + {} + + ~IncrementLimitedEditionItemAvailabilityRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Amount"], Amount); + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["ItemId"], ItemId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Amount; ToJsonUtilP(Amount, each_Amount); output["Amount"] = each_Amount; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + return output; + } + }; + + struct IncrementLimitedEditionItemAvailabilityResult : public PlayFabResultCommon + { + + IncrementLimitedEditionItemAvailabilityResult() : + PlayFabResultCommon() + {} + + IncrementLimitedEditionItemAvailabilityResult(const IncrementLimitedEditionItemAvailabilityResult&) : + PlayFabResultCommon() + {} + + ~IncrementLimitedEditionItemAvailabilityResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct IncrementPlayerStatisticVersionRequest : public PlayFabRequestCommon + { + std::string StatisticName; + + IncrementPlayerStatisticVersionRequest() : + PlayFabRequestCommon(), + StatisticName() + {} + + IncrementPlayerStatisticVersionRequest(const IncrementPlayerStatisticVersionRequest& src) : + PlayFabRequestCommon(), + StatisticName(src.StatisticName) + {} + + ~IncrementPlayerStatisticVersionRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["StatisticName"], StatisticName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + return output; + } + }; + + struct IncrementPlayerStatisticVersionResult : public PlayFabResultCommon + { + Boxed StatisticVersion; + + IncrementPlayerStatisticVersionResult() : + PlayFabResultCommon(), + StatisticVersion() + {} + + IncrementPlayerStatisticVersionResult(const IncrementPlayerStatisticVersionResult& src) : + PlayFabResultCommon(), + StatisticVersion(src.StatisticVersion) + {} + + ~IncrementPlayerStatisticVersionResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["StatisticVersion"], StatisticVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_StatisticVersion; ToJsonUtilO(StatisticVersion, each_StatisticVersion); output["StatisticVersion"] = each_StatisticVersion; + return output; + } + }; + + struct ListBuildsRequest : public PlayFabRequestCommon + { + + ListBuildsRequest() : + PlayFabRequestCommon() + {} + + ListBuildsRequest(const ListBuildsRequest&) : + PlayFabRequestCommon() + {} + + ~ListBuildsRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct ListBuildsResult : public PlayFabResultCommon + { + std::list Builds; + + ListBuildsResult() : + PlayFabResultCommon(), + Builds() + {} + + ListBuildsResult(const ListBuildsResult& src) : + PlayFabResultCommon(), + Builds(src.Builds) + {} + + ~ListBuildsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Builds"], Builds); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Builds; ToJsonUtilO(Builds, each_Builds); output["Builds"] = each_Builds; + return output; + } + }; + + struct ListVirtualCurrencyTypesRequest : public PlayFabRequestCommon + { + + ListVirtualCurrencyTypesRequest() : + PlayFabRequestCommon() + {} + + ListVirtualCurrencyTypesRequest(const ListVirtualCurrencyTypesRequest&) : + PlayFabRequestCommon() + {} + + ~ListVirtualCurrencyTypesRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct ListVirtualCurrencyTypesResult : public PlayFabResultCommon + { + std::list VirtualCurrencies; + + ListVirtualCurrencyTypesResult() : + PlayFabResultCommon(), + VirtualCurrencies() + {} + + ListVirtualCurrencyTypesResult(const ListVirtualCurrencyTypesResult& src) : + PlayFabResultCommon(), + VirtualCurrencies(src.VirtualCurrencies) + {} + + ~ListVirtualCurrencyTypesResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["VirtualCurrencies"], VirtualCurrencies); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_VirtualCurrencies; ToJsonUtilO(VirtualCurrencies, each_VirtualCurrencies); output["VirtualCurrencies"] = each_VirtualCurrencies; + return output; + } + }; + + struct LookupUserAccountInfoRequest : public PlayFabRequestCommon + { + std::string Email; + std::string PlayFabId; + std::string TitleDisplayName; + std::string Username; + + LookupUserAccountInfoRequest() : + PlayFabRequestCommon(), + Email(), + PlayFabId(), + TitleDisplayName(), + Username() + {} + + LookupUserAccountInfoRequest(const LookupUserAccountInfoRequest& src) : + PlayFabRequestCommon(), + Email(src.Email), + PlayFabId(src.PlayFabId), + TitleDisplayName(src.TitleDisplayName), + Username(src.Username) + {} + + ~LookupUserAccountInfoRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Email"], Email); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["TitleDisplayName"], TitleDisplayName); + FromJsonUtilS(input["Username"], Username); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Email; ToJsonUtilS(Email, each_Email); output["Email"] = each_Email; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_TitleDisplayName; ToJsonUtilS(TitleDisplayName, each_TitleDisplayName); output["TitleDisplayName"] = each_TitleDisplayName; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + return output; + } + }; + + struct UserAndroidDeviceInfo : public PlayFabBaseModel + { + std::string AndroidDeviceId; + + UserAndroidDeviceInfo() : + PlayFabBaseModel(), + AndroidDeviceId() + {} + + UserAndroidDeviceInfo(const UserAndroidDeviceInfo& src) : + PlayFabBaseModel(), + AndroidDeviceId(src.AndroidDeviceId) + {} + + ~UserAndroidDeviceInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AndroidDeviceId"], AndroidDeviceId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AndroidDeviceId; ToJsonUtilS(AndroidDeviceId, each_AndroidDeviceId); output["AndroidDeviceId"] = each_AndroidDeviceId; + return output; + } + }; + + struct UserCustomIdInfo : public PlayFabBaseModel + { + std::string CustomId; + + UserCustomIdInfo() : + PlayFabBaseModel(), + CustomId() + {} + + UserCustomIdInfo(const UserCustomIdInfo& src) : + PlayFabBaseModel(), + CustomId(src.CustomId) + {} + + ~UserCustomIdInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CustomId"], CustomId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CustomId; ToJsonUtilS(CustomId, each_CustomId); output["CustomId"] = each_CustomId; + return output; + } + }; + + struct UserFacebookInfo : public PlayFabBaseModel + { + std::string FacebookId; + std::string FullName; + + UserFacebookInfo() : + PlayFabBaseModel(), + FacebookId(), + FullName() + {} + + UserFacebookInfo(const UserFacebookInfo& src) : + PlayFabBaseModel(), + FacebookId(src.FacebookId), + FullName(src.FullName) + {} + + ~UserFacebookInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FacebookId"], FacebookId); + FromJsonUtilS(input["FullName"], FullName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FacebookId; ToJsonUtilS(FacebookId, each_FacebookId); output["FacebookId"] = each_FacebookId; + Json::Value each_FullName; ToJsonUtilS(FullName, each_FullName); output["FullName"] = each_FullName; + return output; + } + }; + + struct UserGameCenterInfo : public PlayFabBaseModel + { + std::string GameCenterId; + + UserGameCenterInfo() : + PlayFabBaseModel(), + GameCenterId() + {} + + UserGameCenterInfo(const UserGameCenterInfo& src) : + PlayFabBaseModel(), + GameCenterId(src.GameCenterId) + {} + + ~UserGameCenterInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["GameCenterId"], GameCenterId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GameCenterId; ToJsonUtilS(GameCenterId, each_GameCenterId); output["GameCenterId"] = each_GameCenterId; + return output; + } + }; + + struct UserGoogleInfo : public PlayFabBaseModel + { + std::string GoogleEmail; + std::string GoogleGender; + std::string GoogleId; + std::string GoogleLocale; + + UserGoogleInfo() : + PlayFabBaseModel(), + GoogleEmail(), + GoogleGender(), + GoogleId(), + GoogleLocale() + {} + + UserGoogleInfo(const UserGoogleInfo& src) : + PlayFabBaseModel(), + GoogleEmail(src.GoogleEmail), + GoogleGender(src.GoogleGender), + GoogleId(src.GoogleId), + GoogleLocale(src.GoogleLocale) + {} + + ~UserGoogleInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["GoogleEmail"], GoogleEmail); + FromJsonUtilS(input["GoogleGender"], GoogleGender); + FromJsonUtilS(input["GoogleId"], GoogleId); + FromJsonUtilS(input["GoogleLocale"], GoogleLocale); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GoogleEmail; ToJsonUtilS(GoogleEmail, each_GoogleEmail); output["GoogleEmail"] = each_GoogleEmail; + Json::Value each_GoogleGender; ToJsonUtilS(GoogleGender, each_GoogleGender); output["GoogleGender"] = each_GoogleGender; + Json::Value each_GoogleId; ToJsonUtilS(GoogleId, each_GoogleId); output["GoogleId"] = each_GoogleId; + Json::Value each_GoogleLocale; ToJsonUtilS(GoogleLocale, each_GoogleLocale); output["GoogleLocale"] = each_GoogleLocale; + return output; + } + }; + + struct UserIosDeviceInfo : public PlayFabBaseModel + { + std::string IosDeviceId; + + UserIosDeviceInfo() : + PlayFabBaseModel(), + IosDeviceId() + {} + + UserIosDeviceInfo(const UserIosDeviceInfo& src) : + PlayFabBaseModel(), + IosDeviceId(src.IosDeviceId) + {} + + ~UserIosDeviceInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["IosDeviceId"], IosDeviceId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_IosDeviceId; ToJsonUtilS(IosDeviceId, each_IosDeviceId); output["IosDeviceId"] = each_IosDeviceId; + return output; + } + }; + + struct UserKongregateInfo : public PlayFabBaseModel + { + std::string KongregateId; + std::string KongregateName; + + UserKongregateInfo() : + PlayFabBaseModel(), + KongregateId(), + KongregateName() + {} + + UserKongregateInfo(const UserKongregateInfo& src) : + PlayFabBaseModel(), + KongregateId(src.KongregateId), + KongregateName(src.KongregateName) + {} + + ~UserKongregateInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["KongregateId"], KongregateId); + FromJsonUtilS(input["KongregateName"], KongregateName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_KongregateId; ToJsonUtilS(KongregateId, each_KongregateId); output["KongregateId"] = each_KongregateId; + Json::Value each_KongregateName; ToJsonUtilS(KongregateName, each_KongregateName); output["KongregateName"] = each_KongregateName; + return output; + } + }; + + struct UserPrivateAccountInfo : public PlayFabBaseModel + { + std::string Email; + + UserPrivateAccountInfo() : + PlayFabBaseModel(), + Email() + {} + + UserPrivateAccountInfo(const UserPrivateAccountInfo& src) : + PlayFabBaseModel(), + Email(src.Email) + {} + + ~UserPrivateAccountInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Email"], Email); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Email; ToJsonUtilS(Email, each_Email); output["Email"] = each_Email; + return output; + } + }; + + struct UserPsnInfo : public PlayFabBaseModel + { + std::string PsnAccountId; + std::string PsnOnlineId; + + UserPsnInfo() : + PlayFabBaseModel(), + PsnAccountId(), + PsnOnlineId() + {} + + UserPsnInfo(const UserPsnInfo& src) : + PlayFabBaseModel(), + PsnAccountId(src.PsnAccountId), + PsnOnlineId(src.PsnOnlineId) + {} + + ~UserPsnInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PsnAccountId"], PsnAccountId); + FromJsonUtilS(input["PsnOnlineId"], PsnOnlineId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PsnAccountId; ToJsonUtilS(PsnAccountId, each_PsnAccountId); output["PsnAccountId"] = each_PsnAccountId; + Json::Value each_PsnOnlineId; ToJsonUtilS(PsnOnlineId, each_PsnOnlineId); output["PsnOnlineId"] = each_PsnOnlineId; + return output; + } + }; + + struct UserSteamInfo : public PlayFabBaseModel + { + Boxed SteamActivationStatus; + std::string SteamCountry; + Boxed SteamCurrency; + std::string SteamId; + + UserSteamInfo() : + PlayFabBaseModel(), + SteamActivationStatus(), + SteamCountry(), + SteamCurrency(), + SteamId() + {} + + UserSteamInfo(const UserSteamInfo& src) : + PlayFabBaseModel(), + SteamActivationStatus(src.SteamActivationStatus), + SteamCountry(src.SteamCountry), + SteamCurrency(src.SteamCurrency), + SteamId(src.SteamId) + {} + + ~UserSteamInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilE(input["SteamActivationStatus"], SteamActivationStatus); + FromJsonUtilS(input["SteamCountry"], SteamCountry); + FromJsonUtilE(input["SteamCurrency"], SteamCurrency); + FromJsonUtilS(input["SteamId"], SteamId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_SteamActivationStatus; ToJsonUtilE(SteamActivationStatus, each_SteamActivationStatus); output["SteamActivationStatus"] = each_SteamActivationStatus; + Json::Value each_SteamCountry; ToJsonUtilS(SteamCountry, each_SteamCountry); output["SteamCountry"] = each_SteamCountry; + Json::Value each_SteamCurrency; ToJsonUtilE(SteamCurrency, each_SteamCurrency); output["SteamCurrency"] = each_SteamCurrency; + Json::Value each_SteamId; ToJsonUtilS(SteamId, each_SteamId); output["SteamId"] = each_SteamId; + return output; + } + }; + + struct UserTitleInfo : public PlayFabBaseModel + { + std::string AvatarUrl; + time_t Created; + std::string DisplayName; + Boxed FirstLogin; + Boxed isBanned; + Boxed LastLogin; + Boxed Origination; + Boxed TitlePlayerAccount; + + UserTitleInfo() : + PlayFabBaseModel(), + AvatarUrl(), + Created(), + DisplayName(), + FirstLogin(), + isBanned(), + LastLogin(), + Origination(), + TitlePlayerAccount() + {} + + UserTitleInfo(const UserTitleInfo& src) : + PlayFabBaseModel(), + AvatarUrl(src.AvatarUrl), + Created(src.Created), + DisplayName(src.DisplayName), + FirstLogin(src.FirstLogin), + isBanned(src.isBanned), + LastLogin(src.LastLogin), + Origination(src.Origination), + TitlePlayerAccount(src.TitlePlayerAccount) + {} + + ~UserTitleInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AvatarUrl"], AvatarUrl); + FromJsonUtilT(input["Created"], Created); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilT(input["FirstLogin"], FirstLogin); + FromJsonUtilP(input["isBanned"], isBanned); + FromJsonUtilT(input["LastLogin"], LastLogin); + FromJsonUtilE(input["Origination"], Origination); + FromJsonUtilO(input["TitlePlayerAccount"], TitlePlayerAccount); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AvatarUrl; ToJsonUtilS(AvatarUrl, each_AvatarUrl); output["AvatarUrl"] = each_AvatarUrl; + Json::Value each_Created; ToJsonUtilT(Created, each_Created); output["Created"] = each_Created; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_FirstLogin; ToJsonUtilT(FirstLogin, each_FirstLogin); output["FirstLogin"] = each_FirstLogin; + Json::Value each_isBanned; ToJsonUtilP(isBanned, each_isBanned); output["isBanned"] = each_isBanned; + Json::Value each_LastLogin; ToJsonUtilT(LastLogin, each_LastLogin); output["LastLogin"] = each_LastLogin; + Json::Value each_Origination; ToJsonUtilE(Origination, each_Origination); output["Origination"] = each_Origination; + Json::Value each_TitlePlayerAccount; ToJsonUtilO(TitlePlayerAccount, each_TitlePlayerAccount); output["TitlePlayerAccount"] = each_TitlePlayerAccount; + return output; + } + }; + + struct UserTwitchInfo : public PlayFabBaseModel + { + std::string TwitchId; + std::string TwitchUserName; + + UserTwitchInfo() : + PlayFabBaseModel(), + TwitchId(), + TwitchUserName() + {} + + UserTwitchInfo(const UserTwitchInfo& src) : + PlayFabBaseModel(), + TwitchId(src.TwitchId), + TwitchUserName(src.TwitchUserName) + {} + + ~UserTwitchInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["TwitchId"], TwitchId); + FromJsonUtilS(input["TwitchUserName"], TwitchUserName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_TwitchId; ToJsonUtilS(TwitchId, each_TwitchId); output["TwitchId"] = each_TwitchId; + Json::Value each_TwitchUserName; ToJsonUtilS(TwitchUserName, each_TwitchUserName); output["TwitchUserName"] = each_TwitchUserName; + return output; + } + }; + + struct UserXboxInfo : public PlayFabBaseModel + { + std::string XboxUserId; + + UserXboxInfo() : + PlayFabBaseModel(), + XboxUserId() + {} + + UserXboxInfo(const UserXboxInfo& src) : + PlayFabBaseModel(), + XboxUserId(src.XboxUserId) + {} + + ~UserXboxInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["XboxUserId"], XboxUserId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_XboxUserId; ToJsonUtilS(XboxUserId, each_XboxUserId); output["XboxUserId"] = each_XboxUserId; + return output; + } + }; + + struct UserAccountInfo : public PlayFabBaseModel + { + Boxed AndroidDeviceInfo; + time_t Created; + Boxed CustomIdInfo; + Boxed FacebookInfo; + Boxed GameCenterInfo; + Boxed GoogleInfo; + Boxed IosDeviceInfo; + Boxed KongregateInfo; + std::string PlayFabId; + Boxed PrivateInfo; + Boxed PsnInfo; + Boxed SteamInfo; + Boxed TitleInfo; + Boxed TwitchInfo; + std::string Username; + Boxed XboxInfo; + + UserAccountInfo() : + PlayFabBaseModel(), + AndroidDeviceInfo(), + Created(), + CustomIdInfo(), + FacebookInfo(), + GameCenterInfo(), + GoogleInfo(), + IosDeviceInfo(), + KongregateInfo(), + PlayFabId(), + PrivateInfo(), + PsnInfo(), + SteamInfo(), + TitleInfo(), + TwitchInfo(), + Username(), + XboxInfo() + {} + + UserAccountInfo(const UserAccountInfo& src) : + PlayFabBaseModel(), + AndroidDeviceInfo(src.AndroidDeviceInfo), + Created(src.Created), + CustomIdInfo(src.CustomIdInfo), + FacebookInfo(src.FacebookInfo), + GameCenterInfo(src.GameCenterInfo), + GoogleInfo(src.GoogleInfo), + IosDeviceInfo(src.IosDeviceInfo), + KongregateInfo(src.KongregateInfo), + PlayFabId(src.PlayFabId), + PrivateInfo(src.PrivateInfo), + PsnInfo(src.PsnInfo), + SteamInfo(src.SteamInfo), + TitleInfo(src.TitleInfo), + TwitchInfo(src.TwitchInfo), + Username(src.Username), + XboxInfo(src.XboxInfo) + {} + + ~UserAccountInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["AndroidDeviceInfo"], AndroidDeviceInfo); + FromJsonUtilT(input["Created"], Created); + FromJsonUtilO(input["CustomIdInfo"], CustomIdInfo); + FromJsonUtilO(input["FacebookInfo"], FacebookInfo); + FromJsonUtilO(input["GameCenterInfo"], GameCenterInfo); + FromJsonUtilO(input["GoogleInfo"], GoogleInfo); + FromJsonUtilO(input["IosDeviceInfo"], IosDeviceInfo); + FromJsonUtilO(input["KongregateInfo"], KongregateInfo); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilO(input["PrivateInfo"], PrivateInfo); + FromJsonUtilO(input["PsnInfo"], PsnInfo); + FromJsonUtilO(input["SteamInfo"], SteamInfo); + FromJsonUtilO(input["TitleInfo"], TitleInfo); + FromJsonUtilO(input["TwitchInfo"], TwitchInfo); + FromJsonUtilS(input["Username"], Username); + FromJsonUtilO(input["XboxInfo"], XboxInfo); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AndroidDeviceInfo; ToJsonUtilO(AndroidDeviceInfo, each_AndroidDeviceInfo); output["AndroidDeviceInfo"] = each_AndroidDeviceInfo; + 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; + Json::Value each_GameCenterInfo; ToJsonUtilO(GameCenterInfo, each_GameCenterInfo); output["GameCenterInfo"] = each_GameCenterInfo; + 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_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_PrivateInfo; ToJsonUtilO(PrivateInfo, each_PrivateInfo); output["PrivateInfo"] = each_PrivateInfo; + Json::Value each_PsnInfo; ToJsonUtilO(PsnInfo, each_PsnInfo); output["PsnInfo"] = each_PsnInfo; + Json::Value each_SteamInfo; ToJsonUtilO(SteamInfo, each_SteamInfo); output["SteamInfo"] = each_SteamInfo; + Json::Value each_TitleInfo; ToJsonUtilO(TitleInfo, each_TitleInfo); output["TitleInfo"] = each_TitleInfo; + Json::Value each_TwitchInfo; ToJsonUtilO(TwitchInfo, each_TwitchInfo); output["TwitchInfo"] = each_TwitchInfo; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + Json::Value each_XboxInfo; ToJsonUtilO(XboxInfo, each_XboxInfo); output["XboxInfo"] = each_XboxInfo; + return output; + } + }; + + struct LookupUserAccountInfoResult : public PlayFabResultCommon + { + Boxed UserInfo; + + LookupUserAccountInfoResult() : + PlayFabResultCommon(), + UserInfo() + {} + + LookupUserAccountInfoResult(const LookupUserAccountInfoResult& src) : + PlayFabResultCommon(), + UserInfo(src.UserInfo) + {} + + ~LookupUserAccountInfoResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["UserInfo"], UserInfo); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_UserInfo; ToJsonUtilO(UserInfo, each_UserInfo); output["UserInfo"] = each_UserInfo; + return output; + } + }; + + struct ModifyMatchmakerGameModesRequest : public PlayFabRequestCommon + { + std::string BuildVersion; + std::list GameModes; + + ModifyMatchmakerGameModesRequest() : + PlayFabRequestCommon(), + BuildVersion(), + GameModes() + {} + + ModifyMatchmakerGameModesRequest(const ModifyMatchmakerGameModesRequest& src) : + PlayFabRequestCommon(), + BuildVersion(src.BuildVersion), + GameModes(src.GameModes) + {} + + ~ModifyMatchmakerGameModesRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["BuildVersion"], BuildVersion); + FromJsonUtilO(input["GameModes"], GameModes); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BuildVersion; ToJsonUtilS(BuildVersion, each_BuildVersion); output["BuildVersion"] = each_BuildVersion; + Json::Value each_GameModes; ToJsonUtilO(GameModes, each_GameModes); output["GameModes"] = each_GameModes; + return output; + } + }; + + struct ModifyMatchmakerGameModesResult : public PlayFabResultCommon + { + + ModifyMatchmakerGameModesResult() : + PlayFabResultCommon() + {} + + ModifyMatchmakerGameModesResult(const ModifyMatchmakerGameModesResult&) : + PlayFabResultCommon() + {} + + ~ModifyMatchmakerGameModesResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct ModifyServerBuildRequest : public PlayFabRequestCommon + { + std::list ActiveRegions; + std::string BuildId; + std::string CommandLineTemplate; + std::string Comment; + std::string ExecutablePath; + Int32 MaxGamesPerHost; + Int32 MinFreeGameSlots; + Boxed Timestamp; + + ModifyServerBuildRequest() : + PlayFabRequestCommon(), + ActiveRegions(), + BuildId(), + CommandLineTemplate(), + Comment(), + ExecutablePath(), + MaxGamesPerHost(), + MinFreeGameSlots(), + Timestamp() + {} + + ModifyServerBuildRequest(const ModifyServerBuildRequest& src) : + PlayFabRequestCommon(), + ActiveRegions(src.ActiveRegions), + BuildId(src.BuildId), + CommandLineTemplate(src.CommandLineTemplate), + Comment(src.Comment), + ExecutablePath(src.ExecutablePath), + MaxGamesPerHost(src.MaxGamesPerHost), + MinFreeGameSlots(src.MinFreeGameSlots), + Timestamp(src.Timestamp) + {} + + ~ModifyServerBuildRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilE(input["ActiveRegions"], ActiveRegions); + FromJsonUtilS(input["BuildId"], BuildId); + FromJsonUtilS(input["CommandLineTemplate"], CommandLineTemplate); + FromJsonUtilS(input["Comment"], Comment); + FromJsonUtilS(input["ExecutablePath"], ExecutablePath); + FromJsonUtilP(input["MaxGamesPerHost"], MaxGamesPerHost); + FromJsonUtilP(input["MinFreeGameSlots"], MinFreeGameSlots); + FromJsonUtilT(input["Timestamp"], Timestamp); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ActiveRegions; ToJsonUtilE(ActiveRegions, each_ActiveRegions); output["ActiveRegions"] = each_ActiveRegions; + Json::Value each_BuildId; ToJsonUtilS(BuildId, each_BuildId); output["BuildId"] = each_BuildId; + Json::Value each_CommandLineTemplate; ToJsonUtilS(CommandLineTemplate, each_CommandLineTemplate); output["CommandLineTemplate"] = each_CommandLineTemplate; + Json::Value each_Comment; ToJsonUtilS(Comment, each_Comment); output["Comment"] = each_Comment; + Json::Value each_ExecutablePath; ToJsonUtilS(ExecutablePath, each_ExecutablePath); output["ExecutablePath"] = each_ExecutablePath; + Json::Value each_MaxGamesPerHost; ToJsonUtilP(MaxGamesPerHost, each_MaxGamesPerHost); output["MaxGamesPerHost"] = each_MaxGamesPerHost; + Json::Value each_MinFreeGameSlots; ToJsonUtilP(MinFreeGameSlots, each_MinFreeGameSlots); output["MinFreeGameSlots"] = each_MinFreeGameSlots; + Json::Value each_Timestamp; ToJsonUtilT(Timestamp, each_Timestamp); output["Timestamp"] = each_Timestamp; + return output; + } + }; + + struct ModifyServerBuildResult : public PlayFabResultCommon + { + std::list ActiveRegions; + std::string BuildId; + std::string CommandLineTemplate; + std::string Comment; + std::string ExecutablePath; + Int32 MaxGamesPerHost; + Int32 MinFreeGameSlots; + Boxed Status; + time_t Timestamp; + std::string TitleId; + + ModifyServerBuildResult() : + PlayFabResultCommon(), + ActiveRegions(), + BuildId(), + CommandLineTemplate(), + Comment(), + ExecutablePath(), + MaxGamesPerHost(), + MinFreeGameSlots(), + Status(), + Timestamp(), + TitleId() + {} + + ModifyServerBuildResult(const ModifyServerBuildResult& src) : + PlayFabResultCommon(), + ActiveRegions(src.ActiveRegions), + BuildId(src.BuildId), + CommandLineTemplate(src.CommandLineTemplate), + Comment(src.Comment), + ExecutablePath(src.ExecutablePath), + MaxGamesPerHost(src.MaxGamesPerHost), + MinFreeGameSlots(src.MinFreeGameSlots), + Status(src.Status), + Timestamp(src.Timestamp), + TitleId(src.TitleId) + {} + + ~ModifyServerBuildResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilE(input["ActiveRegions"], ActiveRegions); + FromJsonUtilS(input["BuildId"], BuildId); + FromJsonUtilS(input["CommandLineTemplate"], CommandLineTemplate); + FromJsonUtilS(input["Comment"], Comment); + FromJsonUtilS(input["ExecutablePath"], ExecutablePath); + FromJsonUtilP(input["MaxGamesPerHost"], MaxGamesPerHost); + FromJsonUtilP(input["MinFreeGameSlots"], MinFreeGameSlots); + FromJsonUtilE(input["Status"], Status); + FromJsonUtilT(input["Timestamp"], Timestamp); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ActiveRegions; ToJsonUtilE(ActiveRegions, each_ActiveRegions); output["ActiveRegions"] = each_ActiveRegions; + Json::Value each_BuildId; ToJsonUtilS(BuildId, each_BuildId); output["BuildId"] = each_BuildId; + Json::Value each_CommandLineTemplate; ToJsonUtilS(CommandLineTemplate, each_CommandLineTemplate); output["CommandLineTemplate"] = each_CommandLineTemplate; + Json::Value each_Comment; ToJsonUtilS(Comment, each_Comment); output["Comment"] = each_Comment; + Json::Value each_ExecutablePath; ToJsonUtilS(ExecutablePath, each_ExecutablePath); output["ExecutablePath"] = each_ExecutablePath; + Json::Value each_MaxGamesPerHost; ToJsonUtilP(MaxGamesPerHost, each_MaxGamesPerHost); output["MaxGamesPerHost"] = each_MaxGamesPerHost; + Json::Value each_MinFreeGameSlots; ToJsonUtilP(MinFreeGameSlots, each_MinFreeGameSlots); output["MinFreeGameSlots"] = each_MinFreeGameSlots; + Json::Value each_Status; ToJsonUtilE(Status, each_Status); output["Status"] = each_Status; + Json::Value each_Timestamp; ToJsonUtilT(Timestamp, each_Timestamp); output["Timestamp"] = each_Timestamp; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct ModifyUserVirtualCurrencyResult : public PlayFabResultCommon + { + Int32 Balance; + Int32 BalanceChange; + std::string PlayFabId; + std::string VirtualCurrency; + + ModifyUserVirtualCurrencyResult() : + PlayFabResultCommon(), + Balance(), + BalanceChange(), + PlayFabId(), + VirtualCurrency() + {} + + ModifyUserVirtualCurrencyResult(const ModifyUserVirtualCurrencyResult& src) : + PlayFabResultCommon(), + Balance(src.Balance), + BalanceChange(src.BalanceChange), + PlayFabId(src.PlayFabId), + VirtualCurrency(src.VirtualCurrency) + {} + + ~ModifyUserVirtualCurrencyResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Balance"], Balance); + FromJsonUtilP(input["BalanceChange"], BalanceChange); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["VirtualCurrency"], VirtualCurrency); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Balance; ToJsonUtilP(Balance, each_Balance); output["Balance"] = each_Balance; + Json::Value each_BalanceChange; ToJsonUtilP(BalanceChange, each_BalanceChange); output["BalanceChange"] = each_BalanceChange; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_VirtualCurrency; ToJsonUtilS(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + return output; + } + }; + + struct RandomResultTable : public PlayFabBaseModel + { + std::list Nodes; + std::string TableId; + + RandomResultTable() : + PlayFabBaseModel(), + Nodes(), + TableId() + {} + + RandomResultTable(const RandomResultTable& src) : + PlayFabBaseModel(), + Nodes(src.Nodes), + TableId(src.TableId) + {} + + ~RandomResultTable() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Nodes"], Nodes); + FromJsonUtilS(input["TableId"], TableId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Nodes; ToJsonUtilO(Nodes, each_Nodes); output["Nodes"] = each_Nodes; + Json::Value each_TableId; ToJsonUtilS(TableId, each_TableId); output["TableId"] = each_TableId; + return output; + } + }; + + struct RefundPurchaseRequest : public PlayFabRequestCommon + { + std::string OrderId; + std::string PlayFabId; + std::string Reason; + + RefundPurchaseRequest() : + PlayFabRequestCommon(), + OrderId(), + PlayFabId(), + Reason() + {} + + RefundPurchaseRequest(const RefundPurchaseRequest& src) : + PlayFabRequestCommon(), + OrderId(src.OrderId), + PlayFabId(src.PlayFabId), + Reason(src.Reason) + {} + + ~RefundPurchaseRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["OrderId"], OrderId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["Reason"], Reason); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_OrderId; ToJsonUtilS(OrderId, each_OrderId); output["OrderId"] = each_OrderId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Reason; ToJsonUtilS(Reason, each_Reason); output["Reason"] = each_Reason; + return output; + } + }; + + struct RefundPurchaseResponse : public PlayFabResultCommon + { + std::string PurchaseStatus; + + RefundPurchaseResponse() : + PlayFabResultCommon(), + PurchaseStatus() + {} + + RefundPurchaseResponse(const RefundPurchaseResponse& src) : + PlayFabResultCommon(), + PurchaseStatus(src.PurchaseStatus) + {} + + ~RefundPurchaseResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PurchaseStatus"], PurchaseStatus); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PurchaseStatus; ToJsonUtilS(PurchaseStatus, each_PurchaseStatus); output["PurchaseStatus"] = each_PurchaseStatus; + return output; + } + }; + + struct RemovePlayerTagRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + std::string TagName; + + RemovePlayerTagRequest() : + PlayFabRequestCommon(), + PlayFabId(), + TagName() + {} + + RemovePlayerTagRequest(const RemovePlayerTagRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId), + TagName(src.TagName) + {} + + ~RemovePlayerTagRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["TagName"], TagName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_TagName; ToJsonUtilS(TagName, each_TagName); output["TagName"] = each_TagName; + return output; + } + }; + + struct RemovePlayerTagResult : public PlayFabResultCommon + { + + RemovePlayerTagResult() : + PlayFabResultCommon() + {} + + RemovePlayerTagResult(const RemovePlayerTagResult&) : + PlayFabResultCommon() + {} + + ~RemovePlayerTagResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct RemoveServerBuildRequest : public PlayFabRequestCommon + { + std::string BuildId; + + RemoveServerBuildRequest() : + PlayFabRequestCommon(), + BuildId() + {} + + RemoveServerBuildRequest(const RemoveServerBuildRequest& src) : + PlayFabRequestCommon(), + BuildId(src.BuildId) + {} + + ~RemoveServerBuildRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["BuildId"], BuildId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BuildId; ToJsonUtilS(BuildId, each_BuildId); output["BuildId"] = each_BuildId; + return output; + } + }; + + struct RemoveServerBuildResult : public PlayFabResultCommon + { + + RemoveServerBuildResult() : + PlayFabResultCommon() + {} + + RemoveServerBuildResult(const RemoveServerBuildResult&) : + PlayFabResultCommon() + {} + + ~RemoveServerBuildResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct RemoveVirtualCurrencyTypesRequest : public PlayFabRequestCommon + { + std::list VirtualCurrencies; + + RemoveVirtualCurrencyTypesRequest() : + PlayFabRequestCommon(), + VirtualCurrencies() + {} + + RemoveVirtualCurrencyTypesRequest(const RemoveVirtualCurrencyTypesRequest& src) : + PlayFabRequestCommon(), + VirtualCurrencies(src.VirtualCurrencies) + {} + + ~RemoveVirtualCurrencyTypesRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["VirtualCurrencies"], VirtualCurrencies); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_VirtualCurrencies; ToJsonUtilO(VirtualCurrencies, each_VirtualCurrencies); output["VirtualCurrencies"] = each_VirtualCurrencies; + return output; + } + }; + + struct ResetCharacterStatisticsRequest : public PlayFabRequestCommon + { + std::string CharacterId; + std::string PlayFabId; + + ResetCharacterStatisticsRequest() : + PlayFabRequestCommon(), + CharacterId(), + PlayFabId() + {} + + ResetCharacterStatisticsRequest(const ResetCharacterStatisticsRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + PlayFabId(src.PlayFabId) + {} + + ~ResetCharacterStatisticsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct ResetCharacterStatisticsResult : public PlayFabResultCommon + { + + ResetCharacterStatisticsResult() : + PlayFabResultCommon() + {} + + ResetCharacterStatisticsResult(const ResetCharacterStatisticsResult&) : + PlayFabResultCommon() + {} + + ~ResetCharacterStatisticsResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct ResetPasswordRequest : public PlayFabRequestCommon + { + std::string Password; + std::string Token; + + ResetPasswordRequest() : + PlayFabRequestCommon(), + Password(), + Token() + {} + + ResetPasswordRequest(const ResetPasswordRequest& src) : + PlayFabRequestCommon(), + Password(src.Password), + Token(src.Token) + {} + + ~ResetPasswordRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Password"], Password); + FromJsonUtilS(input["Token"], Token); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Password; ToJsonUtilS(Password, each_Password); output["Password"] = each_Password; + Json::Value each_Token; ToJsonUtilS(Token, each_Token); output["Token"] = each_Token; + return output; + } + }; + + struct ResetPasswordResult : public PlayFabResultCommon + { + + ResetPasswordResult() : + PlayFabResultCommon() + {} + + ResetPasswordResult(const ResetPasswordResult&) : + PlayFabResultCommon() + {} + + ~ResetPasswordResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct ResetUserStatisticsRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + + ResetUserStatisticsRequest() : + PlayFabRequestCommon(), + PlayFabId() + {} + + ResetUserStatisticsRequest(const ResetUserStatisticsRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId) + {} + + ~ResetUserStatisticsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct ResetUserStatisticsResult : public PlayFabResultCommon + { + + ResetUserStatisticsResult() : + PlayFabResultCommon() + {} + + ResetUserStatisticsResult(const ResetUserStatisticsResult&) : + PlayFabResultCommon() + {} + + ~ResetUserStatisticsResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct ResolvePurchaseDisputeRequest : public PlayFabRequestCommon + { + std::string OrderId; + ResolutionOutcome Outcome; + std::string PlayFabId; + std::string Reason; + + ResolvePurchaseDisputeRequest() : + PlayFabRequestCommon(), + OrderId(), + Outcome(), + PlayFabId(), + Reason() + {} + + ResolvePurchaseDisputeRequest(const ResolvePurchaseDisputeRequest& src) : + PlayFabRequestCommon(), + OrderId(src.OrderId), + Outcome(src.Outcome), + PlayFabId(src.PlayFabId), + Reason(src.Reason) + {} + + ~ResolvePurchaseDisputeRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["OrderId"], OrderId); + FromJsonEnum(input["Outcome"], Outcome); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["Reason"], Reason); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_OrderId; ToJsonUtilS(OrderId, each_OrderId); output["OrderId"] = each_OrderId; + Json::Value each_Outcome; ToJsonEnum(Outcome, each_Outcome); output["Outcome"] = each_Outcome; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Reason; ToJsonUtilS(Reason, each_Reason); output["Reason"] = each_Reason; + return output; + } + }; + + struct ResolvePurchaseDisputeResponse : public PlayFabResultCommon + { + std::string PurchaseStatus; + + ResolvePurchaseDisputeResponse() : + PlayFabResultCommon(), + PurchaseStatus() + {} + + ResolvePurchaseDisputeResponse(const ResolvePurchaseDisputeResponse& src) : + PlayFabResultCommon(), + PurchaseStatus(src.PurchaseStatus) + {} + + ~ResolvePurchaseDisputeResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PurchaseStatus"], PurchaseStatus); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PurchaseStatus; ToJsonUtilS(PurchaseStatus, each_PurchaseStatus); output["PurchaseStatus"] = each_PurchaseStatus; + return output; + } + }; + + struct RevokeAllBansForUserRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + + RevokeAllBansForUserRequest() : + PlayFabRequestCommon(), + PlayFabId() + {} + + RevokeAllBansForUserRequest(const RevokeAllBansForUserRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId) + {} + + ~RevokeAllBansForUserRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct RevokeAllBansForUserResult : public PlayFabResultCommon + { + std::list BanData; + + RevokeAllBansForUserResult() : + PlayFabResultCommon(), + BanData() + {} + + RevokeAllBansForUserResult(const RevokeAllBansForUserResult& src) : + PlayFabResultCommon(), + BanData(src.BanData) + {} + + ~RevokeAllBansForUserResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["BanData"], BanData); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BanData; ToJsonUtilO(BanData, each_BanData); output["BanData"] = each_BanData; + return output; + } + }; + + struct RevokeBansRequest : public PlayFabRequestCommon + { + std::list BanIds; + + RevokeBansRequest() : + PlayFabRequestCommon(), + BanIds() + {} + + RevokeBansRequest(const RevokeBansRequest& src) : + PlayFabRequestCommon(), + BanIds(src.BanIds) + {} + + ~RevokeBansRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["BanIds"], BanIds); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BanIds; ToJsonUtilS(BanIds, each_BanIds); output["BanIds"] = each_BanIds; + return output; + } + }; + + struct RevokeBansResult : public PlayFabResultCommon + { + std::list BanData; + + RevokeBansResult() : + PlayFabResultCommon(), + BanData() + {} + + RevokeBansResult(const RevokeBansResult& src) : + PlayFabResultCommon(), + BanData(src.BanData) + {} + + ~RevokeBansResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["BanData"], BanData); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BanData; ToJsonUtilO(BanData, each_BanData); output["BanData"] = each_BanData; + return output; + } + }; + + struct RevokeInventoryItem : public PlayFabBaseModel + { + std::string CharacterId; + std::string ItemInstanceId; + std::string PlayFabId; + + RevokeInventoryItem() : + PlayFabBaseModel(), + CharacterId(), + ItemInstanceId(), + PlayFabId() + {} + + RevokeInventoryItem(const RevokeInventoryItem& src) : + PlayFabBaseModel(), + CharacterId(src.CharacterId), + ItemInstanceId(src.ItemInstanceId), + PlayFabId(src.PlayFabId) + {} + + ~RevokeInventoryItem() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct RevokeInventoryItemRequest : public PlayFabRequestCommon + { + std::string CharacterId; + std::string ItemInstanceId; + std::string PlayFabId; + + RevokeInventoryItemRequest() : + PlayFabRequestCommon(), + CharacterId(), + ItemInstanceId(), + PlayFabId() + {} + + RevokeInventoryItemRequest(const RevokeInventoryItemRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + ItemInstanceId(src.ItemInstanceId), + PlayFabId(src.PlayFabId) + {} + + ~RevokeInventoryItemRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct RevokeInventoryItemsRequest : public PlayFabRequestCommon + { + std::list Items; + + RevokeInventoryItemsRequest() : + PlayFabRequestCommon(), + Items() + {} + + RevokeInventoryItemsRequest(const RevokeInventoryItemsRequest& src) : + PlayFabRequestCommon(), + Items(src.Items) + {} + + ~RevokeInventoryItemsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Items"], Items); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Items; ToJsonUtilO(Items, each_Items); output["Items"] = each_Items; + return output; + } + }; + + struct RevokeItemError : public PlayFabBaseModel + { + Boxed Error; + Boxed Item; + + RevokeItemError() : + PlayFabBaseModel(), + Error(), + Item() + {} + + RevokeItemError(const RevokeItemError& src) : + PlayFabBaseModel(), + Error(src.Error), + Item(src.Item) + {} + + ~RevokeItemError() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilE(input["Error"], Error); + FromJsonUtilO(input["Item"], Item); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Error; ToJsonUtilE(Error, each_Error); output["Error"] = each_Error; + Json::Value each_Item; ToJsonUtilO(Item, each_Item); output["Item"] = each_Item; + return output; + } + }; + + struct RevokeInventoryItemsResult : public PlayFabResultCommon + { + std::list Errors; + + RevokeInventoryItemsResult() : + PlayFabResultCommon(), + Errors() + {} + + RevokeInventoryItemsResult(const RevokeInventoryItemsResult& src) : + PlayFabResultCommon(), + Errors(src.Errors) + {} + + ~RevokeInventoryItemsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Errors"], Errors); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Errors; ToJsonUtilO(Errors, each_Errors); output["Errors"] = each_Errors; + return output; + } + }; + + struct RevokeInventoryResult : public PlayFabResultCommon + { + + RevokeInventoryResult() : + PlayFabResultCommon() + {} + + RevokeInventoryResult(const RevokeInventoryResult&) : + PlayFabResultCommon() + {} + + ~RevokeInventoryResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct RunTaskRequest : public PlayFabRequestCommon + { + Boxed Identifier; + + RunTaskRequest() : + PlayFabRequestCommon(), + Identifier() + {} + + RunTaskRequest(const RunTaskRequest& src) : + PlayFabRequestCommon(), + Identifier(src.Identifier) + {} + + ~RunTaskRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Identifier"], Identifier); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Identifier; ToJsonUtilO(Identifier, each_Identifier); output["Identifier"] = each_Identifier; + return output; + } + }; + + struct RunTaskResult : public PlayFabResultCommon + { + std::string TaskInstanceId; + + RunTaskResult() : + PlayFabResultCommon(), + TaskInstanceId() + {} + + RunTaskResult(const RunTaskResult& src) : + PlayFabResultCommon(), + TaskInstanceId(src.TaskInstanceId) + {} + + ~RunTaskResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["TaskInstanceId"], TaskInstanceId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_TaskInstanceId; ToJsonUtilS(TaskInstanceId, each_TaskInstanceId); output["TaskInstanceId"] = each_TaskInstanceId; + return output; + } + }; + + struct SendAccountRecoveryEmailRequest : public PlayFabRequestCommon + { + std::string Email; + std::string EmailTemplateId; + + SendAccountRecoveryEmailRequest() : + PlayFabRequestCommon(), + Email(), + EmailTemplateId() + {} + + SendAccountRecoveryEmailRequest(const SendAccountRecoveryEmailRequest& src) : + PlayFabRequestCommon(), + Email(src.Email), + EmailTemplateId(src.EmailTemplateId) + {} + + ~SendAccountRecoveryEmailRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Email"], Email); + FromJsonUtilS(input["EmailTemplateId"], EmailTemplateId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Email; ToJsonUtilS(Email, each_Email); output["Email"] = each_Email; + Json::Value each_EmailTemplateId; ToJsonUtilS(EmailTemplateId, each_EmailTemplateId); output["EmailTemplateId"] = each_EmailTemplateId; + return output; + } + }; + + struct SendAccountRecoveryEmailResult : public PlayFabResultCommon + { + + SendAccountRecoveryEmailResult() : + PlayFabResultCommon() + {} + + SendAccountRecoveryEmailResult(const SendAccountRecoveryEmailResult&) : + PlayFabResultCommon() + {} + + ~SendAccountRecoveryEmailResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SetPlayerSecretRequest : public PlayFabRequestCommon + { + std::string PlayerSecret; + std::string PlayFabId; + + SetPlayerSecretRequest() : + PlayFabRequestCommon(), + PlayerSecret(), + PlayFabId() + {} + + SetPlayerSecretRequest(const SetPlayerSecretRequest& src) : + PlayFabRequestCommon(), + PlayerSecret(src.PlayerSecret), + PlayFabId(src.PlayFabId) + {} + + ~SetPlayerSecretRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayerSecret"], PlayerSecret); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayerSecret; ToJsonUtilS(PlayerSecret, each_PlayerSecret); output["PlayerSecret"] = each_PlayerSecret; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct SetPlayerSecretResult : public PlayFabResultCommon + { + + SetPlayerSecretResult() : + PlayFabResultCommon() + {} + + SetPlayerSecretResult(const SetPlayerSecretResult&) : + PlayFabResultCommon() + {} + + ~SetPlayerSecretResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SetPublishedRevisionRequest : public PlayFabRequestCommon + { + Int32 Revision; + Int32 Version; + + SetPublishedRevisionRequest() : + PlayFabRequestCommon(), + Revision(), + Version() + {} + + SetPublishedRevisionRequest(const SetPublishedRevisionRequest& src) : + PlayFabRequestCommon(), + Revision(src.Revision), + Version(src.Version) + {} + + ~SetPublishedRevisionRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Revision"], Revision); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Revision; ToJsonUtilP(Revision, each_Revision); output["Revision"] = each_Revision; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct SetPublishedRevisionResult : public PlayFabResultCommon + { + + SetPublishedRevisionResult() : + PlayFabResultCommon() + {} + + SetPublishedRevisionResult(const SetPublishedRevisionResult&) : + PlayFabResultCommon() + {} + + ~SetPublishedRevisionResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SetPublisherDataRequest : public PlayFabRequestCommon + { + std::string Key; + std::string Value; + + SetPublisherDataRequest() : + PlayFabRequestCommon(), + Key(), + Value() + {} + + SetPublisherDataRequest(const SetPublisherDataRequest& src) : + PlayFabRequestCommon(), + Key(src.Key), + Value(src.Value) + {} + + ~SetPublisherDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Key"], Key); + FromJsonUtilS(input["Value"], Value); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Key; ToJsonUtilS(Key, each_Key); output["Key"] = each_Key; + Json::Value each_Value; ToJsonUtilS(Value, each_Value); output["Value"] = each_Value; + return output; + } + }; + + struct SetPublisherDataResult : public PlayFabResultCommon + { + + SetPublisherDataResult() : + PlayFabResultCommon() + {} + + SetPublisherDataResult(const SetPublisherDataResult&) : + PlayFabResultCommon() + {} + + ~SetPublisherDataResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SetTitleDataRequest : public PlayFabRequestCommon + { + std::string Key; + std::string Value; + + SetTitleDataRequest() : + PlayFabRequestCommon(), + Key(), + Value() + {} + + SetTitleDataRequest(const SetTitleDataRequest& src) : + PlayFabRequestCommon(), + Key(src.Key), + Value(src.Value) + {} + + ~SetTitleDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Key"], Key); + FromJsonUtilS(input["Value"], Value); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Key; ToJsonUtilS(Key, each_Key); output["Key"] = each_Key; + Json::Value each_Value; ToJsonUtilS(Value, each_Value); output["Value"] = each_Value; + return output; + } + }; + + struct SetTitleDataResult : public PlayFabResultCommon + { + + SetTitleDataResult() : + PlayFabResultCommon() + {} + + SetTitleDataResult(const SetTitleDataResult&) : + PlayFabResultCommon() + {} + + ~SetTitleDataResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SetupPushNotificationRequest : public PlayFabRequestCommon + { + std::string Credential; + std::string Key; + std::string Name; + bool OverwriteOldARN; + PushSetupPlatform Platform; + + SetupPushNotificationRequest() : + PlayFabRequestCommon(), + Credential(), + Key(), + Name(), + OverwriteOldARN(), + Platform() + {} + + SetupPushNotificationRequest(const SetupPushNotificationRequest& src) : + PlayFabRequestCommon(), + Credential(src.Credential), + Key(src.Key), + Name(src.Name), + OverwriteOldARN(src.OverwriteOldARN), + Platform(src.Platform) + {} + + ~SetupPushNotificationRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Credential"], Credential); + FromJsonUtilS(input["Key"], Key); + FromJsonUtilS(input["Name"], Name); + FromJsonUtilP(input["OverwriteOldARN"], OverwriteOldARN); + FromJsonEnum(input["Platform"], Platform); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Credential; ToJsonUtilS(Credential, each_Credential); output["Credential"] = each_Credential; + Json::Value each_Key; ToJsonUtilS(Key, each_Key); output["Key"] = each_Key; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + Json::Value each_OverwriteOldARN; ToJsonUtilP(OverwriteOldARN, each_OverwriteOldARN); output["OverwriteOldARN"] = each_OverwriteOldARN; + Json::Value each_Platform; ToJsonEnum(Platform, each_Platform); output["Platform"] = each_Platform; + return output; + } + }; + + struct SetupPushNotificationResult : public PlayFabResultCommon + { + std::string ARN; + + SetupPushNotificationResult() : + PlayFabResultCommon(), + ARN() + {} + + SetupPushNotificationResult(const SetupPushNotificationResult& src) : + PlayFabResultCommon(), + ARN(src.ARN) + {} + + ~SetupPushNotificationResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ARN"], ARN); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ARN; ToJsonUtilS(ARN, each_ARN); output["ARN"] = each_ARN; + return output; + } + }; + + struct SubtractUserVirtualCurrencyRequest : public PlayFabRequestCommon + { + Int32 Amount; + std::string PlayFabId; + std::string VirtualCurrency; + + SubtractUserVirtualCurrencyRequest() : + PlayFabRequestCommon(), + Amount(), + PlayFabId(), + VirtualCurrency() + {} + + SubtractUserVirtualCurrencyRequest(const SubtractUserVirtualCurrencyRequest& src) : + PlayFabRequestCommon(), + Amount(src.Amount), + PlayFabId(src.PlayFabId), + VirtualCurrency(src.VirtualCurrency) + {} + + ~SubtractUserVirtualCurrencyRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Amount"], Amount); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["VirtualCurrency"], VirtualCurrency); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Amount; ToJsonUtilP(Amount, each_Amount); output["Amount"] = each_Amount; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_VirtualCurrency; ToJsonUtilS(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + return output; + } + }; + + struct UpdateBanRequest : public PlayFabRequestCommon + { + Boxed Active; + std::string BanId; + Boxed Expires; + std::string IPAddress; + std::string MACAddress; + Boxed Permanent; + std::string Reason; + + UpdateBanRequest() : + PlayFabRequestCommon(), + Active(), + BanId(), + Expires(), + IPAddress(), + MACAddress(), + Permanent(), + Reason() + {} + + UpdateBanRequest(const UpdateBanRequest& src) : + PlayFabRequestCommon(), + Active(src.Active), + BanId(src.BanId), + Expires(src.Expires), + IPAddress(src.IPAddress), + MACAddress(src.MACAddress), + Permanent(src.Permanent), + Reason(src.Reason) + {} + + ~UpdateBanRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Active"], Active); + FromJsonUtilS(input["BanId"], BanId); + FromJsonUtilT(input["Expires"], Expires); + FromJsonUtilS(input["IPAddress"], IPAddress); + FromJsonUtilS(input["MACAddress"], MACAddress); + FromJsonUtilP(input["Permanent"], Permanent); + FromJsonUtilS(input["Reason"], Reason); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Active; ToJsonUtilP(Active, each_Active); output["Active"] = each_Active; + Json::Value each_BanId; ToJsonUtilS(BanId, each_BanId); output["BanId"] = each_BanId; + Json::Value each_Expires; ToJsonUtilT(Expires, each_Expires); output["Expires"] = each_Expires; + Json::Value each_IPAddress; ToJsonUtilS(IPAddress, each_IPAddress); output["IPAddress"] = each_IPAddress; + Json::Value each_MACAddress; ToJsonUtilS(MACAddress, each_MACAddress); output["MACAddress"] = each_MACAddress; + Json::Value each_Permanent; ToJsonUtilP(Permanent, each_Permanent); output["Permanent"] = each_Permanent; + Json::Value each_Reason; ToJsonUtilS(Reason, each_Reason); output["Reason"] = each_Reason; + return output; + } + }; + + struct UpdateBansRequest : public PlayFabRequestCommon + { + std::list Bans; + + UpdateBansRequest() : + PlayFabRequestCommon(), + Bans() + {} + + UpdateBansRequest(const UpdateBansRequest& src) : + PlayFabRequestCommon(), + Bans(src.Bans) + {} + + ~UpdateBansRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Bans"], Bans); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Bans; ToJsonUtilO(Bans, each_Bans); output["Bans"] = each_Bans; + return output; + } + }; + + struct UpdateBansResult : public PlayFabResultCommon + { + std::list BanData; + + UpdateBansResult() : + PlayFabResultCommon(), + BanData() + {} + + UpdateBansResult(const UpdateBansResult& src) : + PlayFabResultCommon(), + BanData(src.BanData) + {} + + ~UpdateBansResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["BanData"], BanData); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BanData; ToJsonUtilO(BanData, each_BanData); output["BanData"] = each_BanData; + return output; + } + }; + + struct UpdateCatalogItemsRequest : public PlayFabRequestCommon + { + std::list Catalog; + std::string CatalogVersion; + Boxed SetAsDefaultCatalog; + + UpdateCatalogItemsRequest() : + PlayFabRequestCommon(), + Catalog(), + CatalogVersion(), + SetAsDefaultCatalog() + {} + + UpdateCatalogItemsRequest(const UpdateCatalogItemsRequest& src) : + PlayFabRequestCommon(), + Catalog(src.Catalog), + CatalogVersion(src.CatalogVersion), + SetAsDefaultCatalog(src.SetAsDefaultCatalog) + {} + + ~UpdateCatalogItemsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Catalog"], Catalog); + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilP(input["SetAsDefaultCatalog"], SetAsDefaultCatalog); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Catalog; ToJsonUtilO(Catalog, each_Catalog); output["Catalog"] = each_Catalog; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_SetAsDefaultCatalog; ToJsonUtilP(SetAsDefaultCatalog, each_SetAsDefaultCatalog); output["SetAsDefaultCatalog"] = each_SetAsDefaultCatalog; + return output; + } + }; + + struct UpdateCatalogItemsResult : public PlayFabResultCommon + { + + UpdateCatalogItemsResult() : + PlayFabResultCommon() + {} + + UpdateCatalogItemsResult(const UpdateCatalogItemsResult&) : + PlayFabResultCommon() + {} + + ~UpdateCatalogItemsResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UpdateCloudScriptRequest : public PlayFabRequestCommon + { + std::string DeveloperPlayFabId; + std::list Files; + bool Publish; + + UpdateCloudScriptRequest() : + PlayFabRequestCommon(), + DeveloperPlayFabId(), + Files(), + Publish() + {} + + UpdateCloudScriptRequest(const UpdateCloudScriptRequest& src) : + PlayFabRequestCommon(), + DeveloperPlayFabId(src.DeveloperPlayFabId), + Files(src.Files), + Publish(src.Publish) + {} + + ~UpdateCloudScriptRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["DeveloperPlayFabId"], DeveloperPlayFabId); + FromJsonUtilO(input["Files"], Files); + FromJsonUtilP(input["Publish"], Publish); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DeveloperPlayFabId; ToJsonUtilS(DeveloperPlayFabId, each_DeveloperPlayFabId); output["DeveloperPlayFabId"] = each_DeveloperPlayFabId; + Json::Value each_Files; ToJsonUtilO(Files, each_Files); output["Files"] = each_Files; + Json::Value each_Publish; ToJsonUtilP(Publish, each_Publish); output["Publish"] = each_Publish; + return output; + } + }; + + struct UpdateCloudScriptResult : public PlayFabResultCommon + { + Int32 Revision; + Int32 Version; + + UpdateCloudScriptResult() : + PlayFabResultCommon(), + Revision(), + Version() + {} + + UpdateCloudScriptResult(const UpdateCloudScriptResult& src) : + PlayFabResultCommon(), + Revision(src.Revision), + Version(src.Version) + {} + + ~UpdateCloudScriptResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Revision"], Revision); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Revision; ToJsonUtilP(Revision, each_Revision); output["Revision"] = each_Revision; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct UpdatePlayerSharedSecretRequest : public PlayFabRequestCommon + { + bool Disabled; + std::string FriendlyName; + std::string SecretKey; + + UpdatePlayerSharedSecretRequest() : + PlayFabRequestCommon(), + Disabled(), + FriendlyName(), + SecretKey() + {} + + UpdatePlayerSharedSecretRequest(const UpdatePlayerSharedSecretRequest& src) : + PlayFabRequestCommon(), + Disabled(src.Disabled), + FriendlyName(src.FriendlyName), + SecretKey(src.SecretKey) + {} + + ~UpdatePlayerSharedSecretRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Disabled"], Disabled); + FromJsonUtilS(input["FriendlyName"], FriendlyName); + FromJsonUtilS(input["SecretKey"], SecretKey); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Disabled; ToJsonUtilP(Disabled, each_Disabled); output["Disabled"] = each_Disabled; + Json::Value each_FriendlyName; ToJsonUtilS(FriendlyName, each_FriendlyName); output["FriendlyName"] = each_FriendlyName; + Json::Value each_SecretKey; ToJsonUtilS(SecretKey, each_SecretKey); output["SecretKey"] = each_SecretKey; + return output; + } + }; + + struct UpdatePlayerSharedSecretResult : public PlayFabResultCommon + { + + UpdatePlayerSharedSecretResult() : + PlayFabResultCommon() + {} + + UpdatePlayerSharedSecretResult(const UpdatePlayerSharedSecretResult&) : + PlayFabResultCommon() + {} + + ~UpdatePlayerSharedSecretResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UpdatePlayerStatisticDefinitionRequest : public PlayFabRequestCommon + { + Boxed AggregationMethod; + std::string StatisticName; + Boxed VersionChangeInterval; + + UpdatePlayerStatisticDefinitionRequest() : + PlayFabRequestCommon(), + AggregationMethod(), + StatisticName(), + VersionChangeInterval() + {} + + UpdatePlayerStatisticDefinitionRequest(const UpdatePlayerStatisticDefinitionRequest& src) : + PlayFabRequestCommon(), + AggregationMethod(src.AggregationMethod), + StatisticName(src.StatisticName), + VersionChangeInterval(src.VersionChangeInterval) + {} + + ~UpdatePlayerStatisticDefinitionRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilE(input["AggregationMethod"], AggregationMethod); + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilE(input["VersionChangeInterval"], VersionChangeInterval); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AggregationMethod; ToJsonUtilE(AggregationMethod, each_AggregationMethod); output["AggregationMethod"] = each_AggregationMethod; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_VersionChangeInterval; ToJsonUtilE(VersionChangeInterval, each_VersionChangeInterval); output["VersionChangeInterval"] = each_VersionChangeInterval; + return output; + } + }; + + struct UpdatePlayerStatisticDefinitionResult : public PlayFabResultCommon + { + Boxed Statistic; + + UpdatePlayerStatisticDefinitionResult() : + PlayFabResultCommon(), + Statistic() + {} + + UpdatePlayerStatisticDefinitionResult(const UpdatePlayerStatisticDefinitionResult& src) : + PlayFabResultCommon(), + Statistic(src.Statistic) + {} + + ~UpdatePlayerStatisticDefinitionResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Statistic"], Statistic); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Statistic; ToJsonUtilO(Statistic, each_Statistic); output["Statistic"] = each_Statistic; + return output; + } + }; + + struct UpdatePolicyRequest : public PlayFabRequestCommon + { + bool OverwritePolicy; + std::string PolicyName; + std::list Statements; + + UpdatePolicyRequest() : + PlayFabRequestCommon(), + OverwritePolicy(), + PolicyName(), + Statements() + {} + + UpdatePolicyRequest(const UpdatePolicyRequest& src) : + PlayFabRequestCommon(), + OverwritePolicy(src.OverwritePolicy), + PolicyName(src.PolicyName), + Statements(src.Statements) + {} + + ~UpdatePolicyRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["OverwritePolicy"], OverwritePolicy); + FromJsonUtilS(input["PolicyName"], PolicyName); + FromJsonUtilO(input["Statements"], Statements); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_OverwritePolicy; ToJsonUtilP(OverwritePolicy, each_OverwritePolicy); output["OverwritePolicy"] = each_OverwritePolicy; + Json::Value each_PolicyName; ToJsonUtilS(PolicyName, each_PolicyName); output["PolicyName"] = each_PolicyName; + Json::Value each_Statements; ToJsonUtilO(Statements, each_Statements); output["Statements"] = each_Statements; + return output; + } + }; + + struct UpdatePolicyResponse : public PlayFabResultCommon + { + std::string PolicyName; + std::list Statements; + + UpdatePolicyResponse() : + PlayFabResultCommon(), + PolicyName(), + Statements() + {} + + UpdatePolicyResponse(const UpdatePolicyResponse& src) : + PlayFabResultCommon(), + PolicyName(src.PolicyName), + Statements(src.Statements) + {} + + ~UpdatePolicyResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PolicyName"], PolicyName); + FromJsonUtilO(input["Statements"], Statements); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PolicyName; ToJsonUtilS(PolicyName, each_PolicyName); output["PolicyName"] = each_PolicyName; + Json::Value each_Statements; ToJsonUtilO(Statements, each_Statements); output["Statements"] = each_Statements; + return output; + } + }; + + struct UpdateRandomResultTablesRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::list Tables; + + UpdateRandomResultTablesRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + Tables() + {} + + UpdateRandomResultTablesRequest(const UpdateRandomResultTablesRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + Tables(src.Tables) + {} + + ~UpdateRandomResultTablesRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilO(input["Tables"], Tables); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_Tables; ToJsonUtilO(Tables, each_Tables); output["Tables"] = each_Tables; + return output; + } + }; + + struct UpdateRandomResultTablesResult : public PlayFabResultCommon + { + + UpdateRandomResultTablesResult() : + PlayFabResultCommon() + {} + + UpdateRandomResultTablesResult(const UpdateRandomResultTablesResult&) : + PlayFabResultCommon() + {} + + ~UpdateRandomResultTablesResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UpdateStoreItemsRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + Boxed MarketingData; + std::list Store; + std::string StoreId; + + UpdateStoreItemsRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + MarketingData(), + Store(), + StoreId() + {} + + UpdateStoreItemsRequest(const UpdateStoreItemsRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + MarketingData(src.MarketingData), + Store(src.Store), + StoreId(src.StoreId) + {} + + ~UpdateStoreItemsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilO(input["MarketingData"], MarketingData); + FromJsonUtilO(input["Store"], Store); + FromJsonUtilS(input["StoreId"], StoreId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_MarketingData; ToJsonUtilO(MarketingData, each_MarketingData); output["MarketingData"] = each_MarketingData; + Json::Value each_Store; ToJsonUtilO(Store, each_Store); output["Store"] = each_Store; + Json::Value each_StoreId; ToJsonUtilS(StoreId, each_StoreId); output["StoreId"] = each_StoreId; + return output; + } + }; + + struct UpdateStoreItemsResult : public PlayFabResultCommon + { + + UpdateStoreItemsResult() : + PlayFabResultCommon() + {} + + UpdateStoreItemsResult(const UpdateStoreItemsResult&) : + PlayFabResultCommon() + {} + + ~UpdateStoreItemsResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UpdateTaskRequest : public PlayFabRequestCommon + { + std::string Description; + Boxed Identifier; + bool IsActive; + std::string Name; + Json::Value Parameter; + std::string Schedule; + ScheduledTaskType Type; + + UpdateTaskRequest() : + PlayFabRequestCommon(), + Description(), + Identifier(), + IsActive(), + Name(), + Parameter(), + Schedule(), + Type() + {} + + UpdateTaskRequest(const UpdateTaskRequest& src) : + PlayFabRequestCommon(), + Description(src.Description), + Identifier(src.Identifier), + IsActive(src.IsActive), + Name(src.Name), + Parameter(src.Parameter), + Schedule(src.Schedule), + Type(src.Type) + {} + + ~UpdateTaskRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Description"], Description); + FromJsonUtilO(input["Identifier"], Identifier); + FromJsonUtilP(input["IsActive"], IsActive); + FromJsonUtilS(input["Name"], Name); + Parameter = input["Parameter"]; + FromJsonUtilS(input["Schedule"], Schedule); + FromJsonEnum(input["Type"], Type); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Description; ToJsonUtilS(Description, each_Description); output["Description"] = each_Description; + Json::Value each_Identifier; ToJsonUtilO(Identifier, each_Identifier); output["Identifier"] = each_Identifier; + Json::Value each_IsActive; ToJsonUtilP(IsActive, each_IsActive); output["IsActive"] = each_IsActive; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + output["Parameter"] = Parameter; + Json::Value each_Schedule; ToJsonUtilS(Schedule, each_Schedule); output["Schedule"] = each_Schedule; + Json::Value each_Type; ToJsonEnum(Type, each_Type); output["Type"] = each_Type; + return output; + } + }; + + struct UpdateUserDataRequest : public PlayFabRequestCommon + { + std::map Data; + std::list KeysToRemove; + Boxed Permission; + std::string PlayFabId; + + UpdateUserDataRequest() : + PlayFabRequestCommon(), + Data(), + KeysToRemove(), + Permission(), + PlayFabId() + {} + + UpdateUserDataRequest(const UpdateUserDataRequest& src) : + PlayFabRequestCommon(), + Data(src.Data), + KeysToRemove(src.KeysToRemove), + Permission(src.Permission), + PlayFabId(src.PlayFabId) + {} + + ~UpdateUserDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Data"], Data); + FromJsonUtilS(input["KeysToRemove"], KeysToRemove); + FromJsonUtilE(input["Permission"], Permission); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + Json::Value each_KeysToRemove; ToJsonUtilS(KeysToRemove, each_KeysToRemove); output["KeysToRemove"] = each_KeysToRemove; + Json::Value each_Permission; ToJsonUtilE(Permission, each_Permission); output["Permission"] = each_Permission; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct UpdateUserDataResult : public PlayFabResultCommon + { + Uint32 DataVersion; + + UpdateUserDataResult() : + PlayFabResultCommon(), + DataVersion() + {} + + UpdateUserDataResult(const UpdateUserDataResult& src) : + PlayFabResultCommon(), + DataVersion(src.DataVersion) + {} + + ~UpdateUserDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["DataVersion"], DataVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DataVersion; ToJsonUtilP(DataVersion, each_DataVersion); output["DataVersion"] = each_DataVersion; + return output; + } + }; + + struct UpdateUserInternalDataRequest : public PlayFabRequestCommon + { + std::map Data; + std::list KeysToRemove; + std::string PlayFabId; + + UpdateUserInternalDataRequest() : + PlayFabRequestCommon(), + Data(), + KeysToRemove(), + PlayFabId() + {} + + UpdateUserInternalDataRequest(const UpdateUserInternalDataRequest& src) : + PlayFabRequestCommon(), + Data(src.Data), + KeysToRemove(src.KeysToRemove), + PlayFabId(src.PlayFabId) + {} + + ~UpdateUserInternalDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Data"], Data); + FromJsonUtilS(input["KeysToRemove"], KeysToRemove); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + Json::Value each_KeysToRemove; ToJsonUtilS(KeysToRemove, each_KeysToRemove); output["KeysToRemove"] = each_KeysToRemove; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct UpdateUserTitleDisplayNameRequest : public PlayFabRequestCommon + { + std::string DisplayName; + std::string PlayFabId; + + UpdateUserTitleDisplayNameRequest() : + PlayFabRequestCommon(), + DisplayName(), + PlayFabId() + {} + + UpdateUserTitleDisplayNameRequest(const UpdateUserTitleDisplayNameRequest& src) : + PlayFabRequestCommon(), + DisplayName(src.DisplayName), + PlayFabId(src.PlayFabId) + {} + + ~UpdateUserTitleDisplayNameRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct UpdateUserTitleDisplayNameResult : public PlayFabResultCommon + { + std::string DisplayName; + + UpdateUserTitleDisplayNameResult() : + PlayFabResultCommon(), + DisplayName() + {} + + UpdateUserTitleDisplayNameResult(const UpdateUserTitleDisplayNameResult& src) : + PlayFabResultCommon(), + DisplayName(src.DisplayName) + {} + + ~UpdateUserTitleDisplayNameResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["DisplayName"], DisplayName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + return output; + } + }; + + } +} + +#endif diff --git a/cppsdk/include/playfab/PlayFabBaseModel.h b/cppsdk/include/playfab/PlayFabBaseModel.h new file mode 100644 index 00000000..e3d29f18 --- /dev/null +++ b/cppsdk/include/playfab/PlayFabBaseModel.h @@ -0,0 +1,537 @@ +#pragma once + +#include +#include +#include +#include +#include + +// #include +#include +// #include +#include + +namespace PlayFab +{ +#ifdef WIN32 + typedef signed __int64 Int64; + typedef signed __int32 Int32; + typedef signed __int16 Int16; + + typedef unsigned __int64 Uint64; + typedef unsigned __int32 Uint32; + typedef unsigned __int16 Uint16; +#else + typedef int64_t Int64; + typedef int32_t Int32; + typedef int16_t Int16; + + typedef uint64_t Uint64; + typedef uint32_t Uint32; + typedef uint16_t Uint16; +#endif + template + class Boxed + { + public: + BoxedType mValue; + + Boxed() : mValue(), mIsSet(false) {} + Boxed(BoxedType value) : mValue(value), mIsSet(true) {} + + inline Boxed& operator=(BoxedType value) { mValue = value; mIsSet = true; return *this; } + inline operator BoxedType() { return mValue; } + inline BoxedType* operator->() { return mIsSet ? &mValue : nullptr; } + inline const BoxedType* operator->() const { return mIsSet ? &mValue : nullptr; } + + inline void setNull() { mIsSet = false; } + inline bool notNull() const { return mIsSet; } + inline bool isNull() const { return !mIsSet; } + private: + bool mIsSet; + }; + + template using ProcessApiCallback = std::function; + + /// + /// Base class for all PlayFab Models + /// Provides interface for converting to/from json + /// + struct PlayFabBaseModel + { + virtual ~PlayFabBaseModel() {} + virtual void FromJson(Json::Value& input) = 0; // We explicitly choose not to make Json::Value const here, because it restricts available syntax + virtual Json::Value ToJson() const = 0; + }; + + /// + /// Base class for all PlayFab Requests + /// Adds a parameter that controls how requests are threaded + /// + struct PlayFabRequestCommon : public PlayFabBaseModel { }; + + /// + /// Base class for all PlayFab Results + /// + struct PlayFabResultCommon : public PlayFabBaseModel { + Json::Value Request; + }; + + // Utilities for [de]serializing time_t to/from json + inline void ToJsonUtilT(const time_t input, Json::Value& output) + { + struct tm timeInfo; +#ifdef WINDOWS_BUILD + gmtime_s(&timeInfo, &input); +#endif +#ifdef LINUX_BUILD + tm* temp = gmtime(&input); + timeInfo = *temp; +#endif + char buff[40]; + strftime(buff, 40, "%Y-%m-%dT%H:%M:%S.000Z", &timeInfo); + output = Json::Value(buff); + } + inline void FromJsonUtilT(const Json::Value& input, time_t& output) + { + if (input == Json::Value::null) return; + std::string enumStr = input.asString(); + tm timeStruct = {}; + std::istringstream iss(enumStr.c_str()); + iss >> std::get_time(&timeStruct, "%Y-%m-%dT%T"); + timeStruct.tm_year -= 1900; + timeStruct.tm_mon -= 1; + output = mktime(&timeStruct); + } + inline void ToJsonUtilT(const Boxed& input, Json::Value& output) + { + if (input.isNull()) + { + output = Json::Value(); + } + else + { + ToJsonUtilT(input.mValue, output); + } + } + inline void FromJsonUtilT(const Json::Value& input, Boxed& output) + { + if (input == Json::Value::null) + { + output.setNull(); + } + else + { + time_t outputVal = {}; + FromJsonUtilT(input, outputVal); + output = outputVal; + } + } + inline void ToJsonUtilT(const std::list& input, Json::Value& output) + { + if (input.size() == 0) + { + output = Json::Value::null; + } + else + { + output = Json::Value(Json::arrayValue); + Json::Value eachOutput; + int index = 0; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + ToJsonUtilT(*iter, eachOutput); + output[index++] = eachOutput; + } + } + } + inline void FromJsonUtilT(Json::Value& input, std::list& output) + { + output.clear(); + if (input == Json::Value::null || !input.isArray()) + return; + + time_t eachOutput; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + FromJsonUtilT(*iter, eachOutput); + output.push_back(eachOutput); + } + } + inline void ToJsonUtilT(const std::map& input, Json::Value& output) + { + output = Json::Value(Json::objectValue); + Json::Value eachOutput; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + ToJsonUtilT(iter->second, eachOutput); + output[iter->first] = eachOutput; + } + } + inline void FromJsonUtilT(Json::Value& input, std::map& output) + { + output.clear(); + if (input == Json::Value::null) + return; + + time_t eachOutput; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + FromJsonUtilT(*iter, eachOutput); + output[iter.key().asString()] = eachOutput; + } + } + + // Utilities for [de]serializing EnumType to/from json + template inline void ToJsonUtilE(const Boxed& input, Json::Value& output) + { + if (input.isNull()) + { + output = Json::Value(); + } + else + { + ToJsonEnum(input.mValue, output); + } + } + template inline void FromJsonUtilE(const Json::Value& input, Boxed& output) + { + if (input == Json::Value::null) + { + output.setNull(); + } + else + { + EnumType outputVal; + FromJsonEnum(input, outputVal); + output = outputVal; + } + } + template inline void ToJsonUtilE(const std::list& input, Json::Value& output) + { + if (input.size() == 0) + { + output = Json::Value::null; + } + else + { + output = Json::Value(Json::arrayValue); + Json::Value eachOutput; + int index = 0; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + ToJsonEnum(*iter, eachOutput); + output[index++] = eachOutput; + } + } + } + template inline void FromJsonUtilE(Json::Value& input, std::list& output) + { + output.clear(); + if (input == Json::Value::null) + return; + + EnumType eachOutput; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + FromJsonEnum(*iter, eachOutput); + output.push_back(eachOutput); + } + } + template inline void ToJsonUtilE(const std::map& input, Json::Value& output) + { + output = Json::Value(Json::objectValue); + Json::Value eachOutput; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + ToJsonEnum(iter->second, eachOutput); + output[iter->first] = eachOutput; + } + } + template inline void FromJsonUtilE(Json::Value& input, std::map& output) + { + output.clear(); + if (input == Json::Value::null) + return; + + EnumType eachOutput; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + FromJsonEnum(iter, eachOutput); + output[iter.key()] = eachOutput; + } + } + + // Utilities for [de]serializing string to/from json + inline void ToJsonUtilS(const std::string& input, Json::Value& output) + { + if (input.length() == 0) + output = Json::Value::null; + else + output = Json::Value(input); + } + inline void FromJsonUtilS(const Json::Value& input, std::string& output) + { + if (input == Json::Value::null) + output.clear(); + else + output = input.asString(); + } + inline void ToJsonUtilS(const std::list& input, Json::Value& output) + { + if (input.size() == 0) + { + output = Json::Value::null; + } + else + { + output = Json::Value(Json::arrayValue); + Json::Value eachOutput; + int index = 0; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + ToJsonUtilS(*iter, eachOutput); + output[index++] = eachOutput; + } + } + } + inline void FromJsonUtilS(Json::Value& input, std::list& output) + { + output.clear(); + if (input == Json::Value::null) + return; + + std::string eachOutput; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + FromJsonUtilS(*iter, eachOutput); + output.push_back(eachOutput); + } + } + inline void ToJsonUtilS(const std::map& input, Json::Value& output) + { + output = Json::Value(Json::objectValue); + Json::Value eachOutput; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + ToJsonUtilS(iter->second, eachOutput); + output[iter->first] = eachOutput; + } + } + inline void FromJsonUtilS(Json::Value& input, std::map& output) + { + output.clear(); + if (input == Json::Value::null) + return; + + std::string eachOutput; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + FromJsonUtilS(*iter, eachOutput); + output[iter.key().asString()] = eachOutput; + } + } + + // Utilities for [de]serializing PlayFabObjects to/from json + inline void ToJsonUtilO(const PlayFabBaseModel& input, Json::Value& output) + { + output = input.ToJson(); + } + inline void FromJsonUtilO(Json::Value& input, PlayFabBaseModel& output) + { + output.FromJson(input); + } + template inline void ToJsonUtilO(const Boxed input, Json::Value& output) + { + if (input.isNull()) + output = Json::Value(); + else + output = input.mValue.ToJson(); + } + template inline void FromJsonUtilO(Json::Value& input, Boxed& output) + { + if (input == Json::Value::null) + output.setNull(); + else + { + ObjectType outputTemp; + outputTemp.FromJson(input); + output = outputTemp; + } + } + template inline void ToJsonUtilO(const std::list& input, Json::Value& output) + { + if (input.size() == 0) + { + output = Json::Value::null; + } + else + { + output = Json::Value(Json::arrayValue); + Json::Value eachOutput; + int index = 0; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + ToJsonUtilO(*iter, eachOutput); + output[index++] = eachOutput; + } + } + } + template inline void FromJsonUtilO(Json::Value& input, std::list& output) + { + output.clear(); + if (input == Json::Value::null) + return; + + ObjectType eachOutput; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + FromJsonUtilO(*iter, eachOutput); + output.push_back(eachOutput); + } + } + template inline void ToJsonUtilO(const std::map& input, Json::Value& output) + { + output = Json::Value(Json::objectValue); + Json::Value eachOutput; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + ToJsonUtilO(iter->second, eachOutput); + output[iter->first] = eachOutput; + } + } + template inline void FromJsonUtilO(Json::Value& input, std::map& output) + { + output.clear(); + if (input == Json::Value::null) + return; + + ObjectType eachOutput; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + FromJsonUtilO(*iter, eachOutput); + output[iter.key().asString()] = eachOutput; + } + } + + // Utilities for [de]serializing primitives to/from json + template inline void ToJsonUtilP(const PrimitiveType input, Json::Value& output) + { + output = Json::Value(input); + } + inline void FromJsonUtilP(const Json::Value& input, bool& output) + { + if (input != Json::Value::null) output = input.asBool(); + } + inline void FromJsonUtilP(const Json::Value& input, Int16& output) + { + if (input != Json::Value::null) output = static_cast(input.asInt()); + } + inline void FromJsonUtilP(const Json::Value& input, Uint16& output) + { + if (input != Json::Value::null) output = static_cast(input.asInt()); + } + inline void FromJsonUtilP(const Json::Value& input, Int32& output) + { + if (input != Json::Value::null) output = input.asInt(); + } + inline void FromJsonUtilP(const Json::Value& input, Uint32& output) + { + if (input != Json::Value::null) output = input.asUInt(); + } + inline void FromJsonUtilP(const Json::Value& input, Int64& output) + { + if (input != Json::Value::null) output = input.asInt64(); + } + inline void FromJsonUtilP(const Json::Value& input, Uint64& output) + { + if (input != Json::Value::null) output = input.asUInt64(); + } + inline void FromJsonUtilP(const Json::Value& input, float& output) + { + if (input != Json::Value::null) output = input.asFloat(); + } + inline void FromJsonUtilP(const Json::Value& input, double& output) + { + if (input != Json::Value::null) output = input.asDouble(); + } + template inline void ToJsonUtilP(const Boxed& input, Json::Value& output) + { + if (input.isNull()) + { + output = Json::Value(); + } + else + { + ToJsonUtilP(input.mValue, output); + } + } + template inline void FromJsonUtilP(const Json::Value& input, Boxed& output) + { + if (input == Json::Value::null) + { + output.setNull(); + } + else + { + PrimitiveType outputVal; + FromJsonUtilP(input, outputVal); + output = outputVal; + } + } + template inline void ToJsonUtilP(const std::list& input, Json::Value& output) + { + if (input.size() == 0) + { + output = Json::Value::null; + } + else + { + output = Json::Value(Json::arrayValue); + Json::Value eachOutput; + int index = 0; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + FromJsonUtilP(*iter, eachOutput); + output[index++] = eachOutput; + } + } + } + template inline void FromJsonUtilP(Json::Value& input, std::list& output) + { + output.clear(); + if (input == Json::Value::null) + return; + + PrimitiveType eachOutput; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + FromJsonUtilP(*iter, eachOutput); + output.push_back(eachOutput); + } + } + template inline void ToJsonUtilP(const std::map& input, Json::Value& output) + { + output = Json::Value(Json::objectValue); + Json::Value eachOutput; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + ToJsonUtilP(iter->second, eachOutput); + output[iter->first] = eachOutput; + } + } + template inline void FromJsonUtilP(Json::Value& input, std::map& output) + { + output.clear(); + if (input == Json::Value::null) + return; + + PrimitiveType eachOutput; + for (auto iter = input.begin(); iter != input.end(); ++iter) + { + FromJsonUtilP(*iter, eachOutput); + output[iter.key().asString()] = eachOutput; + } + } +} + diff --git a/cppsdk/include/playfab/PlayFabClientApi.h b/cppsdk/include/playfab/PlayFabClientApi.h new file mode 100644 index 00000000..729df152 --- /dev/null +++ b/cppsdk/include/playfab/PlayFabClientApi.h @@ -0,0 +1,305 @@ +#pragma once + +#ifndef DISABLE_PLAYFABCLIENT_API + +#include +#include + +namespace PlayFab +{ + /// + /// Main interface for PlayFab Sdk, specifically all Client APIs + /// + class PlayFabClientAPI + { + public: + static size_t Update(); + static void ForgetAllCredentials(); + + + // Public, Client-Specific + static bool IsClientLoggedIn(); + + // ------------ Generated API calls + static void AcceptTrade(ClientModels::AcceptTradeRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AddFriend(ClientModels::AddFriendRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AddGenericID(ClientModels::AddGenericIDRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AddOrUpdateContactEmail(ClientModels::AddOrUpdateContactEmailRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AddSharedGroupMembers(ClientModels::AddSharedGroupMembersRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AddUsernamePassword(ClientModels::AddUsernamePasswordRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AddUserVirtualCurrency(ClientModels::AddUserVirtualCurrencyRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AndroidDevicePushNotificationRegistration(ClientModels::AndroidDevicePushNotificationRegistrationRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AttributeInstall(ClientModels::AttributeInstallRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void CancelTrade(ClientModels::CancelTradeRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ConfirmPurchase(ClientModels::ConfirmPurchaseRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ConsumeItem(ClientModels::ConsumeItemRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void CreateSharedGroup(ClientModels::CreateSharedGroupRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ExecuteCloudScript(ClientModels::ExecuteCloudScriptRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetAccountInfo(ClientModels::GetAccountInfoRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetAllUsersCharacters(ClientModels::ListUsersCharactersRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCatalogItems(ClientModels::GetCatalogItemsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCharacterData(ClientModels::GetCharacterDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCharacterInventory(ClientModels::GetCharacterInventoryRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCharacterLeaderboard(ClientModels::GetCharacterLeaderboardRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCharacterReadOnlyData(ClientModels::GetCharacterDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCharacterStatistics(ClientModels::GetCharacterStatisticsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetContentDownloadUrl(ClientModels::GetContentDownloadUrlRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCurrentGames(ClientModels::CurrentGamesRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetFriendLeaderboard(ClientModels::GetFriendLeaderboardRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetFriendLeaderboardAroundPlayer(ClientModels::GetFriendLeaderboardAroundPlayerRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetFriendsList(ClientModels::GetFriendsListRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetGameServerRegions(ClientModels::GameServerRegionsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetLeaderboard(ClientModels::GetLeaderboardRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetLeaderboardAroundCharacter(ClientModels::GetLeaderboardAroundCharacterRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetLeaderboardAroundPlayer(ClientModels::GetLeaderboardAroundPlayerRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetLeaderboardForUserCharacters(ClientModels::GetLeaderboardForUsersCharactersRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPaymentToken(ClientModels::GetPaymentTokenRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPhotonAuthenticationToken(ClientModels::GetPhotonAuthenticationTokenRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerCombinedInfo(ClientModels::GetPlayerCombinedInfoRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerProfile(ClientModels::GetPlayerProfileRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerSegments(ClientModels::GetPlayerSegmentsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerStatistics(ClientModels::GetPlayerStatisticsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerStatisticVersions(ClientModels::GetPlayerStatisticVersionsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerTags(ClientModels::GetPlayerTagsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerTrades(ClientModels::GetPlayerTradesRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayFabIDsFromFacebookIDs(ClientModels::GetPlayFabIDsFromFacebookIDsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayFabIDsFromGameCenterIDs(ClientModels::GetPlayFabIDsFromGameCenterIDsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayFabIDsFromGenericIDs(ClientModels::GetPlayFabIDsFromGenericIDsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayFabIDsFromGoogleIDs(ClientModels::GetPlayFabIDsFromGoogleIDsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayFabIDsFromKongregateIDs(ClientModels::GetPlayFabIDsFromKongregateIDsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayFabIDsFromSteamIDs(ClientModels::GetPlayFabIDsFromSteamIDsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayFabIDsFromTwitchIDs(ClientModels::GetPlayFabIDsFromTwitchIDsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPublisherData(ClientModels::GetPublisherDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPurchase(ClientModels::GetPurchaseRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetSharedGroupData(ClientModels::GetSharedGroupDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetStoreItems(ClientModels::GetStoreItemsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetTime(ClientModels::GetTimeRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetTitleData(ClientModels::GetTitleDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetTitleNews(ClientModels::GetTitleNewsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetTitlePublicKey(ClientModels::GetTitlePublicKeyRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetTradeStatus(ClientModels::GetTradeStatusRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserData(ClientModels::GetUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserInventory(ClientModels::GetUserInventoryRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserPublisherData(ClientModels::GetUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserPublisherReadOnlyData(ClientModels::GetUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserReadOnlyData(ClientModels::GetUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetWindowsHelloChallenge(ClientModels::GetWindowsHelloChallengeRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GrantCharacterToUser(ClientModels::GrantCharacterToUserRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LinkAndroidDeviceID(ClientModels::LinkAndroidDeviceIDRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LinkCustomID(ClientModels::LinkCustomIDRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LinkFacebookAccount(ClientModels::LinkFacebookAccountRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LinkGameCenterAccount(ClientModels::LinkGameCenterAccountRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LinkGoogleAccount(ClientModels::LinkGoogleAccountRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LinkIOSDeviceID(ClientModels::LinkIOSDeviceIDRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LinkKongregate(ClientModels::LinkKongregateAccountRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LinkSteamAccount(ClientModels::LinkSteamAccountRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LinkTwitch(ClientModels::LinkTwitchAccountRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LinkWindowsHello(ClientModels::LinkWindowsHelloAccountRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LoginWithAndroidDeviceID(ClientModels::LoginWithAndroidDeviceIDRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LoginWithCustomID(ClientModels::LoginWithCustomIDRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LoginWithEmailAddress(ClientModels::LoginWithEmailAddressRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LoginWithFacebook(ClientModels::LoginWithFacebookRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LoginWithGameCenter(ClientModels::LoginWithGameCenterRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LoginWithGoogleAccount(ClientModels::LoginWithGoogleAccountRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LoginWithIOSDeviceID(ClientModels::LoginWithIOSDeviceIDRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LoginWithKongregate(ClientModels::LoginWithKongregateRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LoginWithPlayFab(ClientModels::LoginWithPlayFabRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LoginWithSteam(ClientModels::LoginWithSteamRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LoginWithTwitch(ClientModels::LoginWithTwitchRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void LoginWithWindowsHello(ClientModels::LoginWithWindowsHelloRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void Matchmake(ClientModels::MatchmakeRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void OpenTrade(ClientModels::OpenTradeRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void PayForPurchase(ClientModels::PayForPurchaseRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void PurchaseItem(ClientModels::PurchaseItemRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RedeemCoupon(ClientModels::RedeemCouponRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RegisterForIOSPushNotification(ClientModels::RegisterForIOSPushNotificationRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RegisterPlayFabUser(ClientModels::RegisterPlayFabUserRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RegisterWithWindowsHello(ClientModels::RegisterWithWindowsHelloRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RemoveContactEmail(ClientModels::RemoveContactEmailRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RemoveFriend(ClientModels::RemoveFriendRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RemoveGenericID(ClientModels::RemoveGenericIDRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RemoveSharedGroupMembers(ClientModels::RemoveSharedGroupMembersRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ReportDeviceInfo(ClientModels::DeviceInfoRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ReportPlayer(ClientModels::ReportPlayerClientRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RestoreIOSPurchases(ClientModels::RestoreIOSPurchasesRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SendAccountRecoveryEmail(ClientModels::SendAccountRecoveryEmailRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetFriendTags(ClientModels::SetFriendTagsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetPlayerSecret(ClientModels::SetPlayerSecretRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void StartGame(ClientModels::StartGameRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void StartPurchase(ClientModels::StartPurchaseRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SubtractUserVirtualCurrency(ClientModels::SubtractUserVirtualCurrencyRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UnlinkAndroidDeviceID(ClientModels::UnlinkAndroidDeviceIDRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UnlinkCustomID(ClientModels::UnlinkCustomIDRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UnlinkFacebookAccount(ClientModels::UnlinkFacebookAccountRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UnlinkGameCenterAccount(ClientModels::UnlinkGameCenterAccountRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UnlinkGoogleAccount(ClientModels::UnlinkGoogleAccountRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UnlinkIOSDeviceID(ClientModels::UnlinkIOSDeviceIDRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UnlinkKongregate(ClientModels::UnlinkKongregateAccountRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UnlinkSteamAccount(ClientModels::UnlinkSteamAccountRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UnlinkTwitch(ClientModels::UnlinkTwitchAccountRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UnlinkWindowsHello(ClientModels::UnlinkWindowsHelloAccountRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UnlockContainerInstance(ClientModels::UnlockContainerInstanceRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UnlockContainerItem(ClientModels::UnlockContainerItemRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateAvatarUrl(ClientModels::UpdateAvatarUrlRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateCharacterData(ClientModels::UpdateCharacterDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateCharacterStatistics(ClientModels::UpdateCharacterStatisticsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdatePlayerStatistics(ClientModels::UpdatePlayerStatisticsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateSharedGroupData(ClientModels::UpdateSharedGroupDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateUserData(ClientModels::UpdateUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateUserPublisherData(ClientModels::UpdateUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateUserTitleDisplayName(ClientModels::UpdateUserTitleDisplayNameRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ValidateAmazonIAPReceipt(ClientModels::ValidateAmazonReceiptRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ValidateGooglePlayPurchase(ClientModels::ValidateGooglePlayPurchaseRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ValidateIOSReceipt(ClientModels::ValidateIOSReceiptRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ValidateWindowsStoreReceipt(ClientModels::ValidateWindowsReceiptRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void WriteCharacterEvent(ClientModels::WriteClientCharacterEventRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void WritePlayerEvent(ClientModels::WriteClientPlayerEventRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void WriteTitleEvent(ClientModels::WriteTitleEventRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + + private: + PlayFabClientAPI(); // Private constructor, static class should never have an instance + PlayFabClientAPI(const PlayFabClientAPI& other); // Private copy-constructor, static class should never have an instance + + // ------------ Generated result handlers + static void OnAcceptTradeResult(CallRequestContainer& request); + static void OnAddFriendResult(CallRequestContainer& request); + static void OnAddGenericIDResult(CallRequestContainer& request); + static void OnAddOrUpdateContactEmailResult(CallRequestContainer& request); + static void OnAddSharedGroupMembersResult(CallRequestContainer& request); + static void OnAddUsernamePasswordResult(CallRequestContainer& request); + static void OnAddUserVirtualCurrencyResult(CallRequestContainer& request); + static void OnAndroidDevicePushNotificationRegistrationResult(CallRequestContainer& request); + static void OnAttributeInstallResult(CallRequestContainer& request); + static void OnCancelTradeResult(CallRequestContainer& request); + static void OnConfirmPurchaseResult(CallRequestContainer& request); + static void OnConsumeItemResult(CallRequestContainer& request); + static void OnCreateSharedGroupResult(CallRequestContainer& request); + static void OnExecuteCloudScriptResult(CallRequestContainer& request); + static void OnGetAccountInfoResult(CallRequestContainer& request); + static void OnGetAllUsersCharactersResult(CallRequestContainer& request); + static void OnGetCatalogItemsResult(CallRequestContainer& request); + static void OnGetCharacterDataResult(CallRequestContainer& request); + static void OnGetCharacterInventoryResult(CallRequestContainer& request); + static void OnGetCharacterLeaderboardResult(CallRequestContainer& request); + static void OnGetCharacterReadOnlyDataResult(CallRequestContainer& request); + static void OnGetCharacterStatisticsResult(CallRequestContainer& request); + static void OnGetContentDownloadUrlResult(CallRequestContainer& request); + static void OnGetCurrentGamesResult(CallRequestContainer& request); + static void OnGetFriendLeaderboardResult(CallRequestContainer& request); + static void OnGetFriendLeaderboardAroundPlayerResult(CallRequestContainer& request); + static void OnGetFriendsListResult(CallRequestContainer& request); + static void OnGetGameServerRegionsResult(CallRequestContainer& request); + static void OnGetLeaderboardResult(CallRequestContainer& request); + static void OnGetLeaderboardAroundCharacterResult(CallRequestContainer& request); + static void OnGetLeaderboardAroundPlayerResult(CallRequestContainer& request); + static void OnGetLeaderboardForUserCharactersResult(CallRequestContainer& request); + static void OnGetPaymentTokenResult(CallRequestContainer& request); + static void OnGetPhotonAuthenticationTokenResult(CallRequestContainer& request); + static void OnGetPlayerCombinedInfoResult(CallRequestContainer& request); + static void OnGetPlayerProfileResult(CallRequestContainer& request); + static void OnGetPlayerSegmentsResult(CallRequestContainer& request); + static void OnGetPlayerStatisticsResult(CallRequestContainer& request); + static void OnGetPlayerStatisticVersionsResult(CallRequestContainer& request); + static void OnGetPlayerTagsResult(CallRequestContainer& request); + static void OnGetPlayerTradesResult(CallRequestContainer& request); + static void OnGetPlayFabIDsFromFacebookIDsResult(CallRequestContainer& request); + static void OnGetPlayFabIDsFromGameCenterIDsResult(CallRequestContainer& request); + static void OnGetPlayFabIDsFromGenericIDsResult(CallRequestContainer& request); + static void OnGetPlayFabIDsFromGoogleIDsResult(CallRequestContainer& request); + static void OnGetPlayFabIDsFromKongregateIDsResult(CallRequestContainer& request); + static void OnGetPlayFabIDsFromSteamIDsResult(CallRequestContainer& request); + static void OnGetPlayFabIDsFromTwitchIDsResult(CallRequestContainer& request); + static void OnGetPublisherDataResult(CallRequestContainer& request); + static void OnGetPurchaseResult(CallRequestContainer& request); + static void OnGetSharedGroupDataResult(CallRequestContainer& request); + static void OnGetStoreItemsResult(CallRequestContainer& request); + static void OnGetTimeResult(CallRequestContainer& request); + static void OnGetTitleDataResult(CallRequestContainer& request); + static void OnGetTitleNewsResult(CallRequestContainer& request); + static void OnGetTitlePublicKeyResult(CallRequestContainer& request); + static void OnGetTradeStatusResult(CallRequestContainer& request); + static void OnGetUserDataResult(CallRequestContainer& request); + static void OnGetUserInventoryResult(CallRequestContainer& request); + static void OnGetUserPublisherDataResult(CallRequestContainer& request); + static void OnGetUserPublisherReadOnlyDataResult(CallRequestContainer& request); + static void OnGetUserReadOnlyDataResult(CallRequestContainer& request); + static void OnGetWindowsHelloChallengeResult(CallRequestContainer& request); + static void OnGrantCharacterToUserResult(CallRequestContainer& request); + static void OnLinkAndroidDeviceIDResult(CallRequestContainer& request); + static void OnLinkCustomIDResult(CallRequestContainer& request); + static void OnLinkFacebookAccountResult(CallRequestContainer& request); + static void OnLinkGameCenterAccountResult(CallRequestContainer& request); + static void OnLinkGoogleAccountResult(CallRequestContainer& request); + static void OnLinkIOSDeviceIDResult(CallRequestContainer& request); + static void OnLinkKongregateResult(CallRequestContainer& request); + static void OnLinkSteamAccountResult(CallRequestContainer& request); + static void OnLinkTwitchResult(CallRequestContainer& request); + static void OnLinkWindowsHelloResult(CallRequestContainer& request); + static void OnLoginWithAndroidDeviceIDResult(CallRequestContainer& request); + static void OnLoginWithCustomIDResult(CallRequestContainer& request); + static void OnLoginWithEmailAddressResult(CallRequestContainer& request); + static void OnLoginWithFacebookResult(CallRequestContainer& request); + static void OnLoginWithGameCenterResult(CallRequestContainer& request); + static void OnLoginWithGoogleAccountResult(CallRequestContainer& request); + static void OnLoginWithIOSDeviceIDResult(CallRequestContainer& request); + static void OnLoginWithKongregateResult(CallRequestContainer& request); + static void OnLoginWithPlayFabResult(CallRequestContainer& request); + static void OnLoginWithSteamResult(CallRequestContainer& request); + static void OnLoginWithTwitchResult(CallRequestContainer& request); + static void OnLoginWithWindowsHelloResult(CallRequestContainer& request); + static void OnMatchmakeResult(CallRequestContainer& request); + static void OnOpenTradeResult(CallRequestContainer& request); + static void OnPayForPurchaseResult(CallRequestContainer& request); + static void OnPurchaseItemResult(CallRequestContainer& request); + static void OnRedeemCouponResult(CallRequestContainer& request); + static void OnRegisterForIOSPushNotificationResult(CallRequestContainer& request); + static void OnRegisterPlayFabUserResult(CallRequestContainer& request); + static void OnRegisterWithWindowsHelloResult(CallRequestContainer& request); + static void OnRemoveContactEmailResult(CallRequestContainer& request); + static void OnRemoveFriendResult(CallRequestContainer& request); + static void OnRemoveGenericIDResult(CallRequestContainer& request); + static void OnRemoveSharedGroupMembersResult(CallRequestContainer& request); + static void OnReportDeviceInfoResult(CallRequestContainer& request); + static void OnReportPlayerResult(CallRequestContainer& request); + static void OnRestoreIOSPurchasesResult(CallRequestContainer& request); + static void OnSendAccountRecoveryEmailResult(CallRequestContainer& request); + static void OnSetFriendTagsResult(CallRequestContainer& request); + static void OnSetPlayerSecretResult(CallRequestContainer& request); + static void OnStartGameResult(CallRequestContainer& request); + static void OnStartPurchaseResult(CallRequestContainer& request); + static void OnSubtractUserVirtualCurrencyResult(CallRequestContainer& request); + static void OnUnlinkAndroidDeviceIDResult(CallRequestContainer& request); + static void OnUnlinkCustomIDResult(CallRequestContainer& request); + static void OnUnlinkFacebookAccountResult(CallRequestContainer& request); + static void OnUnlinkGameCenterAccountResult(CallRequestContainer& request); + static void OnUnlinkGoogleAccountResult(CallRequestContainer& request); + static void OnUnlinkIOSDeviceIDResult(CallRequestContainer& request); + static void OnUnlinkKongregateResult(CallRequestContainer& request); + static void OnUnlinkSteamAccountResult(CallRequestContainer& request); + static void OnUnlinkTwitchResult(CallRequestContainer& request); + static void OnUnlinkWindowsHelloResult(CallRequestContainer& request); + static void OnUnlockContainerInstanceResult(CallRequestContainer& request); + static void OnUnlockContainerItemResult(CallRequestContainer& request); + static void OnUpdateAvatarUrlResult(CallRequestContainer& request); + static void OnUpdateCharacterDataResult(CallRequestContainer& request); + static void OnUpdateCharacterStatisticsResult(CallRequestContainer& request); + static void OnUpdatePlayerStatisticsResult(CallRequestContainer& request); + static void OnUpdateSharedGroupDataResult(CallRequestContainer& request); + static void OnUpdateUserDataResult(CallRequestContainer& request); + static void OnUpdateUserPublisherDataResult(CallRequestContainer& request); + static void OnUpdateUserTitleDisplayNameResult(CallRequestContainer& request); + static void OnValidateAmazonIAPReceiptResult(CallRequestContainer& request); + static void OnValidateGooglePlayPurchaseResult(CallRequestContainer& request); + static void OnValidateIOSReceiptResult(CallRequestContainer& request); + static void OnValidateWindowsStoreReceiptResult(CallRequestContainer& request); + static void OnWriteCharacterEventResult(CallRequestContainer& request); + static void OnWritePlayerEventResult(CallRequestContainer& request); + static void OnWriteTitleEventResult(CallRequestContainer& request); + + + // Private, Client-Specific + static void MultiStepClientLogin(bool needsAttribution); + }; +} + +#endif diff --git a/cppsdk/include/playfab/PlayFabClientDataModels.h b/cppsdk/include/playfab/PlayFabClientDataModels.h new file mode 100644 index 00000000..21186cb1 --- /dev/null +++ b/cppsdk/include/playfab/PlayFabClientDataModels.h @@ -0,0 +1,13567 @@ +#pragma once + +#ifndef DISABLE_PLAYFABCLIENT_API + +#include +#include + +namespace PlayFab +{ + namespace ClientModels + { + // Client Enums + enum CloudScriptRevisionOption + { + CloudScriptRevisionOptionLive, + CloudScriptRevisionOptionLatest, + CloudScriptRevisionOptionSpecific + }; + + inline void ToJsonEnum(const CloudScriptRevisionOption input, Json::Value& output) + { + if (input == CloudScriptRevisionOptionLive) output = Json::Value("Live"); + if (input == CloudScriptRevisionOptionLatest) output = Json::Value("Latest"); + if (input == CloudScriptRevisionOptionSpecific) output = Json::Value("Specific"); + } + inline void FromJsonEnum(const Json::Value& input, CloudScriptRevisionOption& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Live") output = CloudScriptRevisionOptionLive; + if (inputStr == "Latest") output = CloudScriptRevisionOptionLatest; + if (inputStr == "Specific") output = CloudScriptRevisionOptionSpecific; + } + + enum ContinentCode + { + ContinentCodeAF, + ContinentCodeAN, + ContinentCodeAS, + ContinentCodeEU, + ContinentCodeNA, + ContinentCodeOC, + ContinentCodeSA + }; + + inline void ToJsonEnum(const ContinentCode input, Json::Value& output) + { + if (input == ContinentCodeAF) output = Json::Value("AF"); + if (input == ContinentCodeAN) output = Json::Value("AN"); + if (input == ContinentCodeAS) output = Json::Value("AS"); + if (input == ContinentCodeEU) output = Json::Value("EU"); + if (input == ContinentCodeNA) output = Json::Value("NA"); + if (input == ContinentCodeOC) output = Json::Value("OC"); + if (input == ContinentCodeSA) output = Json::Value("SA"); + } + inline void FromJsonEnum(const Json::Value& input, ContinentCode& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "AF") output = ContinentCodeAF; + if (inputStr == "AN") output = ContinentCodeAN; + if (inputStr == "AS") output = ContinentCodeAS; + if (inputStr == "EU") output = ContinentCodeEU; + if (inputStr == "NA") output = ContinentCodeNA; + if (inputStr == "OC") output = ContinentCodeOC; + if (inputStr == "SA") output = ContinentCodeSA; + } + + enum CountryCode + { + CountryCodeAF, + CountryCodeAX, + CountryCodeAL, + CountryCodeDZ, + CountryCodeAS, + CountryCodeAD, + CountryCodeAO, + CountryCodeAI, + CountryCodeAQ, + CountryCodeAG, + CountryCodeAR, + CountryCodeAM, + CountryCodeAW, + CountryCodeAU, + CountryCodeAT, + CountryCodeAZ, + CountryCodeBS, + CountryCodeBH, + CountryCodeBD, + CountryCodeBB, + CountryCodeBY, + CountryCodeBE, + CountryCodeBZ, + CountryCodeBJ, + CountryCodeBM, + CountryCodeBT, + CountryCodeBO, + CountryCodeBQ, + CountryCodeBA, + CountryCodeBW, + CountryCodeBV, + CountryCodeBR, + CountryCodeIO, + CountryCodeBN, + CountryCodeBG, + CountryCodeBF, + CountryCodeBI, + CountryCodeKH, + CountryCodeCM, + CountryCodeCA, + CountryCodeCV, + CountryCodeKY, + CountryCodeCF, + CountryCodeTD, + CountryCodeCL, + CountryCodeCN, + CountryCodeCX, + CountryCodeCC, + CountryCodeCO, + CountryCodeKM, + CountryCodeCG, + CountryCodeCD, + CountryCodeCK, + CountryCodeCR, + CountryCodeCI, + CountryCodeHR, + CountryCodeCU, + CountryCodeCW, + CountryCodeCY, + CountryCodeCZ, + CountryCodeDK, + CountryCodeDJ, + CountryCodeDM, + CountryCodeDO, + CountryCodeEC, + CountryCodeEG, + CountryCodeSV, + CountryCodeGQ, + CountryCodeER, + CountryCodeEE, + CountryCodeET, + CountryCodeFK, + CountryCodeFO, + CountryCodeFJ, + CountryCodeFI, + CountryCodeFR, + CountryCodeGF, + CountryCodePF, + CountryCodeTF, + CountryCodeGA, + CountryCodeGM, + CountryCodeGE, + CountryCodeDE, + CountryCodeGH, + CountryCodeGI, + CountryCodeGR, + CountryCodeGL, + CountryCodeGD, + CountryCodeGP, + CountryCodeGU, + CountryCodeGT, + CountryCodeGG, + CountryCodeGN, + CountryCodeGW, + CountryCodeGY, + CountryCodeHT, + CountryCodeHM, + CountryCodeVA, + CountryCodeHN, + CountryCodeHK, + CountryCodeHU, + CountryCodeIS, + CountryCodeIN, + CountryCodeID, + CountryCodeIR, + CountryCodeIQ, + CountryCodeIE, + CountryCodeIM, + CountryCodeIL, + CountryCodeIT, + CountryCodeJM, + CountryCodeJP, + CountryCodeJE, + CountryCodeJO, + CountryCodeKZ, + CountryCodeKE, + CountryCodeKI, + CountryCodeKP, + CountryCodeKR, + CountryCodeKW, + CountryCodeKG, + CountryCodeLA, + CountryCodeLV, + CountryCodeLB, + CountryCodeLS, + CountryCodeLR, + CountryCodeLY, + CountryCodeLI, + CountryCodeLT, + CountryCodeLU, + CountryCodeMO, + CountryCodeMK, + CountryCodeMG, + CountryCodeMW, + CountryCodeMY, + CountryCodeMV, + CountryCodeML, + CountryCodeMT, + CountryCodeMH, + CountryCodeMQ, + CountryCodeMR, + CountryCodeMU, + CountryCodeYT, + CountryCodeMX, + CountryCodeFM, + CountryCodeMD, + CountryCodeMC, + CountryCodeMN, + CountryCodeME, + CountryCodeMS, + CountryCodeMA, + CountryCodeMZ, + CountryCodeMM, + CountryCodeNA, + CountryCodeNR, + CountryCodeNP, + CountryCodeNL, + CountryCodeNC, + CountryCodeNZ, + CountryCodeNI, + CountryCodeNE, + CountryCodeNG, + CountryCodeNU, + CountryCodeNF, + CountryCodeMP, + CountryCodeNO, + CountryCodeOM, + CountryCodePK, + CountryCodePW, + CountryCodePS, + CountryCodePA, + CountryCodePG, + CountryCodePY, + CountryCodePE, + CountryCodePH, + CountryCodePN, + CountryCodePL, + CountryCodePT, + CountryCodePR, + CountryCodeQA, + CountryCodeRE, + CountryCodeRO, + CountryCodeRU, + CountryCodeRW, + CountryCodeBL, + CountryCodeSH, + CountryCodeKN, + CountryCodeLC, + CountryCodeMF, + CountryCodePM, + CountryCodeVC, + CountryCodeWS, + CountryCodeSM, + CountryCodeST, + CountryCodeSA, + CountryCodeSN, + CountryCodeRS, + CountryCodeSC, + CountryCodeSL, + CountryCodeSG, + CountryCodeSX, + CountryCodeSK, + CountryCodeSI, + CountryCodeSB, + CountryCodeSO, + CountryCodeZA, + CountryCodeGS, + CountryCodeSS, + CountryCodeES, + CountryCodeLK, + CountryCodeSD, + CountryCodeSR, + CountryCodeSJ, + CountryCodeSZ, + CountryCodeSE, + CountryCodeCH, + CountryCodeSY, + CountryCodeTW, + CountryCodeTJ, + CountryCodeTZ, + CountryCodeTH, + CountryCodeTL, + CountryCodeTG, + CountryCodeTK, + CountryCodeTO, + CountryCodeTT, + CountryCodeTN, + CountryCodeTR, + CountryCodeTM, + CountryCodeTC, + CountryCodeTV, + CountryCodeUG, + CountryCodeUA, + CountryCodeAE, + CountryCodeGB, + CountryCodeUS, + CountryCodeUM, + CountryCodeUY, + CountryCodeUZ, + CountryCodeVU, + CountryCodeVE, + CountryCodeVN, + CountryCodeVG, + CountryCodeVI, + CountryCodeWF, + CountryCodeEH, + CountryCodeYE, + CountryCodeZM, + CountryCodeZW + }; + + inline void ToJsonEnum(const CountryCode input, Json::Value& output) + { + if (input == CountryCodeAF) output = Json::Value("AF"); + if (input == CountryCodeAX) output = Json::Value("AX"); + if (input == CountryCodeAL) output = Json::Value("AL"); + if (input == CountryCodeDZ) output = Json::Value("DZ"); + if (input == CountryCodeAS) output = Json::Value("AS"); + if (input == CountryCodeAD) output = Json::Value("AD"); + if (input == CountryCodeAO) output = Json::Value("AO"); + if (input == CountryCodeAI) output = Json::Value("AI"); + if (input == CountryCodeAQ) output = Json::Value("AQ"); + if (input == CountryCodeAG) output = Json::Value("AG"); + if (input == CountryCodeAR) output = Json::Value("AR"); + if (input == CountryCodeAM) output = Json::Value("AM"); + if (input == CountryCodeAW) output = Json::Value("AW"); + if (input == CountryCodeAU) output = Json::Value("AU"); + if (input == CountryCodeAT) output = Json::Value("AT"); + if (input == CountryCodeAZ) output = Json::Value("AZ"); + if (input == CountryCodeBS) output = Json::Value("BS"); + if (input == CountryCodeBH) output = Json::Value("BH"); + if (input == CountryCodeBD) output = Json::Value("BD"); + if (input == CountryCodeBB) output = Json::Value("BB"); + if (input == CountryCodeBY) output = Json::Value("BY"); + if (input == CountryCodeBE) output = Json::Value("BE"); + if (input == CountryCodeBZ) output = Json::Value("BZ"); + if (input == CountryCodeBJ) output = Json::Value("BJ"); + if (input == CountryCodeBM) output = Json::Value("BM"); + if (input == CountryCodeBT) output = Json::Value("BT"); + if (input == CountryCodeBO) output = Json::Value("BO"); + if (input == CountryCodeBQ) output = Json::Value("BQ"); + if (input == CountryCodeBA) output = Json::Value("BA"); + if (input == CountryCodeBW) output = Json::Value("BW"); + if (input == CountryCodeBV) output = Json::Value("BV"); + if (input == CountryCodeBR) output = Json::Value("BR"); + if (input == CountryCodeIO) output = Json::Value("IO"); + if (input == CountryCodeBN) output = Json::Value("BN"); + if (input == CountryCodeBG) output = Json::Value("BG"); + if (input == CountryCodeBF) output = Json::Value("BF"); + if (input == CountryCodeBI) output = Json::Value("BI"); + if (input == CountryCodeKH) output = Json::Value("KH"); + if (input == CountryCodeCM) output = Json::Value("CM"); + if (input == CountryCodeCA) output = Json::Value("CA"); + if (input == CountryCodeCV) output = Json::Value("CV"); + if (input == CountryCodeKY) output = Json::Value("KY"); + if (input == CountryCodeCF) output = Json::Value("CF"); + if (input == CountryCodeTD) output = Json::Value("TD"); + if (input == CountryCodeCL) output = Json::Value("CL"); + if (input == CountryCodeCN) output = Json::Value("CN"); + if (input == CountryCodeCX) output = Json::Value("CX"); + if (input == CountryCodeCC) output = Json::Value("CC"); + if (input == CountryCodeCO) output = Json::Value("CO"); + if (input == CountryCodeKM) output = Json::Value("KM"); + if (input == CountryCodeCG) output = Json::Value("CG"); + if (input == CountryCodeCD) output = Json::Value("CD"); + if (input == CountryCodeCK) output = Json::Value("CK"); + if (input == CountryCodeCR) output = Json::Value("CR"); + if (input == CountryCodeCI) output = Json::Value("CI"); + if (input == CountryCodeHR) output = Json::Value("HR"); + if (input == CountryCodeCU) output = Json::Value("CU"); + if (input == CountryCodeCW) output = Json::Value("CW"); + if (input == CountryCodeCY) output = Json::Value("CY"); + if (input == CountryCodeCZ) output = Json::Value("CZ"); + if (input == CountryCodeDK) output = Json::Value("DK"); + if (input == CountryCodeDJ) output = Json::Value("DJ"); + if (input == CountryCodeDM) output = Json::Value("DM"); + if (input == CountryCodeDO) output = Json::Value("DO"); + if (input == CountryCodeEC) output = Json::Value("EC"); + if (input == CountryCodeEG) output = Json::Value("EG"); + if (input == CountryCodeSV) output = Json::Value("SV"); + if (input == CountryCodeGQ) output = Json::Value("GQ"); + if (input == CountryCodeER) output = Json::Value("ER"); + if (input == CountryCodeEE) output = Json::Value("EE"); + if (input == CountryCodeET) output = Json::Value("ET"); + if (input == CountryCodeFK) output = Json::Value("FK"); + if (input == CountryCodeFO) output = Json::Value("FO"); + if (input == CountryCodeFJ) output = Json::Value("FJ"); + if (input == CountryCodeFI) output = Json::Value("FI"); + if (input == CountryCodeFR) output = Json::Value("FR"); + if (input == CountryCodeGF) output = Json::Value("GF"); + if (input == CountryCodePF) output = Json::Value("PF"); + if (input == CountryCodeTF) output = Json::Value("TF"); + if (input == CountryCodeGA) output = Json::Value("GA"); + if (input == CountryCodeGM) output = Json::Value("GM"); + if (input == CountryCodeGE) output = Json::Value("GE"); + if (input == CountryCodeDE) output = Json::Value("DE"); + if (input == CountryCodeGH) output = Json::Value("GH"); + if (input == CountryCodeGI) output = Json::Value("GI"); + if (input == CountryCodeGR) output = Json::Value("GR"); + if (input == CountryCodeGL) output = Json::Value("GL"); + if (input == CountryCodeGD) output = Json::Value("GD"); + if (input == CountryCodeGP) output = Json::Value("GP"); + if (input == CountryCodeGU) output = Json::Value("GU"); + if (input == CountryCodeGT) output = Json::Value("GT"); + if (input == CountryCodeGG) output = Json::Value("GG"); + if (input == CountryCodeGN) output = Json::Value("GN"); + if (input == CountryCodeGW) output = Json::Value("GW"); + if (input == CountryCodeGY) output = Json::Value("GY"); + if (input == CountryCodeHT) output = Json::Value("HT"); + if (input == CountryCodeHM) output = Json::Value("HM"); + if (input == CountryCodeVA) output = Json::Value("VA"); + if (input == CountryCodeHN) output = Json::Value("HN"); + if (input == CountryCodeHK) output = Json::Value("HK"); + if (input == CountryCodeHU) output = Json::Value("HU"); + if (input == CountryCodeIS) output = Json::Value("IS"); + if (input == CountryCodeIN) output = Json::Value("IN"); + if (input == CountryCodeID) output = Json::Value("ID"); + if (input == CountryCodeIR) output = Json::Value("IR"); + if (input == CountryCodeIQ) output = Json::Value("IQ"); + if (input == CountryCodeIE) output = Json::Value("IE"); + if (input == CountryCodeIM) output = Json::Value("IM"); + if (input == CountryCodeIL) output = Json::Value("IL"); + if (input == CountryCodeIT) output = Json::Value("IT"); + if (input == CountryCodeJM) output = Json::Value("JM"); + if (input == CountryCodeJP) output = Json::Value("JP"); + if (input == CountryCodeJE) output = Json::Value("JE"); + if (input == CountryCodeJO) output = Json::Value("JO"); + if (input == CountryCodeKZ) output = Json::Value("KZ"); + if (input == CountryCodeKE) output = Json::Value("KE"); + if (input == CountryCodeKI) output = Json::Value("KI"); + if (input == CountryCodeKP) output = Json::Value("KP"); + if (input == CountryCodeKR) output = Json::Value("KR"); + if (input == CountryCodeKW) output = Json::Value("KW"); + if (input == CountryCodeKG) output = Json::Value("KG"); + if (input == CountryCodeLA) output = Json::Value("LA"); + if (input == CountryCodeLV) output = Json::Value("LV"); + if (input == CountryCodeLB) output = Json::Value("LB"); + if (input == CountryCodeLS) output = Json::Value("LS"); + if (input == CountryCodeLR) output = Json::Value("LR"); + if (input == CountryCodeLY) output = Json::Value("LY"); + if (input == CountryCodeLI) output = Json::Value("LI"); + if (input == CountryCodeLT) output = Json::Value("LT"); + if (input == CountryCodeLU) output = Json::Value("LU"); + if (input == CountryCodeMO) output = Json::Value("MO"); + if (input == CountryCodeMK) output = Json::Value("MK"); + if (input == CountryCodeMG) output = Json::Value("MG"); + if (input == CountryCodeMW) output = Json::Value("MW"); + if (input == CountryCodeMY) output = Json::Value("MY"); + if (input == CountryCodeMV) output = Json::Value("MV"); + if (input == CountryCodeML) output = Json::Value("ML"); + if (input == CountryCodeMT) output = Json::Value("MT"); + if (input == CountryCodeMH) output = Json::Value("MH"); + if (input == CountryCodeMQ) output = Json::Value("MQ"); + if (input == CountryCodeMR) output = Json::Value("MR"); + if (input == CountryCodeMU) output = Json::Value("MU"); + if (input == CountryCodeYT) output = Json::Value("YT"); + if (input == CountryCodeMX) output = Json::Value("MX"); + if (input == CountryCodeFM) output = Json::Value("FM"); + if (input == CountryCodeMD) output = Json::Value("MD"); + if (input == CountryCodeMC) output = Json::Value("MC"); + if (input == CountryCodeMN) output = Json::Value("MN"); + if (input == CountryCodeME) output = Json::Value("ME"); + if (input == CountryCodeMS) output = Json::Value("MS"); + if (input == CountryCodeMA) output = Json::Value("MA"); + if (input == CountryCodeMZ) output = Json::Value("MZ"); + if (input == CountryCodeMM) output = Json::Value("MM"); + if (input == CountryCodeNA) output = Json::Value("NA"); + if (input == CountryCodeNR) output = Json::Value("NR"); + if (input == CountryCodeNP) output = Json::Value("NP"); + if (input == CountryCodeNL) output = Json::Value("NL"); + if (input == CountryCodeNC) output = Json::Value("NC"); + if (input == CountryCodeNZ) output = Json::Value("NZ"); + if (input == CountryCodeNI) output = Json::Value("NI"); + if (input == CountryCodeNE) output = Json::Value("NE"); + if (input == CountryCodeNG) output = Json::Value("NG"); + if (input == CountryCodeNU) output = Json::Value("NU"); + if (input == CountryCodeNF) output = Json::Value("NF"); + if (input == CountryCodeMP) output = Json::Value("MP"); + if (input == CountryCodeNO) output = Json::Value("NO"); + if (input == CountryCodeOM) output = Json::Value("OM"); + if (input == CountryCodePK) output = Json::Value("PK"); + if (input == CountryCodePW) output = Json::Value("PW"); + if (input == CountryCodePS) output = Json::Value("PS"); + if (input == CountryCodePA) output = Json::Value("PA"); + if (input == CountryCodePG) output = Json::Value("PG"); + if (input == CountryCodePY) output = Json::Value("PY"); + if (input == CountryCodePE) output = Json::Value("PE"); + if (input == CountryCodePH) output = Json::Value("PH"); + if (input == CountryCodePN) output = Json::Value("PN"); + if (input == CountryCodePL) output = Json::Value("PL"); + if (input == CountryCodePT) output = Json::Value("PT"); + if (input == CountryCodePR) output = Json::Value("PR"); + if (input == CountryCodeQA) output = Json::Value("QA"); + if (input == CountryCodeRE) output = Json::Value("RE"); + if (input == CountryCodeRO) output = Json::Value("RO"); + if (input == CountryCodeRU) output = Json::Value("RU"); + if (input == CountryCodeRW) output = Json::Value("RW"); + if (input == CountryCodeBL) output = Json::Value("BL"); + if (input == CountryCodeSH) output = Json::Value("SH"); + if (input == CountryCodeKN) output = Json::Value("KN"); + if (input == CountryCodeLC) output = Json::Value("LC"); + if (input == CountryCodeMF) output = Json::Value("MF"); + if (input == CountryCodePM) output = Json::Value("PM"); + if (input == CountryCodeVC) output = Json::Value("VC"); + if (input == CountryCodeWS) output = Json::Value("WS"); + if (input == CountryCodeSM) output = Json::Value("SM"); + if (input == CountryCodeST) output = Json::Value("ST"); + if (input == CountryCodeSA) output = Json::Value("SA"); + if (input == CountryCodeSN) output = Json::Value("SN"); + if (input == CountryCodeRS) output = Json::Value("RS"); + if (input == CountryCodeSC) output = Json::Value("SC"); + if (input == CountryCodeSL) output = Json::Value("SL"); + if (input == CountryCodeSG) output = Json::Value("SG"); + if (input == CountryCodeSX) output = Json::Value("SX"); + if (input == CountryCodeSK) output = Json::Value("SK"); + if (input == CountryCodeSI) output = Json::Value("SI"); + if (input == CountryCodeSB) output = Json::Value("SB"); + if (input == CountryCodeSO) output = Json::Value("SO"); + if (input == CountryCodeZA) output = Json::Value("ZA"); + if (input == CountryCodeGS) output = Json::Value("GS"); + if (input == CountryCodeSS) output = Json::Value("SS"); + if (input == CountryCodeES) output = Json::Value("ES"); + if (input == CountryCodeLK) output = Json::Value("LK"); + if (input == CountryCodeSD) output = Json::Value("SD"); + if (input == CountryCodeSR) output = Json::Value("SR"); + if (input == CountryCodeSJ) output = Json::Value("SJ"); + if (input == CountryCodeSZ) output = Json::Value("SZ"); + if (input == CountryCodeSE) output = Json::Value("SE"); + if (input == CountryCodeCH) output = Json::Value("CH"); + if (input == CountryCodeSY) output = Json::Value("SY"); + if (input == CountryCodeTW) output = Json::Value("TW"); + if (input == CountryCodeTJ) output = Json::Value("TJ"); + if (input == CountryCodeTZ) output = Json::Value("TZ"); + if (input == CountryCodeTH) output = Json::Value("TH"); + if (input == CountryCodeTL) output = Json::Value("TL"); + if (input == CountryCodeTG) output = Json::Value("TG"); + if (input == CountryCodeTK) output = Json::Value("TK"); + if (input == CountryCodeTO) output = Json::Value("TO"); + if (input == CountryCodeTT) output = Json::Value("TT"); + if (input == CountryCodeTN) output = Json::Value("TN"); + if (input == CountryCodeTR) output = Json::Value("TR"); + if (input == CountryCodeTM) output = Json::Value("TM"); + if (input == CountryCodeTC) output = Json::Value("TC"); + if (input == CountryCodeTV) output = Json::Value("TV"); + if (input == CountryCodeUG) output = Json::Value("UG"); + if (input == CountryCodeUA) output = Json::Value("UA"); + if (input == CountryCodeAE) output = Json::Value("AE"); + if (input == CountryCodeGB) output = Json::Value("GB"); + if (input == CountryCodeUS) output = Json::Value("US"); + if (input == CountryCodeUM) output = Json::Value("UM"); + if (input == CountryCodeUY) output = Json::Value("UY"); + if (input == CountryCodeUZ) output = Json::Value("UZ"); + if (input == CountryCodeVU) output = Json::Value("VU"); + if (input == CountryCodeVE) output = Json::Value("VE"); + if (input == CountryCodeVN) output = Json::Value("VN"); + if (input == CountryCodeVG) output = Json::Value("VG"); + if (input == CountryCodeVI) output = Json::Value("VI"); + if (input == CountryCodeWF) output = Json::Value("WF"); + if (input == CountryCodeEH) output = Json::Value("EH"); + if (input == CountryCodeYE) output = Json::Value("YE"); + if (input == CountryCodeZM) output = Json::Value("ZM"); + if (input == CountryCodeZW) output = Json::Value("ZW"); + } + inline void FromJsonEnum(const Json::Value& input, CountryCode& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "AF") output = CountryCodeAF; + if (inputStr == "AX") output = CountryCodeAX; + if (inputStr == "AL") output = CountryCodeAL; + if (inputStr == "DZ") output = CountryCodeDZ; + if (inputStr == "AS") output = CountryCodeAS; + if (inputStr == "AD") output = CountryCodeAD; + if (inputStr == "AO") output = CountryCodeAO; + if (inputStr == "AI") output = CountryCodeAI; + if (inputStr == "AQ") output = CountryCodeAQ; + if (inputStr == "AG") output = CountryCodeAG; + if (inputStr == "AR") output = CountryCodeAR; + if (inputStr == "AM") output = CountryCodeAM; + if (inputStr == "AW") output = CountryCodeAW; + if (inputStr == "AU") output = CountryCodeAU; + if (inputStr == "AT") output = CountryCodeAT; + if (inputStr == "AZ") output = CountryCodeAZ; + if (inputStr == "BS") output = CountryCodeBS; + if (inputStr == "BH") output = CountryCodeBH; + if (inputStr == "BD") output = CountryCodeBD; + if (inputStr == "BB") output = CountryCodeBB; + if (inputStr == "BY") output = CountryCodeBY; + if (inputStr == "BE") output = CountryCodeBE; + if (inputStr == "BZ") output = CountryCodeBZ; + if (inputStr == "BJ") output = CountryCodeBJ; + if (inputStr == "BM") output = CountryCodeBM; + if (inputStr == "BT") output = CountryCodeBT; + if (inputStr == "BO") output = CountryCodeBO; + if (inputStr == "BQ") output = CountryCodeBQ; + if (inputStr == "BA") output = CountryCodeBA; + if (inputStr == "BW") output = CountryCodeBW; + if (inputStr == "BV") output = CountryCodeBV; + if (inputStr == "BR") output = CountryCodeBR; + if (inputStr == "IO") output = CountryCodeIO; + if (inputStr == "BN") output = CountryCodeBN; + if (inputStr == "BG") output = CountryCodeBG; + if (inputStr == "BF") output = CountryCodeBF; + if (inputStr == "BI") output = CountryCodeBI; + if (inputStr == "KH") output = CountryCodeKH; + if (inputStr == "CM") output = CountryCodeCM; + if (inputStr == "CA") output = CountryCodeCA; + if (inputStr == "CV") output = CountryCodeCV; + if (inputStr == "KY") output = CountryCodeKY; + if (inputStr == "CF") output = CountryCodeCF; + if (inputStr == "TD") output = CountryCodeTD; + if (inputStr == "CL") output = CountryCodeCL; + if (inputStr == "CN") output = CountryCodeCN; + if (inputStr == "CX") output = CountryCodeCX; + if (inputStr == "CC") output = CountryCodeCC; + if (inputStr == "CO") output = CountryCodeCO; + if (inputStr == "KM") output = CountryCodeKM; + if (inputStr == "CG") output = CountryCodeCG; + if (inputStr == "CD") output = CountryCodeCD; + if (inputStr == "CK") output = CountryCodeCK; + if (inputStr == "CR") output = CountryCodeCR; + if (inputStr == "CI") output = CountryCodeCI; + if (inputStr == "HR") output = CountryCodeHR; + if (inputStr == "CU") output = CountryCodeCU; + if (inputStr == "CW") output = CountryCodeCW; + if (inputStr == "CY") output = CountryCodeCY; + if (inputStr == "CZ") output = CountryCodeCZ; + if (inputStr == "DK") output = CountryCodeDK; + if (inputStr == "DJ") output = CountryCodeDJ; + if (inputStr == "DM") output = CountryCodeDM; + if (inputStr == "DO") output = CountryCodeDO; + if (inputStr == "EC") output = CountryCodeEC; + if (inputStr == "EG") output = CountryCodeEG; + if (inputStr == "SV") output = CountryCodeSV; + if (inputStr == "GQ") output = CountryCodeGQ; + if (inputStr == "ER") output = CountryCodeER; + if (inputStr == "EE") output = CountryCodeEE; + if (inputStr == "ET") output = CountryCodeET; + if (inputStr == "FK") output = CountryCodeFK; + if (inputStr == "FO") output = CountryCodeFO; + if (inputStr == "FJ") output = CountryCodeFJ; + if (inputStr == "FI") output = CountryCodeFI; + if (inputStr == "FR") output = CountryCodeFR; + if (inputStr == "GF") output = CountryCodeGF; + if (inputStr == "PF") output = CountryCodePF; + if (inputStr == "TF") output = CountryCodeTF; + if (inputStr == "GA") output = CountryCodeGA; + if (inputStr == "GM") output = CountryCodeGM; + if (inputStr == "GE") output = CountryCodeGE; + if (inputStr == "DE") output = CountryCodeDE; + if (inputStr == "GH") output = CountryCodeGH; + if (inputStr == "GI") output = CountryCodeGI; + if (inputStr == "GR") output = CountryCodeGR; + if (inputStr == "GL") output = CountryCodeGL; + if (inputStr == "GD") output = CountryCodeGD; + if (inputStr == "GP") output = CountryCodeGP; + if (inputStr == "GU") output = CountryCodeGU; + if (inputStr == "GT") output = CountryCodeGT; + if (inputStr == "GG") output = CountryCodeGG; + if (inputStr == "GN") output = CountryCodeGN; + if (inputStr == "GW") output = CountryCodeGW; + if (inputStr == "GY") output = CountryCodeGY; + if (inputStr == "HT") output = CountryCodeHT; + if (inputStr == "HM") output = CountryCodeHM; + if (inputStr == "VA") output = CountryCodeVA; + if (inputStr == "HN") output = CountryCodeHN; + if (inputStr == "HK") output = CountryCodeHK; + if (inputStr == "HU") output = CountryCodeHU; + if (inputStr == "IS") output = CountryCodeIS; + if (inputStr == "IN") output = CountryCodeIN; + if (inputStr == "ID") output = CountryCodeID; + if (inputStr == "IR") output = CountryCodeIR; + if (inputStr == "IQ") output = CountryCodeIQ; + if (inputStr == "IE") output = CountryCodeIE; + if (inputStr == "IM") output = CountryCodeIM; + if (inputStr == "IL") output = CountryCodeIL; + if (inputStr == "IT") output = CountryCodeIT; + if (inputStr == "JM") output = CountryCodeJM; + if (inputStr == "JP") output = CountryCodeJP; + if (inputStr == "JE") output = CountryCodeJE; + if (inputStr == "JO") output = CountryCodeJO; + if (inputStr == "KZ") output = CountryCodeKZ; + if (inputStr == "KE") output = CountryCodeKE; + if (inputStr == "KI") output = CountryCodeKI; + if (inputStr == "KP") output = CountryCodeKP; + if (inputStr == "KR") output = CountryCodeKR; + if (inputStr == "KW") output = CountryCodeKW; + if (inputStr == "KG") output = CountryCodeKG; + if (inputStr == "LA") output = CountryCodeLA; + if (inputStr == "LV") output = CountryCodeLV; + if (inputStr == "LB") output = CountryCodeLB; + if (inputStr == "LS") output = CountryCodeLS; + if (inputStr == "LR") output = CountryCodeLR; + if (inputStr == "LY") output = CountryCodeLY; + if (inputStr == "LI") output = CountryCodeLI; + if (inputStr == "LT") output = CountryCodeLT; + if (inputStr == "LU") output = CountryCodeLU; + if (inputStr == "MO") output = CountryCodeMO; + if (inputStr == "MK") output = CountryCodeMK; + if (inputStr == "MG") output = CountryCodeMG; + if (inputStr == "MW") output = CountryCodeMW; + if (inputStr == "MY") output = CountryCodeMY; + if (inputStr == "MV") output = CountryCodeMV; + if (inputStr == "ML") output = CountryCodeML; + if (inputStr == "MT") output = CountryCodeMT; + if (inputStr == "MH") output = CountryCodeMH; + if (inputStr == "MQ") output = CountryCodeMQ; + if (inputStr == "MR") output = CountryCodeMR; + if (inputStr == "MU") output = CountryCodeMU; + if (inputStr == "YT") output = CountryCodeYT; + if (inputStr == "MX") output = CountryCodeMX; + if (inputStr == "FM") output = CountryCodeFM; + if (inputStr == "MD") output = CountryCodeMD; + if (inputStr == "MC") output = CountryCodeMC; + if (inputStr == "MN") output = CountryCodeMN; + if (inputStr == "ME") output = CountryCodeME; + if (inputStr == "MS") output = CountryCodeMS; + if (inputStr == "MA") output = CountryCodeMA; + if (inputStr == "MZ") output = CountryCodeMZ; + if (inputStr == "MM") output = CountryCodeMM; + if (inputStr == "NA") output = CountryCodeNA; + if (inputStr == "NR") output = CountryCodeNR; + if (inputStr == "NP") output = CountryCodeNP; + if (inputStr == "NL") output = CountryCodeNL; + if (inputStr == "NC") output = CountryCodeNC; + if (inputStr == "NZ") output = CountryCodeNZ; + if (inputStr == "NI") output = CountryCodeNI; + if (inputStr == "NE") output = CountryCodeNE; + if (inputStr == "NG") output = CountryCodeNG; + if (inputStr == "NU") output = CountryCodeNU; + if (inputStr == "NF") output = CountryCodeNF; + if (inputStr == "MP") output = CountryCodeMP; + if (inputStr == "NO") output = CountryCodeNO; + if (inputStr == "OM") output = CountryCodeOM; + if (inputStr == "PK") output = CountryCodePK; + if (inputStr == "PW") output = CountryCodePW; + if (inputStr == "PS") output = CountryCodePS; + if (inputStr == "PA") output = CountryCodePA; + if (inputStr == "PG") output = CountryCodePG; + if (inputStr == "PY") output = CountryCodePY; + if (inputStr == "PE") output = CountryCodePE; + if (inputStr == "PH") output = CountryCodePH; + if (inputStr == "PN") output = CountryCodePN; + if (inputStr == "PL") output = CountryCodePL; + if (inputStr == "PT") output = CountryCodePT; + if (inputStr == "PR") output = CountryCodePR; + if (inputStr == "QA") output = CountryCodeQA; + if (inputStr == "RE") output = CountryCodeRE; + if (inputStr == "RO") output = CountryCodeRO; + if (inputStr == "RU") output = CountryCodeRU; + if (inputStr == "RW") output = CountryCodeRW; + if (inputStr == "BL") output = CountryCodeBL; + if (inputStr == "SH") output = CountryCodeSH; + if (inputStr == "KN") output = CountryCodeKN; + if (inputStr == "LC") output = CountryCodeLC; + if (inputStr == "MF") output = CountryCodeMF; + if (inputStr == "PM") output = CountryCodePM; + if (inputStr == "VC") output = CountryCodeVC; + if (inputStr == "WS") output = CountryCodeWS; + if (inputStr == "SM") output = CountryCodeSM; + if (inputStr == "ST") output = CountryCodeST; + if (inputStr == "SA") output = CountryCodeSA; + if (inputStr == "SN") output = CountryCodeSN; + if (inputStr == "RS") output = CountryCodeRS; + if (inputStr == "SC") output = CountryCodeSC; + if (inputStr == "SL") output = CountryCodeSL; + if (inputStr == "SG") output = CountryCodeSG; + if (inputStr == "SX") output = CountryCodeSX; + if (inputStr == "SK") output = CountryCodeSK; + if (inputStr == "SI") output = CountryCodeSI; + if (inputStr == "SB") output = CountryCodeSB; + if (inputStr == "SO") output = CountryCodeSO; + if (inputStr == "ZA") output = CountryCodeZA; + if (inputStr == "GS") output = CountryCodeGS; + if (inputStr == "SS") output = CountryCodeSS; + if (inputStr == "ES") output = CountryCodeES; + if (inputStr == "LK") output = CountryCodeLK; + if (inputStr == "SD") output = CountryCodeSD; + if (inputStr == "SR") output = CountryCodeSR; + if (inputStr == "SJ") output = CountryCodeSJ; + if (inputStr == "SZ") output = CountryCodeSZ; + if (inputStr == "SE") output = CountryCodeSE; + if (inputStr == "CH") output = CountryCodeCH; + if (inputStr == "SY") output = CountryCodeSY; + if (inputStr == "TW") output = CountryCodeTW; + if (inputStr == "TJ") output = CountryCodeTJ; + if (inputStr == "TZ") output = CountryCodeTZ; + if (inputStr == "TH") output = CountryCodeTH; + if (inputStr == "TL") output = CountryCodeTL; + if (inputStr == "TG") output = CountryCodeTG; + if (inputStr == "TK") output = CountryCodeTK; + if (inputStr == "TO") output = CountryCodeTO; + if (inputStr == "TT") output = CountryCodeTT; + if (inputStr == "TN") output = CountryCodeTN; + if (inputStr == "TR") output = CountryCodeTR; + if (inputStr == "TM") output = CountryCodeTM; + if (inputStr == "TC") output = CountryCodeTC; + if (inputStr == "TV") output = CountryCodeTV; + if (inputStr == "UG") output = CountryCodeUG; + if (inputStr == "UA") output = CountryCodeUA; + if (inputStr == "AE") output = CountryCodeAE; + if (inputStr == "GB") output = CountryCodeGB; + if (inputStr == "US") output = CountryCodeUS; + if (inputStr == "UM") output = CountryCodeUM; + if (inputStr == "UY") output = CountryCodeUY; + if (inputStr == "UZ") output = CountryCodeUZ; + if (inputStr == "VU") output = CountryCodeVU; + if (inputStr == "VE") output = CountryCodeVE; + if (inputStr == "VN") output = CountryCodeVN; + if (inputStr == "VG") output = CountryCodeVG; + if (inputStr == "VI") output = CountryCodeVI; + if (inputStr == "WF") output = CountryCodeWF; + if (inputStr == "EH") output = CountryCodeEH; + if (inputStr == "YE") output = CountryCodeYE; + if (inputStr == "ZM") output = CountryCodeZM; + if (inputStr == "ZW") output = CountryCodeZW; + } + + enum Currency + { + CurrencyAED, + CurrencyAFN, + CurrencyALL, + CurrencyAMD, + CurrencyANG, + CurrencyAOA, + CurrencyARS, + CurrencyAUD, + CurrencyAWG, + CurrencyAZN, + CurrencyBAM, + CurrencyBBD, + CurrencyBDT, + CurrencyBGN, + CurrencyBHD, + CurrencyBIF, + CurrencyBMD, + CurrencyBND, + CurrencyBOB, + CurrencyBRL, + CurrencyBSD, + CurrencyBTN, + CurrencyBWP, + CurrencyBYR, + CurrencyBZD, + CurrencyCAD, + CurrencyCDF, + CurrencyCHF, + CurrencyCLP, + CurrencyCNY, + CurrencyCOP, + CurrencyCRC, + CurrencyCUC, + CurrencyCUP, + CurrencyCVE, + CurrencyCZK, + CurrencyDJF, + CurrencyDKK, + CurrencyDOP, + CurrencyDZD, + CurrencyEGP, + CurrencyERN, + CurrencyETB, + CurrencyEUR, + CurrencyFJD, + CurrencyFKP, + CurrencyGBP, + CurrencyGEL, + CurrencyGGP, + CurrencyGHS, + CurrencyGIP, + CurrencyGMD, + CurrencyGNF, + CurrencyGTQ, + CurrencyGYD, + CurrencyHKD, + CurrencyHNL, + CurrencyHRK, + CurrencyHTG, + CurrencyHUF, + CurrencyIDR, + CurrencyILS, + CurrencyIMP, + CurrencyINR, + CurrencyIQD, + CurrencyIRR, + CurrencyISK, + CurrencyJEP, + CurrencyJMD, + CurrencyJOD, + CurrencyJPY, + CurrencyKES, + CurrencyKGS, + CurrencyKHR, + CurrencyKMF, + CurrencyKPW, + CurrencyKRW, + CurrencyKWD, + CurrencyKYD, + CurrencyKZT, + CurrencyLAK, + CurrencyLBP, + CurrencyLKR, + CurrencyLRD, + CurrencyLSL, + CurrencyLYD, + CurrencyMAD, + CurrencyMDL, + CurrencyMGA, + CurrencyMKD, + CurrencyMMK, + CurrencyMNT, + CurrencyMOP, + CurrencyMRO, + CurrencyMUR, + CurrencyMVR, + CurrencyMWK, + CurrencyMXN, + CurrencyMYR, + CurrencyMZN, + CurrencyNAD, + CurrencyNGN, + CurrencyNIO, + CurrencyNOK, + CurrencyNPR, + CurrencyNZD, + CurrencyOMR, + CurrencyPAB, + CurrencyPEN, + CurrencyPGK, + CurrencyPHP, + CurrencyPKR, + CurrencyPLN, + CurrencyPYG, + CurrencyQAR, + CurrencyRON, + CurrencyRSD, + CurrencyRUB, + CurrencyRWF, + CurrencySAR, + CurrencySBD, + CurrencySCR, + CurrencySDG, + CurrencySEK, + CurrencySGD, + CurrencySHP, + CurrencySLL, + CurrencySOS, + CurrencySPL, + CurrencySRD, + CurrencySTD, + CurrencySVC, + CurrencySYP, + CurrencySZL, + CurrencyTHB, + CurrencyTJS, + CurrencyTMT, + CurrencyTND, + CurrencyTOP, + CurrencyTRY, + CurrencyTTD, + CurrencyTVD, + CurrencyTWD, + CurrencyTZS, + CurrencyUAH, + CurrencyUGX, + CurrencyUSD, + CurrencyUYU, + CurrencyUZS, + CurrencyVEF, + CurrencyVND, + CurrencyVUV, + CurrencyWST, + CurrencyXAF, + CurrencyXCD, + CurrencyXDR, + CurrencyXOF, + CurrencyXPF, + CurrencyYER, + CurrencyZAR, + CurrencyZMW, + CurrencyZWD + }; + + inline void ToJsonEnum(const Currency input, Json::Value& output) + { + if (input == CurrencyAED) output = Json::Value("AED"); + if (input == CurrencyAFN) output = Json::Value("AFN"); + if (input == CurrencyALL) output = Json::Value("ALL"); + if (input == CurrencyAMD) output = Json::Value("AMD"); + if (input == CurrencyANG) output = Json::Value("ANG"); + if (input == CurrencyAOA) output = Json::Value("AOA"); + if (input == CurrencyARS) output = Json::Value("ARS"); + if (input == CurrencyAUD) output = Json::Value("AUD"); + if (input == CurrencyAWG) output = Json::Value("AWG"); + if (input == CurrencyAZN) output = Json::Value("AZN"); + if (input == CurrencyBAM) output = Json::Value("BAM"); + if (input == CurrencyBBD) output = Json::Value("BBD"); + if (input == CurrencyBDT) output = Json::Value("BDT"); + if (input == CurrencyBGN) output = Json::Value("BGN"); + if (input == CurrencyBHD) output = Json::Value("BHD"); + if (input == CurrencyBIF) output = Json::Value("BIF"); + if (input == CurrencyBMD) output = Json::Value("BMD"); + if (input == CurrencyBND) output = Json::Value("BND"); + if (input == CurrencyBOB) output = Json::Value("BOB"); + if (input == CurrencyBRL) output = Json::Value("BRL"); + if (input == CurrencyBSD) output = Json::Value("BSD"); + if (input == CurrencyBTN) output = Json::Value("BTN"); + if (input == CurrencyBWP) output = Json::Value("BWP"); + if (input == CurrencyBYR) output = Json::Value("BYR"); + if (input == CurrencyBZD) output = Json::Value("BZD"); + if (input == CurrencyCAD) output = Json::Value("CAD"); + if (input == CurrencyCDF) output = Json::Value("CDF"); + if (input == CurrencyCHF) output = Json::Value("CHF"); + if (input == CurrencyCLP) output = Json::Value("CLP"); + if (input == CurrencyCNY) output = Json::Value("CNY"); + if (input == CurrencyCOP) output = Json::Value("COP"); + if (input == CurrencyCRC) output = Json::Value("CRC"); + if (input == CurrencyCUC) output = Json::Value("CUC"); + if (input == CurrencyCUP) output = Json::Value("CUP"); + if (input == CurrencyCVE) output = Json::Value("CVE"); + if (input == CurrencyCZK) output = Json::Value("CZK"); + if (input == CurrencyDJF) output = Json::Value("DJF"); + if (input == CurrencyDKK) output = Json::Value("DKK"); + if (input == CurrencyDOP) output = Json::Value("DOP"); + if (input == CurrencyDZD) output = Json::Value("DZD"); + if (input == CurrencyEGP) output = Json::Value("EGP"); + if (input == CurrencyERN) output = Json::Value("ERN"); + if (input == CurrencyETB) output = Json::Value("ETB"); + if (input == CurrencyEUR) output = Json::Value("EUR"); + if (input == CurrencyFJD) output = Json::Value("FJD"); + if (input == CurrencyFKP) output = Json::Value("FKP"); + if (input == CurrencyGBP) output = Json::Value("GBP"); + if (input == CurrencyGEL) output = Json::Value("GEL"); + if (input == CurrencyGGP) output = Json::Value("GGP"); + if (input == CurrencyGHS) output = Json::Value("GHS"); + if (input == CurrencyGIP) output = Json::Value("GIP"); + if (input == CurrencyGMD) output = Json::Value("GMD"); + if (input == CurrencyGNF) output = Json::Value("GNF"); + if (input == CurrencyGTQ) output = Json::Value("GTQ"); + if (input == CurrencyGYD) output = Json::Value("GYD"); + if (input == CurrencyHKD) output = Json::Value("HKD"); + if (input == CurrencyHNL) output = Json::Value("HNL"); + if (input == CurrencyHRK) output = Json::Value("HRK"); + if (input == CurrencyHTG) output = Json::Value("HTG"); + if (input == CurrencyHUF) output = Json::Value("HUF"); + if (input == CurrencyIDR) output = Json::Value("IDR"); + if (input == CurrencyILS) output = Json::Value("ILS"); + if (input == CurrencyIMP) output = Json::Value("IMP"); + if (input == CurrencyINR) output = Json::Value("INR"); + if (input == CurrencyIQD) output = Json::Value("IQD"); + if (input == CurrencyIRR) output = Json::Value("IRR"); + if (input == CurrencyISK) output = Json::Value("ISK"); + if (input == CurrencyJEP) output = Json::Value("JEP"); + if (input == CurrencyJMD) output = Json::Value("JMD"); + if (input == CurrencyJOD) output = Json::Value("JOD"); + if (input == CurrencyJPY) output = Json::Value("JPY"); + if (input == CurrencyKES) output = Json::Value("KES"); + if (input == CurrencyKGS) output = Json::Value("KGS"); + if (input == CurrencyKHR) output = Json::Value("KHR"); + if (input == CurrencyKMF) output = Json::Value("KMF"); + if (input == CurrencyKPW) output = Json::Value("KPW"); + if (input == CurrencyKRW) output = Json::Value("KRW"); + if (input == CurrencyKWD) output = Json::Value("KWD"); + if (input == CurrencyKYD) output = Json::Value("KYD"); + if (input == CurrencyKZT) output = Json::Value("KZT"); + if (input == CurrencyLAK) output = Json::Value("LAK"); + if (input == CurrencyLBP) output = Json::Value("LBP"); + if (input == CurrencyLKR) output = Json::Value("LKR"); + if (input == CurrencyLRD) output = Json::Value("LRD"); + if (input == CurrencyLSL) output = Json::Value("LSL"); + if (input == CurrencyLYD) output = Json::Value("LYD"); + if (input == CurrencyMAD) output = Json::Value("MAD"); + if (input == CurrencyMDL) output = Json::Value("MDL"); + if (input == CurrencyMGA) output = Json::Value("MGA"); + if (input == CurrencyMKD) output = Json::Value("MKD"); + if (input == CurrencyMMK) output = Json::Value("MMK"); + if (input == CurrencyMNT) output = Json::Value("MNT"); + if (input == CurrencyMOP) output = Json::Value("MOP"); + if (input == CurrencyMRO) output = Json::Value("MRO"); + if (input == CurrencyMUR) output = Json::Value("MUR"); + if (input == CurrencyMVR) output = Json::Value("MVR"); + if (input == CurrencyMWK) output = Json::Value("MWK"); + if (input == CurrencyMXN) output = Json::Value("MXN"); + if (input == CurrencyMYR) output = Json::Value("MYR"); + if (input == CurrencyMZN) output = Json::Value("MZN"); + if (input == CurrencyNAD) output = Json::Value("NAD"); + if (input == CurrencyNGN) output = Json::Value("NGN"); + if (input == CurrencyNIO) output = Json::Value("NIO"); + if (input == CurrencyNOK) output = Json::Value("NOK"); + if (input == CurrencyNPR) output = Json::Value("NPR"); + if (input == CurrencyNZD) output = Json::Value("NZD"); + if (input == CurrencyOMR) output = Json::Value("OMR"); + if (input == CurrencyPAB) output = Json::Value("PAB"); + if (input == CurrencyPEN) output = Json::Value("PEN"); + if (input == CurrencyPGK) output = Json::Value("PGK"); + if (input == CurrencyPHP) output = Json::Value("PHP"); + if (input == CurrencyPKR) output = Json::Value("PKR"); + if (input == CurrencyPLN) output = Json::Value("PLN"); + if (input == CurrencyPYG) output = Json::Value("PYG"); + if (input == CurrencyQAR) output = Json::Value("QAR"); + if (input == CurrencyRON) output = Json::Value("RON"); + if (input == CurrencyRSD) output = Json::Value("RSD"); + if (input == CurrencyRUB) output = Json::Value("RUB"); + if (input == CurrencyRWF) output = Json::Value("RWF"); + if (input == CurrencySAR) output = Json::Value("SAR"); + if (input == CurrencySBD) output = Json::Value("SBD"); + if (input == CurrencySCR) output = Json::Value("SCR"); + if (input == CurrencySDG) output = Json::Value("SDG"); + if (input == CurrencySEK) output = Json::Value("SEK"); + if (input == CurrencySGD) output = Json::Value("SGD"); + if (input == CurrencySHP) output = Json::Value("SHP"); + if (input == CurrencySLL) output = Json::Value("SLL"); + if (input == CurrencySOS) output = Json::Value("SOS"); + if (input == CurrencySPL) output = Json::Value("SPL"); + if (input == CurrencySRD) output = Json::Value("SRD"); + if (input == CurrencySTD) output = Json::Value("STD"); + if (input == CurrencySVC) output = Json::Value("SVC"); + if (input == CurrencySYP) output = Json::Value("SYP"); + if (input == CurrencySZL) output = Json::Value("SZL"); + if (input == CurrencyTHB) output = Json::Value("THB"); + if (input == CurrencyTJS) output = Json::Value("TJS"); + if (input == CurrencyTMT) output = Json::Value("TMT"); + if (input == CurrencyTND) output = Json::Value("TND"); + if (input == CurrencyTOP) output = Json::Value("TOP"); + if (input == CurrencyTRY) output = Json::Value("TRY"); + if (input == CurrencyTTD) output = Json::Value("TTD"); + if (input == CurrencyTVD) output = Json::Value("TVD"); + if (input == CurrencyTWD) output = Json::Value("TWD"); + if (input == CurrencyTZS) output = Json::Value("TZS"); + if (input == CurrencyUAH) output = Json::Value("UAH"); + if (input == CurrencyUGX) output = Json::Value("UGX"); + if (input == CurrencyUSD) output = Json::Value("USD"); + if (input == CurrencyUYU) output = Json::Value("UYU"); + if (input == CurrencyUZS) output = Json::Value("UZS"); + if (input == CurrencyVEF) output = Json::Value("VEF"); + if (input == CurrencyVND) output = Json::Value("VND"); + if (input == CurrencyVUV) output = Json::Value("VUV"); + if (input == CurrencyWST) output = Json::Value("WST"); + if (input == CurrencyXAF) output = Json::Value("XAF"); + if (input == CurrencyXCD) output = Json::Value("XCD"); + if (input == CurrencyXDR) output = Json::Value("XDR"); + if (input == CurrencyXOF) output = Json::Value("XOF"); + if (input == CurrencyXPF) output = Json::Value("XPF"); + if (input == CurrencyYER) output = Json::Value("YER"); + if (input == CurrencyZAR) output = Json::Value("ZAR"); + if (input == CurrencyZMW) output = Json::Value("ZMW"); + if (input == CurrencyZWD) output = Json::Value("ZWD"); + } + inline void FromJsonEnum(const Json::Value& input, Currency& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "AED") output = CurrencyAED; + if (inputStr == "AFN") output = CurrencyAFN; + if (inputStr == "ALL") output = CurrencyALL; + if (inputStr == "AMD") output = CurrencyAMD; + if (inputStr == "ANG") output = CurrencyANG; + if (inputStr == "AOA") output = CurrencyAOA; + if (inputStr == "ARS") output = CurrencyARS; + if (inputStr == "AUD") output = CurrencyAUD; + if (inputStr == "AWG") output = CurrencyAWG; + if (inputStr == "AZN") output = CurrencyAZN; + if (inputStr == "BAM") output = CurrencyBAM; + if (inputStr == "BBD") output = CurrencyBBD; + if (inputStr == "BDT") output = CurrencyBDT; + if (inputStr == "BGN") output = CurrencyBGN; + if (inputStr == "BHD") output = CurrencyBHD; + if (inputStr == "BIF") output = CurrencyBIF; + if (inputStr == "BMD") output = CurrencyBMD; + if (inputStr == "BND") output = CurrencyBND; + if (inputStr == "BOB") output = CurrencyBOB; + if (inputStr == "BRL") output = CurrencyBRL; + if (inputStr == "BSD") output = CurrencyBSD; + if (inputStr == "BTN") output = CurrencyBTN; + if (inputStr == "BWP") output = CurrencyBWP; + if (inputStr == "BYR") output = CurrencyBYR; + if (inputStr == "BZD") output = CurrencyBZD; + if (inputStr == "CAD") output = CurrencyCAD; + if (inputStr == "CDF") output = CurrencyCDF; + if (inputStr == "CHF") output = CurrencyCHF; + if (inputStr == "CLP") output = CurrencyCLP; + if (inputStr == "CNY") output = CurrencyCNY; + if (inputStr == "COP") output = CurrencyCOP; + if (inputStr == "CRC") output = CurrencyCRC; + if (inputStr == "CUC") output = CurrencyCUC; + if (inputStr == "CUP") output = CurrencyCUP; + if (inputStr == "CVE") output = CurrencyCVE; + if (inputStr == "CZK") output = CurrencyCZK; + if (inputStr == "DJF") output = CurrencyDJF; + if (inputStr == "DKK") output = CurrencyDKK; + if (inputStr == "DOP") output = CurrencyDOP; + if (inputStr == "DZD") output = CurrencyDZD; + if (inputStr == "EGP") output = CurrencyEGP; + if (inputStr == "ERN") output = CurrencyERN; + if (inputStr == "ETB") output = CurrencyETB; + if (inputStr == "EUR") output = CurrencyEUR; + if (inputStr == "FJD") output = CurrencyFJD; + if (inputStr == "FKP") output = CurrencyFKP; + if (inputStr == "GBP") output = CurrencyGBP; + if (inputStr == "GEL") output = CurrencyGEL; + if (inputStr == "GGP") output = CurrencyGGP; + if (inputStr == "GHS") output = CurrencyGHS; + if (inputStr == "GIP") output = CurrencyGIP; + if (inputStr == "GMD") output = CurrencyGMD; + if (inputStr == "GNF") output = CurrencyGNF; + if (inputStr == "GTQ") output = CurrencyGTQ; + if (inputStr == "GYD") output = CurrencyGYD; + if (inputStr == "HKD") output = CurrencyHKD; + if (inputStr == "HNL") output = CurrencyHNL; + if (inputStr == "HRK") output = CurrencyHRK; + if (inputStr == "HTG") output = CurrencyHTG; + if (inputStr == "HUF") output = CurrencyHUF; + if (inputStr == "IDR") output = CurrencyIDR; + if (inputStr == "ILS") output = CurrencyILS; + if (inputStr == "IMP") output = CurrencyIMP; + if (inputStr == "INR") output = CurrencyINR; + if (inputStr == "IQD") output = CurrencyIQD; + if (inputStr == "IRR") output = CurrencyIRR; + if (inputStr == "ISK") output = CurrencyISK; + if (inputStr == "JEP") output = CurrencyJEP; + if (inputStr == "JMD") output = CurrencyJMD; + if (inputStr == "JOD") output = CurrencyJOD; + if (inputStr == "JPY") output = CurrencyJPY; + if (inputStr == "KES") output = CurrencyKES; + if (inputStr == "KGS") output = CurrencyKGS; + if (inputStr == "KHR") output = CurrencyKHR; + if (inputStr == "KMF") output = CurrencyKMF; + if (inputStr == "KPW") output = CurrencyKPW; + if (inputStr == "KRW") output = CurrencyKRW; + if (inputStr == "KWD") output = CurrencyKWD; + if (inputStr == "KYD") output = CurrencyKYD; + if (inputStr == "KZT") output = CurrencyKZT; + if (inputStr == "LAK") output = CurrencyLAK; + if (inputStr == "LBP") output = CurrencyLBP; + if (inputStr == "LKR") output = CurrencyLKR; + if (inputStr == "LRD") output = CurrencyLRD; + if (inputStr == "LSL") output = CurrencyLSL; + if (inputStr == "LYD") output = CurrencyLYD; + if (inputStr == "MAD") output = CurrencyMAD; + if (inputStr == "MDL") output = CurrencyMDL; + if (inputStr == "MGA") output = CurrencyMGA; + if (inputStr == "MKD") output = CurrencyMKD; + if (inputStr == "MMK") output = CurrencyMMK; + if (inputStr == "MNT") output = CurrencyMNT; + if (inputStr == "MOP") output = CurrencyMOP; + if (inputStr == "MRO") output = CurrencyMRO; + if (inputStr == "MUR") output = CurrencyMUR; + if (inputStr == "MVR") output = CurrencyMVR; + if (inputStr == "MWK") output = CurrencyMWK; + if (inputStr == "MXN") output = CurrencyMXN; + if (inputStr == "MYR") output = CurrencyMYR; + if (inputStr == "MZN") output = CurrencyMZN; + if (inputStr == "NAD") output = CurrencyNAD; + if (inputStr == "NGN") output = CurrencyNGN; + if (inputStr == "NIO") output = CurrencyNIO; + if (inputStr == "NOK") output = CurrencyNOK; + if (inputStr == "NPR") output = CurrencyNPR; + if (inputStr == "NZD") output = CurrencyNZD; + if (inputStr == "OMR") output = CurrencyOMR; + if (inputStr == "PAB") output = CurrencyPAB; + if (inputStr == "PEN") output = CurrencyPEN; + if (inputStr == "PGK") output = CurrencyPGK; + if (inputStr == "PHP") output = CurrencyPHP; + if (inputStr == "PKR") output = CurrencyPKR; + if (inputStr == "PLN") output = CurrencyPLN; + if (inputStr == "PYG") output = CurrencyPYG; + if (inputStr == "QAR") output = CurrencyQAR; + if (inputStr == "RON") output = CurrencyRON; + if (inputStr == "RSD") output = CurrencyRSD; + if (inputStr == "RUB") output = CurrencyRUB; + if (inputStr == "RWF") output = CurrencyRWF; + if (inputStr == "SAR") output = CurrencySAR; + if (inputStr == "SBD") output = CurrencySBD; + if (inputStr == "SCR") output = CurrencySCR; + if (inputStr == "SDG") output = CurrencySDG; + if (inputStr == "SEK") output = CurrencySEK; + if (inputStr == "SGD") output = CurrencySGD; + if (inputStr == "SHP") output = CurrencySHP; + if (inputStr == "SLL") output = CurrencySLL; + if (inputStr == "SOS") output = CurrencySOS; + if (inputStr == "SPL") output = CurrencySPL; + if (inputStr == "SRD") output = CurrencySRD; + if (inputStr == "STD") output = CurrencySTD; + if (inputStr == "SVC") output = CurrencySVC; + if (inputStr == "SYP") output = CurrencySYP; + if (inputStr == "SZL") output = CurrencySZL; + if (inputStr == "THB") output = CurrencyTHB; + if (inputStr == "TJS") output = CurrencyTJS; + if (inputStr == "TMT") output = CurrencyTMT; + if (inputStr == "TND") output = CurrencyTND; + if (inputStr == "TOP") output = CurrencyTOP; + if (inputStr == "TRY") output = CurrencyTRY; + if (inputStr == "TTD") output = CurrencyTTD; + if (inputStr == "TVD") output = CurrencyTVD; + if (inputStr == "TWD") output = CurrencyTWD; + if (inputStr == "TZS") output = CurrencyTZS; + if (inputStr == "UAH") output = CurrencyUAH; + if (inputStr == "UGX") output = CurrencyUGX; + if (inputStr == "USD") output = CurrencyUSD; + if (inputStr == "UYU") output = CurrencyUYU; + if (inputStr == "UZS") output = CurrencyUZS; + if (inputStr == "VEF") output = CurrencyVEF; + if (inputStr == "VND") output = CurrencyVND; + if (inputStr == "VUV") output = CurrencyVUV; + if (inputStr == "WST") output = CurrencyWST; + if (inputStr == "XAF") output = CurrencyXAF; + if (inputStr == "XCD") output = CurrencyXCD; + if (inputStr == "XDR") output = CurrencyXDR; + if (inputStr == "XOF") output = CurrencyXOF; + if (inputStr == "XPF") output = CurrencyXPF; + if (inputStr == "YER") output = CurrencyYER; + if (inputStr == "ZAR") output = CurrencyZAR; + if (inputStr == "ZMW") output = CurrencyZMW; + if (inputStr == "ZWD") output = CurrencyZWD; + } + + enum EmailVerificationStatus + { + EmailVerificationStatusUnverified, + EmailVerificationStatusPending, + EmailVerificationStatusConfirmed + }; + + inline void ToJsonEnum(const EmailVerificationStatus input, Json::Value& output) + { + if (input == EmailVerificationStatusUnverified) output = Json::Value("Unverified"); + if (input == EmailVerificationStatusPending) output = Json::Value("Pending"); + if (input == EmailVerificationStatusConfirmed) output = Json::Value("Confirmed"); + } + inline void FromJsonEnum(const Json::Value& input, EmailVerificationStatus& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Unverified") output = EmailVerificationStatusUnverified; + if (inputStr == "Pending") output = EmailVerificationStatusPending; + if (inputStr == "Confirmed") output = EmailVerificationStatusConfirmed; + } + + enum EntityTypes + { + EntityTypestitle, + EntityTypesmaster_player_account, + EntityTypestitle_player_account, + EntityTypescharacter, + EntityTypesgroup + }; + + inline void ToJsonEnum(const EntityTypes input, Json::Value& output) + { + if (input == EntityTypestitle) output = Json::Value("title"); + if (input == EntityTypesmaster_player_account) output = Json::Value("master_player_account"); + if (input == EntityTypestitle_player_account) output = Json::Value("title_player_account"); + if (input == EntityTypescharacter) output = Json::Value("character"); + if (input == EntityTypesgroup) output = Json::Value("group"); + } + inline void FromJsonEnum(const Json::Value& input, EntityTypes& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "title") output = EntityTypestitle; + if (inputStr == "master_player_account") output = EntityTypesmaster_player_account; + if (inputStr == "title_player_account") output = EntityTypestitle_player_account; + if (inputStr == "character") output = EntityTypescharacter; + if (inputStr == "group") output = EntityTypesgroup; + } + + enum GameInstanceState + { + GameInstanceStateOpen, + GameInstanceStateClosed + }; + + inline void ToJsonEnum(const GameInstanceState input, Json::Value& output) + { + if (input == GameInstanceStateOpen) output = Json::Value("Open"); + if (input == GameInstanceStateClosed) output = Json::Value("Closed"); + } + inline void FromJsonEnum(const Json::Value& input, GameInstanceState& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Open") output = GameInstanceStateOpen; + if (inputStr == "Closed") output = GameInstanceStateClosed; + } + + enum LoginIdentityProvider + { + LoginIdentityProviderUnknown, + LoginIdentityProviderPlayFab, + LoginIdentityProviderCustom, + LoginIdentityProviderGameCenter, + LoginIdentityProviderGooglePlay, + LoginIdentityProviderSteam, + LoginIdentityProviderXBoxLive, + LoginIdentityProviderPSN, + LoginIdentityProviderKongregate, + LoginIdentityProviderFacebook, + LoginIdentityProviderIOSDevice, + LoginIdentityProviderAndroidDevice, + LoginIdentityProviderTwitch, + LoginIdentityProviderWindowsHello + }; + + inline void ToJsonEnum(const LoginIdentityProvider input, Json::Value& output) + { + if (input == LoginIdentityProviderUnknown) output = Json::Value("Unknown"); + if (input == LoginIdentityProviderPlayFab) output = Json::Value("PlayFab"); + if (input == LoginIdentityProviderCustom) output = Json::Value("Custom"); + if (input == LoginIdentityProviderGameCenter) output = Json::Value("GameCenter"); + if (input == LoginIdentityProviderGooglePlay) output = Json::Value("GooglePlay"); + if (input == LoginIdentityProviderSteam) output = Json::Value("Steam"); + if (input == LoginIdentityProviderXBoxLive) output = Json::Value("XBoxLive"); + if (input == LoginIdentityProviderPSN) output = Json::Value("PSN"); + if (input == LoginIdentityProviderKongregate) output = Json::Value("Kongregate"); + if (input == LoginIdentityProviderFacebook) output = Json::Value("Facebook"); + if (input == LoginIdentityProviderIOSDevice) output = Json::Value("IOSDevice"); + if (input == LoginIdentityProviderAndroidDevice) output = Json::Value("AndroidDevice"); + if (input == LoginIdentityProviderTwitch) output = Json::Value("Twitch"); + if (input == LoginIdentityProviderWindowsHello) output = Json::Value("WindowsHello"); + } + inline void FromJsonEnum(const Json::Value& input, LoginIdentityProvider& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Unknown") output = LoginIdentityProviderUnknown; + if (inputStr == "PlayFab") output = LoginIdentityProviderPlayFab; + if (inputStr == "Custom") output = LoginIdentityProviderCustom; + if (inputStr == "GameCenter") output = LoginIdentityProviderGameCenter; + if (inputStr == "GooglePlay") output = LoginIdentityProviderGooglePlay; + if (inputStr == "Steam") output = LoginIdentityProviderSteam; + if (inputStr == "XBoxLive") output = LoginIdentityProviderXBoxLive; + if (inputStr == "PSN") output = LoginIdentityProviderPSN; + if (inputStr == "Kongregate") output = LoginIdentityProviderKongregate; + if (inputStr == "Facebook") output = LoginIdentityProviderFacebook; + if (inputStr == "IOSDevice") output = LoginIdentityProviderIOSDevice; + if (inputStr == "AndroidDevice") output = LoginIdentityProviderAndroidDevice; + if (inputStr == "Twitch") output = LoginIdentityProviderTwitch; + if (inputStr == "WindowsHello") output = LoginIdentityProviderWindowsHello; + } + + enum MatchmakeStatus + { + MatchmakeStatusComplete, + MatchmakeStatusWaiting, + MatchmakeStatusGameNotFound, + MatchmakeStatusNoAvailableSlots, + MatchmakeStatusSessionClosed + }; + + inline void ToJsonEnum(const MatchmakeStatus input, Json::Value& output) + { + if (input == MatchmakeStatusComplete) output = Json::Value("Complete"); + if (input == MatchmakeStatusWaiting) output = Json::Value("Waiting"); + if (input == MatchmakeStatusGameNotFound) output = Json::Value("GameNotFound"); + if (input == MatchmakeStatusNoAvailableSlots) output = Json::Value("NoAvailableSlots"); + if (input == MatchmakeStatusSessionClosed) output = Json::Value("SessionClosed"); + } + inline void FromJsonEnum(const Json::Value& input, MatchmakeStatus& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Complete") output = MatchmakeStatusComplete; + if (inputStr == "Waiting") output = MatchmakeStatusWaiting; + if (inputStr == "GameNotFound") output = MatchmakeStatusGameNotFound; + if (inputStr == "NoAvailableSlots") output = MatchmakeStatusNoAvailableSlots; + if (inputStr == "SessionClosed") output = MatchmakeStatusSessionClosed; + } + + enum PushNotificationPlatform + { + PushNotificationPlatformApplePushNotificationService, + PushNotificationPlatformGoogleCloudMessaging + }; + + inline void ToJsonEnum(const PushNotificationPlatform input, Json::Value& output) + { + if (input == PushNotificationPlatformApplePushNotificationService) output = Json::Value("ApplePushNotificationService"); + if (input == PushNotificationPlatformGoogleCloudMessaging) output = Json::Value("GoogleCloudMessaging"); + } + inline void FromJsonEnum(const Json::Value& input, PushNotificationPlatform& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "ApplePushNotificationService") output = PushNotificationPlatformApplePushNotificationService; + if (inputStr == "GoogleCloudMessaging") output = PushNotificationPlatformGoogleCloudMessaging; + } + + enum Region + { + RegionUSCentral, + RegionUSEast, + RegionEUWest, + RegionSingapore, + RegionJapan, + RegionBrazil, + RegionAustralia + }; + + inline void ToJsonEnum(const Region input, Json::Value& output) + { + if (input == RegionUSCentral) output = Json::Value("USCentral"); + if (input == RegionUSEast) output = Json::Value("USEast"); + if (input == RegionEUWest) output = Json::Value("EUWest"); + if (input == RegionSingapore) output = Json::Value("Singapore"); + if (input == RegionJapan) output = Json::Value("Japan"); + if (input == RegionBrazil) output = Json::Value("Brazil"); + if (input == RegionAustralia) output = Json::Value("Australia"); + } + inline void FromJsonEnum(const Json::Value& input, Region& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "USCentral") output = RegionUSCentral; + if (inputStr == "USEast") output = RegionUSEast; + if (inputStr == "EUWest") output = RegionEUWest; + if (inputStr == "Singapore") output = RegionSingapore; + if (inputStr == "Japan") output = RegionJapan; + if (inputStr == "Brazil") output = RegionBrazil; + if (inputStr == "Australia") output = RegionAustralia; + } + + enum SourceType + { + SourceTypeAdmin, + SourceTypeBackEnd, + SourceTypeGameClient, + SourceTypeGameServer, + SourceTypePartner + }; + + inline void ToJsonEnum(const SourceType input, Json::Value& output) + { + if (input == SourceTypeAdmin) output = Json::Value("Admin"); + if (input == SourceTypeBackEnd) output = Json::Value("BackEnd"); + if (input == SourceTypeGameClient) output = Json::Value("GameClient"); + if (input == SourceTypeGameServer) output = Json::Value("GameServer"); + if (input == SourceTypePartner) output = Json::Value("Partner"); + } + inline void FromJsonEnum(const Json::Value& input, SourceType& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Admin") output = SourceTypeAdmin; + if (inputStr == "BackEnd") output = SourceTypeBackEnd; + if (inputStr == "GameClient") output = SourceTypeGameClient; + if (inputStr == "GameServer") output = SourceTypeGameServer; + if (inputStr == "Partner") output = SourceTypePartner; + } + + enum SubscriptionProviderStatus + { + SubscriptionProviderStatusNoError, + SubscriptionProviderStatusCancelled, + SubscriptionProviderStatusUnknownError, + SubscriptionProviderStatusBillingError, + SubscriptionProviderStatusProductUnavailable, + SubscriptionProviderStatusCustomerDidNotAcceptPriceChange, + SubscriptionProviderStatusFreeTrial, + SubscriptionProviderStatusPaymentPending + }; + + inline void ToJsonEnum(const SubscriptionProviderStatus input, Json::Value& output) + { + if (input == SubscriptionProviderStatusNoError) output = Json::Value("NoError"); + if (input == SubscriptionProviderStatusCancelled) output = Json::Value("Cancelled"); + if (input == SubscriptionProviderStatusUnknownError) output = Json::Value("UnknownError"); + if (input == SubscriptionProviderStatusBillingError) output = Json::Value("BillingError"); + if (input == SubscriptionProviderStatusProductUnavailable) output = Json::Value("ProductUnavailable"); + if (input == SubscriptionProviderStatusCustomerDidNotAcceptPriceChange) output = Json::Value("CustomerDidNotAcceptPriceChange"); + if (input == SubscriptionProviderStatusFreeTrial) output = Json::Value("FreeTrial"); + if (input == SubscriptionProviderStatusPaymentPending) output = Json::Value("PaymentPending"); + } + inline void FromJsonEnum(const Json::Value& input, SubscriptionProviderStatus& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "NoError") output = SubscriptionProviderStatusNoError; + if (inputStr == "Cancelled") output = SubscriptionProviderStatusCancelled; + if (inputStr == "UnknownError") output = SubscriptionProviderStatusUnknownError; + if (inputStr == "BillingError") output = SubscriptionProviderStatusBillingError; + if (inputStr == "ProductUnavailable") output = SubscriptionProviderStatusProductUnavailable; + if (inputStr == "CustomerDidNotAcceptPriceChange") output = SubscriptionProviderStatusCustomerDidNotAcceptPriceChange; + if (inputStr == "FreeTrial") output = SubscriptionProviderStatusFreeTrial; + if (inputStr == "PaymentPending") output = SubscriptionProviderStatusPaymentPending; + } + + enum TitleActivationStatus + { + TitleActivationStatusNone, + TitleActivationStatusActivatedTitleKey, + TitleActivationStatusPendingSteam, + TitleActivationStatusActivatedSteam, + TitleActivationStatusRevokedSteam + }; + + inline void ToJsonEnum(const TitleActivationStatus input, Json::Value& output) + { + if (input == TitleActivationStatusNone) output = Json::Value("None"); + if (input == TitleActivationStatusActivatedTitleKey) output = Json::Value("ActivatedTitleKey"); + if (input == TitleActivationStatusPendingSteam) output = Json::Value("PendingSteam"); + if (input == TitleActivationStatusActivatedSteam) output = Json::Value("ActivatedSteam"); + if (input == TitleActivationStatusRevokedSteam) output = Json::Value("RevokedSteam"); + } + inline void FromJsonEnum(const Json::Value& input, TitleActivationStatus& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "None") output = TitleActivationStatusNone; + if (inputStr == "ActivatedTitleKey") output = TitleActivationStatusActivatedTitleKey; + if (inputStr == "PendingSteam") output = TitleActivationStatusPendingSteam; + if (inputStr == "ActivatedSteam") output = TitleActivationStatusActivatedSteam; + if (inputStr == "RevokedSteam") output = TitleActivationStatusRevokedSteam; + } + + enum TradeStatus + { + TradeStatusInvalid, + TradeStatusOpening, + TradeStatusOpen, + TradeStatusAccepting, + TradeStatusAccepted, + TradeStatusFilled, + TradeStatusCancelled + }; + + inline void ToJsonEnum(const TradeStatus input, Json::Value& output) + { + if (input == TradeStatusInvalid) output = Json::Value("Invalid"); + if (input == TradeStatusOpening) output = Json::Value("Opening"); + if (input == TradeStatusOpen) output = Json::Value("Open"); + if (input == TradeStatusAccepting) output = Json::Value("Accepting"); + if (input == TradeStatusAccepted) output = Json::Value("Accepted"); + if (input == TradeStatusFilled) output = Json::Value("Filled"); + if (input == TradeStatusCancelled) output = Json::Value("Cancelled"); + } + inline void FromJsonEnum(const Json::Value& input, TradeStatus& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Invalid") output = TradeStatusInvalid; + if (inputStr == "Opening") output = TradeStatusOpening; + if (inputStr == "Open") output = TradeStatusOpen; + if (inputStr == "Accepting") output = TradeStatusAccepting; + if (inputStr == "Accepted") output = TradeStatusAccepted; + if (inputStr == "Filled") output = TradeStatusFilled; + if (inputStr == "Cancelled") output = TradeStatusCancelled; + } + + enum TransactionStatus + { + TransactionStatusCreateCart, + TransactionStatusInit, + TransactionStatusApproved, + TransactionStatusSucceeded, + TransactionStatusFailedByProvider, + TransactionStatusDisputePending, + TransactionStatusRefundPending, + TransactionStatusRefunded, + TransactionStatusRefundFailed, + TransactionStatusChargedBack, + TransactionStatusFailedByUber, + TransactionStatusFailedByPlayFab, + TransactionStatusRevoked, + TransactionStatusTradePending, + TransactionStatusTraded, + TransactionStatusUpgraded, + TransactionStatusStackPending, + TransactionStatusStacked, + TransactionStatusOther, + TransactionStatusFailed + }; + + inline void ToJsonEnum(const TransactionStatus input, Json::Value& output) + { + if (input == TransactionStatusCreateCart) output = Json::Value("CreateCart"); + if (input == TransactionStatusInit) output = Json::Value("Init"); + if (input == TransactionStatusApproved) output = Json::Value("Approved"); + if (input == TransactionStatusSucceeded) output = Json::Value("Succeeded"); + if (input == TransactionStatusFailedByProvider) output = Json::Value("FailedByProvider"); + if (input == TransactionStatusDisputePending) output = Json::Value("DisputePending"); + if (input == TransactionStatusRefundPending) output = Json::Value("RefundPending"); + if (input == TransactionStatusRefunded) output = Json::Value("Refunded"); + if (input == TransactionStatusRefundFailed) output = Json::Value("RefundFailed"); + if (input == TransactionStatusChargedBack) output = Json::Value("ChargedBack"); + if (input == TransactionStatusFailedByUber) output = Json::Value("FailedByUber"); + if (input == TransactionStatusFailedByPlayFab) output = Json::Value("FailedByPlayFab"); + if (input == TransactionStatusRevoked) output = Json::Value("Revoked"); + if (input == TransactionStatusTradePending) output = Json::Value("TradePending"); + if (input == TransactionStatusTraded) output = Json::Value("Traded"); + if (input == TransactionStatusUpgraded) output = Json::Value("Upgraded"); + if (input == TransactionStatusStackPending) output = Json::Value("StackPending"); + if (input == TransactionStatusStacked) output = Json::Value("Stacked"); + if (input == TransactionStatusOther) output = Json::Value("Other"); + if (input == TransactionStatusFailed) output = Json::Value("Failed"); + } + inline void FromJsonEnum(const Json::Value& input, TransactionStatus& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "CreateCart") output = TransactionStatusCreateCart; + if (inputStr == "Init") output = TransactionStatusInit; + if (inputStr == "Approved") output = TransactionStatusApproved; + if (inputStr == "Succeeded") output = TransactionStatusSucceeded; + if (inputStr == "FailedByProvider") output = TransactionStatusFailedByProvider; + if (inputStr == "DisputePending") output = TransactionStatusDisputePending; + if (inputStr == "RefundPending") output = TransactionStatusRefundPending; + if (inputStr == "Refunded") output = TransactionStatusRefunded; + if (inputStr == "RefundFailed") output = TransactionStatusRefundFailed; + if (inputStr == "ChargedBack") output = TransactionStatusChargedBack; + if (inputStr == "FailedByUber") output = TransactionStatusFailedByUber; + if (inputStr == "FailedByPlayFab") output = TransactionStatusFailedByPlayFab; + if (inputStr == "Revoked") output = TransactionStatusRevoked; + if (inputStr == "TradePending") output = TransactionStatusTradePending; + if (inputStr == "Traded") output = TransactionStatusTraded; + if (inputStr == "Upgraded") output = TransactionStatusUpgraded; + if (inputStr == "StackPending") output = TransactionStatusStackPending; + if (inputStr == "Stacked") output = TransactionStatusStacked; + if (inputStr == "Other") output = TransactionStatusOther; + if (inputStr == "Failed") output = TransactionStatusFailed; + } + + enum UserDataPermission + { + UserDataPermissionPrivate, + UserDataPermissionPublic + }; + + inline void ToJsonEnum(const UserDataPermission input, Json::Value& output) + { + if (input == UserDataPermissionPrivate) output = Json::Value("Private"); + if (input == UserDataPermissionPublic) output = Json::Value("Public"); + } + inline void FromJsonEnum(const Json::Value& input, UserDataPermission& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Private") output = UserDataPermissionPrivate; + if (inputStr == "Public") output = UserDataPermissionPublic; + } + + enum UserOrigination + { + UserOriginationOrganic, + UserOriginationSteam, + UserOriginationGoogle, + UserOriginationAmazon, + UserOriginationFacebook, + UserOriginationKongregate, + UserOriginationGamersFirst, + UserOriginationUnknown, + UserOriginationIOS, + UserOriginationLoadTest, + UserOriginationAndroid, + UserOriginationPSN, + UserOriginationGameCenter, + UserOriginationCustomId, + UserOriginationXboxLive, + UserOriginationParse, + UserOriginationTwitch, + UserOriginationWindowsHello + }; + + inline void ToJsonEnum(const UserOrigination input, Json::Value& output) + { + if (input == UserOriginationOrganic) output = Json::Value("Organic"); + if (input == UserOriginationSteam) output = Json::Value("Steam"); + if (input == UserOriginationGoogle) output = Json::Value("Google"); + if (input == UserOriginationAmazon) output = Json::Value("Amazon"); + if (input == UserOriginationFacebook) output = Json::Value("Facebook"); + if (input == UserOriginationKongregate) output = Json::Value("Kongregate"); + if (input == UserOriginationGamersFirst) output = Json::Value("GamersFirst"); + if (input == UserOriginationUnknown) output = Json::Value("Unknown"); + if (input == UserOriginationIOS) output = Json::Value("IOS"); + if (input == UserOriginationLoadTest) output = Json::Value("LoadTest"); + if (input == UserOriginationAndroid) output = Json::Value("Android"); + if (input == UserOriginationPSN) output = Json::Value("PSN"); + if (input == UserOriginationGameCenter) output = Json::Value("GameCenter"); + if (input == UserOriginationCustomId) output = Json::Value("CustomId"); + if (input == UserOriginationXboxLive) output = Json::Value("XboxLive"); + if (input == UserOriginationParse) output = Json::Value("Parse"); + if (input == UserOriginationTwitch) output = Json::Value("Twitch"); + if (input == UserOriginationWindowsHello) output = Json::Value("WindowsHello"); + } + inline void FromJsonEnum(const Json::Value& input, UserOrigination& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Organic") output = UserOriginationOrganic; + if (inputStr == "Steam") output = UserOriginationSteam; + if (inputStr == "Google") output = UserOriginationGoogle; + if (inputStr == "Amazon") output = UserOriginationAmazon; + if (inputStr == "Facebook") output = UserOriginationFacebook; + if (inputStr == "Kongregate") output = UserOriginationKongregate; + if (inputStr == "GamersFirst") output = UserOriginationGamersFirst; + if (inputStr == "Unknown") output = UserOriginationUnknown; + if (inputStr == "IOS") output = UserOriginationIOS; + if (inputStr == "LoadTest") output = UserOriginationLoadTest; + if (inputStr == "Android") output = UserOriginationAndroid; + if (inputStr == "PSN") output = UserOriginationPSN; + if (inputStr == "GameCenter") output = UserOriginationGameCenter; + if (inputStr == "CustomId") output = UserOriginationCustomId; + if (inputStr == "XboxLive") output = UserOriginationXboxLive; + if (inputStr == "Parse") output = UserOriginationParse; + if (inputStr == "Twitch") output = UserOriginationTwitch; + if (inputStr == "WindowsHello") output = UserOriginationWindowsHello; + } + + // Client Classes + struct AcceptTradeRequest : public PlayFabRequestCommon + { + std::list AcceptedInventoryInstanceIds; + std::string OfferingPlayerId; + std::string TradeId; + + AcceptTradeRequest() : + PlayFabRequestCommon(), + AcceptedInventoryInstanceIds(), + OfferingPlayerId(), + TradeId() + {} + + AcceptTradeRequest(const AcceptTradeRequest& src) : + PlayFabRequestCommon(), + AcceptedInventoryInstanceIds(src.AcceptedInventoryInstanceIds), + OfferingPlayerId(src.OfferingPlayerId), + TradeId(src.TradeId) + {} + + ~AcceptTradeRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AcceptedInventoryInstanceIds"], AcceptedInventoryInstanceIds); + FromJsonUtilS(input["OfferingPlayerId"], OfferingPlayerId); + FromJsonUtilS(input["TradeId"], TradeId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AcceptedInventoryInstanceIds; ToJsonUtilS(AcceptedInventoryInstanceIds, each_AcceptedInventoryInstanceIds); output["AcceptedInventoryInstanceIds"] = each_AcceptedInventoryInstanceIds; + Json::Value each_OfferingPlayerId; ToJsonUtilS(OfferingPlayerId, each_OfferingPlayerId); output["OfferingPlayerId"] = each_OfferingPlayerId; + Json::Value each_TradeId; ToJsonUtilS(TradeId, each_TradeId); output["TradeId"] = each_TradeId; + return output; + } + }; + + struct TradeInfo : public PlayFabBaseModel + { + std::list AcceptedInventoryInstanceIds; + std::string AcceptedPlayerId; + std::list AllowedPlayerIds; + Boxed CancelledAt; + Boxed FilledAt; + Boxed InvalidatedAt; + std::list OfferedCatalogItemIds; + std::list OfferedInventoryInstanceIds; + std::string OfferingPlayerId; + Boxed OpenedAt; + std::list RequestedCatalogItemIds; + Boxed Status; + std::string TradeId; + + TradeInfo() : + PlayFabBaseModel(), + AcceptedInventoryInstanceIds(), + AcceptedPlayerId(), + AllowedPlayerIds(), + CancelledAt(), + FilledAt(), + InvalidatedAt(), + OfferedCatalogItemIds(), + OfferedInventoryInstanceIds(), + OfferingPlayerId(), + OpenedAt(), + RequestedCatalogItemIds(), + Status(), + TradeId() + {} + + TradeInfo(const TradeInfo& src) : + PlayFabBaseModel(), + AcceptedInventoryInstanceIds(src.AcceptedInventoryInstanceIds), + AcceptedPlayerId(src.AcceptedPlayerId), + AllowedPlayerIds(src.AllowedPlayerIds), + CancelledAt(src.CancelledAt), + FilledAt(src.FilledAt), + InvalidatedAt(src.InvalidatedAt), + OfferedCatalogItemIds(src.OfferedCatalogItemIds), + OfferedInventoryInstanceIds(src.OfferedInventoryInstanceIds), + OfferingPlayerId(src.OfferingPlayerId), + OpenedAt(src.OpenedAt), + RequestedCatalogItemIds(src.RequestedCatalogItemIds), + Status(src.Status), + TradeId(src.TradeId) + {} + + ~TradeInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AcceptedInventoryInstanceIds"], AcceptedInventoryInstanceIds); + FromJsonUtilS(input["AcceptedPlayerId"], AcceptedPlayerId); + FromJsonUtilS(input["AllowedPlayerIds"], AllowedPlayerIds); + FromJsonUtilT(input["CancelledAt"], CancelledAt); + FromJsonUtilT(input["FilledAt"], FilledAt); + FromJsonUtilT(input["InvalidatedAt"], InvalidatedAt); + FromJsonUtilS(input["OfferedCatalogItemIds"], OfferedCatalogItemIds); + FromJsonUtilS(input["OfferedInventoryInstanceIds"], OfferedInventoryInstanceIds); + FromJsonUtilS(input["OfferingPlayerId"], OfferingPlayerId); + FromJsonUtilT(input["OpenedAt"], OpenedAt); + FromJsonUtilS(input["RequestedCatalogItemIds"], RequestedCatalogItemIds); + FromJsonUtilE(input["Status"], Status); + FromJsonUtilS(input["TradeId"], TradeId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AcceptedInventoryInstanceIds; ToJsonUtilS(AcceptedInventoryInstanceIds, each_AcceptedInventoryInstanceIds); output["AcceptedInventoryInstanceIds"] = each_AcceptedInventoryInstanceIds; + Json::Value each_AcceptedPlayerId; ToJsonUtilS(AcceptedPlayerId, each_AcceptedPlayerId); output["AcceptedPlayerId"] = each_AcceptedPlayerId; + Json::Value each_AllowedPlayerIds; ToJsonUtilS(AllowedPlayerIds, each_AllowedPlayerIds); output["AllowedPlayerIds"] = each_AllowedPlayerIds; + Json::Value each_CancelledAt; ToJsonUtilT(CancelledAt, each_CancelledAt); output["CancelledAt"] = each_CancelledAt; + Json::Value each_FilledAt; ToJsonUtilT(FilledAt, each_FilledAt); output["FilledAt"] = each_FilledAt; + Json::Value each_InvalidatedAt; ToJsonUtilT(InvalidatedAt, each_InvalidatedAt); output["InvalidatedAt"] = each_InvalidatedAt; + Json::Value each_OfferedCatalogItemIds; ToJsonUtilS(OfferedCatalogItemIds, each_OfferedCatalogItemIds); output["OfferedCatalogItemIds"] = each_OfferedCatalogItemIds; + Json::Value each_OfferedInventoryInstanceIds; ToJsonUtilS(OfferedInventoryInstanceIds, each_OfferedInventoryInstanceIds); output["OfferedInventoryInstanceIds"] = each_OfferedInventoryInstanceIds; + Json::Value each_OfferingPlayerId; ToJsonUtilS(OfferingPlayerId, each_OfferingPlayerId); output["OfferingPlayerId"] = each_OfferingPlayerId; + Json::Value each_OpenedAt; ToJsonUtilT(OpenedAt, each_OpenedAt); output["OpenedAt"] = each_OpenedAt; + Json::Value each_RequestedCatalogItemIds; ToJsonUtilS(RequestedCatalogItemIds, each_RequestedCatalogItemIds); output["RequestedCatalogItemIds"] = each_RequestedCatalogItemIds; + Json::Value each_Status; ToJsonUtilE(Status, each_Status); output["Status"] = each_Status; + Json::Value each_TradeId; ToJsonUtilS(TradeId, each_TradeId); output["TradeId"] = each_TradeId; + return output; + } + }; + + struct AcceptTradeResponse : public PlayFabResultCommon + { + Boxed Trade; + + AcceptTradeResponse() : + PlayFabResultCommon(), + Trade() + {} + + AcceptTradeResponse(const AcceptTradeResponse& src) : + PlayFabResultCommon(), + Trade(src.Trade) + {} + + ~AcceptTradeResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Trade"], Trade); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Trade; ToJsonUtilO(Trade, each_Trade); output["Trade"] = each_Trade; + return output; + } + }; + + struct AdCampaignAttributionModel : public PlayFabBaseModel + { + time_t AttributedAt; + std::string CampaignId; + std::string Platform; + + AdCampaignAttributionModel() : + PlayFabBaseModel(), + AttributedAt(), + CampaignId(), + Platform() + {} + + AdCampaignAttributionModel(const AdCampaignAttributionModel& src) : + PlayFabBaseModel(), + AttributedAt(src.AttributedAt), + CampaignId(src.CampaignId), + Platform(src.Platform) + {} + + ~AdCampaignAttributionModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["AttributedAt"], AttributedAt); + FromJsonUtilS(input["CampaignId"], CampaignId); + FromJsonUtilS(input["Platform"], Platform); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AttributedAt; ToJsonUtilT(AttributedAt, each_AttributedAt); output["AttributedAt"] = each_AttributedAt; + Json::Value each_CampaignId; ToJsonUtilS(CampaignId, each_CampaignId); output["CampaignId"] = each_CampaignId; + Json::Value each_Platform; ToJsonUtilS(Platform, each_Platform); output["Platform"] = each_Platform; + return output; + } + }; + + struct AddFriendRequest : public PlayFabRequestCommon + { + std::string FriendEmail; + std::string FriendPlayFabId; + std::string FriendTitleDisplayName; + std::string FriendUsername; + + AddFriendRequest() : + PlayFabRequestCommon(), + FriendEmail(), + FriendPlayFabId(), + FriendTitleDisplayName(), + FriendUsername() + {} + + AddFriendRequest(const AddFriendRequest& src) : + PlayFabRequestCommon(), + FriendEmail(src.FriendEmail), + FriendPlayFabId(src.FriendPlayFabId), + FriendTitleDisplayName(src.FriendTitleDisplayName), + FriendUsername(src.FriendUsername) + {} + + ~AddFriendRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FriendEmail"], FriendEmail); + FromJsonUtilS(input["FriendPlayFabId"], FriendPlayFabId); + FromJsonUtilS(input["FriendTitleDisplayName"], FriendTitleDisplayName); + FromJsonUtilS(input["FriendUsername"], FriendUsername); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FriendEmail; ToJsonUtilS(FriendEmail, each_FriendEmail); output["FriendEmail"] = each_FriendEmail; + Json::Value each_FriendPlayFabId; ToJsonUtilS(FriendPlayFabId, each_FriendPlayFabId); output["FriendPlayFabId"] = each_FriendPlayFabId; + Json::Value each_FriendTitleDisplayName; ToJsonUtilS(FriendTitleDisplayName, each_FriendTitleDisplayName); output["FriendTitleDisplayName"] = each_FriendTitleDisplayName; + Json::Value each_FriendUsername; ToJsonUtilS(FriendUsername, each_FriendUsername); output["FriendUsername"] = each_FriendUsername; + return output; + } + }; + + struct AddFriendResult : public PlayFabResultCommon + { + bool Created; + + AddFriendResult() : + PlayFabResultCommon(), + Created() + {} + + AddFriendResult(const AddFriendResult& src) : + PlayFabResultCommon(), + Created(src.Created) + {} + + ~AddFriendResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Created"], Created); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Created; ToJsonUtilP(Created, each_Created); output["Created"] = each_Created; + return output; + } + }; + + struct GenericServiceId : public PlayFabBaseModel + { + std::string ServiceName; + std::string UserId; + + GenericServiceId() : + PlayFabBaseModel(), + ServiceName(), + UserId() + {} + + GenericServiceId(const GenericServiceId& src) : + PlayFabBaseModel(), + ServiceName(src.ServiceName), + UserId(src.UserId) + {} + + ~GenericServiceId() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ServiceName"], ServiceName); + FromJsonUtilS(input["UserId"], UserId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ServiceName; ToJsonUtilS(ServiceName, each_ServiceName); output["ServiceName"] = each_ServiceName; + Json::Value each_UserId; ToJsonUtilS(UserId, each_UserId); output["UserId"] = each_UserId; + return output; + } + }; + + struct AddGenericIDRequest : public PlayFabRequestCommon + { + GenericServiceId GenericId; + + AddGenericIDRequest() : + PlayFabRequestCommon(), + GenericId() + {} + + AddGenericIDRequest(const AddGenericIDRequest& src) : + PlayFabRequestCommon(), + GenericId(src.GenericId) + {} + + ~AddGenericIDRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["GenericId"], GenericId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GenericId; ToJsonUtilO(GenericId, each_GenericId); output["GenericId"] = each_GenericId; + return output; + } + }; + + struct AddGenericIDResult : public PlayFabResultCommon + { + + AddGenericIDResult() : + PlayFabResultCommon() + {} + + AddGenericIDResult(const AddGenericIDResult&) : + PlayFabResultCommon() + {} + + ~AddGenericIDResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct AddOrUpdateContactEmailRequest : public PlayFabRequestCommon + { + std::string EmailAddress; + + AddOrUpdateContactEmailRequest() : + PlayFabRequestCommon(), + EmailAddress() + {} + + AddOrUpdateContactEmailRequest(const AddOrUpdateContactEmailRequest& src) : + PlayFabRequestCommon(), + EmailAddress(src.EmailAddress) + {} + + ~AddOrUpdateContactEmailRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["EmailAddress"], EmailAddress); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_EmailAddress; ToJsonUtilS(EmailAddress, each_EmailAddress); output["EmailAddress"] = each_EmailAddress; + return output; + } + }; + + struct AddOrUpdateContactEmailResult : public PlayFabResultCommon + { + + AddOrUpdateContactEmailResult() : + PlayFabResultCommon() + {} + + AddOrUpdateContactEmailResult(const AddOrUpdateContactEmailResult&) : + PlayFabResultCommon() + {} + + ~AddOrUpdateContactEmailResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct AddSharedGroupMembersRequest : public PlayFabRequestCommon + { + std::list PlayFabIds; + std::string SharedGroupId; + + AddSharedGroupMembersRequest() : + PlayFabRequestCommon(), + PlayFabIds(), + SharedGroupId() + {} + + AddSharedGroupMembersRequest(const AddSharedGroupMembersRequest& src) : + PlayFabRequestCommon(), + PlayFabIds(src.PlayFabIds), + SharedGroupId(src.SharedGroupId) + {} + + ~AddSharedGroupMembersRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabIds"], PlayFabIds); + FromJsonUtilS(input["SharedGroupId"], SharedGroupId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabIds; ToJsonUtilS(PlayFabIds, each_PlayFabIds); output["PlayFabIds"] = each_PlayFabIds; + Json::Value each_SharedGroupId; ToJsonUtilS(SharedGroupId, each_SharedGroupId); output["SharedGroupId"] = each_SharedGroupId; + return output; + } + }; + + struct AddSharedGroupMembersResult : public PlayFabResultCommon + { + + AddSharedGroupMembersResult() : + PlayFabResultCommon() + {} + + AddSharedGroupMembersResult(const AddSharedGroupMembersResult&) : + PlayFabResultCommon() + {} + + ~AddSharedGroupMembersResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct AddUsernamePasswordRequest : public PlayFabRequestCommon + { + std::string Email; + std::string Password; + std::string Username; + + AddUsernamePasswordRequest() : + PlayFabRequestCommon(), + Email(), + Password(), + Username() + {} + + AddUsernamePasswordRequest(const AddUsernamePasswordRequest& src) : + PlayFabRequestCommon(), + Email(src.Email), + Password(src.Password), + Username(src.Username) + {} + + ~AddUsernamePasswordRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Email"], Email); + FromJsonUtilS(input["Password"], Password); + FromJsonUtilS(input["Username"], Username); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Email; ToJsonUtilS(Email, each_Email); output["Email"] = each_Email; + Json::Value each_Password; ToJsonUtilS(Password, each_Password); output["Password"] = each_Password; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + return output; + } + }; + + struct AddUsernamePasswordResult : public PlayFabResultCommon + { + std::string Username; + + AddUsernamePasswordResult() : + PlayFabResultCommon(), + Username() + {} + + AddUsernamePasswordResult(const AddUsernamePasswordResult& src) : + PlayFabResultCommon(), + Username(src.Username) + {} + + ~AddUsernamePasswordResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Username"], Username); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + return output; + } + }; + + struct AddUserVirtualCurrencyRequest : public PlayFabRequestCommon + { + Int32 Amount; + std::string VirtualCurrency; + + AddUserVirtualCurrencyRequest() : + PlayFabRequestCommon(), + Amount(), + VirtualCurrency() + {} + + AddUserVirtualCurrencyRequest(const AddUserVirtualCurrencyRequest& src) : + PlayFabRequestCommon(), + Amount(src.Amount), + VirtualCurrency(src.VirtualCurrency) + {} + + ~AddUserVirtualCurrencyRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Amount"], Amount); + FromJsonUtilS(input["VirtualCurrency"], VirtualCurrency); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Amount; ToJsonUtilP(Amount, each_Amount); output["Amount"] = each_Amount; + Json::Value each_VirtualCurrency; ToJsonUtilS(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + return output; + } + }; + + struct AndroidDevicePushNotificationRegistrationRequest : public PlayFabRequestCommon + { + std::string ConfirmationMessage; + std::string DeviceToken; + Boxed SendPushNotificationConfirmation; + + AndroidDevicePushNotificationRegistrationRequest() : + PlayFabRequestCommon(), + ConfirmationMessage(), + DeviceToken(), + SendPushNotificationConfirmation() + {} + + AndroidDevicePushNotificationRegistrationRequest(const AndroidDevicePushNotificationRegistrationRequest& src) : + PlayFabRequestCommon(), + ConfirmationMessage(src.ConfirmationMessage), + DeviceToken(src.DeviceToken), + SendPushNotificationConfirmation(src.SendPushNotificationConfirmation) + {} + + ~AndroidDevicePushNotificationRegistrationRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ConfirmationMessage"], ConfirmationMessage); + FromJsonUtilS(input["DeviceToken"], DeviceToken); + FromJsonUtilP(input["SendPushNotificationConfirmation"], SendPushNotificationConfirmation); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ConfirmationMessage; ToJsonUtilS(ConfirmationMessage, each_ConfirmationMessage); output["ConfirmationMessage"] = each_ConfirmationMessage; + Json::Value each_DeviceToken; ToJsonUtilS(DeviceToken, each_DeviceToken); output["DeviceToken"] = each_DeviceToken; + Json::Value each_SendPushNotificationConfirmation; ToJsonUtilP(SendPushNotificationConfirmation, each_SendPushNotificationConfirmation); output["SendPushNotificationConfirmation"] = each_SendPushNotificationConfirmation; + return output; + } + }; + + struct AndroidDevicePushNotificationRegistrationResult : public PlayFabResultCommon + { + + AndroidDevicePushNotificationRegistrationResult() : + PlayFabResultCommon() + {} + + AndroidDevicePushNotificationRegistrationResult(const AndroidDevicePushNotificationRegistrationResult&) : + PlayFabResultCommon() + {} + + ~AndroidDevicePushNotificationRegistrationResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct AttributeInstallRequest : public PlayFabRequestCommon + { + std::string Adid; + std::string Idfa; + + AttributeInstallRequest() : + PlayFabRequestCommon(), + Adid(), + Idfa() + {} + + AttributeInstallRequest(const AttributeInstallRequest& src) : + PlayFabRequestCommon(), + Adid(src.Adid), + Idfa(src.Idfa) + {} + + ~AttributeInstallRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Adid"], Adid); + FromJsonUtilS(input["Idfa"], Idfa); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Adid; ToJsonUtilS(Adid, each_Adid); output["Adid"] = each_Adid; + Json::Value each_Idfa; ToJsonUtilS(Idfa, each_Idfa); output["Idfa"] = each_Idfa; + return output; + } + }; + + struct AttributeInstallResult : public PlayFabResultCommon + { + + AttributeInstallResult() : + PlayFabResultCommon() + {} + + AttributeInstallResult(const AttributeInstallResult&) : + PlayFabResultCommon() + {} + + ~AttributeInstallResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct CancelTradeRequest : public PlayFabRequestCommon + { + std::string TradeId; + + CancelTradeRequest() : + PlayFabRequestCommon(), + TradeId() + {} + + CancelTradeRequest(const CancelTradeRequest& src) : + PlayFabRequestCommon(), + TradeId(src.TradeId) + {} + + ~CancelTradeRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["TradeId"], TradeId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_TradeId; ToJsonUtilS(TradeId, each_TradeId); output["TradeId"] = each_TradeId; + return output; + } + }; + + struct CancelTradeResponse : public PlayFabResultCommon + { + Boxed Trade; + + CancelTradeResponse() : + PlayFabResultCommon(), + Trade() + {} + + CancelTradeResponse(const CancelTradeResponse& src) : + PlayFabResultCommon(), + Trade(src.Trade) + {} + + ~CancelTradeResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Trade"], Trade); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Trade; ToJsonUtilO(Trade, each_Trade); output["Trade"] = each_Trade; + return output; + } + }; + + struct CartItem : public PlayFabBaseModel + { + std::string Description; + std::string DisplayName; + std::string ItemClass; + std::string ItemId; + std::string ItemInstanceId; + std::map RealCurrencyPrices; + std::map VCAmount; + std::map VirtualCurrencyPrices; + + CartItem() : + PlayFabBaseModel(), + Description(), + DisplayName(), + ItemClass(), + ItemId(), + ItemInstanceId(), + RealCurrencyPrices(), + VCAmount(), + VirtualCurrencyPrices() + {} + + CartItem(const CartItem& src) : + PlayFabBaseModel(), + Description(src.Description), + DisplayName(src.DisplayName), + ItemClass(src.ItemClass), + ItemId(src.ItemId), + ItemInstanceId(src.ItemInstanceId), + RealCurrencyPrices(src.RealCurrencyPrices), + VCAmount(src.VCAmount), + VirtualCurrencyPrices(src.VirtualCurrencyPrices) + {} + + ~CartItem() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Description"], Description); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilS(input["ItemClass"], ItemClass); + FromJsonUtilS(input["ItemId"], ItemId); + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilP(input["RealCurrencyPrices"], RealCurrencyPrices); + FromJsonUtilP(input["VCAmount"], VCAmount); + FromJsonUtilP(input["VirtualCurrencyPrices"], VirtualCurrencyPrices); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Description; ToJsonUtilS(Description, each_Description); output["Description"] = each_Description; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_ItemClass; ToJsonUtilS(ItemClass, each_ItemClass); output["ItemClass"] = each_ItemClass; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_RealCurrencyPrices; ToJsonUtilP(RealCurrencyPrices, each_RealCurrencyPrices); output["RealCurrencyPrices"] = each_RealCurrencyPrices; + Json::Value each_VCAmount; ToJsonUtilP(VCAmount, each_VCAmount); output["VCAmount"] = each_VCAmount; + Json::Value each_VirtualCurrencyPrices; ToJsonUtilP(VirtualCurrencyPrices, each_VirtualCurrencyPrices); output["VirtualCurrencyPrices"] = each_VirtualCurrencyPrices; + return output; + } + }; + + struct CatalogItemBundleInfo : public PlayFabBaseModel + { + std::list BundledItems; + std::list BundledResultTables; + std::map BundledVirtualCurrencies; + + CatalogItemBundleInfo() : + PlayFabBaseModel(), + BundledItems(), + BundledResultTables(), + BundledVirtualCurrencies() + {} + + CatalogItemBundleInfo(const CatalogItemBundleInfo& src) : + PlayFabBaseModel(), + BundledItems(src.BundledItems), + BundledResultTables(src.BundledResultTables), + BundledVirtualCurrencies(src.BundledVirtualCurrencies) + {} + + ~CatalogItemBundleInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["BundledItems"], BundledItems); + FromJsonUtilS(input["BundledResultTables"], BundledResultTables); + FromJsonUtilP(input["BundledVirtualCurrencies"], BundledVirtualCurrencies); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BundledItems; ToJsonUtilS(BundledItems, each_BundledItems); output["BundledItems"] = each_BundledItems; + Json::Value each_BundledResultTables; ToJsonUtilS(BundledResultTables, each_BundledResultTables); output["BundledResultTables"] = each_BundledResultTables; + Json::Value each_BundledVirtualCurrencies; ToJsonUtilP(BundledVirtualCurrencies, each_BundledVirtualCurrencies); output["BundledVirtualCurrencies"] = each_BundledVirtualCurrencies; + return output; + } + }; + + struct CatalogItemConsumableInfo : public PlayFabBaseModel + { + Boxed UsageCount; + Boxed UsagePeriod; + std::string UsagePeriodGroup; + + CatalogItemConsumableInfo() : + PlayFabBaseModel(), + UsageCount(), + UsagePeriod(), + UsagePeriodGroup() + {} + + CatalogItemConsumableInfo(const CatalogItemConsumableInfo& src) : + PlayFabBaseModel(), + UsageCount(src.UsageCount), + UsagePeriod(src.UsagePeriod), + UsagePeriodGroup(src.UsagePeriodGroup) + {} + + ~CatalogItemConsumableInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["UsageCount"], UsageCount); + FromJsonUtilP(input["UsagePeriod"], UsagePeriod); + FromJsonUtilS(input["UsagePeriodGroup"], UsagePeriodGroup); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_UsageCount; ToJsonUtilP(UsageCount, each_UsageCount); output["UsageCount"] = each_UsageCount; + Json::Value each_UsagePeriod; ToJsonUtilP(UsagePeriod, each_UsagePeriod); output["UsagePeriod"] = each_UsagePeriod; + Json::Value each_UsagePeriodGroup; ToJsonUtilS(UsagePeriodGroup, each_UsagePeriodGroup); output["UsagePeriodGroup"] = each_UsagePeriodGroup; + return output; + } + }; + + struct CatalogItemContainerInfo : public PlayFabBaseModel + { + std::list ItemContents; + std::string KeyItemId; + std::list ResultTableContents; + std::map VirtualCurrencyContents; + + CatalogItemContainerInfo() : + PlayFabBaseModel(), + ItemContents(), + KeyItemId(), + ResultTableContents(), + VirtualCurrencyContents() + {} + + CatalogItemContainerInfo(const CatalogItemContainerInfo& src) : + PlayFabBaseModel(), + ItemContents(src.ItemContents), + KeyItemId(src.KeyItemId), + ResultTableContents(src.ResultTableContents), + VirtualCurrencyContents(src.VirtualCurrencyContents) + {} + + ~CatalogItemContainerInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ItemContents"], ItemContents); + FromJsonUtilS(input["KeyItemId"], KeyItemId); + FromJsonUtilS(input["ResultTableContents"], ResultTableContents); + FromJsonUtilP(input["VirtualCurrencyContents"], VirtualCurrencyContents); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ItemContents; ToJsonUtilS(ItemContents, each_ItemContents); output["ItemContents"] = each_ItemContents; + Json::Value each_KeyItemId; ToJsonUtilS(KeyItemId, each_KeyItemId); output["KeyItemId"] = each_KeyItemId; + Json::Value each_ResultTableContents; ToJsonUtilS(ResultTableContents, each_ResultTableContents); output["ResultTableContents"] = each_ResultTableContents; + Json::Value each_VirtualCurrencyContents; ToJsonUtilP(VirtualCurrencyContents, each_VirtualCurrencyContents); output["VirtualCurrencyContents"] = each_VirtualCurrencyContents; + return output; + } + }; + + struct CatalogItem : public PlayFabBaseModel + { + Boxed Bundle; + bool CanBecomeCharacter; + std::string CatalogVersion; + Boxed Consumable; + Boxed Container; + std::string CustomData; + std::string Description; + std::string DisplayName; + Int32 InitialLimitedEditionCount; + bool IsLimitedEdition; + bool IsStackable; + bool IsTradable; + std::string ItemClass; + std::string ItemId; + std::string ItemImageUrl; + std::map RealCurrencyPrices; + std::list Tags; + std::map VirtualCurrencyPrices; + + CatalogItem() : + PlayFabBaseModel(), + Bundle(), + CanBecomeCharacter(), + CatalogVersion(), + Consumable(), + Container(), + CustomData(), + Description(), + DisplayName(), + InitialLimitedEditionCount(), + IsLimitedEdition(), + IsStackable(), + IsTradable(), + ItemClass(), + ItemId(), + ItemImageUrl(), + RealCurrencyPrices(), + Tags(), + VirtualCurrencyPrices() + {} + + CatalogItem(const CatalogItem& src) : + PlayFabBaseModel(), + Bundle(src.Bundle), + CanBecomeCharacter(src.CanBecomeCharacter), + CatalogVersion(src.CatalogVersion), + Consumable(src.Consumable), + Container(src.Container), + CustomData(src.CustomData), + Description(src.Description), + DisplayName(src.DisplayName), + InitialLimitedEditionCount(src.InitialLimitedEditionCount), + IsLimitedEdition(src.IsLimitedEdition), + IsStackable(src.IsStackable), + IsTradable(src.IsTradable), + ItemClass(src.ItemClass), + ItemId(src.ItemId), + ItemImageUrl(src.ItemImageUrl), + RealCurrencyPrices(src.RealCurrencyPrices), + Tags(src.Tags), + VirtualCurrencyPrices(src.VirtualCurrencyPrices) + {} + + ~CatalogItem() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Bundle"], Bundle); + FromJsonUtilP(input["CanBecomeCharacter"], CanBecomeCharacter); + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilO(input["Consumable"], Consumable); + FromJsonUtilO(input["Container"], Container); + FromJsonUtilS(input["CustomData"], CustomData); + FromJsonUtilS(input["Description"], Description); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilP(input["InitialLimitedEditionCount"], InitialLimitedEditionCount); + FromJsonUtilP(input["IsLimitedEdition"], IsLimitedEdition); + FromJsonUtilP(input["IsStackable"], IsStackable); + FromJsonUtilP(input["IsTradable"], IsTradable); + FromJsonUtilS(input["ItemClass"], ItemClass); + FromJsonUtilS(input["ItemId"], ItemId); + FromJsonUtilS(input["ItemImageUrl"], ItemImageUrl); + FromJsonUtilP(input["RealCurrencyPrices"], RealCurrencyPrices); + FromJsonUtilS(input["Tags"], Tags); + FromJsonUtilP(input["VirtualCurrencyPrices"], VirtualCurrencyPrices); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Bundle; ToJsonUtilO(Bundle, each_Bundle); output["Bundle"] = each_Bundle; + Json::Value each_CanBecomeCharacter; ToJsonUtilP(CanBecomeCharacter, each_CanBecomeCharacter); output["CanBecomeCharacter"] = each_CanBecomeCharacter; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_Consumable; ToJsonUtilO(Consumable, each_Consumable); output["Consumable"] = each_Consumable; + Json::Value each_Container; ToJsonUtilO(Container, each_Container); output["Container"] = each_Container; + Json::Value each_CustomData; ToJsonUtilS(CustomData, each_CustomData); output["CustomData"] = each_CustomData; + Json::Value each_Description; ToJsonUtilS(Description, each_Description); output["Description"] = each_Description; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_InitialLimitedEditionCount; ToJsonUtilP(InitialLimitedEditionCount, each_InitialLimitedEditionCount); output["InitialLimitedEditionCount"] = each_InitialLimitedEditionCount; + Json::Value each_IsLimitedEdition; ToJsonUtilP(IsLimitedEdition, each_IsLimitedEdition); output["IsLimitedEdition"] = each_IsLimitedEdition; + Json::Value each_IsStackable; ToJsonUtilP(IsStackable, each_IsStackable); output["IsStackable"] = each_IsStackable; + Json::Value each_IsTradable; ToJsonUtilP(IsTradable, each_IsTradable); output["IsTradable"] = each_IsTradable; + Json::Value each_ItemClass; ToJsonUtilS(ItemClass, each_ItemClass); output["ItemClass"] = each_ItemClass; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + Json::Value each_ItemImageUrl; ToJsonUtilS(ItemImageUrl, each_ItemImageUrl); output["ItemImageUrl"] = each_ItemImageUrl; + Json::Value each_RealCurrencyPrices; ToJsonUtilP(RealCurrencyPrices, each_RealCurrencyPrices); output["RealCurrencyPrices"] = each_RealCurrencyPrices; + Json::Value each_Tags; ToJsonUtilS(Tags, each_Tags); output["Tags"] = each_Tags; + Json::Value each_VirtualCurrencyPrices; ToJsonUtilP(VirtualCurrencyPrices, each_VirtualCurrencyPrices); output["VirtualCurrencyPrices"] = each_VirtualCurrencyPrices; + return output; + } + }; + + struct ItemInstance : public PlayFabBaseModel + { + std::string Annotation; + std::list BundleContents; + std::string BundleParent; + std::string CatalogVersion; + std::map CustomData; + std::string DisplayName; + Boxed Expiration; + std::string ItemClass; + std::string ItemId; + std::string ItemInstanceId; + Boxed PurchaseDate; + Boxed RemainingUses; + std::string UnitCurrency; + Uint32 UnitPrice; + Boxed UsesIncrementedBy; + + ItemInstance() : + PlayFabBaseModel(), + Annotation(), + BundleContents(), + BundleParent(), + CatalogVersion(), + CustomData(), + DisplayName(), + Expiration(), + ItemClass(), + ItemId(), + ItemInstanceId(), + PurchaseDate(), + RemainingUses(), + UnitCurrency(), + UnitPrice(), + UsesIncrementedBy() + {} + + ItemInstance(const ItemInstance& src) : + PlayFabBaseModel(), + Annotation(src.Annotation), + BundleContents(src.BundleContents), + BundleParent(src.BundleParent), + CatalogVersion(src.CatalogVersion), + CustomData(src.CustomData), + DisplayName(src.DisplayName), + Expiration(src.Expiration), + ItemClass(src.ItemClass), + ItemId(src.ItemId), + ItemInstanceId(src.ItemInstanceId), + PurchaseDate(src.PurchaseDate), + RemainingUses(src.RemainingUses), + UnitCurrency(src.UnitCurrency), + UnitPrice(src.UnitPrice), + UsesIncrementedBy(src.UsesIncrementedBy) + {} + + ~ItemInstance() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Annotation"], Annotation); + FromJsonUtilS(input["BundleContents"], BundleContents); + FromJsonUtilS(input["BundleParent"], BundleParent); + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CustomData"], CustomData); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilT(input["Expiration"], Expiration); + FromJsonUtilS(input["ItemClass"], ItemClass); + FromJsonUtilS(input["ItemId"], ItemId); + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilT(input["PurchaseDate"], PurchaseDate); + FromJsonUtilP(input["RemainingUses"], RemainingUses); + FromJsonUtilS(input["UnitCurrency"], UnitCurrency); + FromJsonUtilP(input["UnitPrice"], UnitPrice); + FromJsonUtilP(input["UsesIncrementedBy"], UsesIncrementedBy); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Annotation; ToJsonUtilS(Annotation, each_Annotation); output["Annotation"] = each_Annotation; + Json::Value each_BundleContents; ToJsonUtilS(BundleContents, each_BundleContents); output["BundleContents"] = each_BundleContents; + Json::Value each_BundleParent; ToJsonUtilS(BundleParent, each_BundleParent); output["BundleParent"] = each_BundleParent; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CustomData; ToJsonUtilS(CustomData, each_CustomData); output["CustomData"] = each_CustomData; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_Expiration; ToJsonUtilT(Expiration, each_Expiration); output["Expiration"] = each_Expiration; + Json::Value each_ItemClass; ToJsonUtilS(ItemClass, each_ItemClass); output["ItemClass"] = each_ItemClass; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_PurchaseDate; ToJsonUtilT(PurchaseDate, each_PurchaseDate); output["PurchaseDate"] = each_PurchaseDate; + Json::Value each_RemainingUses; ToJsonUtilP(RemainingUses, each_RemainingUses); output["RemainingUses"] = each_RemainingUses; + Json::Value each_UnitCurrency; ToJsonUtilS(UnitCurrency, each_UnitCurrency); output["UnitCurrency"] = each_UnitCurrency; + Json::Value each_UnitPrice; ToJsonUtilP(UnitPrice, each_UnitPrice); output["UnitPrice"] = each_UnitPrice; + Json::Value each_UsesIncrementedBy; ToJsonUtilP(UsesIncrementedBy, each_UsesIncrementedBy); output["UsesIncrementedBy"] = each_UsesIncrementedBy; + return output; + } + }; + + struct CharacterInventory : public PlayFabBaseModel + { + std::string CharacterId; + std::list Inventory; + + CharacterInventory() : + PlayFabBaseModel(), + CharacterId(), + Inventory() + {} + + CharacterInventory(const CharacterInventory& src) : + PlayFabBaseModel(), + CharacterId(src.CharacterId), + Inventory(src.Inventory) + {} + + ~CharacterInventory() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilO(input["Inventory"], Inventory); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_Inventory; ToJsonUtilO(Inventory, each_Inventory); output["Inventory"] = each_Inventory; + return output; + } + }; + + struct CharacterLeaderboardEntry : public PlayFabBaseModel + { + std::string CharacterId; + std::string CharacterName; + std::string CharacterType; + std::string DisplayName; + std::string PlayFabId; + Int32 Position; + Int32 StatValue; + + CharacterLeaderboardEntry() : + PlayFabBaseModel(), + CharacterId(), + CharacterName(), + CharacterType(), + DisplayName(), + PlayFabId(), + Position(), + StatValue() + {} + + CharacterLeaderboardEntry(const CharacterLeaderboardEntry& src) : + PlayFabBaseModel(), + CharacterId(src.CharacterId), + CharacterName(src.CharacterName), + CharacterType(src.CharacterType), + DisplayName(src.DisplayName), + PlayFabId(src.PlayFabId), + Position(src.Position), + StatValue(src.StatValue) + {} + + ~CharacterLeaderboardEntry() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["CharacterName"], CharacterName); + FromJsonUtilS(input["CharacterType"], CharacterType); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilP(input["Position"], Position); + FromJsonUtilP(input["StatValue"], StatValue); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_CharacterName; ToJsonUtilS(CharacterName, each_CharacterName); output["CharacterName"] = each_CharacterName; + Json::Value each_CharacterType; ToJsonUtilS(CharacterType, each_CharacterType); output["CharacterType"] = each_CharacterType; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Position; ToJsonUtilP(Position, each_Position); output["Position"] = each_Position; + Json::Value each_StatValue; ToJsonUtilP(StatValue, each_StatValue); output["StatValue"] = each_StatValue; + return output; + } + }; + + struct CharacterResult : public PlayFabResultCommon + { + std::string CharacterId; + std::string CharacterName; + std::string CharacterType; + + CharacterResult() : + PlayFabResultCommon(), + CharacterId(), + CharacterName(), + CharacterType() + {} + + CharacterResult(const CharacterResult& src) : + PlayFabResultCommon(), + CharacterId(src.CharacterId), + CharacterName(src.CharacterName), + CharacterType(src.CharacterType) + {} + + ~CharacterResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["CharacterName"], CharacterName); + FromJsonUtilS(input["CharacterType"], CharacterType); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_CharacterName; ToJsonUtilS(CharacterName, each_CharacterName); output["CharacterName"] = each_CharacterName; + Json::Value each_CharacterType; ToJsonUtilS(CharacterType, each_CharacterType); output["CharacterType"] = each_CharacterType; + return output; + } + }; + + struct Container_Dictionary_String_String : public PlayFabBaseModel + { + std::map Data; + + Container_Dictionary_String_String() : + PlayFabBaseModel(), + Data() + {} + + Container_Dictionary_String_String(const Container_Dictionary_String_String& src) : + PlayFabBaseModel(), + Data(src.Data) + {} + + ~Container_Dictionary_String_String() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Data"], Data); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + return output; + } + }; + + struct CollectionFilter : public PlayFabBaseModel + { + std::list Excludes; + std::list Includes; + + CollectionFilter() : + PlayFabBaseModel(), + Excludes(), + Includes() + {} + + CollectionFilter(const CollectionFilter& src) : + PlayFabBaseModel(), + Excludes(src.Excludes), + Includes(src.Includes) + {} + + ~CollectionFilter() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Excludes"], Excludes); + FromJsonUtilO(input["Includes"], Includes); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Excludes; ToJsonUtilO(Excludes, each_Excludes); output["Excludes"] = each_Excludes; + Json::Value each_Includes; ToJsonUtilO(Includes, each_Includes); output["Includes"] = each_Includes; + return output; + } + }; + + struct ConfirmPurchaseRequest : public PlayFabRequestCommon + { + std::string OrderId; + + ConfirmPurchaseRequest() : + PlayFabRequestCommon(), + OrderId() + {} + + ConfirmPurchaseRequest(const ConfirmPurchaseRequest& src) : + PlayFabRequestCommon(), + OrderId(src.OrderId) + {} + + ~ConfirmPurchaseRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["OrderId"], OrderId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_OrderId; ToJsonUtilS(OrderId, each_OrderId); output["OrderId"] = each_OrderId; + return output; + } + }; + + struct ConfirmPurchaseResult : public PlayFabResultCommon + { + std::list Items; + std::string OrderId; + time_t PurchaseDate; + + ConfirmPurchaseResult() : + PlayFabResultCommon(), + Items(), + OrderId(), + PurchaseDate() + {} + + ConfirmPurchaseResult(const ConfirmPurchaseResult& src) : + PlayFabResultCommon(), + Items(src.Items), + OrderId(src.OrderId), + PurchaseDate(src.PurchaseDate) + {} + + ~ConfirmPurchaseResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Items"], Items); + FromJsonUtilS(input["OrderId"], OrderId); + FromJsonUtilT(input["PurchaseDate"], PurchaseDate); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Items; ToJsonUtilO(Items, each_Items); output["Items"] = each_Items; + Json::Value each_OrderId; ToJsonUtilS(OrderId, each_OrderId); output["OrderId"] = each_OrderId; + Json::Value each_PurchaseDate; ToJsonUtilT(PurchaseDate, each_PurchaseDate); output["PurchaseDate"] = each_PurchaseDate; + return output; + } + }; + + struct ConsumeItemRequest : public PlayFabRequestCommon + { + std::string CharacterId; + Int32 ConsumeCount; + std::string ItemInstanceId; + + ConsumeItemRequest() : + PlayFabRequestCommon(), + CharacterId(), + ConsumeCount(), + ItemInstanceId() + {} + + ConsumeItemRequest(const ConsumeItemRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + ConsumeCount(src.ConsumeCount), + ItemInstanceId(src.ItemInstanceId) + {} + + ~ConsumeItemRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilP(input["ConsumeCount"], ConsumeCount); + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_ConsumeCount; ToJsonUtilP(ConsumeCount, each_ConsumeCount); output["ConsumeCount"] = each_ConsumeCount; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + return output; + } + }; + + struct ConsumeItemResult : public PlayFabResultCommon + { + std::string ItemInstanceId; + Int32 RemainingUses; + + ConsumeItemResult() : + PlayFabResultCommon(), + ItemInstanceId(), + RemainingUses() + {} + + ConsumeItemResult(const ConsumeItemResult& src) : + PlayFabResultCommon(), + ItemInstanceId(src.ItemInstanceId), + RemainingUses(src.RemainingUses) + {} + + ~ConsumeItemResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilP(input["RemainingUses"], RemainingUses); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_RemainingUses; ToJsonUtilP(RemainingUses, each_RemainingUses); output["RemainingUses"] = each_RemainingUses; + return output; + } + }; + + struct ContactEmailInfoModel : public PlayFabBaseModel + { + std::string EmailAddress; + std::string Name; + Boxed VerificationStatus; + + ContactEmailInfoModel() : + PlayFabBaseModel(), + EmailAddress(), + Name(), + VerificationStatus() + {} + + ContactEmailInfoModel(const ContactEmailInfoModel& src) : + PlayFabBaseModel(), + EmailAddress(src.EmailAddress), + Name(src.Name), + VerificationStatus(src.VerificationStatus) + {} + + ~ContactEmailInfoModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["EmailAddress"], EmailAddress); + FromJsonUtilS(input["Name"], Name); + FromJsonUtilE(input["VerificationStatus"], VerificationStatus); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_EmailAddress; ToJsonUtilS(EmailAddress, each_EmailAddress); output["EmailAddress"] = each_EmailAddress; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + Json::Value each_VerificationStatus; ToJsonUtilE(VerificationStatus, each_VerificationStatus); output["VerificationStatus"] = each_VerificationStatus; + return output; + } + }; + + struct CreateSharedGroupRequest : public PlayFabRequestCommon + { + std::string SharedGroupId; + + CreateSharedGroupRequest() : + PlayFabRequestCommon(), + SharedGroupId() + {} + + CreateSharedGroupRequest(const CreateSharedGroupRequest& src) : + PlayFabRequestCommon(), + SharedGroupId(src.SharedGroupId) + {} + + ~CreateSharedGroupRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["SharedGroupId"], SharedGroupId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_SharedGroupId; ToJsonUtilS(SharedGroupId, each_SharedGroupId); output["SharedGroupId"] = each_SharedGroupId; + return output; + } + }; + + struct CreateSharedGroupResult : public PlayFabResultCommon + { + std::string SharedGroupId; + + CreateSharedGroupResult() : + PlayFabResultCommon(), + SharedGroupId() + {} + + CreateSharedGroupResult(const CreateSharedGroupResult& src) : + PlayFabResultCommon(), + SharedGroupId(src.SharedGroupId) + {} + + ~CreateSharedGroupResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["SharedGroupId"], SharedGroupId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_SharedGroupId; ToJsonUtilS(SharedGroupId, each_SharedGroupId); output["SharedGroupId"] = each_SharedGroupId; + return output; + } + }; + + struct CurrentGamesRequest : public PlayFabRequestCommon + { + std::string BuildVersion; + std::string GameMode; + Boxed pfRegion; + std::string StatisticName; + Boxed TagFilter; + + CurrentGamesRequest() : + PlayFabRequestCommon(), + BuildVersion(), + GameMode(), + pfRegion(), + StatisticName(), + TagFilter() + {} + + CurrentGamesRequest(const CurrentGamesRequest& src) : + PlayFabRequestCommon(), + BuildVersion(src.BuildVersion), + GameMode(src.GameMode), + pfRegion(src.pfRegion), + StatisticName(src.StatisticName), + TagFilter(src.TagFilter) + {} + + ~CurrentGamesRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["BuildVersion"], BuildVersion); + FromJsonUtilS(input["GameMode"], GameMode); + FromJsonUtilE(input["pfRegion"], pfRegion); + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilO(input["TagFilter"], TagFilter); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BuildVersion; ToJsonUtilS(BuildVersion, each_BuildVersion); output["BuildVersion"] = each_BuildVersion; + Json::Value each_GameMode; ToJsonUtilS(GameMode, each_GameMode); output["GameMode"] = each_GameMode; + Json::Value each_pfRegion; ToJsonUtilE(pfRegion, each_pfRegion); output["Region"] = each_pfRegion; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_TagFilter; ToJsonUtilO(TagFilter, each_TagFilter); output["TagFilter"] = each_TagFilter; + return output; + } + }; + + struct GameInfo : public PlayFabBaseModel + { + std::string BuildVersion; + std::string GameMode; + std::string GameServerData; + Boxed GameServerStateEnum; + Boxed LastHeartbeat; + std::string LobbyID; + Boxed MaxPlayers; + std::list PlayerUserIds; + Boxed pfRegion; + Uint32 RunTime; + std::string ServerHostname; + std::string ServerIPV6Address; + Boxed ServerPort; + std::string StatisticName; + std::map Tags; + + GameInfo() : + PlayFabBaseModel(), + BuildVersion(), + GameMode(), + GameServerData(), + GameServerStateEnum(), + LastHeartbeat(), + LobbyID(), + MaxPlayers(), + PlayerUserIds(), + pfRegion(), + RunTime(), + ServerHostname(), + ServerIPV6Address(), + ServerPort(), + StatisticName(), + Tags() + {} + + GameInfo(const GameInfo& src) : + PlayFabBaseModel(), + BuildVersion(src.BuildVersion), + GameMode(src.GameMode), + GameServerData(src.GameServerData), + GameServerStateEnum(src.GameServerStateEnum), + LastHeartbeat(src.LastHeartbeat), + LobbyID(src.LobbyID), + MaxPlayers(src.MaxPlayers), + PlayerUserIds(src.PlayerUserIds), + pfRegion(src.pfRegion), + RunTime(src.RunTime), + ServerHostname(src.ServerHostname), + ServerIPV6Address(src.ServerIPV6Address), + ServerPort(src.ServerPort), + StatisticName(src.StatisticName), + Tags(src.Tags) + {} + + ~GameInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["BuildVersion"], BuildVersion); + FromJsonUtilS(input["GameMode"], GameMode); + FromJsonUtilS(input["GameServerData"], GameServerData); + FromJsonUtilE(input["GameServerStateEnum"], GameServerStateEnum); + FromJsonUtilT(input["LastHeartbeat"], LastHeartbeat); + FromJsonUtilS(input["LobbyID"], LobbyID); + FromJsonUtilP(input["MaxPlayers"], MaxPlayers); + FromJsonUtilS(input["PlayerUserIds"], PlayerUserIds); + FromJsonUtilE(input["pfRegion"], pfRegion); + FromJsonUtilP(input["RunTime"], RunTime); + FromJsonUtilS(input["ServerHostname"], ServerHostname); + FromJsonUtilS(input["ServerIPV6Address"], ServerIPV6Address); + FromJsonUtilP(input["ServerPort"], ServerPort); + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilS(input["Tags"], Tags); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BuildVersion; ToJsonUtilS(BuildVersion, each_BuildVersion); output["BuildVersion"] = each_BuildVersion; + Json::Value each_GameMode; ToJsonUtilS(GameMode, each_GameMode); output["GameMode"] = each_GameMode; + Json::Value each_GameServerData; ToJsonUtilS(GameServerData, each_GameServerData); output["GameServerData"] = each_GameServerData; + Json::Value each_GameServerStateEnum; ToJsonUtilE(GameServerStateEnum, each_GameServerStateEnum); output["GameServerStateEnum"] = each_GameServerStateEnum; + Json::Value each_LastHeartbeat; ToJsonUtilT(LastHeartbeat, each_LastHeartbeat); output["LastHeartbeat"] = each_LastHeartbeat; + Json::Value each_LobbyID; ToJsonUtilS(LobbyID, each_LobbyID); output["LobbyID"] = each_LobbyID; + Json::Value each_MaxPlayers; ToJsonUtilP(MaxPlayers, each_MaxPlayers); output["MaxPlayers"] = each_MaxPlayers; + Json::Value each_PlayerUserIds; ToJsonUtilS(PlayerUserIds, each_PlayerUserIds); output["PlayerUserIds"] = each_PlayerUserIds; + Json::Value each_pfRegion; ToJsonUtilE(pfRegion, each_pfRegion); output["Region"] = each_pfRegion; + Json::Value each_RunTime; ToJsonUtilP(RunTime, each_RunTime); output["RunTime"] = each_RunTime; + Json::Value each_ServerHostname; ToJsonUtilS(ServerHostname, each_ServerHostname); output["ServerHostname"] = each_ServerHostname; + Json::Value each_ServerIPV6Address; ToJsonUtilS(ServerIPV6Address, each_ServerIPV6Address); output["ServerIPV6Address"] = each_ServerIPV6Address; + Json::Value each_ServerPort; ToJsonUtilP(ServerPort, each_ServerPort); output["ServerPort"] = each_ServerPort; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_Tags; ToJsonUtilS(Tags, each_Tags); output["Tags"] = each_Tags; + return output; + } + }; + + struct CurrentGamesResult : public PlayFabResultCommon + { + Int32 GameCount; + std::list Games; + Int32 PlayerCount; + + CurrentGamesResult() : + PlayFabResultCommon(), + GameCount(), + Games(), + PlayerCount() + {} + + CurrentGamesResult(const CurrentGamesResult& src) : + PlayFabResultCommon(), + GameCount(src.GameCount), + Games(src.Games), + PlayerCount(src.PlayerCount) + {} + + ~CurrentGamesResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["GameCount"], GameCount); + FromJsonUtilO(input["Games"], Games); + FromJsonUtilP(input["PlayerCount"], PlayerCount); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GameCount; ToJsonUtilP(GameCount, each_GameCount); output["GameCount"] = each_GameCount; + Json::Value each_Games; ToJsonUtilO(Games, each_Games); output["Games"] = each_Games; + Json::Value each_PlayerCount; ToJsonUtilP(PlayerCount, each_PlayerCount); output["PlayerCount"] = each_PlayerCount; + return output; + } + }; + + struct DeviceInfoRequest : public PlayFabRequestCommon + { + Json::Value Info; // Not truly arbitrary. See documentation for restrictions on format + + DeviceInfoRequest() : + PlayFabRequestCommon(), + Info() + {} + + DeviceInfoRequest(const DeviceInfoRequest& src) : + PlayFabRequestCommon(), + Info(src.Info) + {} + + ~DeviceInfoRequest() { } + + void FromJson(Json::Value& input) override + { + Info = input["Info"]; + } + + Json::Value ToJson() const override + { + Json::Value output; + output["Info"] = Info; + return output; + } + }; + + struct EmptyResult : public PlayFabResultCommon + { + + EmptyResult() : + PlayFabResultCommon() + {} + + EmptyResult(const EmptyResult&) : + PlayFabResultCommon() + {} + + ~EmptyResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct EntityKey : public PlayFabBaseModel + { + std::string Id; + Boxed Type; + std::string TypeString; + + EntityKey() : + PlayFabBaseModel(), + Id(), + Type(), + TypeString() + {} + + EntityKey(const EntityKey& src) : + PlayFabBaseModel(), + Id(src.Id), + Type(src.Type), + TypeString(src.TypeString) + {} + + ~EntityKey() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Id"], Id); + FromJsonUtilE(input["Type"], Type); + FromJsonUtilS(input["TypeString"], TypeString); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Id; ToJsonUtilS(Id, each_Id); output["Id"] = each_Id; + Json::Value each_Type; ToJsonUtilE(Type, each_Type); output["Type"] = each_Type; + Json::Value each_TypeString; ToJsonUtilS(TypeString, each_TypeString); output["TypeString"] = each_TypeString; + return output; + } + }; + + struct EntityTokenResponse : public PlayFabResultCommon + { + Boxed Entity; + std::string EntityToken; + Boxed TokenExpiration; + + EntityTokenResponse() : + PlayFabResultCommon(), + Entity(), + EntityToken(), + TokenExpiration() + {} + + EntityTokenResponse(const EntityTokenResponse& src) : + PlayFabResultCommon(), + Entity(src.Entity), + EntityToken(src.EntityToken), + TokenExpiration(src.TokenExpiration) + {} + + ~EntityTokenResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilS(input["EntityToken"], EntityToken); + FromJsonUtilT(input["TokenExpiration"], TokenExpiration); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_EntityToken; ToJsonUtilS(EntityToken, each_EntityToken); output["EntityToken"] = each_EntityToken; + Json::Value each_TokenExpiration; ToJsonUtilT(TokenExpiration, each_TokenExpiration); output["TokenExpiration"] = each_TokenExpiration; + return output; + } + }; + + struct ExecuteCloudScriptRequest : public PlayFabRequestCommon + { + std::string FunctionName; + Json::Value FunctionParameter; + Boxed GeneratePlayStreamEvent; + Boxed RevisionSelection; + Boxed SpecificRevision; + + ExecuteCloudScriptRequest() : + PlayFabRequestCommon(), + FunctionName(), + FunctionParameter(), + GeneratePlayStreamEvent(), + RevisionSelection(), + SpecificRevision() + {} + + ExecuteCloudScriptRequest(const ExecuteCloudScriptRequest& src) : + PlayFabRequestCommon(), + FunctionName(src.FunctionName), + FunctionParameter(src.FunctionParameter), + GeneratePlayStreamEvent(src.GeneratePlayStreamEvent), + RevisionSelection(src.RevisionSelection), + SpecificRevision(src.SpecificRevision) + {} + + ~ExecuteCloudScriptRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FunctionName"], FunctionName); + FunctionParameter = input["FunctionParameter"]; + FromJsonUtilP(input["GeneratePlayStreamEvent"], GeneratePlayStreamEvent); + FromJsonUtilE(input["RevisionSelection"], RevisionSelection); + FromJsonUtilP(input["SpecificRevision"], SpecificRevision); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FunctionName; ToJsonUtilS(FunctionName, each_FunctionName); output["FunctionName"] = each_FunctionName; + output["FunctionParameter"] = FunctionParameter; + Json::Value each_GeneratePlayStreamEvent; ToJsonUtilP(GeneratePlayStreamEvent, each_GeneratePlayStreamEvent); output["GeneratePlayStreamEvent"] = each_GeneratePlayStreamEvent; + Json::Value each_RevisionSelection; ToJsonUtilE(RevisionSelection, each_RevisionSelection); output["RevisionSelection"] = each_RevisionSelection; + Json::Value each_SpecificRevision; ToJsonUtilP(SpecificRevision, each_SpecificRevision); output["SpecificRevision"] = each_SpecificRevision; + return output; + } + }; + + struct ScriptExecutionError : public PlayFabBaseModel + { + std::string Error; + std::string Message; + std::string StackTrace; + + ScriptExecutionError() : + PlayFabBaseModel(), + Error(), + Message(), + StackTrace() + {} + + ScriptExecutionError(const ScriptExecutionError& src) : + PlayFabBaseModel(), + Error(src.Error), + Message(src.Message), + StackTrace(src.StackTrace) + {} + + ~ScriptExecutionError() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Error"], Error); + FromJsonUtilS(input["Message"], Message); + FromJsonUtilS(input["StackTrace"], StackTrace); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Error; ToJsonUtilS(Error, each_Error); output["Error"] = each_Error; + Json::Value each_Message; ToJsonUtilS(Message, each_Message); output["Message"] = each_Message; + Json::Value each_StackTrace; ToJsonUtilS(StackTrace, each_StackTrace); output["StackTrace"] = each_StackTrace; + return output; + } + }; + + struct LogStatement : public PlayFabBaseModel + { + Json::Value Data; + std::string Level; + std::string Message; + + LogStatement() : + PlayFabBaseModel(), + Data(), + Level(), + Message() + {} + + LogStatement(const LogStatement& src) : + PlayFabBaseModel(), + Data(src.Data), + Level(src.Level), + Message(src.Message) + {} + + ~LogStatement() { } + + void FromJson(Json::Value& input) override + { + Data = input["Data"]; + FromJsonUtilS(input["Level"], Level); + FromJsonUtilS(input["Message"], Message); + } + + Json::Value ToJson() const override + { + Json::Value output; + output["Data"] = Data; + Json::Value each_Level; ToJsonUtilS(Level, each_Level); output["Level"] = each_Level; + Json::Value each_Message; ToJsonUtilS(Message, each_Message); output["Message"] = each_Message; + return output; + } + }; + + struct ExecuteCloudScriptResult : public PlayFabResultCommon + { + Int32 APIRequestsIssued; + Boxed Error; + double ExecutionTimeSeconds; + std::string FunctionName; + Json::Value FunctionResult; + Boxed FunctionResultTooLarge; + Int32 HttpRequestsIssued; + std::list Logs; + Boxed LogsTooLarge; + Uint32 MemoryConsumedBytes; + double ProcessorTimeSeconds; + Int32 Revision; + + ExecuteCloudScriptResult() : + PlayFabResultCommon(), + APIRequestsIssued(), + Error(), + ExecutionTimeSeconds(), + FunctionName(), + FunctionResult(), + FunctionResultTooLarge(), + HttpRequestsIssued(), + Logs(), + LogsTooLarge(), + MemoryConsumedBytes(), + ProcessorTimeSeconds(), + Revision() + {} + + ExecuteCloudScriptResult(const ExecuteCloudScriptResult& src) : + PlayFabResultCommon(), + APIRequestsIssued(src.APIRequestsIssued), + Error(src.Error), + ExecutionTimeSeconds(src.ExecutionTimeSeconds), + FunctionName(src.FunctionName), + FunctionResult(src.FunctionResult), + FunctionResultTooLarge(src.FunctionResultTooLarge), + HttpRequestsIssued(src.HttpRequestsIssued), + Logs(src.Logs), + LogsTooLarge(src.LogsTooLarge), + MemoryConsumedBytes(src.MemoryConsumedBytes), + ProcessorTimeSeconds(src.ProcessorTimeSeconds), + Revision(src.Revision) + {} + + ~ExecuteCloudScriptResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["APIRequestsIssued"], APIRequestsIssued); + FromJsonUtilO(input["Error"], Error); + FromJsonUtilP(input["ExecutionTimeSeconds"], ExecutionTimeSeconds); + FromJsonUtilS(input["FunctionName"], FunctionName); + FunctionResult = input["FunctionResult"]; + FromJsonUtilP(input["FunctionResultTooLarge"], FunctionResultTooLarge); + FromJsonUtilP(input["HttpRequestsIssued"], HttpRequestsIssued); + FromJsonUtilO(input["Logs"], Logs); + FromJsonUtilP(input["LogsTooLarge"], LogsTooLarge); + FromJsonUtilP(input["MemoryConsumedBytes"], MemoryConsumedBytes); + FromJsonUtilP(input["ProcessorTimeSeconds"], ProcessorTimeSeconds); + FromJsonUtilP(input["Revision"], Revision); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_APIRequestsIssued; ToJsonUtilP(APIRequestsIssued, each_APIRequestsIssued); output["APIRequestsIssued"] = each_APIRequestsIssued; + Json::Value each_Error; ToJsonUtilO(Error, each_Error); output["Error"] = each_Error; + Json::Value each_ExecutionTimeSeconds; ToJsonUtilP(ExecutionTimeSeconds, each_ExecutionTimeSeconds); output["ExecutionTimeSeconds"] = each_ExecutionTimeSeconds; + Json::Value each_FunctionName; ToJsonUtilS(FunctionName, each_FunctionName); output["FunctionName"] = each_FunctionName; + output["FunctionResult"] = FunctionResult; + Json::Value each_FunctionResultTooLarge; ToJsonUtilP(FunctionResultTooLarge, each_FunctionResultTooLarge); output["FunctionResultTooLarge"] = each_FunctionResultTooLarge; + Json::Value each_HttpRequestsIssued; ToJsonUtilP(HttpRequestsIssued, each_HttpRequestsIssued); output["HttpRequestsIssued"] = each_HttpRequestsIssued; + Json::Value each_Logs; ToJsonUtilO(Logs, each_Logs); output["Logs"] = each_Logs; + Json::Value each_LogsTooLarge; ToJsonUtilP(LogsTooLarge, each_LogsTooLarge); output["LogsTooLarge"] = each_LogsTooLarge; + Json::Value each_MemoryConsumedBytes; ToJsonUtilP(MemoryConsumedBytes, each_MemoryConsumedBytes); output["MemoryConsumedBytes"] = each_MemoryConsumedBytes; + Json::Value each_ProcessorTimeSeconds; ToJsonUtilP(ProcessorTimeSeconds, each_ProcessorTimeSeconds); output["ProcessorTimeSeconds"] = each_ProcessorTimeSeconds; + Json::Value each_Revision; ToJsonUtilP(Revision, each_Revision); output["Revision"] = each_Revision; + return output; + } + }; + + struct FacebookPlayFabIdPair : public PlayFabBaseModel + { + std::string FacebookId; + std::string PlayFabId; + + FacebookPlayFabIdPair() : + PlayFabBaseModel(), + FacebookId(), + PlayFabId() + {} + + FacebookPlayFabIdPair(const FacebookPlayFabIdPair& src) : + PlayFabBaseModel(), + FacebookId(src.FacebookId), + PlayFabId(src.PlayFabId) + {} + + ~FacebookPlayFabIdPair() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FacebookId"], FacebookId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FacebookId; ToJsonUtilS(FacebookId, each_FacebookId); output["FacebookId"] = each_FacebookId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct UserFacebookInfo : public PlayFabBaseModel + { + std::string FacebookId; + std::string FullName; + + UserFacebookInfo() : + PlayFabBaseModel(), + FacebookId(), + FullName() + {} + + UserFacebookInfo(const UserFacebookInfo& src) : + PlayFabBaseModel(), + FacebookId(src.FacebookId), + FullName(src.FullName) + {} + + ~UserFacebookInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FacebookId"], FacebookId); + FromJsonUtilS(input["FullName"], FullName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FacebookId; ToJsonUtilS(FacebookId, each_FacebookId); output["FacebookId"] = each_FacebookId; + Json::Value each_FullName; ToJsonUtilS(FullName, each_FullName); output["FullName"] = each_FullName; + return output; + } + }; + + struct UserGameCenterInfo : public PlayFabBaseModel + { + std::string GameCenterId; + + UserGameCenterInfo() : + PlayFabBaseModel(), + GameCenterId() + {} + + UserGameCenterInfo(const UserGameCenterInfo& src) : + PlayFabBaseModel(), + GameCenterId(src.GameCenterId) + {} + + ~UserGameCenterInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["GameCenterId"], GameCenterId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GameCenterId; ToJsonUtilS(GameCenterId, each_GameCenterId); output["GameCenterId"] = each_GameCenterId; + return output; + } + }; + + struct LinkedPlatformAccountModel : public PlayFabBaseModel + { + std::string Email; + Boxed Platform; + std::string PlatformUserId; + std::string Username; + + LinkedPlatformAccountModel() : + PlayFabBaseModel(), + Email(), + Platform(), + PlatformUserId(), + Username() + {} + + LinkedPlatformAccountModel(const LinkedPlatformAccountModel& src) : + PlayFabBaseModel(), + Email(src.Email), + Platform(src.Platform), + PlatformUserId(src.PlatformUserId), + Username(src.Username) + {} + + ~LinkedPlatformAccountModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Email"], Email); + FromJsonUtilE(input["Platform"], Platform); + FromJsonUtilS(input["PlatformUserId"], PlatformUserId); + FromJsonUtilS(input["Username"], Username); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Email; ToJsonUtilS(Email, each_Email); output["Email"] = each_Email; + Json::Value each_Platform; ToJsonUtilE(Platform, each_Platform); output["Platform"] = each_Platform; + Json::Value each_PlatformUserId; ToJsonUtilS(PlatformUserId, each_PlatformUserId); output["PlatformUserId"] = each_PlatformUserId; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + return output; + } + }; + + struct LocationModel : public PlayFabBaseModel + { + std::string City; + Boxed pfContinentCode; + Boxed pfCountryCode; + Boxed Latitude; + Boxed Longitude; + + LocationModel() : + PlayFabBaseModel(), + City(), + pfContinentCode(), + pfCountryCode(), + Latitude(), + Longitude() + {} + + LocationModel(const LocationModel& src) : + PlayFabBaseModel(), + City(src.City), + pfContinentCode(src.pfContinentCode), + pfCountryCode(src.pfCountryCode), + Latitude(src.Latitude), + Longitude(src.Longitude) + {} + + ~LocationModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["City"], City); + FromJsonUtilE(input["pfContinentCode"], pfContinentCode); + FromJsonUtilE(input["pfCountryCode"], pfCountryCode); + FromJsonUtilP(input["Latitude"], Latitude); + FromJsonUtilP(input["Longitude"], Longitude); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_City; ToJsonUtilS(City, each_City); output["City"] = each_City; + Json::Value each_pfContinentCode; ToJsonUtilE(pfContinentCode, each_pfContinentCode); output["ContinentCode"] = each_pfContinentCode; + Json::Value each_pfCountryCode; ToJsonUtilE(pfCountryCode, each_pfCountryCode); output["CountryCode"] = each_pfCountryCode; + Json::Value each_Latitude; ToJsonUtilP(Latitude, each_Latitude); output["Latitude"] = each_Latitude; + Json::Value each_Longitude; ToJsonUtilP(Longitude, each_Longitude); output["Longitude"] = each_Longitude; + return output; + } + }; + + struct SubscriptionModel : public PlayFabBaseModel + { + time_t Expiration; + time_t InitialSubscriptionTime; + bool IsActive; + Boxed Status; + std::string SubscriptionId; + std::string SubscriptionItemId; + std::string SubscriptionProvider; + + SubscriptionModel() : + PlayFabBaseModel(), + Expiration(), + InitialSubscriptionTime(), + IsActive(), + Status(), + SubscriptionId(), + SubscriptionItemId(), + SubscriptionProvider() + {} + + SubscriptionModel(const SubscriptionModel& src) : + PlayFabBaseModel(), + Expiration(src.Expiration), + InitialSubscriptionTime(src.InitialSubscriptionTime), + IsActive(src.IsActive), + Status(src.Status), + SubscriptionId(src.SubscriptionId), + SubscriptionItemId(src.SubscriptionItemId), + SubscriptionProvider(src.SubscriptionProvider) + {} + + ~SubscriptionModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["Expiration"], Expiration); + FromJsonUtilT(input["InitialSubscriptionTime"], InitialSubscriptionTime); + FromJsonUtilP(input["IsActive"], IsActive); + FromJsonUtilE(input["Status"], Status); + FromJsonUtilS(input["SubscriptionId"], SubscriptionId); + FromJsonUtilS(input["SubscriptionItemId"], SubscriptionItemId); + FromJsonUtilS(input["SubscriptionProvider"], SubscriptionProvider); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Expiration; ToJsonUtilT(Expiration, each_Expiration); output["Expiration"] = each_Expiration; + Json::Value each_InitialSubscriptionTime; ToJsonUtilT(InitialSubscriptionTime, each_InitialSubscriptionTime); output["InitialSubscriptionTime"] = each_InitialSubscriptionTime; + Json::Value each_IsActive; ToJsonUtilP(IsActive, each_IsActive); output["IsActive"] = each_IsActive; + Json::Value each_Status; ToJsonUtilE(Status, each_Status); output["Status"] = each_Status; + Json::Value each_SubscriptionId; ToJsonUtilS(SubscriptionId, each_SubscriptionId); output["SubscriptionId"] = each_SubscriptionId; + Json::Value each_SubscriptionItemId; ToJsonUtilS(SubscriptionItemId, each_SubscriptionItemId); output["SubscriptionItemId"] = each_SubscriptionItemId; + Json::Value each_SubscriptionProvider; ToJsonUtilS(SubscriptionProvider, each_SubscriptionProvider); output["SubscriptionProvider"] = each_SubscriptionProvider; + return output; + } + }; + + struct MembershipModel : public PlayFabBaseModel + { + bool IsActive; + time_t MembershipExpiration; + std::string MembershipId; + Boxed OverrideExpiration; + std::list Subscriptions; + + MembershipModel() : + PlayFabBaseModel(), + IsActive(), + MembershipExpiration(), + MembershipId(), + OverrideExpiration(), + Subscriptions() + {} + + MembershipModel(const MembershipModel& src) : + PlayFabBaseModel(), + IsActive(src.IsActive), + MembershipExpiration(src.MembershipExpiration), + MembershipId(src.MembershipId), + OverrideExpiration(src.OverrideExpiration), + Subscriptions(src.Subscriptions) + {} + + ~MembershipModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["IsActive"], IsActive); + FromJsonUtilT(input["MembershipExpiration"], MembershipExpiration); + FromJsonUtilS(input["MembershipId"], MembershipId); + FromJsonUtilT(input["OverrideExpiration"], OverrideExpiration); + FromJsonUtilO(input["Subscriptions"], Subscriptions); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_IsActive; ToJsonUtilP(IsActive, each_IsActive); output["IsActive"] = each_IsActive; + Json::Value each_MembershipExpiration; ToJsonUtilT(MembershipExpiration, each_MembershipExpiration); output["MembershipExpiration"] = each_MembershipExpiration; + Json::Value each_MembershipId; ToJsonUtilS(MembershipId, each_MembershipId); output["MembershipId"] = each_MembershipId; + Json::Value each_OverrideExpiration; ToJsonUtilT(OverrideExpiration, each_OverrideExpiration); output["OverrideExpiration"] = each_OverrideExpiration; + Json::Value each_Subscriptions; ToJsonUtilO(Subscriptions, each_Subscriptions); output["Subscriptions"] = each_Subscriptions; + return output; + } + }; + + struct PushNotificationRegistrationModel : public PlayFabBaseModel + { + std::string NotificationEndpointARN; + Boxed Platform; + + PushNotificationRegistrationModel() : + PlayFabBaseModel(), + NotificationEndpointARN(), + Platform() + {} + + PushNotificationRegistrationModel(const PushNotificationRegistrationModel& src) : + PlayFabBaseModel(), + NotificationEndpointARN(src.NotificationEndpointARN), + Platform(src.Platform) + {} + + ~PushNotificationRegistrationModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["NotificationEndpointARN"], NotificationEndpointARN); + FromJsonUtilE(input["Platform"], Platform); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_NotificationEndpointARN; ToJsonUtilS(NotificationEndpointARN, each_NotificationEndpointARN); output["NotificationEndpointARN"] = each_NotificationEndpointARN; + Json::Value each_Platform; ToJsonUtilE(Platform, each_Platform); output["Platform"] = each_Platform; + return output; + } + }; + + struct StatisticModel : public PlayFabBaseModel + { + std::string Name; + Int32 Value; + Int32 Version; + + StatisticModel() : + PlayFabBaseModel(), + Name(), + Value(), + Version() + {} + + StatisticModel(const StatisticModel& src) : + PlayFabBaseModel(), + Name(src.Name), + Value(src.Value), + Version(src.Version) + {} + + ~StatisticModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Name"], Name); + FromJsonUtilP(input["Value"], Value); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + Json::Value each_Value; ToJsonUtilP(Value, each_Value); output["Value"] = each_Value; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct TagModel : public PlayFabBaseModel + { + std::string TagValue; + + TagModel() : + PlayFabBaseModel(), + TagValue() + {} + + TagModel(const TagModel& src) : + PlayFabBaseModel(), + TagValue(src.TagValue) + {} + + ~TagModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["TagValue"], TagValue); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_TagValue; ToJsonUtilS(TagValue, each_TagValue); output["TagValue"] = each_TagValue; + return output; + } + }; + + struct ValueToDateModel : public PlayFabBaseModel + { + std::string Currency; + Uint32 TotalValue; + std::string TotalValueAsDecimal; + + ValueToDateModel() : + PlayFabBaseModel(), + Currency(), + TotalValue(), + TotalValueAsDecimal() + {} + + ValueToDateModel(const ValueToDateModel& src) : + PlayFabBaseModel(), + Currency(src.Currency), + TotalValue(src.TotalValue), + TotalValueAsDecimal(src.TotalValueAsDecimal) + {} + + ~ValueToDateModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Currency"], Currency); + FromJsonUtilP(input["TotalValue"], TotalValue); + FromJsonUtilS(input["TotalValueAsDecimal"], TotalValueAsDecimal); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Currency; ToJsonUtilS(Currency, each_Currency); output["Currency"] = each_Currency; + Json::Value each_TotalValue; ToJsonUtilP(TotalValue, each_TotalValue); output["TotalValue"] = each_TotalValue; + Json::Value each_TotalValueAsDecimal; ToJsonUtilS(TotalValueAsDecimal, each_TotalValueAsDecimal); output["TotalValueAsDecimal"] = each_TotalValueAsDecimal; + return output; + } + }; + + struct PlayerProfileModel : public PlayFabBaseModel + { + std::list AdCampaignAttributions; + std::string AvatarUrl; + Boxed BannedUntil; + std::list ContactEmailAddresses; + Boxed Created; + std::string DisplayName; + Boxed LastLogin; + std::list LinkedAccounts; + std::list Locations; + std::list Memberships; + Boxed Origination; + std::string PlayerId; + std::string PublisherId; + std::list PushNotificationRegistrations; + std::list Statistics; + std::list Tags; + std::string TitleId; + Boxed TotalValueToDateInUSD; + std::list ValuesToDate; + + PlayerProfileModel() : + PlayFabBaseModel(), + AdCampaignAttributions(), + AvatarUrl(), + BannedUntil(), + ContactEmailAddresses(), + Created(), + DisplayName(), + LastLogin(), + LinkedAccounts(), + Locations(), + Memberships(), + Origination(), + PlayerId(), + PublisherId(), + PushNotificationRegistrations(), + Statistics(), + Tags(), + TitleId(), + TotalValueToDateInUSD(), + ValuesToDate() + {} + + PlayerProfileModel(const PlayerProfileModel& src) : + PlayFabBaseModel(), + AdCampaignAttributions(src.AdCampaignAttributions), + AvatarUrl(src.AvatarUrl), + BannedUntil(src.BannedUntil), + ContactEmailAddresses(src.ContactEmailAddresses), + Created(src.Created), + DisplayName(src.DisplayName), + LastLogin(src.LastLogin), + LinkedAccounts(src.LinkedAccounts), + Locations(src.Locations), + Memberships(src.Memberships), + Origination(src.Origination), + PlayerId(src.PlayerId), + PublisherId(src.PublisherId), + PushNotificationRegistrations(src.PushNotificationRegistrations), + Statistics(src.Statistics), + Tags(src.Tags), + TitleId(src.TitleId), + TotalValueToDateInUSD(src.TotalValueToDateInUSD), + ValuesToDate(src.ValuesToDate) + {} + + ~PlayerProfileModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["AdCampaignAttributions"], AdCampaignAttributions); + FromJsonUtilS(input["AvatarUrl"], AvatarUrl); + FromJsonUtilT(input["BannedUntil"], BannedUntil); + FromJsonUtilO(input["ContactEmailAddresses"], ContactEmailAddresses); + FromJsonUtilT(input["Created"], Created); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilT(input["LastLogin"], LastLogin); + FromJsonUtilO(input["LinkedAccounts"], LinkedAccounts); + FromJsonUtilO(input["Locations"], Locations); + FromJsonUtilO(input["Memberships"], Memberships); + FromJsonUtilE(input["Origination"], Origination); + FromJsonUtilS(input["PlayerId"], PlayerId); + FromJsonUtilS(input["PublisherId"], PublisherId); + FromJsonUtilO(input["PushNotificationRegistrations"], PushNotificationRegistrations); + FromJsonUtilO(input["Statistics"], Statistics); + FromJsonUtilO(input["Tags"], Tags); + FromJsonUtilS(input["TitleId"], TitleId); + FromJsonUtilP(input["TotalValueToDateInUSD"], TotalValueToDateInUSD); + FromJsonUtilO(input["ValuesToDate"], ValuesToDate); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AdCampaignAttributions; ToJsonUtilO(AdCampaignAttributions, each_AdCampaignAttributions); output["AdCampaignAttributions"] = each_AdCampaignAttributions; + Json::Value each_AvatarUrl; ToJsonUtilS(AvatarUrl, each_AvatarUrl); output["AvatarUrl"] = each_AvatarUrl; + Json::Value each_BannedUntil; ToJsonUtilT(BannedUntil, each_BannedUntil); output["BannedUntil"] = each_BannedUntil; + Json::Value each_ContactEmailAddresses; ToJsonUtilO(ContactEmailAddresses, each_ContactEmailAddresses); output["ContactEmailAddresses"] = each_ContactEmailAddresses; + Json::Value each_Created; ToJsonUtilT(Created, each_Created); output["Created"] = each_Created; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_LastLogin; ToJsonUtilT(LastLogin, each_LastLogin); output["LastLogin"] = each_LastLogin; + Json::Value each_LinkedAccounts; ToJsonUtilO(LinkedAccounts, each_LinkedAccounts); output["LinkedAccounts"] = each_LinkedAccounts; + Json::Value each_Locations; ToJsonUtilO(Locations, each_Locations); output["Locations"] = each_Locations; + Json::Value each_Memberships; ToJsonUtilO(Memberships, each_Memberships); output["Memberships"] = each_Memberships; + Json::Value each_Origination; ToJsonUtilE(Origination, each_Origination); output["Origination"] = each_Origination; + Json::Value each_PlayerId; ToJsonUtilS(PlayerId, each_PlayerId); output["PlayerId"] = each_PlayerId; + Json::Value each_PublisherId; ToJsonUtilS(PublisherId, each_PublisherId); output["PublisherId"] = each_PublisherId; + Json::Value each_PushNotificationRegistrations; ToJsonUtilO(PushNotificationRegistrations, each_PushNotificationRegistrations); output["PushNotificationRegistrations"] = each_PushNotificationRegistrations; + Json::Value each_Statistics; ToJsonUtilO(Statistics, each_Statistics); output["Statistics"] = each_Statistics; + Json::Value each_Tags; ToJsonUtilO(Tags, each_Tags); output["Tags"] = each_Tags; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + Json::Value each_TotalValueToDateInUSD; ToJsonUtilP(TotalValueToDateInUSD, each_TotalValueToDateInUSD); output["TotalValueToDateInUSD"] = each_TotalValueToDateInUSD; + Json::Value each_ValuesToDate; ToJsonUtilO(ValuesToDate, each_ValuesToDate); output["ValuesToDate"] = each_ValuesToDate; + return output; + } + }; + + struct UserSteamInfo : public PlayFabBaseModel + { + Boxed SteamActivationStatus; + std::string SteamCountry; + Boxed SteamCurrency; + std::string SteamId; + + UserSteamInfo() : + PlayFabBaseModel(), + SteamActivationStatus(), + SteamCountry(), + SteamCurrency(), + SteamId() + {} + + UserSteamInfo(const UserSteamInfo& src) : + PlayFabBaseModel(), + SteamActivationStatus(src.SteamActivationStatus), + SteamCountry(src.SteamCountry), + SteamCurrency(src.SteamCurrency), + SteamId(src.SteamId) + {} + + ~UserSteamInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilE(input["SteamActivationStatus"], SteamActivationStatus); + FromJsonUtilS(input["SteamCountry"], SteamCountry); + FromJsonUtilE(input["SteamCurrency"], SteamCurrency); + FromJsonUtilS(input["SteamId"], SteamId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_SteamActivationStatus; ToJsonUtilE(SteamActivationStatus, each_SteamActivationStatus); output["SteamActivationStatus"] = each_SteamActivationStatus; + Json::Value each_SteamCountry; ToJsonUtilS(SteamCountry, each_SteamCountry); output["SteamCountry"] = each_SteamCountry; + Json::Value each_SteamCurrency; ToJsonUtilE(SteamCurrency, each_SteamCurrency); output["SteamCurrency"] = each_SteamCurrency; + Json::Value each_SteamId; ToJsonUtilS(SteamId, each_SteamId); output["SteamId"] = each_SteamId; + return output; + } + }; + + struct FriendInfo : public PlayFabBaseModel + { + std::string CurrentMatchmakerLobbyId; + Boxed FacebookInfo; + std::string FriendPlayFabId; + Boxed GameCenterInfo; + Boxed Profile; + Boxed SteamInfo; + std::list Tags; + std::string TitleDisplayName; + std::string Username; + + FriendInfo() : + PlayFabBaseModel(), + CurrentMatchmakerLobbyId(), + FacebookInfo(), + FriendPlayFabId(), + GameCenterInfo(), + Profile(), + SteamInfo(), + Tags(), + TitleDisplayName(), + Username() + {} + + FriendInfo(const FriendInfo& src) : + PlayFabBaseModel(), + CurrentMatchmakerLobbyId(src.CurrentMatchmakerLobbyId), + FacebookInfo(src.FacebookInfo), + FriendPlayFabId(src.FriendPlayFabId), + GameCenterInfo(src.GameCenterInfo), + Profile(src.Profile), + SteamInfo(src.SteamInfo), + Tags(src.Tags), + TitleDisplayName(src.TitleDisplayName), + Username(src.Username) + {} + + ~FriendInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CurrentMatchmakerLobbyId"], CurrentMatchmakerLobbyId); + FromJsonUtilO(input["FacebookInfo"], FacebookInfo); + FromJsonUtilS(input["FriendPlayFabId"], FriendPlayFabId); + FromJsonUtilO(input["GameCenterInfo"], GameCenterInfo); + FromJsonUtilO(input["Profile"], Profile); + FromJsonUtilO(input["SteamInfo"], SteamInfo); + FromJsonUtilS(input["Tags"], Tags); + FromJsonUtilS(input["TitleDisplayName"], TitleDisplayName); + FromJsonUtilS(input["Username"], Username); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CurrentMatchmakerLobbyId; ToJsonUtilS(CurrentMatchmakerLobbyId, each_CurrentMatchmakerLobbyId); output["CurrentMatchmakerLobbyId"] = each_CurrentMatchmakerLobbyId; + Json::Value each_FacebookInfo; ToJsonUtilO(FacebookInfo, each_FacebookInfo); output["FacebookInfo"] = each_FacebookInfo; + Json::Value each_FriendPlayFabId; ToJsonUtilS(FriendPlayFabId, each_FriendPlayFabId); output["FriendPlayFabId"] = each_FriendPlayFabId; + Json::Value each_GameCenterInfo; ToJsonUtilO(GameCenterInfo, each_GameCenterInfo); output["GameCenterInfo"] = each_GameCenterInfo; + Json::Value each_Profile; ToJsonUtilO(Profile, each_Profile); output["Profile"] = each_Profile; + Json::Value each_SteamInfo; ToJsonUtilO(SteamInfo, each_SteamInfo); output["SteamInfo"] = each_SteamInfo; + Json::Value each_Tags; ToJsonUtilS(Tags, each_Tags); output["Tags"] = each_Tags; + Json::Value each_TitleDisplayName; ToJsonUtilS(TitleDisplayName, each_TitleDisplayName); output["TitleDisplayName"] = each_TitleDisplayName; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + return output; + } + }; + + struct GameCenterPlayFabIdPair : public PlayFabBaseModel + { + std::string GameCenterId; + std::string PlayFabId; + + GameCenterPlayFabIdPair() : + PlayFabBaseModel(), + GameCenterId(), + PlayFabId() + {} + + GameCenterPlayFabIdPair(const GameCenterPlayFabIdPair& src) : + PlayFabBaseModel(), + GameCenterId(src.GameCenterId), + PlayFabId(src.PlayFabId) + {} + + ~GameCenterPlayFabIdPair() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["GameCenterId"], GameCenterId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GameCenterId; ToJsonUtilS(GameCenterId, each_GameCenterId); output["GameCenterId"] = each_GameCenterId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GameServerRegionsRequest : public PlayFabRequestCommon + { + std::string BuildVersion; + std::string TitleId; + + GameServerRegionsRequest() : + PlayFabRequestCommon(), + BuildVersion(), + TitleId() + {} + + GameServerRegionsRequest(const GameServerRegionsRequest& src) : + PlayFabRequestCommon(), + BuildVersion(src.BuildVersion), + TitleId(src.TitleId) + {} + + ~GameServerRegionsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["BuildVersion"], BuildVersion); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BuildVersion; ToJsonUtilS(BuildVersion, each_BuildVersion); output["BuildVersion"] = each_BuildVersion; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct RegionInfo : public PlayFabBaseModel + { + bool Available; + std::string Name; + std::string PingUrl; + Boxed pfRegion; + + RegionInfo() : + PlayFabBaseModel(), + Available(), + Name(), + PingUrl(), + pfRegion() + {} + + RegionInfo(const RegionInfo& src) : + PlayFabBaseModel(), + Available(src.Available), + Name(src.Name), + PingUrl(src.PingUrl), + pfRegion(src.pfRegion) + {} + + ~RegionInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Available"], Available); + FromJsonUtilS(input["Name"], Name); + FromJsonUtilS(input["PingUrl"], PingUrl); + FromJsonUtilE(input["pfRegion"], pfRegion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Available; ToJsonUtilP(Available, each_Available); output["Available"] = each_Available; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + Json::Value each_PingUrl; ToJsonUtilS(PingUrl, each_PingUrl); output["PingUrl"] = each_PingUrl; + Json::Value each_pfRegion; ToJsonUtilE(pfRegion, each_pfRegion); output["Region"] = each_pfRegion; + return output; + } + }; + + struct GameServerRegionsResult : public PlayFabResultCommon + { + std::list Regions; + + GameServerRegionsResult() : + PlayFabResultCommon(), + Regions() + {} + + GameServerRegionsResult(const GameServerRegionsResult& src) : + PlayFabResultCommon(), + Regions(src.Regions) + {} + + ~GameServerRegionsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Regions"], Regions); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Regions; ToJsonUtilO(Regions, each_Regions); output["Regions"] = each_Regions; + return output; + } + }; + + struct GenericPlayFabIdPair : public PlayFabBaseModel + { + Boxed GenericId; + std::string PlayFabId; + + GenericPlayFabIdPair() : + PlayFabBaseModel(), + GenericId(), + PlayFabId() + {} + + GenericPlayFabIdPair(const GenericPlayFabIdPair& src) : + PlayFabBaseModel(), + GenericId(src.GenericId), + PlayFabId(src.PlayFabId) + {} + + ~GenericPlayFabIdPair() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["GenericId"], GenericId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GenericId; ToJsonUtilO(GenericId, each_GenericId); output["GenericId"] = each_GenericId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetAccountInfoRequest : public PlayFabRequestCommon + { + std::string Email; + std::string PlayFabId; + std::string TitleDisplayName; + std::string Username; + + GetAccountInfoRequest() : + PlayFabRequestCommon(), + Email(), + PlayFabId(), + TitleDisplayName(), + Username() + {} + + GetAccountInfoRequest(const GetAccountInfoRequest& src) : + PlayFabRequestCommon(), + Email(src.Email), + PlayFabId(src.PlayFabId), + TitleDisplayName(src.TitleDisplayName), + Username(src.Username) + {} + + ~GetAccountInfoRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Email"], Email); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["TitleDisplayName"], TitleDisplayName); + FromJsonUtilS(input["Username"], Username); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Email; ToJsonUtilS(Email, each_Email); output["Email"] = each_Email; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_TitleDisplayName; ToJsonUtilS(TitleDisplayName, each_TitleDisplayName); output["TitleDisplayName"] = each_TitleDisplayName; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + return output; + } + }; + + struct UserAndroidDeviceInfo : public PlayFabBaseModel + { + std::string AndroidDeviceId; + + UserAndroidDeviceInfo() : + PlayFabBaseModel(), + AndroidDeviceId() + {} + + UserAndroidDeviceInfo(const UserAndroidDeviceInfo& src) : + PlayFabBaseModel(), + AndroidDeviceId(src.AndroidDeviceId) + {} + + ~UserAndroidDeviceInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AndroidDeviceId"], AndroidDeviceId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AndroidDeviceId; ToJsonUtilS(AndroidDeviceId, each_AndroidDeviceId); output["AndroidDeviceId"] = each_AndroidDeviceId; + return output; + } + }; + + struct UserCustomIdInfo : public PlayFabBaseModel + { + std::string CustomId; + + UserCustomIdInfo() : + PlayFabBaseModel(), + CustomId() + {} + + UserCustomIdInfo(const UserCustomIdInfo& src) : + PlayFabBaseModel(), + CustomId(src.CustomId) + {} + + ~UserCustomIdInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CustomId"], CustomId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CustomId; ToJsonUtilS(CustomId, each_CustomId); output["CustomId"] = each_CustomId; + return output; + } + }; + + struct UserGoogleInfo : public PlayFabBaseModel + { + std::string GoogleEmail; + std::string GoogleGender; + std::string GoogleId; + std::string GoogleLocale; + + UserGoogleInfo() : + PlayFabBaseModel(), + GoogleEmail(), + GoogleGender(), + GoogleId(), + GoogleLocale() + {} + + UserGoogleInfo(const UserGoogleInfo& src) : + PlayFabBaseModel(), + GoogleEmail(src.GoogleEmail), + GoogleGender(src.GoogleGender), + GoogleId(src.GoogleId), + GoogleLocale(src.GoogleLocale) + {} + + ~UserGoogleInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["GoogleEmail"], GoogleEmail); + FromJsonUtilS(input["GoogleGender"], GoogleGender); + FromJsonUtilS(input["GoogleId"], GoogleId); + FromJsonUtilS(input["GoogleLocale"], GoogleLocale); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GoogleEmail; ToJsonUtilS(GoogleEmail, each_GoogleEmail); output["GoogleEmail"] = each_GoogleEmail; + Json::Value each_GoogleGender; ToJsonUtilS(GoogleGender, each_GoogleGender); output["GoogleGender"] = each_GoogleGender; + Json::Value each_GoogleId; ToJsonUtilS(GoogleId, each_GoogleId); output["GoogleId"] = each_GoogleId; + Json::Value each_GoogleLocale; ToJsonUtilS(GoogleLocale, each_GoogleLocale); output["GoogleLocale"] = each_GoogleLocale; + return output; + } + }; + + struct UserIosDeviceInfo : public PlayFabBaseModel + { + std::string IosDeviceId; + + UserIosDeviceInfo() : + PlayFabBaseModel(), + IosDeviceId() + {} + + UserIosDeviceInfo(const UserIosDeviceInfo& src) : + PlayFabBaseModel(), + IosDeviceId(src.IosDeviceId) + {} + + ~UserIosDeviceInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["IosDeviceId"], IosDeviceId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_IosDeviceId; ToJsonUtilS(IosDeviceId, each_IosDeviceId); output["IosDeviceId"] = each_IosDeviceId; + return output; + } + }; + + struct UserKongregateInfo : public PlayFabBaseModel + { + std::string KongregateId; + std::string KongregateName; + + UserKongregateInfo() : + PlayFabBaseModel(), + KongregateId(), + KongregateName() + {} + + UserKongregateInfo(const UserKongregateInfo& src) : + PlayFabBaseModel(), + KongregateId(src.KongregateId), + KongregateName(src.KongregateName) + {} + + ~UserKongregateInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["KongregateId"], KongregateId); + FromJsonUtilS(input["KongregateName"], KongregateName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_KongregateId; ToJsonUtilS(KongregateId, each_KongregateId); output["KongregateId"] = each_KongregateId; + Json::Value each_KongregateName; ToJsonUtilS(KongregateName, each_KongregateName); output["KongregateName"] = each_KongregateName; + return output; + } + }; + + struct UserPrivateAccountInfo : public PlayFabBaseModel + { + std::string Email; + + UserPrivateAccountInfo() : + PlayFabBaseModel(), + Email() + {} + + UserPrivateAccountInfo(const UserPrivateAccountInfo& src) : + PlayFabBaseModel(), + Email(src.Email) + {} + + ~UserPrivateAccountInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Email"], Email); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Email; ToJsonUtilS(Email, each_Email); output["Email"] = each_Email; + return output; + } + }; + + struct UserPsnInfo : public PlayFabBaseModel + { + std::string PsnAccountId; + std::string PsnOnlineId; + + UserPsnInfo() : + PlayFabBaseModel(), + PsnAccountId(), + PsnOnlineId() + {} + + UserPsnInfo(const UserPsnInfo& src) : + PlayFabBaseModel(), + PsnAccountId(src.PsnAccountId), + PsnOnlineId(src.PsnOnlineId) + {} + + ~UserPsnInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PsnAccountId"], PsnAccountId); + FromJsonUtilS(input["PsnOnlineId"], PsnOnlineId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PsnAccountId; ToJsonUtilS(PsnAccountId, each_PsnAccountId); output["PsnAccountId"] = each_PsnAccountId; + Json::Value each_PsnOnlineId; ToJsonUtilS(PsnOnlineId, each_PsnOnlineId); output["PsnOnlineId"] = each_PsnOnlineId; + return output; + } + }; + + struct UserTitleInfo : public PlayFabBaseModel + { + std::string AvatarUrl; + time_t Created; + std::string DisplayName; + Boxed FirstLogin; + Boxed isBanned; + Boxed LastLogin; + Boxed Origination; + Boxed TitlePlayerAccount; + + UserTitleInfo() : + PlayFabBaseModel(), + AvatarUrl(), + Created(), + DisplayName(), + FirstLogin(), + isBanned(), + LastLogin(), + Origination(), + TitlePlayerAccount() + {} + + UserTitleInfo(const UserTitleInfo& src) : + PlayFabBaseModel(), + AvatarUrl(src.AvatarUrl), + Created(src.Created), + DisplayName(src.DisplayName), + FirstLogin(src.FirstLogin), + isBanned(src.isBanned), + LastLogin(src.LastLogin), + Origination(src.Origination), + TitlePlayerAccount(src.TitlePlayerAccount) + {} + + ~UserTitleInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AvatarUrl"], AvatarUrl); + FromJsonUtilT(input["Created"], Created); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilT(input["FirstLogin"], FirstLogin); + FromJsonUtilP(input["isBanned"], isBanned); + FromJsonUtilT(input["LastLogin"], LastLogin); + FromJsonUtilE(input["Origination"], Origination); + FromJsonUtilO(input["TitlePlayerAccount"], TitlePlayerAccount); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AvatarUrl; ToJsonUtilS(AvatarUrl, each_AvatarUrl); output["AvatarUrl"] = each_AvatarUrl; + Json::Value each_Created; ToJsonUtilT(Created, each_Created); output["Created"] = each_Created; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_FirstLogin; ToJsonUtilT(FirstLogin, each_FirstLogin); output["FirstLogin"] = each_FirstLogin; + Json::Value each_isBanned; ToJsonUtilP(isBanned, each_isBanned); output["isBanned"] = each_isBanned; + Json::Value each_LastLogin; ToJsonUtilT(LastLogin, each_LastLogin); output["LastLogin"] = each_LastLogin; + Json::Value each_Origination; ToJsonUtilE(Origination, each_Origination); output["Origination"] = each_Origination; + Json::Value each_TitlePlayerAccount; ToJsonUtilO(TitlePlayerAccount, each_TitlePlayerAccount); output["TitlePlayerAccount"] = each_TitlePlayerAccount; + return output; + } + }; + + struct UserTwitchInfo : public PlayFabBaseModel + { + std::string TwitchId; + std::string TwitchUserName; + + UserTwitchInfo() : + PlayFabBaseModel(), + TwitchId(), + TwitchUserName() + {} + + UserTwitchInfo(const UserTwitchInfo& src) : + PlayFabBaseModel(), + TwitchId(src.TwitchId), + TwitchUserName(src.TwitchUserName) + {} + + ~UserTwitchInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["TwitchId"], TwitchId); + FromJsonUtilS(input["TwitchUserName"], TwitchUserName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_TwitchId; ToJsonUtilS(TwitchId, each_TwitchId); output["TwitchId"] = each_TwitchId; + Json::Value each_TwitchUserName; ToJsonUtilS(TwitchUserName, each_TwitchUserName); output["TwitchUserName"] = each_TwitchUserName; + return output; + } + }; + + struct UserXboxInfo : public PlayFabBaseModel + { + std::string XboxUserId; + + UserXboxInfo() : + PlayFabBaseModel(), + XboxUserId() + {} + + UserXboxInfo(const UserXboxInfo& src) : + PlayFabBaseModel(), + XboxUserId(src.XboxUserId) + {} + + ~UserXboxInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["XboxUserId"], XboxUserId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_XboxUserId; ToJsonUtilS(XboxUserId, each_XboxUserId); output["XboxUserId"] = each_XboxUserId; + return output; + } + }; + + struct UserAccountInfo : public PlayFabBaseModel + { + Boxed AndroidDeviceInfo; + time_t Created; + Boxed CustomIdInfo; + Boxed FacebookInfo; + Boxed GameCenterInfo; + Boxed GoogleInfo; + Boxed IosDeviceInfo; + Boxed KongregateInfo; + std::string PlayFabId; + Boxed PrivateInfo; + Boxed PsnInfo; + Boxed SteamInfo; + Boxed TitleInfo; + Boxed TwitchInfo; + std::string Username; + Boxed XboxInfo; + + UserAccountInfo() : + PlayFabBaseModel(), + AndroidDeviceInfo(), + Created(), + CustomIdInfo(), + FacebookInfo(), + GameCenterInfo(), + GoogleInfo(), + IosDeviceInfo(), + KongregateInfo(), + PlayFabId(), + PrivateInfo(), + PsnInfo(), + SteamInfo(), + TitleInfo(), + TwitchInfo(), + Username(), + XboxInfo() + {} + + UserAccountInfo(const UserAccountInfo& src) : + PlayFabBaseModel(), + AndroidDeviceInfo(src.AndroidDeviceInfo), + Created(src.Created), + CustomIdInfo(src.CustomIdInfo), + FacebookInfo(src.FacebookInfo), + GameCenterInfo(src.GameCenterInfo), + GoogleInfo(src.GoogleInfo), + IosDeviceInfo(src.IosDeviceInfo), + KongregateInfo(src.KongregateInfo), + PlayFabId(src.PlayFabId), + PrivateInfo(src.PrivateInfo), + PsnInfo(src.PsnInfo), + SteamInfo(src.SteamInfo), + TitleInfo(src.TitleInfo), + TwitchInfo(src.TwitchInfo), + Username(src.Username), + XboxInfo(src.XboxInfo) + {} + + ~UserAccountInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["AndroidDeviceInfo"], AndroidDeviceInfo); + FromJsonUtilT(input["Created"], Created); + FromJsonUtilO(input["CustomIdInfo"], CustomIdInfo); + FromJsonUtilO(input["FacebookInfo"], FacebookInfo); + FromJsonUtilO(input["GameCenterInfo"], GameCenterInfo); + FromJsonUtilO(input["GoogleInfo"], GoogleInfo); + FromJsonUtilO(input["IosDeviceInfo"], IosDeviceInfo); + FromJsonUtilO(input["KongregateInfo"], KongregateInfo); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilO(input["PrivateInfo"], PrivateInfo); + FromJsonUtilO(input["PsnInfo"], PsnInfo); + FromJsonUtilO(input["SteamInfo"], SteamInfo); + FromJsonUtilO(input["TitleInfo"], TitleInfo); + FromJsonUtilO(input["TwitchInfo"], TwitchInfo); + FromJsonUtilS(input["Username"], Username); + FromJsonUtilO(input["XboxInfo"], XboxInfo); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AndroidDeviceInfo; ToJsonUtilO(AndroidDeviceInfo, each_AndroidDeviceInfo); output["AndroidDeviceInfo"] = each_AndroidDeviceInfo; + 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; + Json::Value each_GameCenterInfo; ToJsonUtilO(GameCenterInfo, each_GameCenterInfo); output["GameCenterInfo"] = each_GameCenterInfo; + 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_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_PrivateInfo; ToJsonUtilO(PrivateInfo, each_PrivateInfo); output["PrivateInfo"] = each_PrivateInfo; + Json::Value each_PsnInfo; ToJsonUtilO(PsnInfo, each_PsnInfo); output["PsnInfo"] = each_PsnInfo; + Json::Value each_SteamInfo; ToJsonUtilO(SteamInfo, each_SteamInfo); output["SteamInfo"] = each_SteamInfo; + Json::Value each_TitleInfo; ToJsonUtilO(TitleInfo, each_TitleInfo); output["TitleInfo"] = each_TitleInfo; + Json::Value each_TwitchInfo; ToJsonUtilO(TwitchInfo, each_TwitchInfo); output["TwitchInfo"] = each_TwitchInfo; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + Json::Value each_XboxInfo; ToJsonUtilO(XboxInfo, each_XboxInfo); output["XboxInfo"] = each_XboxInfo; + return output; + } + }; + + struct GetAccountInfoResult : public PlayFabResultCommon + { + Boxed AccountInfo; + + GetAccountInfoResult() : + PlayFabResultCommon(), + AccountInfo() + {} + + GetAccountInfoResult(const GetAccountInfoResult& src) : + PlayFabResultCommon(), + AccountInfo(src.AccountInfo) + {} + + ~GetAccountInfoResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["AccountInfo"], AccountInfo); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AccountInfo; ToJsonUtilO(AccountInfo, each_AccountInfo); output["AccountInfo"] = each_AccountInfo; + return output; + } + }; + + struct GetCatalogItemsRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + + GetCatalogItemsRequest() : + PlayFabRequestCommon(), + CatalogVersion() + {} + + GetCatalogItemsRequest(const GetCatalogItemsRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion) + {} + + ~GetCatalogItemsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + return output; + } + }; + + struct GetCatalogItemsResult : public PlayFabResultCommon + { + std::list Catalog; + + GetCatalogItemsResult() : + PlayFabResultCommon(), + Catalog() + {} + + GetCatalogItemsResult(const GetCatalogItemsResult& src) : + PlayFabResultCommon(), + Catalog(src.Catalog) + {} + + ~GetCatalogItemsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Catalog"], Catalog); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Catalog; ToJsonUtilO(Catalog, each_Catalog); output["Catalog"] = each_Catalog; + return output; + } + }; + + struct GetCharacterDataRequest : public PlayFabRequestCommon + { + std::string CharacterId; + Boxed IfChangedFromDataVersion; + std::list Keys; + std::string PlayFabId; + + GetCharacterDataRequest() : + PlayFabRequestCommon(), + CharacterId(), + IfChangedFromDataVersion(), + Keys(), + PlayFabId() + {} + + GetCharacterDataRequest(const GetCharacterDataRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + IfChangedFromDataVersion(src.IfChangedFromDataVersion), + Keys(src.Keys), + PlayFabId(src.PlayFabId) + {} + + ~GetCharacterDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilP(input["IfChangedFromDataVersion"], IfChangedFromDataVersion); + FromJsonUtilS(input["Keys"], Keys); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_IfChangedFromDataVersion; ToJsonUtilP(IfChangedFromDataVersion, each_IfChangedFromDataVersion); output["IfChangedFromDataVersion"] = each_IfChangedFromDataVersion; + Json::Value each_Keys; ToJsonUtilS(Keys, each_Keys); output["Keys"] = each_Keys; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct UserDataRecord : public PlayFabBaseModel + { + time_t LastUpdated; + Boxed Permission; + std::string Value; + + UserDataRecord() : + PlayFabBaseModel(), + LastUpdated(), + Permission(), + Value() + {} + + UserDataRecord(const UserDataRecord& src) : + PlayFabBaseModel(), + LastUpdated(src.LastUpdated), + Permission(src.Permission), + Value(src.Value) + {} + + ~UserDataRecord() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["LastUpdated"], LastUpdated); + FromJsonUtilE(input["Permission"], Permission); + FromJsonUtilS(input["Value"], Value); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LastUpdated; ToJsonUtilT(LastUpdated, each_LastUpdated); output["LastUpdated"] = each_LastUpdated; + Json::Value each_Permission; ToJsonUtilE(Permission, each_Permission); output["Permission"] = each_Permission; + Json::Value each_Value; ToJsonUtilS(Value, each_Value); output["Value"] = each_Value; + return output; + } + }; + + struct GetCharacterDataResult : public PlayFabResultCommon + { + std::string CharacterId; + std::map Data; + Uint32 DataVersion; + + GetCharacterDataResult() : + PlayFabResultCommon(), + CharacterId(), + Data(), + DataVersion() + {} + + GetCharacterDataResult(const GetCharacterDataResult& src) : + PlayFabResultCommon(), + CharacterId(src.CharacterId), + Data(src.Data), + DataVersion(src.DataVersion) + {} + + ~GetCharacterDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilO(input["Data"], Data); + FromJsonUtilP(input["DataVersion"], DataVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_Data; ToJsonUtilO(Data, each_Data); output["Data"] = each_Data; + Json::Value each_DataVersion; ToJsonUtilP(DataVersion, each_DataVersion); output["DataVersion"] = each_DataVersion; + return output; + } + }; + + struct GetCharacterInventoryRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::string CharacterId; + + GetCharacterInventoryRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + CharacterId() + {} + + GetCharacterInventoryRequest(const GetCharacterInventoryRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + CharacterId(src.CharacterId) + {} + + ~GetCharacterInventoryRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CharacterId"], CharacterId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + return output; + } + }; + + struct VirtualCurrencyRechargeTime : public PlayFabBaseModel + { + Int32 RechargeMax; + time_t RechargeTime; + Int32 SecondsToRecharge; + + VirtualCurrencyRechargeTime() : + PlayFabBaseModel(), + RechargeMax(), + RechargeTime(), + SecondsToRecharge() + {} + + VirtualCurrencyRechargeTime(const VirtualCurrencyRechargeTime& src) : + PlayFabBaseModel(), + RechargeMax(src.RechargeMax), + RechargeTime(src.RechargeTime), + SecondsToRecharge(src.SecondsToRecharge) + {} + + ~VirtualCurrencyRechargeTime() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["RechargeMax"], RechargeMax); + FromJsonUtilT(input["RechargeTime"], RechargeTime); + FromJsonUtilP(input["SecondsToRecharge"], SecondsToRecharge); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_RechargeMax; ToJsonUtilP(RechargeMax, each_RechargeMax); output["RechargeMax"] = each_RechargeMax; + Json::Value each_RechargeTime; ToJsonUtilT(RechargeTime, each_RechargeTime); output["RechargeTime"] = each_RechargeTime; + Json::Value each_SecondsToRecharge; ToJsonUtilP(SecondsToRecharge, each_SecondsToRecharge); output["SecondsToRecharge"] = each_SecondsToRecharge; + return output; + } + }; + + struct GetCharacterInventoryResult : public PlayFabResultCommon + { + std::string CharacterId; + std::list Inventory; + std::map VirtualCurrency; + std::map VirtualCurrencyRechargeTimes; + + GetCharacterInventoryResult() : + PlayFabResultCommon(), + CharacterId(), + Inventory(), + VirtualCurrency(), + VirtualCurrencyRechargeTimes() + {} + + GetCharacterInventoryResult(const GetCharacterInventoryResult& src) : + PlayFabResultCommon(), + CharacterId(src.CharacterId), + Inventory(src.Inventory), + VirtualCurrency(src.VirtualCurrency), + VirtualCurrencyRechargeTimes(src.VirtualCurrencyRechargeTimes) + {} + + ~GetCharacterInventoryResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilO(input["Inventory"], Inventory); + FromJsonUtilP(input["VirtualCurrency"], VirtualCurrency); + FromJsonUtilO(input["VirtualCurrencyRechargeTimes"], VirtualCurrencyRechargeTimes); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_Inventory; ToJsonUtilO(Inventory, each_Inventory); output["Inventory"] = each_Inventory; + Json::Value each_VirtualCurrency; ToJsonUtilP(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + Json::Value each_VirtualCurrencyRechargeTimes; ToJsonUtilO(VirtualCurrencyRechargeTimes, each_VirtualCurrencyRechargeTimes); output["VirtualCurrencyRechargeTimes"] = each_VirtualCurrencyRechargeTimes; + return output; + } + }; + + struct GetCharacterLeaderboardRequest : public PlayFabRequestCommon + { + std::string CharacterType; + Boxed MaxResultsCount; + Int32 StartPosition; + std::string StatisticName; + + GetCharacterLeaderboardRequest() : + PlayFabRequestCommon(), + CharacterType(), + MaxResultsCount(), + StartPosition(), + StatisticName() + {} + + GetCharacterLeaderboardRequest(const GetCharacterLeaderboardRequest& src) : + PlayFabRequestCommon(), + CharacterType(src.CharacterType), + MaxResultsCount(src.MaxResultsCount), + StartPosition(src.StartPosition), + StatisticName(src.StatisticName) + {} + + ~GetCharacterLeaderboardRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterType"], CharacterType); + FromJsonUtilP(input["MaxResultsCount"], MaxResultsCount); + FromJsonUtilP(input["StartPosition"], StartPosition); + FromJsonUtilS(input["StatisticName"], StatisticName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterType; ToJsonUtilS(CharacterType, each_CharacterType); output["CharacterType"] = each_CharacterType; + Json::Value each_MaxResultsCount; ToJsonUtilP(MaxResultsCount, each_MaxResultsCount); output["MaxResultsCount"] = each_MaxResultsCount; + Json::Value each_StartPosition; ToJsonUtilP(StartPosition, each_StartPosition); output["StartPosition"] = each_StartPosition; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + return output; + } + }; + + struct GetCharacterLeaderboardResult : public PlayFabResultCommon + { + std::list Leaderboard; + + GetCharacterLeaderboardResult() : + PlayFabResultCommon(), + Leaderboard() + {} + + GetCharacterLeaderboardResult(const GetCharacterLeaderboardResult& src) : + PlayFabResultCommon(), + Leaderboard(src.Leaderboard) + {} + + ~GetCharacterLeaderboardResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Leaderboard"], Leaderboard); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Leaderboard; ToJsonUtilO(Leaderboard, each_Leaderboard); output["Leaderboard"] = each_Leaderboard; + return output; + } + }; + + struct GetCharacterStatisticsRequest : public PlayFabRequestCommon + { + std::string CharacterId; + + GetCharacterStatisticsRequest() : + PlayFabRequestCommon(), + CharacterId() + {} + + GetCharacterStatisticsRequest(const GetCharacterStatisticsRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId) + {} + + ~GetCharacterStatisticsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + return output; + } + }; + + struct GetCharacterStatisticsResult : public PlayFabResultCommon + { + std::map CharacterStatistics; + + GetCharacterStatisticsResult() : + PlayFabResultCommon(), + CharacterStatistics() + {} + + GetCharacterStatisticsResult(const GetCharacterStatisticsResult& src) : + PlayFabResultCommon(), + CharacterStatistics(src.CharacterStatistics) + {} + + ~GetCharacterStatisticsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["CharacterStatistics"], CharacterStatistics); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterStatistics; ToJsonUtilP(CharacterStatistics, each_CharacterStatistics); output["CharacterStatistics"] = each_CharacterStatistics; + return output; + } + }; + + struct GetContentDownloadUrlRequest : public PlayFabRequestCommon + { + std::string HttpMethod; + std::string Key; + Boxed ThruCDN; + + GetContentDownloadUrlRequest() : + PlayFabRequestCommon(), + HttpMethod(), + Key(), + ThruCDN() + {} + + GetContentDownloadUrlRequest(const GetContentDownloadUrlRequest& src) : + PlayFabRequestCommon(), + HttpMethod(src.HttpMethod), + Key(src.Key), + ThruCDN(src.ThruCDN) + {} + + ~GetContentDownloadUrlRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["HttpMethod"], HttpMethod); + FromJsonUtilS(input["Key"], Key); + FromJsonUtilP(input["ThruCDN"], ThruCDN); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_HttpMethod; ToJsonUtilS(HttpMethod, each_HttpMethod); output["HttpMethod"] = each_HttpMethod; + Json::Value each_Key; ToJsonUtilS(Key, each_Key); output["Key"] = each_Key; + Json::Value each_ThruCDN; ToJsonUtilP(ThruCDN, each_ThruCDN); output["ThruCDN"] = each_ThruCDN; + return output; + } + }; + + struct GetContentDownloadUrlResult : public PlayFabResultCommon + { + std::string URL; + + GetContentDownloadUrlResult() : + PlayFabResultCommon(), + URL() + {} + + GetContentDownloadUrlResult(const GetContentDownloadUrlResult& src) : + PlayFabResultCommon(), + URL(src.URL) + {} + + ~GetContentDownloadUrlResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["URL"], URL); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_URL; ToJsonUtilS(URL, each_URL); output["URL"] = each_URL; + return output; + } + }; + + struct PlayerProfileViewConstraints : public PlayFabBaseModel + { + bool ShowAvatarUrl; + bool ShowBannedUntil; + bool ShowCampaignAttributions; + bool ShowContactEmailAddresses; + bool ShowCreated; + bool ShowDisplayName; + bool ShowLastLogin; + bool ShowLinkedAccounts; + bool ShowLocations; + bool ShowMemberships; + bool ShowOrigination; + bool ShowPushNotificationRegistrations; + bool ShowStatistics; + bool ShowTags; + bool ShowTotalValueToDateInUsd; + bool ShowValuesToDate; + + PlayerProfileViewConstraints() : + PlayFabBaseModel(), + ShowAvatarUrl(), + ShowBannedUntil(), + ShowCampaignAttributions(), + ShowContactEmailAddresses(), + ShowCreated(), + ShowDisplayName(), + ShowLastLogin(), + ShowLinkedAccounts(), + ShowLocations(), + ShowMemberships(), + ShowOrigination(), + ShowPushNotificationRegistrations(), + ShowStatistics(), + ShowTags(), + ShowTotalValueToDateInUsd(), + ShowValuesToDate() + {} + + PlayerProfileViewConstraints(const PlayerProfileViewConstraints& src) : + PlayFabBaseModel(), + ShowAvatarUrl(src.ShowAvatarUrl), + ShowBannedUntil(src.ShowBannedUntil), + ShowCampaignAttributions(src.ShowCampaignAttributions), + ShowContactEmailAddresses(src.ShowContactEmailAddresses), + ShowCreated(src.ShowCreated), + ShowDisplayName(src.ShowDisplayName), + ShowLastLogin(src.ShowLastLogin), + ShowLinkedAccounts(src.ShowLinkedAccounts), + ShowLocations(src.ShowLocations), + ShowMemberships(src.ShowMemberships), + ShowOrigination(src.ShowOrigination), + ShowPushNotificationRegistrations(src.ShowPushNotificationRegistrations), + ShowStatistics(src.ShowStatistics), + ShowTags(src.ShowTags), + ShowTotalValueToDateInUsd(src.ShowTotalValueToDateInUsd), + ShowValuesToDate(src.ShowValuesToDate) + {} + + ~PlayerProfileViewConstraints() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["ShowAvatarUrl"], ShowAvatarUrl); + FromJsonUtilP(input["ShowBannedUntil"], ShowBannedUntil); + FromJsonUtilP(input["ShowCampaignAttributions"], ShowCampaignAttributions); + FromJsonUtilP(input["ShowContactEmailAddresses"], ShowContactEmailAddresses); + FromJsonUtilP(input["ShowCreated"], ShowCreated); + FromJsonUtilP(input["ShowDisplayName"], ShowDisplayName); + FromJsonUtilP(input["ShowLastLogin"], ShowLastLogin); + FromJsonUtilP(input["ShowLinkedAccounts"], ShowLinkedAccounts); + FromJsonUtilP(input["ShowLocations"], ShowLocations); + FromJsonUtilP(input["ShowMemberships"], ShowMemberships); + FromJsonUtilP(input["ShowOrigination"], ShowOrigination); + FromJsonUtilP(input["ShowPushNotificationRegistrations"], ShowPushNotificationRegistrations); + FromJsonUtilP(input["ShowStatistics"], ShowStatistics); + FromJsonUtilP(input["ShowTags"], ShowTags); + FromJsonUtilP(input["ShowTotalValueToDateInUsd"], ShowTotalValueToDateInUsd); + FromJsonUtilP(input["ShowValuesToDate"], ShowValuesToDate); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ShowAvatarUrl; ToJsonUtilP(ShowAvatarUrl, each_ShowAvatarUrl); output["ShowAvatarUrl"] = each_ShowAvatarUrl; + Json::Value each_ShowBannedUntil; ToJsonUtilP(ShowBannedUntil, each_ShowBannedUntil); output["ShowBannedUntil"] = each_ShowBannedUntil; + Json::Value each_ShowCampaignAttributions; ToJsonUtilP(ShowCampaignAttributions, each_ShowCampaignAttributions); output["ShowCampaignAttributions"] = each_ShowCampaignAttributions; + Json::Value each_ShowContactEmailAddresses; ToJsonUtilP(ShowContactEmailAddresses, each_ShowContactEmailAddresses); output["ShowContactEmailAddresses"] = each_ShowContactEmailAddresses; + Json::Value each_ShowCreated; ToJsonUtilP(ShowCreated, each_ShowCreated); output["ShowCreated"] = each_ShowCreated; + Json::Value each_ShowDisplayName; ToJsonUtilP(ShowDisplayName, each_ShowDisplayName); output["ShowDisplayName"] = each_ShowDisplayName; + Json::Value each_ShowLastLogin; ToJsonUtilP(ShowLastLogin, each_ShowLastLogin); output["ShowLastLogin"] = each_ShowLastLogin; + Json::Value each_ShowLinkedAccounts; ToJsonUtilP(ShowLinkedAccounts, each_ShowLinkedAccounts); output["ShowLinkedAccounts"] = each_ShowLinkedAccounts; + Json::Value each_ShowLocations; ToJsonUtilP(ShowLocations, each_ShowLocations); output["ShowLocations"] = each_ShowLocations; + Json::Value each_ShowMemberships; ToJsonUtilP(ShowMemberships, each_ShowMemberships); output["ShowMemberships"] = each_ShowMemberships; + Json::Value each_ShowOrigination; ToJsonUtilP(ShowOrigination, each_ShowOrigination); output["ShowOrigination"] = each_ShowOrigination; + Json::Value each_ShowPushNotificationRegistrations; ToJsonUtilP(ShowPushNotificationRegistrations, each_ShowPushNotificationRegistrations); output["ShowPushNotificationRegistrations"] = each_ShowPushNotificationRegistrations; + Json::Value each_ShowStatistics; ToJsonUtilP(ShowStatistics, each_ShowStatistics); output["ShowStatistics"] = each_ShowStatistics; + Json::Value each_ShowTags; ToJsonUtilP(ShowTags, each_ShowTags); output["ShowTags"] = each_ShowTags; + Json::Value each_ShowTotalValueToDateInUsd; ToJsonUtilP(ShowTotalValueToDateInUsd, each_ShowTotalValueToDateInUsd); output["ShowTotalValueToDateInUsd"] = each_ShowTotalValueToDateInUsd; + Json::Value each_ShowValuesToDate; ToJsonUtilP(ShowValuesToDate, each_ShowValuesToDate); output["ShowValuesToDate"] = each_ShowValuesToDate; + return output; + } + }; + + struct GetFriendLeaderboardAroundPlayerRequest : public PlayFabRequestCommon + { + Boxed IncludeFacebookFriends; + Boxed IncludeSteamFriends; + Boxed MaxResultsCount; + std::string PlayFabId; + Boxed ProfileConstraints; + std::string StatisticName; + Boxed Version; + + GetFriendLeaderboardAroundPlayerRequest() : + PlayFabRequestCommon(), + IncludeFacebookFriends(), + IncludeSteamFriends(), + MaxResultsCount(), + PlayFabId(), + ProfileConstraints(), + StatisticName(), + Version() + {} + + GetFriendLeaderboardAroundPlayerRequest(const GetFriendLeaderboardAroundPlayerRequest& src) : + PlayFabRequestCommon(), + IncludeFacebookFriends(src.IncludeFacebookFriends), + IncludeSteamFriends(src.IncludeSteamFriends), + MaxResultsCount(src.MaxResultsCount), + PlayFabId(src.PlayFabId), + ProfileConstraints(src.ProfileConstraints), + StatisticName(src.StatisticName), + Version(src.Version) + {} + + ~GetFriendLeaderboardAroundPlayerRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["IncludeFacebookFriends"], IncludeFacebookFriends); + FromJsonUtilP(input["IncludeSteamFriends"], IncludeSteamFriends); + FromJsonUtilP(input["MaxResultsCount"], MaxResultsCount); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilO(input["ProfileConstraints"], ProfileConstraints); + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_IncludeFacebookFriends; ToJsonUtilP(IncludeFacebookFriends, each_IncludeFacebookFriends); output["IncludeFacebookFriends"] = each_IncludeFacebookFriends; + Json::Value each_IncludeSteamFriends; ToJsonUtilP(IncludeSteamFriends, each_IncludeSteamFriends); output["IncludeSteamFriends"] = each_IncludeSteamFriends; + Json::Value each_MaxResultsCount; ToJsonUtilP(MaxResultsCount, each_MaxResultsCount); output["MaxResultsCount"] = each_MaxResultsCount; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_ProfileConstraints; ToJsonUtilO(ProfileConstraints, each_ProfileConstraints); output["ProfileConstraints"] = each_ProfileConstraints; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct PlayerLeaderboardEntry : public PlayFabBaseModel + { + std::string DisplayName; + std::string PlayFabId; + Int32 Position; + Boxed Profile; + Int32 StatValue; + + PlayerLeaderboardEntry() : + PlayFabBaseModel(), + DisplayName(), + PlayFabId(), + Position(), + Profile(), + StatValue() + {} + + PlayerLeaderboardEntry(const PlayerLeaderboardEntry& src) : + PlayFabBaseModel(), + DisplayName(src.DisplayName), + PlayFabId(src.PlayFabId), + Position(src.Position), + Profile(src.Profile), + StatValue(src.StatValue) + {} + + ~PlayerLeaderboardEntry() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilP(input["Position"], Position); + FromJsonUtilO(input["Profile"], Profile); + FromJsonUtilP(input["StatValue"], StatValue); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Position; ToJsonUtilP(Position, each_Position); output["Position"] = each_Position; + Json::Value each_Profile; ToJsonUtilO(Profile, each_Profile); output["Profile"] = each_Profile; + Json::Value each_StatValue; ToJsonUtilP(StatValue, each_StatValue); output["StatValue"] = each_StatValue; + return output; + } + }; + + struct GetFriendLeaderboardAroundPlayerResult : public PlayFabResultCommon + { + std::list Leaderboard; + Boxed NextReset; + Int32 Version; + + GetFriendLeaderboardAroundPlayerResult() : + PlayFabResultCommon(), + Leaderboard(), + NextReset(), + Version() + {} + + GetFriendLeaderboardAroundPlayerResult(const GetFriendLeaderboardAroundPlayerResult& src) : + PlayFabResultCommon(), + Leaderboard(src.Leaderboard), + NextReset(src.NextReset), + Version(src.Version) + {} + + ~GetFriendLeaderboardAroundPlayerResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Leaderboard"], Leaderboard); + FromJsonUtilT(input["NextReset"], NextReset); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Leaderboard; ToJsonUtilO(Leaderboard, each_Leaderboard); output["Leaderboard"] = each_Leaderboard; + Json::Value each_NextReset; ToJsonUtilT(NextReset, each_NextReset); output["NextReset"] = each_NextReset; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetFriendLeaderboardRequest : public PlayFabRequestCommon + { + Boxed IncludeFacebookFriends; + Boxed IncludeSteamFriends; + Boxed MaxResultsCount; + Boxed ProfileConstraints; + Int32 StartPosition; + std::string StatisticName; + Boxed Version; + + GetFriendLeaderboardRequest() : + PlayFabRequestCommon(), + IncludeFacebookFriends(), + IncludeSteamFriends(), + MaxResultsCount(), + ProfileConstraints(), + StartPosition(), + StatisticName(), + Version() + {} + + GetFriendLeaderboardRequest(const GetFriendLeaderboardRequest& src) : + PlayFabRequestCommon(), + IncludeFacebookFriends(src.IncludeFacebookFriends), + IncludeSteamFriends(src.IncludeSteamFriends), + MaxResultsCount(src.MaxResultsCount), + ProfileConstraints(src.ProfileConstraints), + StartPosition(src.StartPosition), + StatisticName(src.StatisticName), + Version(src.Version) + {} + + ~GetFriendLeaderboardRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["IncludeFacebookFriends"], IncludeFacebookFriends); + FromJsonUtilP(input["IncludeSteamFriends"], IncludeSteamFriends); + FromJsonUtilP(input["MaxResultsCount"], MaxResultsCount); + FromJsonUtilO(input["ProfileConstraints"], ProfileConstraints); + FromJsonUtilP(input["StartPosition"], StartPosition); + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_IncludeFacebookFriends; ToJsonUtilP(IncludeFacebookFriends, each_IncludeFacebookFriends); output["IncludeFacebookFriends"] = each_IncludeFacebookFriends; + Json::Value each_IncludeSteamFriends; ToJsonUtilP(IncludeSteamFriends, each_IncludeSteamFriends); output["IncludeSteamFriends"] = each_IncludeSteamFriends; + Json::Value each_MaxResultsCount; ToJsonUtilP(MaxResultsCount, each_MaxResultsCount); output["MaxResultsCount"] = each_MaxResultsCount; + Json::Value each_ProfileConstraints; ToJsonUtilO(ProfileConstraints, each_ProfileConstraints); output["ProfileConstraints"] = each_ProfileConstraints; + Json::Value each_StartPosition; ToJsonUtilP(StartPosition, each_StartPosition); output["StartPosition"] = each_StartPosition; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetFriendsListRequest : public PlayFabRequestCommon + { + Boxed IncludeFacebookFriends; + Boxed IncludeSteamFriends; + Boxed ProfileConstraints; + + GetFriendsListRequest() : + PlayFabRequestCommon(), + IncludeFacebookFriends(), + IncludeSteamFriends(), + ProfileConstraints() + {} + + GetFriendsListRequest(const GetFriendsListRequest& src) : + PlayFabRequestCommon(), + IncludeFacebookFriends(src.IncludeFacebookFriends), + IncludeSteamFriends(src.IncludeSteamFriends), + ProfileConstraints(src.ProfileConstraints) + {} + + ~GetFriendsListRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["IncludeFacebookFriends"], IncludeFacebookFriends); + FromJsonUtilP(input["IncludeSteamFriends"], IncludeSteamFriends); + FromJsonUtilO(input["ProfileConstraints"], ProfileConstraints); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_IncludeFacebookFriends; ToJsonUtilP(IncludeFacebookFriends, each_IncludeFacebookFriends); output["IncludeFacebookFriends"] = each_IncludeFacebookFriends; + Json::Value each_IncludeSteamFriends; ToJsonUtilP(IncludeSteamFriends, each_IncludeSteamFriends); output["IncludeSteamFriends"] = each_IncludeSteamFriends; + Json::Value each_ProfileConstraints; ToJsonUtilO(ProfileConstraints, each_ProfileConstraints); output["ProfileConstraints"] = each_ProfileConstraints; + return output; + } + }; + + struct GetFriendsListResult : public PlayFabResultCommon + { + std::list Friends; + + GetFriendsListResult() : + PlayFabResultCommon(), + Friends() + {} + + GetFriendsListResult(const GetFriendsListResult& src) : + PlayFabResultCommon(), + Friends(src.Friends) + {} + + ~GetFriendsListResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Friends"], Friends); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Friends; ToJsonUtilO(Friends, each_Friends); output["Friends"] = each_Friends; + return output; + } + }; + + struct GetLeaderboardAroundCharacterRequest : public PlayFabRequestCommon + { + std::string CharacterId; + std::string CharacterType; + Boxed MaxResultsCount; + std::string StatisticName; + + GetLeaderboardAroundCharacterRequest() : + PlayFabRequestCommon(), + CharacterId(), + CharacterType(), + MaxResultsCount(), + StatisticName() + {} + + GetLeaderboardAroundCharacterRequest(const GetLeaderboardAroundCharacterRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + CharacterType(src.CharacterType), + MaxResultsCount(src.MaxResultsCount), + StatisticName(src.StatisticName) + {} + + ~GetLeaderboardAroundCharacterRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["CharacterType"], CharacterType); + FromJsonUtilP(input["MaxResultsCount"], MaxResultsCount); + FromJsonUtilS(input["StatisticName"], StatisticName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_CharacterType; ToJsonUtilS(CharacterType, each_CharacterType); output["CharacterType"] = each_CharacterType; + Json::Value each_MaxResultsCount; ToJsonUtilP(MaxResultsCount, each_MaxResultsCount); output["MaxResultsCount"] = each_MaxResultsCount; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + return output; + } + }; + + struct GetLeaderboardAroundCharacterResult : public PlayFabResultCommon + { + std::list Leaderboard; + + GetLeaderboardAroundCharacterResult() : + PlayFabResultCommon(), + Leaderboard() + {} + + GetLeaderboardAroundCharacterResult(const GetLeaderboardAroundCharacterResult& src) : + PlayFabResultCommon(), + Leaderboard(src.Leaderboard) + {} + + ~GetLeaderboardAroundCharacterResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Leaderboard"], Leaderboard); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Leaderboard; ToJsonUtilO(Leaderboard, each_Leaderboard); output["Leaderboard"] = each_Leaderboard; + return output; + } + }; + + struct GetLeaderboardAroundPlayerRequest : public PlayFabRequestCommon + { + Boxed MaxResultsCount; + std::string PlayFabId; + Boxed ProfileConstraints; + std::string StatisticName; + Boxed Version; + + GetLeaderboardAroundPlayerRequest() : + PlayFabRequestCommon(), + MaxResultsCount(), + PlayFabId(), + ProfileConstraints(), + StatisticName(), + Version() + {} + + GetLeaderboardAroundPlayerRequest(const GetLeaderboardAroundPlayerRequest& src) : + PlayFabRequestCommon(), + MaxResultsCount(src.MaxResultsCount), + PlayFabId(src.PlayFabId), + ProfileConstraints(src.ProfileConstraints), + StatisticName(src.StatisticName), + Version(src.Version) + {} + + ~GetLeaderboardAroundPlayerRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["MaxResultsCount"], MaxResultsCount); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilO(input["ProfileConstraints"], ProfileConstraints); + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_MaxResultsCount; ToJsonUtilP(MaxResultsCount, each_MaxResultsCount); output["MaxResultsCount"] = each_MaxResultsCount; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_ProfileConstraints; ToJsonUtilO(ProfileConstraints, each_ProfileConstraints); output["ProfileConstraints"] = each_ProfileConstraints; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetLeaderboardAroundPlayerResult : public PlayFabResultCommon + { + std::list Leaderboard; + Boxed NextReset; + Int32 Version; + + GetLeaderboardAroundPlayerResult() : + PlayFabResultCommon(), + Leaderboard(), + NextReset(), + Version() + {} + + GetLeaderboardAroundPlayerResult(const GetLeaderboardAroundPlayerResult& src) : + PlayFabResultCommon(), + Leaderboard(src.Leaderboard), + NextReset(src.NextReset), + Version(src.Version) + {} + + ~GetLeaderboardAroundPlayerResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Leaderboard"], Leaderboard); + FromJsonUtilT(input["NextReset"], NextReset); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Leaderboard; ToJsonUtilO(Leaderboard, each_Leaderboard); output["Leaderboard"] = each_Leaderboard; + Json::Value each_NextReset; ToJsonUtilT(NextReset, each_NextReset); output["NextReset"] = each_NextReset; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetLeaderboardForUsersCharactersRequest : public PlayFabRequestCommon + { + Int32 MaxResultsCount; + std::string StatisticName; + + GetLeaderboardForUsersCharactersRequest() : + PlayFabRequestCommon(), + MaxResultsCount(), + StatisticName() + {} + + GetLeaderboardForUsersCharactersRequest(const GetLeaderboardForUsersCharactersRequest& src) : + PlayFabRequestCommon(), + MaxResultsCount(src.MaxResultsCount), + StatisticName(src.StatisticName) + {} + + ~GetLeaderboardForUsersCharactersRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["MaxResultsCount"], MaxResultsCount); + FromJsonUtilS(input["StatisticName"], StatisticName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_MaxResultsCount; ToJsonUtilP(MaxResultsCount, each_MaxResultsCount); output["MaxResultsCount"] = each_MaxResultsCount; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + return output; + } + }; + + struct GetLeaderboardForUsersCharactersResult : public PlayFabResultCommon + { + std::list Leaderboard; + + GetLeaderboardForUsersCharactersResult() : + PlayFabResultCommon(), + Leaderboard() + {} + + GetLeaderboardForUsersCharactersResult(const GetLeaderboardForUsersCharactersResult& src) : + PlayFabResultCommon(), + Leaderboard(src.Leaderboard) + {} + + ~GetLeaderboardForUsersCharactersResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Leaderboard"], Leaderboard); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Leaderboard; ToJsonUtilO(Leaderboard, each_Leaderboard); output["Leaderboard"] = each_Leaderboard; + return output; + } + }; + + struct GetLeaderboardRequest : public PlayFabRequestCommon + { + Boxed MaxResultsCount; + Boxed ProfileConstraints; + Int32 StartPosition; + std::string StatisticName; + Boxed Version; + + GetLeaderboardRequest() : + PlayFabRequestCommon(), + MaxResultsCount(), + ProfileConstraints(), + StartPosition(), + StatisticName(), + Version() + {} + + GetLeaderboardRequest(const GetLeaderboardRequest& src) : + PlayFabRequestCommon(), + MaxResultsCount(src.MaxResultsCount), + ProfileConstraints(src.ProfileConstraints), + StartPosition(src.StartPosition), + StatisticName(src.StatisticName), + Version(src.Version) + {} + + ~GetLeaderboardRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["MaxResultsCount"], MaxResultsCount); + FromJsonUtilO(input["ProfileConstraints"], ProfileConstraints); + FromJsonUtilP(input["StartPosition"], StartPosition); + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_MaxResultsCount; ToJsonUtilP(MaxResultsCount, each_MaxResultsCount); output["MaxResultsCount"] = each_MaxResultsCount; + Json::Value each_ProfileConstraints; ToJsonUtilO(ProfileConstraints, each_ProfileConstraints); output["ProfileConstraints"] = each_ProfileConstraints; + Json::Value each_StartPosition; ToJsonUtilP(StartPosition, each_StartPosition); output["StartPosition"] = each_StartPosition; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetLeaderboardResult : public PlayFabResultCommon + { + std::list Leaderboard; + Boxed NextReset; + Int32 Version; + + GetLeaderboardResult() : + PlayFabResultCommon(), + Leaderboard(), + NextReset(), + Version() + {} + + GetLeaderboardResult(const GetLeaderboardResult& src) : + PlayFabResultCommon(), + Leaderboard(src.Leaderboard), + NextReset(src.NextReset), + Version(src.Version) + {} + + ~GetLeaderboardResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Leaderboard"], Leaderboard); + FromJsonUtilT(input["NextReset"], NextReset); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Leaderboard; ToJsonUtilO(Leaderboard, each_Leaderboard); output["Leaderboard"] = each_Leaderboard; + Json::Value each_NextReset; ToJsonUtilT(NextReset, each_NextReset); output["NextReset"] = each_NextReset; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetPaymentTokenRequest : public PlayFabRequestCommon + { + std::string TokenProvider; + + GetPaymentTokenRequest() : + PlayFabRequestCommon(), + TokenProvider() + {} + + GetPaymentTokenRequest(const GetPaymentTokenRequest& src) : + PlayFabRequestCommon(), + TokenProvider(src.TokenProvider) + {} + + ~GetPaymentTokenRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["TokenProvider"], TokenProvider); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_TokenProvider; ToJsonUtilS(TokenProvider, each_TokenProvider); output["TokenProvider"] = each_TokenProvider; + return output; + } + }; + + struct GetPaymentTokenResult : public PlayFabResultCommon + { + std::string OrderId; + std::string ProviderToken; + + GetPaymentTokenResult() : + PlayFabResultCommon(), + OrderId(), + ProviderToken() + {} + + GetPaymentTokenResult(const GetPaymentTokenResult& src) : + PlayFabResultCommon(), + OrderId(src.OrderId), + ProviderToken(src.ProviderToken) + {} + + ~GetPaymentTokenResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["OrderId"], OrderId); + FromJsonUtilS(input["ProviderToken"], ProviderToken); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_OrderId; ToJsonUtilS(OrderId, each_OrderId); output["OrderId"] = each_OrderId; + Json::Value each_ProviderToken; ToJsonUtilS(ProviderToken, each_ProviderToken); output["ProviderToken"] = each_ProviderToken; + return output; + } + }; + + struct GetPhotonAuthenticationTokenRequest : public PlayFabRequestCommon + { + std::string PhotonApplicationId; + + GetPhotonAuthenticationTokenRequest() : + PlayFabRequestCommon(), + PhotonApplicationId() + {} + + GetPhotonAuthenticationTokenRequest(const GetPhotonAuthenticationTokenRequest& src) : + PlayFabRequestCommon(), + PhotonApplicationId(src.PhotonApplicationId) + {} + + ~GetPhotonAuthenticationTokenRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PhotonApplicationId"], PhotonApplicationId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PhotonApplicationId; ToJsonUtilS(PhotonApplicationId, each_PhotonApplicationId); output["PhotonApplicationId"] = each_PhotonApplicationId; + return output; + } + }; + + struct GetPhotonAuthenticationTokenResult : public PlayFabResultCommon + { + std::string PhotonCustomAuthenticationToken; + + GetPhotonAuthenticationTokenResult() : + PlayFabResultCommon(), + PhotonCustomAuthenticationToken() + {} + + GetPhotonAuthenticationTokenResult(const GetPhotonAuthenticationTokenResult& src) : + PlayFabResultCommon(), + PhotonCustomAuthenticationToken(src.PhotonCustomAuthenticationToken) + {} + + ~GetPhotonAuthenticationTokenResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PhotonCustomAuthenticationToken"], PhotonCustomAuthenticationToken); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PhotonCustomAuthenticationToken; ToJsonUtilS(PhotonCustomAuthenticationToken, each_PhotonCustomAuthenticationToken); output["PhotonCustomAuthenticationToken"] = each_PhotonCustomAuthenticationToken; + return output; + } + }; + + struct GetPlayerCombinedInfoRequestParams : public PlayFabBaseModel + { + bool GetCharacterInventories; + bool GetCharacterList; + bool GetPlayerProfile; + bool GetPlayerStatistics; + bool GetTitleData; + bool GetUserAccountInfo; + bool GetUserData; + bool GetUserInventory; + bool GetUserReadOnlyData; + bool GetUserVirtualCurrency; + std::list PlayerStatisticNames; + Boxed ProfileConstraints; + std::list TitleDataKeys; + std::list UserDataKeys; + std::list UserReadOnlyDataKeys; + + GetPlayerCombinedInfoRequestParams() : + PlayFabBaseModel(), + GetCharacterInventories(), + GetCharacterList(), + GetPlayerProfile(), + GetPlayerStatistics(), + GetTitleData(), + GetUserAccountInfo(), + GetUserData(), + GetUserInventory(), + GetUserReadOnlyData(), + GetUserVirtualCurrency(), + PlayerStatisticNames(), + ProfileConstraints(), + TitleDataKeys(), + UserDataKeys(), + UserReadOnlyDataKeys() + {} + + GetPlayerCombinedInfoRequestParams(const GetPlayerCombinedInfoRequestParams& src) : + PlayFabBaseModel(), + GetCharacterInventories(src.GetCharacterInventories), + GetCharacterList(src.GetCharacterList), + GetPlayerProfile(src.GetPlayerProfile), + GetPlayerStatistics(src.GetPlayerStatistics), + GetTitleData(src.GetTitleData), + GetUserAccountInfo(src.GetUserAccountInfo), + GetUserData(src.GetUserData), + GetUserInventory(src.GetUserInventory), + GetUserReadOnlyData(src.GetUserReadOnlyData), + GetUserVirtualCurrency(src.GetUserVirtualCurrency), + PlayerStatisticNames(src.PlayerStatisticNames), + ProfileConstraints(src.ProfileConstraints), + TitleDataKeys(src.TitleDataKeys), + UserDataKeys(src.UserDataKeys), + UserReadOnlyDataKeys(src.UserReadOnlyDataKeys) + {} + + ~GetPlayerCombinedInfoRequestParams() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["GetCharacterInventories"], GetCharacterInventories); + FromJsonUtilP(input["GetCharacterList"], GetCharacterList); + FromJsonUtilP(input["GetPlayerProfile"], GetPlayerProfile); + FromJsonUtilP(input["GetPlayerStatistics"], GetPlayerStatistics); + FromJsonUtilP(input["GetTitleData"], GetTitleData); + FromJsonUtilP(input["GetUserAccountInfo"], GetUserAccountInfo); + FromJsonUtilP(input["GetUserData"], GetUserData); + FromJsonUtilP(input["GetUserInventory"], GetUserInventory); + FromJsonUtilP(input["GetUserReadOnlyData"], GetUserReadOnlyData); + FromJsonUtilP(input["GetUserVirtualCurrency"], GetUserVirtualCurrency); + FromJsonUtilS(input["PlayerStatisticNames"], PlayerStatisticNames); + FromJsonUtilO(input["ProfileConstraints"], ProfileConstraints); + FromJsonUtilS(input["TitleDataKeys"], TitleDataKeys); + FromJsonUtilS(input["UserDataKeys"], UserDataKeys); + FromJsonUtilS(input["UserReadOnlyDataKeys"], UserReadOnlyDataKeys); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GetCharacterInventories; ToJsonUtilP(GetCharacterInventories, each_GetCharacterInventories); output["GetCharacterInventories"] = each_GetCharacterInventories; + Json::Value each_GetCharacterList; ToJsonUtilP(GetCharacterList, each_GetCharacterList); output["GetCharacterList"] = each_GetCharacterList; + Json::Value each_GetPlayerProfile; ToJsonUtilP(GetPlayerProfile, each_GetPlayerProfile); output["GetPlayerProfile"] = each_GetPlayerProfile; + Json::Value each_GetPlayerStatistics; ToJsonUtilP(GetPlayerStatistics, each_GetPlayerStatistics); output["GetPlayerStatistics"] = each_GetPlayerStatistics; + Json::Value each_GetTitleData; ToJsonUtilP(GetTitleData, each_GetTitleData); output["GetTitleData"] = each_GetTitleData; + Json::Value each_GetUserAccountInfo; ToJsonUtilP(GetUserAccountInfo, each_GetUserAccountInfo); output["GetUserAccountInfo"] = each_GetUserAccountInfo; + Json::Value each_GetUserData; ToJsonUtilP(GetUserData, each_GetUserData); output["GetUserData"] = each_GetUserData; + Json::Value each_GetUserInventory; ToJsonUtilP(GetUserInventory, each_GetUserInventory); output["GetUserInventory"] = each_GetUserInventory; + Json::Value each_GetUserReadOnlyData; ToJsonUtilP(GetUserReadOnlyData, each_GetUserReadOnlyData); output["GetUserReadOnlyData"] = each_GetUserReadOnlyData; + Json::Value each_GetUserVirtualCurrency; ToJsonUtilP(GetUserVirtualCurrency, each_GetUserVirtualCurrency); output["GetUserVirtualCurrency"] = each_GetUserVirtualCurrency; + Json::Value each_PlayerStatisticNames; ToJsonUtilS(PlayerStatisticNames, each_PlayerStatisticNames); output["PlayerStatisticNames"] = each_PlayerStatisticNames; + Json::Value each_ProfileConstraints; ToJsonUtilO(ProfileConstraints, each_ProfileConstraints); output["ProfileConstraints"] = each_ProfileConstraints; + Json::Value each_TitleDataKeys; ToJsonUtilS(TitleDataKeys, each_TitleDataKeys); output["TitleDataKeys"] = each_TitleDataKeys; + Json::Value each_UserDataKeys; ToJsonUtilS(UserDataKeys, each_UserDataKeys); output["UserDataKeys"] = each_UserDataKeys; + Json::Value each_UserReadOnlyDataKeys; ToJsonUtilS(UserReadOnlyDataKeys, each_UserReadOnlyDataKeys); output["UserReadOnlyDataKeys"] = each_UserReadOnlyDataKeys; + return output; + } + }; + + struct GetPlayerCombinedInfoRequest : public PlayFabRequestCommon + { + GetPlayerCombinedInfoRequestParams InfoRequestParameters; + std::string PlayFabId; + + GetPlayerCombinedInfoRequest() : + PlayFabRequestCommon(), + InfoRequestParameters(), + PlayFabId() + {} + + GetPlayerCombinedInfoRequest(const GetPlayerCombinedInfoRequest& src) : + PlayFabRequestCommon(), + InfoRequestParameters(src.InfoRequestParameters), + PlayFabId(src.PlayFabId) + {} + + ~GetPlayerCombinedInfoRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["InfoRequestParameters"], InfoRequestParameters); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_InfoRequestParameters; ToJsonUtilO(InfoRequestParameters, each_InfoRequestParameters); output["InfoRequestParameters"] = each_InfoRequestParameters; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct StatisticValue : public PlayFabBaseModel + { + std::string StatisticName; + Int32 Value; + Uint32 Version; + + StatisticValue() : + PlayFabBaseModel(), + StatisticName(), + Value(), + Version() + {} + + StatisticValue(const StatisticValue& src) : + PlayFabBaseModel(), + StatisticName(src.StatisticName), + Value(src.Value), + Version(src.Version) + {} + + ~StatisticValue() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilP(input["Value"], Value); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_Value; ToJsonUtilP(Value, each_Value); output["Value"] = each_Value; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetPlayerCombinedInfoResultPayload : public PlayFabBaseModel + { + Boxed AccountInfo; + std::list CharacterInventories; + std::list CharacterList; + Boxed PlayerProfile; + std::list PlayerStatistics; + std::map TitleData; + std::map UserData; + Uint32 UserDataVersion; + std::list UserInventory; + std::map UserReadOnlyData; + Uint32 UserReadOnlyDataVersion; + std::map UserVirtualCurrency; + std::map UserVirtualCurrencyRechargeTimes; + + GetPlayerCombinedInfoResultPayload() : + PlayFabBaseModel(), + AccountInfo(), + CharacterInventories(), + CharacterList(), + PlayerProfile(), + PlayerStatistics(), + TitleData(), + UserData(), + UserDataVersion(), + UserInventory(), + UserReadOnlyData(), + UserReadOnlyDataVersion(), + UserVirtualCurrency(), + UserVirtualCurrencyRechargeTimes() + {} + + GetPlayerCombinedInfoResultPayload(const GetPlayerCombinedInfoResultPayload& src) : + PlayFabBaseModel(), + AccountInfo(src.AccountInfo), + CharacterInventories(src.CharacterInventories), + CharacterList(src.CharacterList), + PlayerProfile(src.PlayerProfile), + PlayerStatistics(src.PlayerStatistics), + TitleData(src.TitleData), + UserData(src.UserData), + UserDataVersion(src.UserDataVersion), + UserInventory(src.UserInventory), + UserReadOnlyData(src.UserReadOnlyData), + UserReadOnlyDataVersion(src.UserReadOnlyDataVersion), + UserVirtualCurrency(src.UserVirtualCurrency), + UserVirtualCurrencyRechargeTimes(src.UserVirtualCurrencyRechargeTimes) + {} + + ~GetPlayerCombinedInfoResultPayload() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["AccountInfo"], AccountInfo); + FromJsonUtilO(input["CharacterInventories"], CharacterInventories); + FromJsonUtilO(input["CharacterList"], CharacterList); + FromJsonUtilO(input["PlayerProfile"], PlayerProfile); + FromJsonUtilO(input["PlayerStatistics"], PlayerStatistics); + FromJsonUtilS(input["TitleData"], TitleData); + FromJsonUtilO(input["UserData"], UserData); + FromJsonUtilP(input["UserDataVersion"], UserDataVersion); + FromJsonUtilO(input["UserInventory"], UserInventory); + FromJsonUtilO(input["UserReadOnlyData"], UserReadOnlyData); + FromJsonUtilP(input["UserReadOnlyDataVersion"], UserReadOnlyDataVersion); + FromJsonUtilP(input["UserVirtualCurrency"], UserVirtualCurrency); + FromJsonUtilO(input["UserVirtualCurrencyRechargeTimes"], UserVirtualCurrencyRechargeTimes); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AccountInfo; ToJsonUtilO(AccountInfo, each_AccountInfo); output["AccountInfo"] = each_AccountInfo; + Json::Value each_CharacterInventories; ToJsonUtilO(CharacterInventories, each_CharacterInventories); output["CharacterInventories"] = each_CharacterInventories; + Json::Value each_CharacterList; ToJsonUtilO(CharacterList, each_CharacterList); output["CharacterList"] = each_CharacterList; + Json::Value each_PlayerProfile; ToJsonUtilO(PlayerProfile, each_PlayerProfile); output["PlayerProfile"] = each_PlayerProfile; + Json::Value each_PlayerStatistics; ToJsonUtilO(PlayerStatistics, each_PlayerStatistics); output["PlayerStatistics"] = each_PlayerStatistics; + Json::Value each_TitleData; ToJsonUtilS(TitleData, each_TitleData); output["TitleData"] = each_TitleData; + Json::Value each_UserData; ToJsonUtilO(UserData, each_UserData); output["UserData"] = each_UserData; + Json::Value each_UserDataVersion; ToJsonUtilP(UserDataVersion, each_UserDataVersion); output["UserDataVersion"] = each_UserDataVersion; + Json::Value each_UserInventory; ToJsonUtilO(UserInventory, each_UserInventory); output["UserInventory"] = each_UserInventory; + Json::Value each_UserReadOnlyData; ToJsonUtilO(UserReadOnlyData, each_UserReadOnlyData); output["UserReadOnlyData"] = each_UserReadOnlyData; + Json::Value each_UserReadOnlyDataVersion; ToJsonUtilP(UserReadOnlyDataVersion, each_UserReadOnlyDataVersion); output["UserReadOnlyDataVersion"] = each_UserReadOnlyDataVersion; + Json::Value each_UserVirtualCurrency; ToJsonUtilP(UserVirtualCurrency, each_UserVirtualCurrency); output["UserVirtualCurrency"] = each_UserVirtualCurrency; + Json::Value each_UserVirtualCurrencyRechargeTimes; ToJsonUtilO(UserVirtualCurrencyRechargeTimes, each_UserVirtualCurrencyRechargeTimes); output["UserVirtualCurrencyRechargeTimes"] = each_UserVirtualCurrencyRechargeTimes; + return output; + } + }; + + struct GetPlayerCombinedInfoResult : public PlayFabResultCommon + { + Boxed InfoResultPayload; + std::string PlayFabId; + + GetPlayerCombinedInfoResult() : + PlayFabResultCommon(), + InfoResultPayload(), + PlayFabId() + {} + + GetPlayerCombinedInfoResult(const GetPlayerCombinedInfoResult& src) : + PlayFabResultCommon(), + InfoResultPayload(src.InfoResultPayload), + PlayFabId(src.PlayFabId) + {} + + ~GetPlayerCombinedInfoResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["InfoResultPayload"], InfoResultPayload); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_InfoResultPayload; ToJsonUtilO(InfoResultPayload, each_InfoResultPayload); output["InfoResultPayload"] = each_InfoResultPayload; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetPlayerProfileRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + Boxed ProfileConstraints; + + GetPlayerProfileRequest() : + PlayFabRequestCommon(), + PlayFabId(), + ProfileConstraints() + {} + + GetPlayerProfileRequest(const GetPlayerProfileRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId), + ProfileConstraints(src.ProfileConstraints) + {} + + ~GetPlayerProfileRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilO(input["ProfileConstraints"], ProfileConstraints); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_ProfileConstraints; ToJsonUtilO(ProfileConstraints, each_ProfileConstraints); output["ProfileConstraints"] = each_ProfileConstraints; + return output; + } + }; + + struct GetPlayerProfileResult : public PlayFabResultCommon + { + Boxed PlayerProfile; + + GetPlayerProfileResult() : + PlayFabResultCommon(), + PlayerProfile() + {} + + GetPlayerProfileResult(const GetPlayerProfileResult& src) : + PlayFabResultCommon(), + PlayerProfile(src.PlayerProfile) + {} + + ~GetPlayerProfileResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["PlayerProfile"], PlayerProfile); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayerProfile; ToJsonUtilO(PlayerProfile, each_PlayerProfile); output["PlayerProfile"] = each_PlayerProfile; + return output; + } + }; + + struct GetPlayerSegmentsRequest : public PlayFabRequestCommon + { + + GetPlayerSegmentsRequest() : + PlayFabRequestCommon() + {} + + GetPlayerSegmentsRequest(const GetPlayerSegmentsRequest&) : + PlayFabRequestCommon() + {} + + ~GetPlayerSegmentsRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct GetSegmentResult : public PlayFabResultCommon + { + std::string ABTestParent; + std::string Id; + std::string Name; + + GetSegmentResult() : + PlayFabResultCommon(), + ABTestParent(), + Id(), + Name() + {} + + GetSegmentResult(const GetSegmentResult& src) : + PlayFabResultCommon(), + ABTestParent(src.ABTestParent), + Id(src.Id), + Name(src.Name) + {} + + ~GetSegmentResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ABTestParent"], ABTestParent); + FromJsonUtilS(input["Id"], Id); + FromJsonUtilS(input["Name"], Name); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ABTestParent; ToJsonUtilS(ABTestParent, each_ABTestParent); output["ABTestParent"] = each_ABTestParent; + Json::Value each_Id; ToJsonUtilS(Id, each_Id); output["Id"] = each_Id; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + return output; + } + }; + + struct GetPlayerSegmentsResult : public PlayFabResultCommon + { + std::list Segments; + + GetPlayerSegmentsResult() : + PlayFabResultCommon(), + Segments() + {} + + GetPlayerSegmentsResult(const GetPlayerSegmentsResult& src) : + PlayFabResultCommon(), + Segments(src.Segments) + {} + + ~GetPlayerSegmentsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Segments"], Segments); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Segments; ToJsonUtilO(Segments, each_Segments); output["Segments"] = each_Segments; + return output; + } + }; + + struct StatisticNameVersion : public PlayFabBaseModel + { + std::string StatisticName; + Uint32 Version; + + StatisticNameVersion() : + PlayFabBaseModel(), + StatisticName(), + Version() + {} + + StatisticNameVersion(const StatisticNameVersion& src) : + PlayFabBaseModel(), + StatisticName(src.StatisticName), + Version(src.Version) + {} + + ~StatisticNameVersion() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetPlayerStatisticsRequest : public PlayFabRequestCommon + { + std::list StatisticNames; + std::list StatisticNameVersions; + + GetPlayerStatisticsRequest() : + PlayFabRequestCommon(), + StatisticNames(), + StatisticNameVersions() + {} + + GetPlayerStatisticsRequest(const GetPlayerStatisticsRequest& src) : + PlayFabRequestCommon(), + StatisticNames(src.StatisticNames), + StatisticNameVersions(src.StatisticNameVersions) + {} + + ~GetPlayerStatisticsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["StatisticNames"], StatisticNames); + FromJsonUtilO(input["StatisticNameVersions"], StatisticNameVersions); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_StatisticNames; ToJsonUtilS(StatisticNames, each_StatisticNames); output["StatisticNames"] = each_StatisticNames; + Json::Value each_StatisticNameVersions; ToJsonUtilO(StatisticNameVersions, each_StatisticNameVersions); output["StatisticNameVersions"] = each_StatisticNameVersions; + return output; + } + }; + + struct GetPlayerStatisticsResult : public PlayFabResultCommon + { + std::list Statistics; + + GetPlayerStatisticsResult() : + PlayFabResultCommon(), + Statistics() + {} + + GetPlayerStatisticsResult(const GetPlayerStatisticsResult& src) : + PlayFabResultCommon(), + Statistics(src.Statistics) + {} + + ~GetPlayerStatisticsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Statistics"], Statistics); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Statistics; ToJsonUtilO(Statistics, each_Statistics); output["Statistics"] = each_Statistics; + return output; + } + }; + + struct GetPlayerStatisticVersionsRequest : public PlayFabRequestCommon + { + std::string StatisticName; + + GetPlayerStatisticVersionsRequest() : + PlayFabRequestCommon(), + StatisticName() + {} + + GetPlayerStatisticVersionsRequest(const GetPlayerStatisticVersionsRequest& src) : + PlayFabRequestCommon(), + StatisticName(src.StatisticName) + {} + + ~GetPlayerStatisticVersionsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["StatisticName"], StatisticName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + return output; + } + }; + + struct PlayerStatisticVersion : public PlayFabBaseModel + { + time_t ActivationTime; + Boxed DeactivationTime; + Boxed ScheduledActivationTime; + Boxed ScheduledDeactivationTime; + std::string StatisticName; + Uint32 Version; + + PlayerStatisticVersion() : + PlayFabBaseModel(), + ActivationTime(), + DeactivationTime(), + ScheduledActivationTime(), + ScheduledDeactivationTime(), + StatisticName(), + Version() + {} + + PlayerStatisticVersion(const PlayerStatisticVersion& src) : + PlayFabBaseModel(), + ActivationTime(src.ActivationTime), + DeactivationTime(src.DeactivationTime), + ScheduledActivationTime(src.ScheduledActivationTime), + ScheduledDeactivationTime(src.ScheduledDeactivationTime), + StatisticName(src.StatisticName), + Version(src.Version) + {} + + ~PlayerStatisticVersion() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["ActivationTime"], ActivationTime); + FromJsonUtilT(input["DeactivationTime"], DeactivationTime); + FromJsonUtilT(input["ScheduledActivationTime"], ScheduledActivationTime); + FromJsonUtilT(input["ScheduledDeactivationTime"], ScheduledDeactivationTime); + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ActivationTime; ToJsonUtilT(ActivationTime, each_ActivationTime); output["ActivationTime"] = each_ActivationTime; + Json::Value each_DeactivationTime; ToJsonUtilT(DeactivationTime, each_DeactivationTime); output["DeactivationTime"] = each_DeactivationTime; + Json::Value each_ScheduledActivationTime; ToJsonUtilT(ScheduledActivationTime, each_ScheduledActivationTime); output["ScheduledActivationTime"] = each_ScheduledActivationTime; + Json::Value each_ScheduledDeactivationTime; ToJsonUtilT(ScheduledDeactivationTime, each_ScheduledDeactivationTime); output["ScheduledDeactivationTime"] = each_ScheduledDeactivationTime; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetPlayerStatisticVersionsResult : public PlayFabResultCommon + { + std::list StatisticVersions; + + GetPlayerStatisticVersionsResult() : + PlayFabResultCommon(), + StatisticVersions() + {} + + GetPlayerStatisticVersionsResult(const GetPlayerStatisticVersionsResult& src) : + PlayFabResultCommon(), + StatisticVersions(src.StatisticVersions) + {} + + ~GetPlayerStatisticVersionsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["StatisticVersions"], StatisticVersions); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_StatisticVersions; ToJsonUtilO(StatisticVersions, each_StatisticVersions); output["StatisticVersions"] = each_StatisticVersions; + return output; + } + }; + + struct GetPlayerTagsRequest : public PlayFabRequestCommon + { + std::string Namespace; + std::string PlayFabId; + + GetPlayerTagsRequest() : + PlayFabRequestCommon(), + Namespace(), + PlayFabId() + {} + + GetPlayerTagsRequest(const GetPlayerTagsRequest& src) : + PlayFabRequestCommon(), + Namespace(src.Namespace), + PlayFabId(src.PlayFabId) + {} + + ~GetPlayerTagsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Namespace"], Namespace); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Namespace; ToJsonUtilS(Namespace, each_Namespace); output["Namespace"] = each_Namespace; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetPlayerTagsResult : public PlayFabResultCommon + { + std::string PlayFabId; + std::list Tags; + + GetPlayerTagsResult() : + PlayFabResultCommon(), + PlayFabId(), + Tags() + {} + + GetPlayerTagsResult(const GetPlayerTagsResult& src) : + PlayFabResultCommon(), + PlayFabId(src.PlayFabId), + Tags(src.Tags) + {} + + ~GetPlayerTagsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["Tags"], Tags); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Tags; ToJsonUtilS(Tags, each_Tags); output["Tags"] = each_Tags; + return output; + } + }; + + struct GetPlayerTradesRequest : public PlayFabRequestCommon + { + Boxed StatusFilter; + + GetPlayerTradesRequest() : + PlayFabRequestCommon(), + StatusFilter() + {} + + GetPlayerTradesRequest(const GetPlayerTradesRequest& src) : + PlayFabRequestCommon(), + StatusFilter(src.StatusFilter) + {} + + ~GetPlayerTradesRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilE(input["StatusFilter"], StatusFilter); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_StatusFilter; ToJsonUtilE(StatusFilter, each_StatusFilter); output["StatusFilter"] = each_StatusFilter; + return output; + } + }; + + struct GetPlayerTradesResponse : public PlayFabResultCommon + { + std::list AcceptedTrades; + std::list OpenedTrades; + + GetPlayerTradesResponse() : + PlayFabResultCommon(), + AcceptedTrades(), + OpenedTrades() + {} + + GetPlayerTradesResponse(const GetPlayerTradesResponse& src) : + PlayFabResultCommon(), + AcceptedTrades(src.AcceptedTrades), + OpenedTrades(src.OpenedTrades) + {} + + ~GetPlayerTradesResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["AcceptedTrades"], AcceptedTrades); + FromJsonUtilO(input["OpenedTrades"], OpenedTrades); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AcceptedTrades; ToJsonUtilO(AcceptedTrades, each_AcceptedTrades); output["AcceptedTrades"] = each_AcceptedTrades; + Json::Value each_OpenedTrades; ToJsonUtilO(OpenedTrades, each_OpenedTrades); output["OpenedTrades"] = each_OpenedTrades; + return output; + } + }; + + struct GetPlayFabIDsFromFacebookIDsRequest : public PlayFabRequestCommon + { + std::list FacebookIDs; + + GetPlayFabIDsFromFacebookIDsRequest() : + PlayFabRequestCommon(), + FacebookIDs() + {} + + GetPlayFabIDsFromFacebookIDsRequest(const GetPlayFabIDsFromFacebookIDsRequest& src) : + PlayFabRequestCommon(), + FacebookIDs(src.FacebookIDs) + {} + + ~GetPlayFabIDsFromFacebookIDsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FacebookIDs"], FacebookIDs); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FacebookIDs; ToJsonUtilS(FacebookIDs, each_FacebookIDs); output["FacebookIDs"] = each_FacebookIDs; + return output; + } + }; + + struct GetPlayFabIDsFromFacebookIDsResult : public PlayFabResultCommon + { + std::list Data; + + GetPlayFabIDsFromFacebookIDsResult() : + PlayFabResultCommon(), + Data() + {} + + GetPlayFabIDsFromFacebookIDsResult(const GetPlayFabIDsFromFacebookIDsResult& src) : + PlayFabResultCommon(), + Data(src.Data) + {} + + ~GetPlayFabIDsFromFacebookIDsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Data"], Data); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilO(Data, each_Data); output["Data"] = each_Data; + return output; + } + }; + + struct GetPlayFabIDsFromGameCenterIDsRequest : public PlayFabRequestCommon + { + std::list GameCenterIDs; + + GetPlayFabIDsFromGameCenterIDsRequest() : + PlayFabRequestCommon(), + GameCenterIDs() + {} + + GetPlayFabIDsFromGameCenterIDsRequest(const GetPlayFabIDsFromGameCenterIDsRequest& src) : + PlayFabRequestCommon(), + GameCenterIDs(src.GameCenterIDs) + {} + + ~GetPlayFabIDsFromGameCenterIDsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["GameCenterIDs"], GameCenterIDs); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GameCenterIDs; ToJsonUtilS(GameCenterIDs, each_GameCenterIDs); output["GameCenterIDs"] = each_GameCenterIDs; + return output; + } + }; + + struct GetPlayFabIDsFromGameCenterIDsResult : public PlayFabResultCommon + { + std::list Data; + + GetPlayFabIDsFromGameCenterIDsResult() : + PlayFabResultCommon(), + Data() + {} + + GetPlayFabIDsFromGameCenterIDsResult(const GetPlayFabIDsFromGameCenterIDsResult& src) : + PlayFabResultCommon(), + Data(src.Data) + {} + + ~GetPlayFabIDsFromGameCenterIDsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Data"], Data); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilO(Data, each_Data); output["Data"] = each_Data; + return output; + } + }; + + struct GetPlayFabIDsFromGenericIDsRequest : public PlayFabRequestCommon + { + std::list GenericIDs; + + GetPlayFabIDsFromGenericIDsRequest() : + PlayFabRequestCommon(), + GenericIDs() + {} + + GetPlayFabIDsFromGenericIDsRequest(const GetPlayFabIDsFromGenericIDsRequest& src) : + PlayFabRequestCommon(), + GenericIDs(src.GenericIDs) + {} + + ~GetPlayFabIDsFromGenericIDsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["GenericIDs"], GenericIDs); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GenericIDs; ToJsonUtilO(GenericIDs, each_GenericIDs); output["GenericIDs"] = each_GenericIDs; + return output; + } + }; + + struct GetPlayFabIDsFromGenericIDsResult : public PlayFabResultCommon + { + std::list Data; + + GetPlayFabIDsFromGenericIDsResult() : + PlayFabResultCommon(), + Data() + {} + + GetPlayFabIDsFromGenericIDsResult(const GetPlayFabIDsFromGenericIDsResult& src) : + PlayFabResultCommon(), + Data(src.Data) + {} + + ~GetPlayFabIDsFromGenericIDsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Data"], Data); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilO(Data, each_Data); output["Data"] = each_Data; + return output; + } + }; + + struct GetPlayFabIDsFromGoogleIDsRequest : public PlayFabRequestCommon + { + std::list GoogleIDs; + + GetPlayFabIDsFromGoogleIDsRequest() : + PlayFabRequestCommon(), + GoogleIDs() + {} + + GetPlayFabIDsFromGoogleIDsRequest(const GetPlayFabIDsFromGoogleIDsRequest& src) : + PlayFabRequestCommon(), + GoogleIDs(src.GoogleIDs) + {} + + ~GetPlayFabIDsFromGoogleIDsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["GoogleIDs"], GoogleIDs); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GoogleIDs; ToJsonUtilS(GoogleIDs, each_GoogleIDs); output["GoogleIDs"] = each_GoogleIDs; + return output; + } + }; + + struct GooglePlayFabIdPair : public PlayFabBaseModel + { + std::string GoogleId; + std::string PlayFabId; + + GooglePlayFabIdPair() : + PlayFabBaseModel(), + GoogleId(), + PlayFabId() + {} + + GooglePlayFabIdPair(const GooglePlayFabIdPair& src) : + PlayFabBaseModel(), + GoogleId(src.GoogleId), + PlayFabId(src.PlayFabId) + {} + + ~GooglePlayFabIdPair() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["GoogleId"], GoogleId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GoogleId; ToJsonUtilS(GoogleId, each_GoogleId); output["GoogleId"] = each_GoogleId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetPlayFabIDsFromGoogleIDsResult : public PlayFabResultCommon + { + std::list Data; + + GetPlayFabIDsFromGoogleIDsResult() : + PlayFabResultCommon(), + Data() + {} + + GetPlayFabIDsFromGoogleIDsResult(const GetPlayFabIDsFromGoogleIDsResult& src) : + PlayFabResultCommon(), + Data(src.Data) + {} + + ~GetPlayFabIDsFromGoogleIDsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Data"], Data); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilO(Data, each_Data); output["Data"] = each_Data; + return output; + } + }; + + struct GetPlayFabIDsFromKongregateIDsRequest : public PlayFabRequestCommon + { + std::list KongregateIDs; + + GetPlayFabIDsFromKongregateIDsRequest() : + PlayFabRequestCommon(), + KongregateIDs() + {} + + GetPlayFabIDsFromKongregateIDsRequest(const GetPlayFabIDsFromKongregateIDsRequest& src) : + PlayFabRequestCommon(), + KongregateIDs(src.KongregateIDs) + {} + + ~GetPlayFabIDsFromKongregateIDsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["KongregateIDs"], KongregateIDs); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_KongregateIDs; ToJsonUtilS(KongregateIDs, each_KongregateIDs); output["KongregateIDs"] = each_KongregateIDs; + return output; + } + }; + + struct KongregatePlayFabIdPair : public PlayFabBaseModel + { + std::string KongregateId; + std::string PlayFabId; + + KongregatePlayFabIdPair() : + PlayFabBaseModel(), + KongregateId(), + PlayFabId() + {} + + KongregatePlayFabIdPair(const KongregatePlayFabIdPair& src) : + PlayFabBaseModel(), + KongregateId(src.KongregateId), + PlayFabId(src.PlayFabId) + {} + + ~KongregatePlayFabIdPair() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["KongregateId"], KongregateId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_KongregateId; ToJsonUtilS(KongregateId, each_KongregateId); output["KongregateId"] = each_KongregateId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetPlayFabIDsFromKongregateIDsResult : public PlayFabResultCommon + { + std::list Data; + + GetPlayFabIDsFromKongregateIDsResult() : + PlayFabResultCommon(), + Data() + {} + + GetPlayFabIDsFromKongregateIDsResult(const GetPlayFabIDsFromKongregateIDsResult& src) : + PlayFabResultCommon(), + Data(src.Data) + {} + + ~GetPlayFabIDsFromKongregateIDsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Data"], Data); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilO(Data, each_Data); output["Data"] = each_Data; + return output; + } + }; + + struct GetPlayFabIDsFromSteamIDsRequest : public PlayFabRequestCommon + { + std::list SteamStringIDs; + + GetPlayFabIDsFromSteamIDsRequest() : + PlayFabRequestCommon(), + SteamStringIDs() + {} + + GetPlayFabIDsFromSteamIDsRequest(const GetPlayFabIDsFromSteamIDsRequest& src) : + PlayFabRequestCommon(), + SteamStringIDs(src.SteamStringIDs) + {} + + ~GetPlayFabIDsFromSteamIDsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["SteamStringIDs"], SteamStringIDs); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_SteamStringIDs; ToJsonUtilS(SteamStringIDs, each_SteamStringIDs); output["SteamStringIDs"] = each_SteamStringIDs; + return output; + } + }; + + struct SteamPlayFabIdPair : public PlayFabBaseModel + { + std::string PlayFabId; + std::string SteamStringId; + + SteamPlayFabIdPair() : + PlayFabBaseModel(), + PlayFabId(), + SteamStringId() + {} + + SteamPlayFabIdPair(const SteamPlayFabIdPair& src) : + PlayFabBaseModel(), + PlayFabId(src.PlayFabId), + SteamStringId(src.SteamStringId) + {} + + ~SteamPlayFabIdPair() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["SteamStringId"], SteamStringId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_SteamStringId; ToJsonUtilS(SteamStringId, each_SteamStringId); output["SteamStringId"] = each_SteamStringId; + return output; + } + }; + + struct GetPlayFabIDsFromSteamIDsResult : public PlayFabResultCommon + { + std::list Data; + + GetPlayFabIDsFromSteamIDsResult() : + PlayFabResultCommon(), + Data() + {} + + GetPlayFabIDsFromSteamIDsResult(const GetPlayFabIDsFromSteamIDsResult& src) : + PlayFabResultCommon(), + Data(src.Data) + {} + + ~GetPlayFabIDsFromSteamIDsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Data"], Data); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilO(Data, each_Data); output["Data"] = each_Data; + return output; + } + }; + + struct GetPlayFabIDsFromTwitchIDsRequest : public PlayFabRequestCommon + { + std::list TwitchIds; + + GetPlayFabIDsFromTwitchIDsRequest() : + PlayFabRequestCommon(), + TwitchIds() + {} + + GetPlayFabIDsFromTwitchIDsRequest(const GetPlayFabIDsFromTwitchIDsRequest& src) : + PlayFabRequestCommon(), + TwitchIds(src.TwitchIds) + {} + + ~GetPlayFabIDsFromTwitchIDsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["TwitchIds"], TwitchIds); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_TwitchIds; ToJsonUtilS(TwitchIds, each_TwitchIds); output["TwitchIds"] = each_TwitchIds; + return output; + } + }; + + struct TwitchPlayFabIdPair : public PlayFabBaseModel + { + std::string PlayFabId; + std::string TwitchId; + + TwitchPlayFabIdPair() : + PlayFabBaseModel(), + PlayFabId(), + TwitchId() + {} + + TwitchPlayFabIdPair(const TwitchPlayFabIdPair& src) : + PlayFabBaseModel(), + PlayFabId(src.PlayFabId), + TwitchId(src.TwitchId) + {} + + ~TwitchPlayFabIdPair() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["TwitchId"], TwitchId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_TwitchId; ToJsonUtilS(TwitchId, each_TwitchId); output["TwitchId"] = each_TwitchId; + return output; + } + }; + + struct GetPlayFabIDsFromTwitchIDsResult : public PlayFabResultCommon + { + std::list Data; + + GetPlayFabIDsFromTwitchIDsResult() : + PlayFabResultCommon(), + Data() + {} + + GetPlayFabIDsFromTwitchIDsResult(const GetPlayFabIDsFromTwitchIDsResult& src) : + PlayFabResultCommon(), + Data(src.Data) + {} + + ~GetPlayFabIDsFromTwitchIDsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Data"], Data); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilO(Data, each_Data); output["Data"] = each_Data; + return output; + } + }; + + struct GetPublisherDataRequest : public PlayFabRequestCommon + { + std::list Keys; + + GetPublisherDataRequest() : + PlayFabRequestCommon(), + Keys() + {} + + GetPublisherDataRequest(const GetPublisherDataRequest& src) : + PlayFabRequestCommon(), + Keys(src.Keys) + {} + + ~GetPublisherDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Keys"], Keys); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Keys; ToJsonUtilS(Keys, each_Keys); output["Keys"] = each_Keys; + return output; + } + }; + + struct GetPublisherDataResult : public PlayFabResultCommon + { + std::map Data; + + GetPublisherDataResult() : + PlayFabResultCommon(), + Data() + {} + + GetPublisherDataResult(const GetPublisherDataResult& src) : + PlayFabResultCommon(), + Data(src.Data) + {} + + ~GetPublisherDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Data"], Data); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + return output; + } + }; + + struct GetPurchaseRequest : public PlayFabRequestCommon + { + std::string OrderId; + + GetPurchaseRequest() : + PlayFabRequestCommon(), + OrderId() + {} + + GetPurchaseRequest(const GetPurchaseRequest& src) : + PlayFabRequestCommon(), + OrderId(src.OrderId) + {} + + ~GetPurchaseRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["OrderId"], OrderId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_OrderId; ToJsonUtilS(OrderId, each_OrderId); output["OrderId"] = each_OrderId; + return output; + } + }; + + struct GetPurchaseResult : public PlayFabResultCommon + { + std::string OrderId; + std::string PaymentProvider; + time_t PurchaseDate; + std::string TransactionId; + std::string TransactionStatus; + + GetPurchaseResult() : + PlayFabResultCommon(), + OrderId(), + PaymentProvider(), + PurchaseDate(), + TransactionId(), + TransactionStatus() + {} + + GetPurchaseResult(const GetPurchaseResult& src) : + PlayFabResultCommon(), + OrderId(src.OrderId), + PaymentProvider(src.PaymentProvider), + PurchaseDate(src.PurchaseDate), + TransactionId(src.TransactionId), + TransactionStatus(src.TransactionStatus) + {} + + ~GetPurchaseResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["OrderId"], OrderId); + FromJsonUtilS(input["PaymentProvider"], PaymentProvider); + FromJsonUtilT(input["PurchaseDate"], PurchaseDate); + FromJsonUtilS(input["TransactionId"], TransactionId); + FromJsonUtilS(input["TransactionStatus"], TransactionStatus); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_OrderId; ToJsonUtilS(OrderId, each_OrderId); output["OrderId"] = each_OrderId; + Json::Value each_PaymentProvider; ToJsonUtilS(PaymentProvider, each_PaymentProvider); output["PaymentProvider"] = each_PaymentProvider; + Json::Value each_PurchaseDate; ToJsonUtilT(PurchaseDate, each_PurchaseDate); output["PurchaseDate"] = each_PurchaseDate; + Json::Value each_TransactionId; ToJsonUtilS(TransactionId, each_TransactionId); output["TransactionId"] = each_TransactionId; + Json::Value each_TransactionStatus; ToJsonUtilS(TransactionStatus, each_TransactionStatus); output["TransactionStatus"] = each_TransactionStatus; + return output; + } + }; + + struct GetSharedGroupDataRequest : public PlayFabRequestCommon + { + Boxed GetMembers; + std::list Keys; + std::string SharedGroupId; + + GetSharedGroupDataRequest() : + PlayFabRequestCommon(), + GetMembers(), + Keys(), + SharedGroupId() + {} + + GetSharedGroupDataRequest(const GetSharedGroupDataRequest& src) : + PlayFabRequestCommon(), + GetMembers(src.GetMembers), + Keys(src.Keys), + SharedGroupId(src.SharedGroupId) + {} + + ~GetSharedGroupDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["GetMembers"], GetMembers); + FromJsonUtilS(input["Keys"], Keys); + FromJsonUtilS(input["SharedGroupId"], SharedGroupId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GetMembers; ToJsonUtilP(GetMembers, each_GetMembers); output["GetMembers"] = each_GetMembers; + Json::Value each_Keys; ToJsonUtilS(Keys, each_Keys); output["Keys"] = each_Keys; + Json::Value each_SharedGroupId; ToJsonUtilS(SharedGroupId, each_SharedGroupId); output["SharedGroupId"] = each_SharedGroupId; + return output; + } + }; + + struct SharedGroupDataRecord : public PlayFabBaseModel + { + time_t LastUpdated; + std::string LastUpdatedBy; + Boxed Permission; + std::string Value; + + SharedGroupDataRecord() : + PlayFabBaseModel(), + LastUpdated(), + LastUpdatedBy(), + Permission(), + Value() + {} + + SharedGroupDataRecord(const SharedGroupDataRecord& src) : + PlayFabBaseModel(), + LastUpdated(src.LastUpdated), + LastUpdatedBy(src.LastUpdatedBy), + Permission(src.Permission), + Value(src.Value) + {} + + ~SharedGroupDataRecord() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["LastUpdated"], LastUpdated); + FromJsonUtilS(input["LastUpdatedBy"], LastUpdatedBy); + FromJsonUtilE(input["Permission"], Permission); + FromJsonUtilS(input["Value"], Value); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LastUpdated; ToJsonUtilT(LastUpdated, each_LastUpdated); output["LastUpdated"] = each_LastUpdated; + Json::Value each_LastUpdatedBy; ToJsonUtilS(LastUpdatedBy, each_LastUpdatedBy); output["LastUpdatedBy"] = each_LastUpdatedBy; + Json::Value each_Permission; ToJsonUtilE(Permission, each_Permission); output["Permission"] = each_Permission; + Json::Value each_Value; ToJsonUtilS(Value, each_Value); output["Value"] = each_Value; + return output; + } + }; + + struct GetSharedGroupDataResult : public PlayFabResultCommon + { + std::map Data; + std::list Members; + + GetSharedGroupDataResult() : + PlayFabResultCommon(), + Data(), + Members() + {} + + GetSharedGroupDataResult(const GetSharedGroupDataResult& src) : + PlayFabResultCommon(), + Data(src.Data), + Members(src.Members) + {} + + ~GetSharedGroupDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Data"], Data); + FromJsonUtilS(input["Members"], Members); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilO(Data, each_Data); output["Data"] = each_Data; + Json::Value each_Members; ToJsonUtilS(Members, each_Members); output["Members"] = each_Members; + return output; + } + }; + + struct GetStoreItemsRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::string StoreId; + + GetStoreItemsRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + StoreId() + {} + + GetStoreItemsRequest(const GetStoreItemsRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + StoreId(src.StoreId) + {} + + ~GetStoreItemsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["StoreId"], StoreId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_StoreId; ToJsonUtilS(StoreId, each_StoreId); output["StoreId"] = each_StoreId; + return output; + } + }; + + struct StoreMarketingModel : public PlayFabBaseModel + { + std::string Description; + std::string DisplayName; + Json::Value Metadata; + + StoreMarketingModel() : + PlayFabBaseModel(), + Description(), + DisplayName(), + Metadata() + {} + + StoreMarketingModel(const StoreMarketingModel& src) : + PlayFabBaseModel(), + Description(src.Description), + DisplayName(src.DisplayName), + Metadata(src.Metadata) + {} + + ~StoreMarketingModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Description"], Description); + FromJsonUtilS(input["DisplayName"], DisplayName); + Metadata = input["Metadata"]; + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Description; ToJsonUtilS(Description, each_Description); output["Description"] = each_Description; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + output["Metadata"] = Metadata; + return output; + } + }; + + struct StoreItem : public PlayFabBaseModel + { + Json::Value CustomData; + Boxed DisplayPosition; + std::string ItemId; + std::map RealCurrencyPrices; + std::map VirtualCurrencyPrices; + + StoreItem() : + PlayFabBaseModel(), + CustomData(), + DisplayPosition(), + ItemId(), + RealCurrencyPrices(), + VirtualCurrencyPrices() + {} + + StoreItem(const StoreItem& src) : + PlayFabBaseModel(), + CustomData(src.CustomData), + DisplayPosition(src.DisplayPosition), + ItemId(src.ItemId), + RealCurrencyPrices(src.RealCurrencyPrices), + VirtualCurrencyPrices(src.VirtualCurrencyPrices) + {} + + ~StoreItem() { } + + void FromJson(Json::Value& input) override + { + CustomData = input["CustomData"]; + FromJsonUtilP(input["DisplayPosition"], DisplayPosition); + FromJsonUtilS(input["ItemId"], ItemId); + FromJsonUtilP(input["RealCurrencyPrices"], RealCurrencyPrices); + FromJsonUtilP(input["VirtualCurrencyPrices"], VirtualCurrencyPrices); + } + + Json::Value ToJson() const override + { + Json::Value output; + output["CustomData"] = CustomData; + Json::Value each_DisplayPosition; ToJsonUtilP(DisplayPosition, each_DisplayPosition); output["DisplayPosition"] = each_DisplayPosition; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + Json::Value each_RealCurrencyPrices; ToJsonUtilP(RealCurrencyPrices, each_RealCurrencyPrices); output["RealCurrencyPrices"] = each_RealCurrencyPrices; + Json::Value each_VirtualCurrencyPrices; ToJsonUtilP(VirtualCurrencyPrices, each_VirtualCurrencyPrices); output["VirtualCurrencyPrices"] = each_VirtualCurrencyPrices; + return output; + } + }; + + struct GetStoreItemsResult : public PlayFabResultCommon + { + std::string CatalogVersion; + Boxed MarketingData; + Boxed Source; + std::list Store; + std::string StoreId; + + GetStoreItemsResult() : + PlayFabResultCommon(), + CatalogVersion(), + MarketingData(), + Source(), + Store(), + StoreId() + {} + + GetStoreItemsResult(const GetStoreItemsResult& src) : + PlayFabResultCommon(), + CatalogVersion(src.CatalogVersion), + MarketingData(src.MarketingData), + Source(src.Source), + Store(src.Store), + StoreId(src.StoreId) + {} + + ~GetStoreItemsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilO(input["MarketingData"], MarketingData); + FromJsonUtilE(input["Source"], Source); + FromJsonUtilO(input["Store"], Store); + FromJsonUtilS(input["StoreId"], StoreId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_MarketingData; ToJsonUtilO(MarketingData, each_MarketingData); output["MarketingData"] = each_MarketingData; + Json::Value each_Source; ToJsonUtilE(Source, each_Source); output["Source"] = each_Source; + Json::Value each_Store; ToJsonUtilO(Store, each_Store); output["Store"] = each_Store; + Json::Value each_StoreId; ToJsonUtilS(StoreId, each_StoreId); output["StoreId"] = each_StoreId; + return output; + } + }; + + struct GetTimeRequest : public PlayFabRequestCommon + { + + GetTimeRequest() : + PlayFabRequestCommon() + {} + + GetTimeRequest(const GetTimeRequest&) : + PlayFabRequestCommon() + {} + + ~GetTimeRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct GetTimeResult : public PlayFabResultCommon + { + time_t Time; + + GetTimeResult() : + PlayFabResultCommon(), + Time() + {} + + GetTimeResult(const GetTimeResult& src) : + PlayFabResultCommon(), + Time(src.Time) + {} + + ~GetTimeResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["Time"], Time); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Time; ToJsonUtilT(Time, each_Time); output["Time"] = each_Time; + return output; + } + }; + + struct GetTitleDataRequest : public PlayFabRequestCommon + { + std::list Keys; + + GetTitleDataRequest() : + PlayFabRequestCommon(), + Keys() + {} + + GetTitleDataRequest(const GetTitleDataRequest& src) : + PlayFabRequestCommon(), + Keys(src.Keys) + {} + + ~GetTitleDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Keys"], Keys); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Keys; ToJsonUtilS(Keys, each_Keys); output["Keys"] = each_Keys; + return output; + } + }; + + struct GetTitleDataResult : public PlayFabResultCommon + { + std::map Data; + + GetTitleDataResult() : + PlayFabResultCommon(), + Data() + {} + + GetTitleDataResult(const GetTitleDataResult& src) : + PlayFabResultCommon(), + Data(src.Data) + {} + + ~GetTitleDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Data"], Data); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + return output; + } + }; + + struct GetTitleNewsRequest : public PlayFabRequestCommon + { + Boxed Count; + + GetTitleNewsRequest() : + PlayFabRequestCommon(), + Count() + {} + + GetTitleNewsRequest(const GetTitleNewsRequest& src) : + PlayFabRequestCommon(), + Count(src.Count) + {} + + ~GetTitleNewsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Count"], Count); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Count; ToJsonUtilP(Count, each_Count); output["Count"] = each_Count; + return output; + } + }; + + struct TitleNewsItem : public PlayFabBaseModel + { + std::string Body; + std::string NewsId; + time_t Timestamp; + std::string Title; + + TitleNewsItem() : + PlayFabBaseModel(), + Body(), + NewsId(), + Timestamp(), + Title() + {} + + TitleNewsItem(const TitleNewsItem& src) : + PlayFabBaseModel(), + Body(src.Body), + NewsId(src.NewsId), + Timestamp(src.Timestamp), + Title(src.Title) + {} + + ~TitleNewsItem() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Body"], Body); + FromJsonUtilS(input["NewsId"], NewsId); + FromJsonUtilT(input["Timestamp"], Timestamp); + FromJsonUtilS(input["Title"], Title); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Body; ToJsonUtilS(Body, each_Body); output["Body"] = each_Body; + Json::Value each_NewsId; ToJsonUtilS(NewsId, each_NewsId); output["NewsId"] = each_NewsId; + Json::Value each_Timestamp; ToJsonUtilT(Timestamp, each_Timestamp); output["Timestamp"] = each_Timestamp; + Json::Value each_Title; ToJsonUtilS(Title, each_Title); output["Title"] = each_Title; + return output; + } + }; + + struct GetTitleNewsResult : public PlayFabResultCommon + { + std::list News; + + GetTitleNewsResult() : + PlayFabResultCommon(), + News() + {} + + GetTitleNewsResult(const GetTitleNewsResult& src) : + PlayFabResultCommon(), + News(src.News) + {} + + ~GetTitleNewsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["News"], News); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_News; ToJsonUtilO(News, each_News); output["News"] = each_News; + return output; + } + }; + + struct GetTitlePublicKeyRequest : public PlayFabRequestCommon + { + std::string TitleId; + std::string TitleSharedSecret; + + GetTitlePublicKeyRequest() : + PlayFabRequestCommon(), + TitleId(), + TitleSharedSecret() + {} + + GetTitlePublicKeyRequest(const GetTitlePublicKeyRequest& src) : + PlayFabRequestCommon(), + TitleId(src.TitleId), + TitleSharedSecret(src.TitleSharedSecret) + {} + + ~GetTitlePublicKeyRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["TitleId"], TitleId); + FromJsonUtilS(input["TitleSharedSecret"], TitleSharedSecret); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + Json::Value each_TitleSharedSecret; ToJsonUtilS(TitleSharedSecret, each_TitleSharedSecret); output["TitleSharedSecret"] = each_TitleSharedSecret; + return output; + } + }; + + struct GetTitlePublicKeyResult : public PlayFabResultCommon + { + std::string RSAPublicKey; + + GetTitlePublicKeyResult() : + PlayFabResultCommon(), + RSAPublicKey() + {} + + GetTitlePublicKeyResult(const GetTitlePublicKeyResult& src) : + PlayFabResultCommon(), + RSAPublicKey(src.RSAPublicKey) + {} + + ~GetTitlePublicKeyResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["RSAPublicKey"], RSAPublicKey); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_RSAPublicKey; ToJsonUtilS(RSAPublicKey, each_RSAPublicKey); output["RSAPublicKey"] = each_RSAPublicKey; + return output; + } + }; + + struct GetTradeStatusRequest : public PlayFabRequestCommon + { + std::string OfferingPlayerId; + std::string TradeId; + + GetTradeStatusRequest() : + PlayFabRequestCommon(), + OfferingPlayerId(), + TradeId() + {} + + GetTradeStatusRequest(const GetTradeStatusRequest& src) : + PlayFabRequestCommon(), + OfferingPlayerId(src.OfferingPlayerId), + TradeId(src.TradeId) + {} + + ~GetTradeStatusRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["OfferingPlayerId"], OfferingPlayerId); + FromJsonUtilS(input["TradeId"], TradeId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_OfferingPlayerId; ToJsonUtilS(OfferingPlayerId, each_OfferingPlayerId); output["OfferingPlayerId"] = each_OfferingPlayerId; + Json::Value each_TradeId; ToJsonUtilS(TradeId, each_TradeId); output["TradeId"] = each_TradeId; + return output; + } + }; + + struct GetTradeStatusResponse : public PlayFabResultCommon + { + Boxed Trade; + + GetTradeStatusResponse() : + PlayFabResultCommon(), + Trade() + {} + + GetTradeStatusResponse(const GetTradeStatusResponse& src) : + PlayFabResultCommon(), + Trade(src.Trade) + {} + + ~GetTradeStatusResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Trade"], Trade); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Trade; ToJsonUtilO(Trade, each_Trade); output["Trade"] = each_Trade; + return output; + } + }; + + struct GetUserDataRequest : public PlayFabRequestCommon + { + Boxed IfChangedFromDataVersion; + std::list Keys; + std::string PlayFabId; + + GetUserDataRequest() : + PlayFabRequestCommon(), + IfChangedFromDataVersion(), + Keys(), + PlayFabId() + {} + + GetUserDataRequest(const GetUserDataRequest& src) : + PlayFabRequestCommon(), + IfChangedFromDataVersion(src.IfChangedFromDataVersion), + Keys(src.Keys), + PlayFabId(src.PlayFabId) + {} + + ~GetUserDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["IfChangedFromDataVersion"], IfChangedFromDataVersion); + FromJsonUtilS(input["Keys"], Keys); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_IfChangedFromDataVersion; ToJsonUtilP(IfChangedFromDataVersion, each_IfChangedFromDataVersion); output["IfChangedFromDataVersion"] = each_IfChangedFromDataVersion; + Json::Value each_Keys; ToJsonUtilS(Keys, each_Keys); output["Keys"] = each_Keys; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetUserDataResult : public PlayFabResultCommon + { + std::map Data; + Uint32 DataVersion; + + GetUserDataResult() : + PlayFabResultCommon(), + Data(), + DataVersion() + {} + + GetUserDataResult(const GetUserDataResult& src) : + PlayFabResultCommon(), + Data(src.Data), + DataVersion(src.DataVersion) + {} + + ~GetUserDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Data"], Data); + FromJsonUtilP(input["DataVersion"], DataVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilO(Data, each_Data); output["Data"] = each_Data; + Json::Value each_DataVersion; ToJsonUtilP(DataVersion, each_DataVersion); output["DataVersion"] = each_DataVersion; + return output; + } + }; + + struct GetUserInventoryRequest : public PlayFabRequestCommon + { + + GetUserInventoryRequest() : + PlayFabRequestCommon() + {} + + GetUserInventoryRequest(const GetUserInventoryRequest&) : + PlayFabRequestCommon() + {} + + ~GetUserInventoryRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct GetUserInventoryResult : public PlayFabResultCommon + { + std::list Inventory; + std::map VirtualCurrency; + std::map VirtualCurrencyRechargeTimes; + + GetUserInventoryResult() : + PlayFabResultCommon(), + Inventory(), + VirtualCurrency(), + VirtualCurrencyRechargeTimes() + {} + + GetUserInventoryResult(const GetUserInventoryResult& src) : + PlayFabResultCommon(), + Inventory(src.Inventory), + VirtualCurrency(src.VirtualCurrency), + VirtualCurrencyRechargeTimes(src.VirtualCurrencyRechargeTimes) + {} + + ~GetUserInventoryResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Inventory"], Inventory); + FromJsonUtilP(input["VirtualCurrency"], VirtualCurrency); + FromJsonUtilO(input["VirtualCurrencyRechargeTimes"], VirtualCurrencyRechargeTimes); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Inventory; ToJsonUtilO(Inventory, each_Inventory); output["Inventory"] = each_Inventory; + Json::Value each_VirtualCurrency; ToJsonUtilP(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + Json::Value each_VirtualCurrencyRechargeTimes; ToJsonUtilO(VirtualCurrencyRechargeTimes, each_VirtualCurrencyRechargeTimes); output["VirtualCurrencyRechargeTimes"] = each_VirtualCurrencyRechargeTimes; + return output; + } + }; + + struct GetWindowsHelloChallengeRequest : public PlayFabRequestCommon + { + std::string PublicKeyHint; + std::string TitleId; + + GetWindowsHelloChallengeRequest() : + PlayFabRequestCommon(), + PublicKeyHint(), + TitleId() + {} + + GetWindowsHelloChallengeRequest(const GetWindowsHelloChallengeRequest& src) : + PlayFabRequestCommon(), + PublicKeyHint(src.PublicKeyHint), + TitleId(src.TitleId) + {} + + ~GetWindowsHelloChallengeRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PublicKeyHint"], PublicKeyHint); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PublicKeyHint; ToJsonUtilS(PublicKeyHint, each_PublicKeyHint); output["PublicKeyHint"] = each_PublicKeyHint; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct GetWindowsHelloChallengeResponse : public PlayFabResultCommon + { + std::string Challenge; + + GetWindowsHelloChallengeResponse() : + PlayFabResultCommon(), + Challenge() + {} + + GetWindowsHelloChallengeResponse(const GetWindowsHelloChallengeResponse& src) : + PlayFabResultCommon(), + Challenge(src.Challenge) + {} + + ~GetWindowsHelloChallengeResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Challenge"], Challenge); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Challenge; ToJsonUtilS(Challenge, each_Challenge); output["Challenge"] = each_Challenge; + return output; + } + }; + + struct GrantCharacterToUserRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::string CharacterName; + std::string ItemId; + + GrantCharacterToUserRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + CharacterName(), + ItemId() + {} + + GrantCharacterToUserRequest(const GrantCharacterToUserRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + CharacterName(src.CharacterName), + ItemId(src.ItemId) + {} + + ~GrantCharacterToUserRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CharacterName"], CharacterName); + FromJsonUtilS(input["ItemId"], ItemId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CharacterName; ToJsonUtilS(CharacterName, each_CharacterName); output["CharacterName"] = each_CharacterName; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + return output; + } + }; + + struct GrantCharacterToUserResult : public PlayFabResultCommon + { + std::string CharacterId; + std::string CharacterType; + bool Result; + + GrantCharacterToUserResult() : + PlayFabResultCommon(), + CharacterId(), + CharacterType(), + Result() + {} + + GrantCharacterToUserResult(const GrantCharacterToUserResult& src) : + PlayFabResultCommon(), + CharacterId(src.CharacterId), + CharacterType(src.CharacterType), + Result(src.Result) + {} + + ~GrantCharacterToUserResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["CharacterType"], CharacterType); + FromJsonUtilP(input["Result"], Result); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_CharacterType; ToJsonUtilS(CharacterType, each_CharacterType); output["CharacterType"] = each_CharacterType; + Json::Value each_Result; ToJsonUtilP(Result, each_Result); output["Result"] = each_Result; + return output; + } + }; + + struct ItemPurchaseRequest : public PlayFabRequestCommon + { + std::string Annotation; + std::string ItemId; + Uint32 Quantity; + std::list UpgradeFromItems; + + ItemPurchaseRequest() : + PlayFabRequestCommon(), + Annotation(), + ItemId(), + Quantity(), + UpgradeFromItems() + {} + + ItemPurchaseRequest(const ItemPurchaseRequest& src) : + PlayFabRequestCommon(), + Annotation(src.Annotation), + ItemId(src.ItemId), + Quantity(src.Quantity), + UpgradeFromItems(src.UpgradeFromItems) + {} + + ~ItemPurchaseRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Annotation"], Annotation); + FromJsonUtilS(input["ItemId"], ItemId); + FromJsonUtilP(input["Quantity"], Quantity); + FromJsonUtilS(input["UpgradeFromItems"], UpgradeFromItems); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Annotation; ToJsonUtilS(Annotation, each_Annotation); output["Annotation"] = each_Annotation; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + Json::Value each_Quantity; ToJsonUtilP(Quantity, each_Quantity); output["Quantity"] = each_Quantity; + Json::Value each_UpgradeFromItems; ToJsonUtilS(UpgradeFromItems, each_UpgradeFromItems); output["UpgradeFromItems"] = each_UpgradeFromItems; + return output; + } + }; + + struct LinkAndroidDeviceIDRequest : public PlayFabRequestCommon + { + std::string AndroidDevice; + std::string AndroidDeviceId; + Boxed ForceLink; + std::string OS; + + LinkAndroidDeviceIDRequest() : + PlayFabRequestCommon(), + AndroidDevice(), + AndroidDeviceId(), + ForceLink(), + OS() + {} + + LinkAndroidDeviceIDRequest(const LinkAndroidDeviceIDRequest& src) : + PlayFabRequestCommon(), + AndroidDevice(src.AndroidDevice), + AndroidDeviceId(src.AndroidDeviceId), + ForceLink(src.ForceLink), + OS(src.OS) + {} + + ~LinkAndroidDeviceIDRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AndroidDevice"], AndroidDevice); + FromJsonUtilS(input["AndroidDeviceId"], AndroidDeviceId); + FromJsonUtilP(input["ForceLink"], ForceLink); + FromJsonUtilS(input["OS"], OS); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AndroidDevice; ToJsonUtilS(AndroidDevice, each_AndroidDevice); output["AndroidDevice"] = each_AndroidDevice; + Json::Value each_AndroidDeviceId; ToJsonUtilS(AndroidDeviceId, each_AndroidDeviceId); output["AndroidDeviceId"] = each_AndroidDeviceId; + Json::Value each_ForceLink; ToJsonUtilP(ForceLink, each_ForceLink); output["ForceLink"] = each_ForceLink; + Json::Value each_OS; ToJsonUtilS(OS, each_OS); output["OS"] = each_OS; + return output; + } + }; + + struct LinkAndroidDeviceIDResult : public PlayFabResultCommon + { + + LinkAndroidDeviceIDResult() : + PlayFabResultCommon() + {} + + LinkAndroidDeviceIDResult(const LinkAndroidDeviceIDResult&) : + PlayFabResultCommon() + {} + + ~LinkAndroidDeviceIDResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct LinkCustomIDRequest : public PlayFabRequestCommon + { + std::string CustomId; + Boxed ForceLink; + + LinkCustomIDRequest() : + PlayFabRequestCommon(), + CustomId(), + ForceLink() + {} + + LinkCustomIDRequest(const LinkCustomIDRequest& src) : + PlayFabRequestCommon(), + CustomId(src.CustomId), + ForceLink(src.ForceLink) + {} + + ~LinkCustomIDRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CustomId"], CustomId); + FromJsonUtilP(input["ForceLink"], ForceLink); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CustomId; ToJsonUtilS(CustomId, each_CustomId); output["CustomId"] = each_CustomId; + Json::Value each_ForceLink; ToJsonUtilP(ForceLink, each_ForceLink); output["ForceLink"] = each_ForceLink; + return output; + } + }; + + struct LinkCustomIDResult : public PlayFabResultCommon + { + + LinkCustomIDResult() : + PlayFabResultCommon() + {} + + LinkCustomIDResult(const LinkCustomIDResult&) : + PlayFabResultCommon() + {} + + ~LinkCustomIDResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct LinkFacebookAccountRequest : public PlayFabRequestCommon + { + std::string AccessToken; + Boxed ForceLink; + + LinkFacebookAccountRequest() : + PlayFabRequestCommon(), + AccessToken(), + ForceLink() + {} + + LinkFacebookAccountRequest(const LinkFacebookAccountRequest& src) : + PlayFabRequestCommon(), + AccessToken(src.AccessToken), + ForceLink(src.ForceLink) + {} + + ~LinkFacebookAccountRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AccessToken"], AccessToken); + FromJsonUtilP(input["ForceLink"], ForceLink); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AccessToken; ToJsonUtilS(AccessToken, each_AccessToken); output["AccessToken"] = each_AccessToken; + Json::Value each_ForceLink; ToJsonUtilP(ForceLink, each_ForceLink); output["ForceLink"] = each_ForceLink; + return output; + } + }; + + struct LinkFacebookAccountResult : public PlayFabResultCommon + { + + LinkFacebookAccountResult() : + PlayFabResultCommon() + {} + + LinkFacebookAccountResult(const LinkFacebookAccountResult&) : + PlayFabResultCommon() + {} + + ~LinkFacebookAccountResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct LinkGameCenterAccountRequest : public PlayFabRequestCommon + { + Boxed ForceLink; + std::string GameCenterId; + + LinkGameCenterAccountRequest() : + PlayFabRequestCommon(), + ForceLink(), + GameCenterId() + {} + + LinkGameCenterAccountRequest(const LinkGameCenterAccountRequest& src) : + PlayFabRequestCommon(), + ForceLink(src.ForceLink), + GameCenterId(src.GameCenterId) + {} + + ~LinkGameCenterAccountRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["ForceLink"], ForceLink); + FromJsonUtilS(input["GameCenterId"], GameCenterId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ForceLink; ToJsonUtilP(ForceLink, each_ForceLink); output["ForceLink"] = each_ForceLink; + Json::Value each_GameCenterId; ToJsonUtilS(GameCenterId, each_GameCenterId); output["GameCenterId"] = each_GameCenterId; + return output; + } + }; + + struct LinkGameCenterAccountResult : public PlayFabResultCommon + { + + LinkGameCenterAccountResult() : + PlayFabResultCommon() + {} + + LinkGameCenterAccountResult(const LinkGameCenterAccountResult&) : + PlayFabResultCommon() + {} + + ~LinkGameCenterAccountResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct LinkGoogleAccountRequest : public PlayFabRequestCommon + { + Boxed ForceLink; + std::string ServerAuthCode; + + LinkGoogleAccountRequest() : + PlayFabRequestCommon(), + ForceLink(), + ServerAuthCode() + {} + + LinkGoogleAccountRequest(const LinkGoogleAccountRequest& src) : + PlayFabRequestCommon(), + ForceLink(src.ForceLink), + ServerAuthCode(src.ServerAuthCode) + {} + + ~LinkGoogleAccountRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["ForceLink"], ForceLink); + FromJsonUtilS(input["ServerAuthCode"], ServerAuthCode); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ForceLink; ToJsonUtilP(ForceLink, each_ForceLink); output["ForceLink"] = each_ForceLink; + Json::Value each_ServerAuthCode; ToJsonUtilS(ServerAuthCode, each_ServerAuthCode); output["ServerAuthCode"] = each_ServerAuthCode; + return output; + } + }; + + struct LinkGoogleAccountResult : public PlayFabResultCommon + { + + LinkGoogleAccountResult() : + PlayFabResultCommon() + {} + + LinkGoogleAccountResult(const LinkGoogleAccountResult&) : + PlayFabResultCommon() + {} + + ~LinkGoogleAccountResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct LinkIOSDeviceIDRequest : public PlayFabRequestCommon + { + std::string DeviceId; + std::string DeviceModel; + Boxed ForceLink; + std::string OS; + + LinkIOSDeviceIDRequest() : + PlayFabRequestCommon(), + DeviceId(), + DeviceModel(), + ForceLink(), + OS() + {} + + LinkIOSDeviceIDRequest(const LinkIOSDeviceIDRequest& src) : + PlayFabRequestCommon(), + DeviceId(src.DeviceId), + DeviceModel(src.DeviceModel), + ForceLink(src.ForceLink), + OS(src.OS) + {} + + ~LinkIOSDeviceIDRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["DeviceId"], DeviceId); + FromJsonUtilS(input["DeviceModel"], DeviceModel); + FromJsonUtilP(input["ForceLink"], ForceLink); + FromJsonUtilS(input["OS"], OS); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DeviceId; ToJsonUtilS(DeviceId, each_DeviceId); output["DeviceId"] = each_DeviceId; + Json::Value each_DeviceModel; ToJsonUtilS(DeviceModel, each_DeviceModel); output["DeviceModel"] = each_DeviceModel; + Json::Value each_ForceLink; ToJsonUtilP(ForceLink, each_ForceLink); output["ForceLink"] = each_ForceLink; + Json::Value each_OS; ToJsonUtilS(OS, each_OS); output["OS"] = each_OS; + return output; + } + }; + + struct LinkIOSDeviceIDResult : public PlayFabResultCommon + { + + LinkIOSDeviceIDResult() : + PlayFabResultCommon() + {} + + LinkIOSDeviceIDResult(const LinkIOSDeviceIDResult&) : + PlayFabResultCommon() + {} + + ~LinkIOSDeviceIDResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct LinkKongregateAccountRequest : public PlayFabRequestCommon + { + std::string AuthTicket; + Boxed ForceLink; + std::string KongregateId; + + LinkKongregateAccountRequest() : + PlayFabRequestCommon(), + AuthTicket(), + ForceLink(), + KongregateId() + {} + + LinkKongregateAccountRequest(const LinkKongregateAccountRequest& src) : + PlayFabRequestCommon(), + AuthTicket(src.AuthTicket), + ForceLink(src.ForceLink), + KongregateId(src.KongregateId) + {} + + ~LinkKongregateAccountRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AuthTicket"], AuthTicket); + FromJsonUtilP(input["ForceLink"], ForceLink); + FromJsonUtilS(input["KongregateId"], KongregateId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AuthTicket; ToJsonUtilS(AuthTicket, each_AuthTicket); output["AuthTicket"] = each_AuthTicket; + Json::Value each_ForceLink; ToJsonUtilP(ForceLink, each_ForceLink); output["ForceLink"] = each_ForceLink; + Json::Value each_KongregateId; ToJsonUtilS(KongregateId, each_KongregateId); output["KongregateId"] = each_KongregateId; + return output; + } + }; + + struct LinkKongregateAccountResult : public PlayFabResultCommon + { + + LinkKongregateAccountResult() : + PlayFabResultCommon() + {} + + LinkKongregateAccountResult(const LinkKongregateAccountResult&) : + PlayFabResultCommon() + {} + + ~LinkKongregateAccountResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct LinkSteamAccountRequest : public PlayFabRequestCommon + { + Boxed ForceLink; + std::string SteamTicket; + + LinkSteamAccountRequest() : + PlayFabRequestCommon(), + ForceLink(), + SteamTicket() + {} + + LinkSteamAccountRequest(const LinkSteamAccountRequest& src) : + PlayFabRequestCommon(), + ForceLink(src.ForceLink), + SteamTicket(src.SteamTicket) + {} + + ~LinkSteamAccountRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["ForceLink"], ForceLink); + FromJsonUtilS(input["SteamTicket"], SteamTicket); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ForceLink; ToJsonUtilP(ForceLink, each_ForceLink); output["ForceLink"] = each_ForceLink; + Json::Value each_SteamTicket; ToJsonUtilS(SteamTicket, each_SteamTicket); output["SteamTicket"] = each_SteamTicket; + return output; + } + }; + + struct LinkSteamAccountResult : public PlayFabResultCommon + { + + LinkSteamAccountResult() : + PlayFabResultCommon() + {} + + LinkSteamAccountResult(const LinkSteamAccountResult&) : + PlayFabResultCommon() + {} + + ~LinkSteamAccountResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct LinkTwitchAccountRequest : public PlayFabRequestCommon + { + std::string AccessToken; + Boxed ForceLink; + + LinkTwitchAccountRequest() : + PlayFabRequestCommon(), + AccessToken(), + ForceLink() + {} + + LinkTwitchAccountRequest(const LinkTwitchAccountRequest& src) : + PlayFabRequestCommon(), + AccessToken(src.AccessToken), + ForceLink(src.ForceLink) + {} + + ~LinkTwitchAccountRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AccessToken"], AccessToken); + FromJsonUtilP(input["ForceLink"], ForceLink); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AccessToken; ToJsonUtilS(AccessToken, each_AccessToken); output["AccessToken"] = each_AccessToken; + Json::Value each_ForceLink; ToJsonUtilP(ForceLink, each_ForceLink); output["ForceLink"] = each_ForceLink; + return output; + } + }; + + struct LinkTwitchAccountResult : public PlayFabResultCommon + { + + LinkTwitchAccountResult() : + PlayFabResultCommon() + {} + + LinkTwitchAccountResult(const LinkTwitchAccountResult&) : + PlayFabResultCommon() + {} + + ~LinkTwitchAccountResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct LinkWindowsHelloAccountRequest : public PlayFabRequestCommon + { + std::string DeviceName; + Boxed ForceLink; + std::string PublicKey; + std::string UserName; + + LinkWindowsHelloAccountRequest() : + PlayFabRequestCommon(), + DeviceName(), + ForceLink(), + PublicKey(), + UserName() + {} + + LinkWindowsHelloAccountRequest(const LinkWindowsHelloAccountRequest& src) : + PlayFabRequestCommon(), + DeviceName(src.DeviceName), + ForceLink(src.ForceLink), + PublicKey(src.PublicKey), + UserName(src.UserName) + {} + + ~LinkWindowsHelloAccountRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["DeviceName"], DeviceName); + FromJsonUtilP(input["ForceLink"], ForceLink); + FromJsonUtilS(input["PublicKey"], PublicKey); + FromJsonUtilS(input["UserName"], UserName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DeviceName; ToJsonUtilS(DeviceName, each_DeviceName); output["DeviceName"] = each_DeviceName; + Json::Value each_ForceLink; ToJsonUtilP(ForceLink, each_ForceLink); output["ForceLink"] = each_ForceLink; + Json::Value each_PublicKey; ToJsonUtilS(PublicKey, each_PublicKey); output["PublicKey"] = each_PublicKey; + Json::Value each_UserName; ToJsonUtilS(UserName, each_UserName); output["UserName"] = each_UserName; + return output; + } + }; + + struct LinkWindowsHelloAccountResponse : public PlayFabResultCommon + { + + LinkWindowsHelloAccountResponse() : + PlayFabResultCommon() + {} + + LinkWindowsHelloAccountResponse(const LinkWindowsHelloAccountResponse&) : + PlayFabResultCommon() + {} + + ~LinkWindowsHelloAccountResponse() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct ListUsersCharactersRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + + ListUsersCharactersRequest() : + PlayFabRequestCommon(), + PlayFabId() + {} + + ListUsersCharactersRequest(const ListUsersCharactersRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId) + {} + + ~ListUsersCharactersRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct ListUsersCharactersResult : public PlayFabResultCommon + { + std::list Characters; + + ListUsersCharactersResult() : + PlayFabResultCommon(), + Characters() + {} + + ListUsersCharactersResult(const ListUsersCharactersResult& src) : + PlayFabResultCommon(), + Characters(src.Characters) + {} + + ~ListUsersCharactersResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Characters"], Characters); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Characters; ToJsonUtilO(Characters, each_Characters); output["Characters"] = each_Characters; + return output; + } + }; + + struct UserSettings : public PlayFabBaseModel + { + bool GatherDeviceInfo; + bool NeedsAttribution; + + UserSettings() : + PlayFabBaseModel(), + GatherDeviceInfo(), + NeedsAttribution() + {} + + UserSettings(const UserSettings& src) : + PlayFabBaseModel(), + GatherDeviceInfo(src.GatherDeviceInfo), + NeedsAttribution(src.NeedsAttribution) + {} + + ~UserSettings() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["GatherDeviceInfo"], GatherDeviceInfo); + FromJsonUtilP(input["NeedsAttribution"], NeedsAttribution); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GatherDeviceInfo; ToJsonUtilP(GatherDeviceInfo, each_GatherDeviceInfo); output["GatherDeviceInfo"] = each_GatherDeviceInfo; + Json::Value each_NeedsAttribution; ToJsonUtilP(NeedsAttribution, each_NeedsAttribution); output["NeedsAttribution"] = each_NeedsAttribution; + return output; + } + }; + + struct LoginResult : public PlayFabResultCommon + { + Boxed EntityToken; + Boxed InfoResultPayload; + Boxed LastLoginTime; + bool NewlyCreated; + std::string PlayFabId; + std::string SessionTicket; + Boxed SettingsForUser; + + LoginResult() : + PlayFabResultCommon(), + EntityToken(), + InfoResultPayload(), + LastLoginTime(), + NewlyCreated(), + PlayFabId(), + SessionTicket(), + SettingsForUser() + {} + + LoginResult(const LoginResult& src) : + PlayFabResultCommon(), + EntityToken(src.EntityToken), + InfoResultPayload(src.InfoResultPayload), + LastLoginTime(src.LastLoginTime), + NewlyCreated(src.NewlyCreated), + PlayFabId(src.PlayFabId), + SessionTicket(src.SessionTicket), + SettingsForUser(src.SettingsForUser) + {} + + ~LoginResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["EntityToken"], EntityToken); + FromJsonUtilO(input["InfoResultPayload"], InfoResultPayload); + FromJsonUtilT(input["LastLoginTime"], LastLoginTime); + FromJsonUtilP(input["NewlyCreated"], NewlyCreated); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["SessionTicket"], SessionTicket); + FromJsonUtilO(input["SettingsForUser"], SettingsForUser); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_EntityToken; ToJsonUtilO(EntityToken, each_EntityToken); output["EntityToken"] = each_EntityToken; + Json::Value each_InfoResultPayload; ToJsonUtilO(InfoResultPayload, each_InfoResultPayload); output["InfoResultPayload"] = each_InfoResultPayload; + Json::Value each_LastLoginTime; ToJsonUtilT(LastLoginTime, each_LastLoginTime); output["LastLoginTime"] = each_LastLoginTime; + Json::Value each_NewlyCreated; ToJsonUtilP(NewlyCreated, each_NewlyCreated); output["NewlyCreated"] = each_NewlyCreated; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_SessionTicket; ToJsonUtilS(SessionTicket, each_SessionTicket); output["SessionTicket"] = each_SessionTicket; + Json::Value each_SettingsForUser; ToJsonUtilO(SettingsForUser, each_SettingsForUser); output["SettingsForUser"] = each_SettingsForUser; + return output; + } + }; + + struct LoginWithAndroidDeviceIDRequest : public PlayFabRequestCommon + { + std::string AndroidDevice; + std::string AndroidDeviceId; + Boxed CreateAccount; + std::string EncryptedRequest; + Boxed InfoRequestParameters; + Boxed LoginTitlePlayerAccountEntity; + std::string OS; + std::string PlayerSecret; + std::string TitleId; + + LoginWithAndroidDeviceIDRequest() : + PlayFabRequestCommon(), + AndroidDevice(), + AndroidDeviceId(), + CreateAccount(), + EncryptedRequest(), + InfoRequestParameters(), + LoginTitlePlayerAccountEntity(), + OS(), + PlayerSecret(), + TitleId() + {} + + LoginWithAndroidDeviceIDRequest(const LoginWithAndroidDeviceIDRequest& src) : + PlayFabRequestCommon(), + AndroidDevice(src.AndroidDevice), + AndroidDeviceId(src.AndroidDeviceId), + CreateAccount(src.CreateAccount), + EncryptedRequest(src.EncryptedRequest), + InfoRequestParameters(src.InfoRequestParameters), + LoginTitlePlayerAccountEntity(src.LoginTitlePlayerAccountEntity), + OS(src.OS), + PlayerSecret(src.PlayerSecret), + TitleId(src.TitleId) + {} + + ~LoginWithAndroidDeviceIDRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AndroidDevice"], AndroidDevice); + FromJsonUtilS(input["AndroidDeviceId"], AndroidDeviceId); + FromJsonUtilP(input["CreateAccount"], CreateAccount); + FromJsonUtilS(input["EncryptedRequest"], EncryptedRequest); + FromJsonUtilO(input["InfoRequestParameters"], InfoRequestParameters); + FromJsonUtilP(input["LoginTitlePlayerAccountEntity"], LoginTitlePlayerAccountEntity); + FromJsonUtilS(input["OS"], OS); + FromJsonUtilS(input["PlayerSecret"], PlayerSecret); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AndroidDevice; ToJsonUtilS(AndroidDevice, each_AndroidDevice); output["AndroidDevice"] = each_AndroidDevice; + Json::Value each_AndroidDeviceId; ToJsonUtilS(AndroidDeviceId, each_AndroidDeviceId); output["AndroidDeviceId"] = each_AndroidDeviceId; + Json::Value each_CreateAccount; ToJsonUtilP(CreateAccount, each_CreateAccount); output["CreateAccount"] = each_CreateAccount; + Json::Value each_EncryptedRequest; ToJsonUtilS(EncryptedRequest, each_EncryptedRequest); output["EncryptedRequest"] = each_EncryptedRequest; + Json::Value each_InfoRequestParameters; ToJsonUtilO(InfoRequestParameters, each_InfoRequestParameters); output["InfoRequestParameters"] = each_InfoRequestParameters; + Json::Value each_LoginTitlePlayerAccountEntity; ToJsonUtilP(LoginTitlePlayerAccountEntity, each_LoginTitlePlayerAccountEntity); output["LoginTitlePlayerAccountEntity"] = each_LoginTitlePlayerAccountEntity; + Json::Value each_OS; ToJsonUtilS(OS, each_OS); output["OS"] = each_OS; + Json::Value each_PlayerSecret; ToJsonUtilS(PlayerSecret, each_PlayerSecret); output["PlayerSecret"] = each_PlayerSecret; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct LoginWithCustomIDRequest : public PlayFabRequestCommon + { + Boxed CreateAccount; + std::string CustomId; + std::string EncryptedRequest; + Boxed InfoRequestParameters; + Boxed LoginTitlePlayerAccountEntity; + std::string PlayerSecret; + std::string TitleId; + + LoginWithCustomIDRequest() : + PlayFabRequestCommon(), + CreateAccount(), + CustomId(), + EncryptedRequest(), + InfoRequestParameters(), + LoginTitlePlayerAccountEntity(), + PlayerSecret(), + TitleId() + {} + + LoginWithCustomIDRequest(const LoginWithCustomIDRequest& src) : + PlayFabRequestCommon(), + CreateAccount(src.CreateAccount), + CustomId(src.CustomId), + EncryptedRequest(src.EncryptedRequest), + InfoRequestParameters(src.InfoRequestParameters), + LoginTitlePlayerAccountEntity(src.LoginTitlePlayerAccountEntity), + PlayerSecret(src.PlayerSecret), + TitleId(src.TitleId) + {} + + ~LoginWithCustomIDRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["CreateAccount"], CreateAccount); + FromJsonUtilS(input["CustomId"], CustomId); + FromJsonUtilS(input["EncryptedRequest"], EncryptedRequest); + FromJsonUtilO(input["InfoRequestParameters"], InfoRequestParameters); + FromJsonUtilP(input["LoginTitlePlayerAccountEntity"], LoginTitlePlayerAccountEntity); + FromJsonUtilS(input["PlayerSecret"], PlayerSecret); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CreateAccount; ToJsonUtilP(CreateAccount, each_CreateAccount); output["CreateAccount"] = each_CreateAccount; + Json::Value each_CustomId; ToJsonUtilS(CustomId, each_CustomId); output["CustomId"] = each_CustomId; + Json::Value each_EncryptedRequest; ToJsonUtilS(EncryptedRequest, each_EncryptedRequest); output["EncryptedRequest"] = each_EncryptedRequest; + Json::Value each_InfoRequestParameters; ToJsonUtilO(InfoRequestParameters, each_InfoRequestParameters); output["InfoRequestParameters"] = each_InfoRequestParameters; + Json::Value each_LoginTitlePlayerAccountEntity; ToJsonUtilP(LoginTitlePlayerAccountEntity, each_LoginTitlePlayerAccountEntity); output["LoginTitlePlayerAccountEntity"] = each_LoginTitlePlayerAccountEntity; + Json::Value each_PlayerSecret; ToJsonUtilS(PlayerSecret, each_PlayerSecret); output["PlayerSecret"] = each_PlayerSecret; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct LoginWithEmailAddressRequest : public PlayFabRequestCommon + { + std::string Email; + Boxed InfoRequestParameters; + Boxed LoginTitlePlayerAccountEntity; + std::string Password; + std::string TitleId; + + LoginWithEmailAddressRequest() : + PlayFabRequestCommon(), + Email(), + InfoRequestParameters(), + LoginTitlePlayerAccountEntity(), + Password(), + TitleId() + {} + + LoginWithEmailAddressRequest(const LoginWithEmailAddressRequest& src) : + PlayFabRequestCommon(), + Email(src.Email), + InfoRequestParameters(src.InfoRequestParameters), + LoginTitlePlayerAccountEntity(src.LoginTitlePlayerAccountEntity), + Password(src.Password), + TitleId(src.TitleId) + {} + + ~LoginWithEmailAddressRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Email"], Email); + FromJsonUtilO(input["InfoRequestParameters"], InfoRequestParameters); + FromJsonUtilP(input["LoginTitlePlayerAccountEntity"], LoginTitlePlayerAccountEntity); + FromJsonUtilS(input["Password"], Password); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Email; ToJsonUtilS(Email, each_Email); output["Email"] = each_Email; + Json::Value each_InfoRequestParameters; ToJsonUtilO(InfoRequestParameters, each_InfoRequestParameters); output["InfoRequestParameters"] = each_InfoRequestParameters; + Json::Value each_LoginTitlePlayerAccountEntity; ToJsonUtilP(LoginTitlePlayerAccountEntity, each_LoginTitlePlayerAccountEntity); output["LoginTitlePlayerAccountEntity"] = each_LoginTitlePlayerAccountEntity; + Json::Value each_Password; ToJsonUtilS(Password, each_Password); output["Password"] = each_Password; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct LoginWithFacebookRequest : public PlayFabRequestCommon + { + std::string AccessToken; + Boxed CreateAccount; + std::string EncryptedRequest; + Boxed InfoRequestParameters; + Boxed LoginTitlePlayerAccountEntity; + std::string PlayerSecret; + std::string TitleId; + + LoginWithFacebookRequest() : + PlayFabRequestCommon(), + AccessToken(), + CreateAccount(), + EncryptedRequest(), + InfoRequestParameters(), + LoginTitlePlayerAccountEntity(), + PlayerSecret(), + TitleId() + {} + + LoginWithFacebookRequest(const LoginWithFacebookRequest& src) : + PlayFabRequestCommon(), + AccessToken(src.AccessToken), + CreateAccount(src.CreateAccount), + EncryptedRequest(src.EncryptedRequest), + InfoRequestParameters(src.InfoRequestParameters), + LoginTitlePlayerAccountEntity(src.LoginTitlePlayerAccountEntity), + PlayerSecret(src.PlayerSecret), + TitleId(src.TitleId) + {} + + ~LoginWithFacebookRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AccessToken"], AccessToken); + FromJsonUtilP(input["CreateAccount"], CreateAccount); + FromJsonUtilS(input["EncryptedRequest"], EncryptedRequest); + FromJsonUtilO(input["InfoRequestParameters"], InfoRequestParameters); + FromJsonUtilP(input["LoginTitlePlayerAccountEntity"], LoginTitlePlayerAccountEntity); + FromJsonUtilS(input["PlayerSecret"], PlayerSecret); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AccessToken; ToJsonUtilS(AccessToken, each_AccessToken); output["AccessToken"] = each_AccessToken; + Json::Value each_CreateAccount; ToJsonUtilP(CreateAccount, each_CreateAccount); output["CreateAccount"] = each_CreateAccount; + Json::Value each_EncryptedRequest; ToJsonUtilS(EncryptedRequest, each_EncryptedRequest); output["EncryptedRequest"] = each_EncryptedRequest; + Json::Value each_InfoRequestParameters; ToJsonUtilO(InfoRequestParameters, each_InfoRequestParameters); output["InfoRequestParameters"] = each_InfoRequestParameters; + Json::Value each_LoginTitlePlayerAccountEntity; ToJsonUtilP(LoginTitlePlayerAccountEntity, each_LoginTitlePlayerAccountEntity); output["LoginTitlePlayerAccountEntity"] = each_LoginTitlePlayerAccountEntity; + Json::Value each_PlayerSecret; ToJsonUtilS(PlayerSecret, each_PlayerSecret); output["PlayerSecret"] = each_PlayerSecret; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct LoginWithGameCenterRequest : public PlayFabRequestCommon + { + Boxed CreateAccount; + std::string EncryptedRequest; + Boxed InfoRequestParameters; + Boxed LoginTitlePlayerAccountEntity; + std::string PlayerId; + std::string PlayerSecret; + std::string TitleId; + + LoginWithGameCenterRequest() : + PlayFabRequestCommon(), + CreateAccount(), + EncryptedRequest(), + InfoRequestParameters(), + LoginTitlePlayerAccountEntity(), + PlayerId(), + PlayerSecret(), + TitleId() + {} + + LoginWithGameCenterRequest(const LoginWithGameCenterRequest& src) : + PlayFabRequestCommon(), + CreateAccount(src.CreateAccount), + EncryptedRequest(src.EncryptedRequest), + InfoRequestParameters(src.InfoRequestParameters), + LoginTitlePlayerAccountEntity(src.LoginTitlePlayerAccountEntity), + PlayerId(src.PlayerId), + PlayerSecret(src.PlayerSecret), + TitleId(src.TitleId) + {} + + ~LoginWithGameCenterRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["CreateAccount"], CreateAccount); + FromJsonUtilS(input["EncryptedRequest"], EncryptedRequest); + FromJsonUtilO(input["InfoRequestParameters"], InfoRequestParameters); + FromJsonUtilP(input["LoginTitlePlayerAccountEntity"], LoginTitlePlayerAccountEntity); + FromJsonUtilS(input["PlayerId"], PlayerId); + FromJsonUtilS(input["PlayerSecret"], PlayerSecret); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CreateAccount; ToJsonUtilP(CreateAccount, each_CreateAccount); output["CreateAccount"] = each_CreateAccount; + Json::Value each_EncryptedRequest; ToJsonUtilS(EncryptedRequest, each_EncryptedRequest); output["EncryptedRequest"] = each_EncryptedRequest; + Json::Value each_InfoRequestParameters; ToJsonUtilO(InfoRequestParameters, each_InfoRequestParameters); output["InfoRequestParameters"] = each_InfoRequestParameters; + Json::Value each_LoginTitlePlayerAccountEntity; ToJsonUtilP(LoginTitlePlayerAccountEntity, each_LoginTitlePlayerAccountEntity); output["LoginTitlePlayerAccountEntity"] = each_LoginTitlePlayerAccountEntity; + Json::Value each_PlayerId; ToJsonUtilS(PlayerId, each_PlayerId); output["PlayerId"] = each_PlayerId; + Json::Value each_PlayerSecret; ToJsonUtilS(PlayerSecret, each_PlayerSecret); output["PlayerSecret"] = each_PlayerSecret; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct LoginWithGoogleAccountRequest : public PlayFabRequestCommon + { + Boxed CreateAccount; + std::string EncryptedRequest; + Boxed InfoRequestParameters; + Boxed LoginTitlePlayerAccountEntity; + std::string PlayerSecret; + std::string ServerAuthCode; + std::string TitleId; + + LoginWithGoogleAccountRequest() : + PlayFabRequestCommon(), + CreateAccount(), + EncryptedRequest(), + InfoRequestParameters(), + LoginTitlePlayerAccountEntity(), + PlayerSecret(), + ServerAuthCode(), + TitleId() + {} + + LoginWithGoogleAccountRequest(const LoginWithGoogleAccountRequest& src) : + PlayFabRequestCommon(), + CreateAccount(src.CreateAccount), + EncryptedRequest(src.EncryptedRequest), + InfoRequestParameters(src.InfoRequestParameters), + LoginTitlePlayerAccountEntity(src.LoginTitlePlayerAccountEntity), + PlayerSecret(src.PlayerSecret), + ServerAuthCode(src.ServerAuthCode), + TitleId(src.TitleId) + {} + + ~LoginWithGoogleAccountRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["CreateAccount"], CreateAccount); + FromJsonUtilS(input["EncryptedRequest"], EncryptedRequest); + FromJsonUtilO(input["InfoRequestParameters"], InfoRequestParameters); + FromJsonUtilP(input["LoginTitlePlayerAccountEntity"], LoginTitlePlayerAccountEntity); + FromJsonUtilS(input["PlayerSecret"], PlayerSecret); + FromJsonUtilS(input["ServerAuthCode"], ServerAuthCode); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CreateAccount; ToJsonUtilP(CreateAccount, each_CreateAccount); output["CreateAccount"] = each_CreateAccount; + Json::Value each_EncryptedRequest; ToJsonUtilS(EncryptedRequest, each_EncryptedRequest); output["EncryptedRequest"] = each_EncryptedRequest; + Json::Value each_InfoRequestParameters; ToJsonUtilO(InfoRequestParameters, each_InfoRequestParameters); output["InfoRequestParameters"] = each_InfoRequestParameters; + Json::Value each_LoginTitlePlayerAccountEntity; ToJsonUtilP(LoginTitlePlayerAccountEntity, each_LoginTitlePlayerAccountEntity); output["LoginTitlePlayerAccountEntity"] = each_LoginTitlePlayerAccountEntity; + Json::Value each_PlayerSecret; ToJsonUtilS(PlayerSecret, each_PlayerSecret); output["PlayerSecret"] = each_PlayerSecret; + Json::Value each_ServerAuthCode; ToJsonUtilS(ServerAuthCode, each_ServerAuthCode); output["ServerAuthCode"] = each_ServerAuthCode; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct LoginWithIOSDeviceIDRequest : public PlayFabRequestCommon + { + Boxed CreateAccount; + std::string DeviceId; + std::string DeviceModel; + std::string EncryptedRequest; + Boxed InfoRequestParameters; + Boxed LoginTitlePlayerAccountEntity; + std::string OS; + std::string PlayerSecret; + std::string TitleId; + + LoginWithIOSDeviceIDRequest() : + PlayFabRequestCommon(), + CreateAccount(), + DeviceId(), + DeviceModel(), + EncryptedRequest(), + InfoRequestParameters(), + LoginTitlePlayerAccountEntity(), + OS(), + PlayerSecret(), + TitleId() + {} + + LoginWithIOSDeviceIDRequest(const LoginWithIOSDeviceIDRequest& src) : + PlayFabRequestCommon(), + CreateAccount(src.CreateAccount), + DeviceId(src.DeviceId), + DeviceModel(src.DeviceModel), + EncryptedRequest(src.EncryptedRequest), + InfoRequestParameters(src.InfoRequestParameters), + LoginTitlePlayerAccountEntity(src.LoginTitlePlayerAccountEntity), + OS(src.OS), + PlayerSecret(src.PlayerSecret), + TitleId(src.TitleId) + {} + + ~LoginWithIOSDeviceIDRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["CreateAccount"], CreateAccount); + FromJsonUtilS(input["DeviceId"], DeviceId); + FromJsonUtilS(input["DeviceModel"], DeviceModel); + FromJsonUtilS(input["EncryptedRequest"], EncryptedRequest); + FromJsonUtilO(input["InfoRequestParameters"], InfoRequestParameters); + FromJsonUtilP(input["LoginTitlePlayerAccountEntity"], LoginTitlePlayerAccountEntity); + FromJsonUtilS(input["OS"], OS); + FromJsonUtilS(input["PlayerSecret"], PlayerSecret); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CreateAccount; ToJsonUtilP(CreateAccount, each_CreateAccount); output["CreateAccount"] = each_CreateAccount; + Json::Value each_DeviceId; ToJsonUtilS(DeviceId, each_DeviceId); output["DeviceId"] = each_DeviceId; + Json::Value each_DeviceModel; ToJsonUtilS(DeviceModel, each_DeviceModel); output["DeviceModel"] = each_DeviceModel; + Json::Value each_EncryptedRequest; ToJsonUtilS(EncryptedRequest, each_EncryptedRequest); output["EncryptedRequest"] = each_EncryptedRequest; + Json::Value each_InfoRequestParameters; ToJsonUtilO(InfoRequestParameters, each_InfoRequestParameters); output["InfoRequestParameters"] = each_InfoRequestParameters; + Json::Value each_LoginTitlePlayerAccountEntity; ToJsonUtilP(LoginTitlePlayerAccountEntity, each_LoginTitlePlayerAccountEntity); output["LoginTitlePlayerAccountEntity"] = each_LoginTitlePlayerAccountEntity; + Json::Value each_OS; ToJsonUtilS(OS, each_OS); output["OS"] = each_OS; + Json::Value each_PlayerSecret; ToJsonUtilS(PlayerSecret, each_PlayerSecret); output["PlayerSecret"] = each_PlayerSecret; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct LoginWithKongregateRequest : public PlayFabRequestCommon + { + std::string AuthTicket; + Boxed CreateAccount; + std::string EncryptedRequest; + Boxed InfoRequestParameters; + std::string KongregateId; + Boxed LoginTitlePlayerAccountEntity; + std::string PlayerSecret; + std::string TitleId; + + LoginWithKongregateRequest() : + PlayFabRequestCommon(), + AuthTicket(), + CreateAccount(), + EncryptedRequest(), + InfoRequestParameters(), + KongregateId(), + LoginTitlePlayerAccountEntity(), + PlayerSecret(), + TitleId() + {} + + LoginWithKongregateRequest(const LoginWithKongregateRequest& src) : + PlayFabRequestCommon(), + AuthTicket(src.AuthTicket), + CreateAccount(src.CreateAccount), + EncryptedRequest(src.EncryptedRequest), + InfoRequestParameters(src.InfoRequestParameters), + KongregateId(src.KongregateId), + LoginTitlePlayerAccountEntity(src.LoginTitlePlayerAccountEntity), + PlayerSecret(src.PlayerSecret), + TitleId(src.TitleId) + {} + + ~LoginWithKongregateRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AuthTicket"], AuthTicket); + FromJsonUtilP(input["CreateAccount"], CreateAccount); + FromJsonUtilS(input["EncryptedRequest"], EncryptedRequest); + FromJsonUtilO(input["InfoRequestParameters"], InfoRequestParameters); + FromJsonUtilS(input["KongregateId"], KongregateId); + FromJsonUtilP(input["LoginTitlePlayerAccountEntity"], LoginTitlePlayerAccountEntity); + FromJsonUtilS(input["PlayerSecret"], PlayerSecret); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AuthTicket; ToJsonUtilS(AuthTicket, each_AuthTicket); output["AuthTicket"] = each_AuthTicket; + Json::Value each_CreateAccount; ToJsonUtilP(CreateAccount, each_CreateAccount); output["CreateAccount"] = each_CreateAccount; + Json::Value each_EncryptedRequest; ToJsonUtilS(EncryptedRequest, each_EncryptedRequest); output["EncryptedRequest"] = each_EncryptedRequest; + Json::Value each_InfoRequestParameters; ToJsonUtilO(InfoRequestParameters, each_InfoRequestParameters); output["InfoRequestParameters"] = each_InfoRequestParameters; + Json::Value each_KongregateId; ToJsonUtilS(KongregateId, each_KongregateId); output["KongregateId"] = each_KongregateId; + Json::Value each_LoginTitlePlayerAccountEntity; ToJsonUtilP(LoginTitlePlayerAccountEntity, each_LoginTitlePlayerAccountEntity); output["LoginTitlePlayerAccountEntity"] = each_LoginTitlePlayerAccountEntity; + Json::Value each_PlayerSecret; ToJsonUtilS(PlayerSecret, each_PlayerSecret); output["PlayerSecret"] = each_PlayerSecret; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct LoginWithPlayFabRequest : public PlayFabRequestCommon + { + Boxed InfoRequestParameters; + Boxed LoginTitlePlayerAccountEntity; + std::string Password; + std::string TitleId; + std::string Username; + + LoginWithPlayFabRequest() : + PlayFabRequestCommon(), + InfoRequestParameters(), + LoginTitlePlayerAccountEntity(), + Password(), + TitleId(), + Username() + {} + + LoginWithPlayFabRequest(const LoginWithPlayFabRequest& src) : + PlayFabRequestCommon(), + InfoRequestParameters(src.InfoRequestParameters), + LoginTitlePlayerAccountEntity(src.LoginTitlePlayerAccountEntity), + Password(src.Password), + TitleId(src.TitleId), + Username(src.Username) + {} + + ~LoginWithPlayFabRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["InfoRequestParameters"], InfoRequestParameters); + FromJsonUtilP(input["LoginTitlePlayerAccountEntity"], LoginTitlePlayerAccountEntity); + FromJsonUtilS(input["Password"], Password); + FromJsonUtilS(input["TitleId"], TitleId); + FromJsonUtilS(input["Username"], Username); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_InfoRequestParameters; ToJsonUtilO(InfoRequestParameters, each_InfoRequestParameters); output["InfoRequestParameters"] = each_InfoRequestParameters; + Json::Value each_LoginTitlePlayerAccountEntity; ToJsonUtilP(LoginTitlePlayerAccountEntity, each_LoginTitlePlayerAccountEntity); output["LoginTitlePlayerAccountEntity"] = each_LoginTitlePlayerAccountEntity; + Json::Value each_Password; ToJsonUtilS(Password, each_Password); output["Password"] = each_Password; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + return output; + } + }; + + struct LoginWithSteamRequest : public PlayFabRequestCommon + { + Boxed CreateAccount; + std::string EncryptedRequest; + Boxed InfoRequestParameters; + Boxed LoginTitlePlayerAccountEntity; + std::string PlayerSecret; + std::string SteamTicket; + std::string TitleId; + + LoginWithSteamRequest() : + PlayFabRequestCommon(), + CreateAccount(), + EncryptedRequest(), + InfoRequestParameters(), + LoginTitlePlayerAccountEntity(), + PlayerSecret(), + SteamTicket(), + TitleId() + {} + + LoginWithSteamRequest(const LoginWithSteamRequest& src) : + PlayFabRequestCommon(), + CreateAccount(src.CreateAccount), + EncryptedRequest(src.EncryptedRequest), + InfoRequestParameters(src.InfoRequestParameters), + LoginTitlePlayerAccountEntity(src.LoginTitlePlayerAccountEntity), + PlayerSecret(src.PlayerSecret), + SteamTicket(src.SteamTicket), + TitleId(src.TitleId) + {} + + ~LoginWithSteamRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["CreateAccount"], CreateAccount); + FromJsonUtilS(input["EncryptedRequest"], EncryptedRequest); + FromJsonUtilO(input["InfoRequestParameters"], InfoRequestParameters); + FromJsonUtilP(input["LoginTitlePlayerAccountEntity"], LoginTitlePlayerAccountEntity); + FromJsonUtilS(input["PlayerSecret"], PlayerSecret); + FromJsonUtilS(input["SteamTicket"], SteamTicket); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CreateAccount; ToJsonUtilP(CreateAccount, each_CreateAccount); output["CreateAccount"] = each_CreateAccount; + Json::Value each_EncryptedRequest; ToJsonUtilS(EncryptedRequest, each_EncryptedRequest); output["EncryptedRequest"] = each_EncryptedRequest; + Json::Value each_InfoRequestParameters; ToJsonUtilO(InfoRequestParameters, each_InfoRequestParameters); output["InfoRequestParameters"] = each_InfoRequestParameters; + Json::Value each_LoginTitlePlayerAccountEntity; ToJsonUtilP(LoginTitlePlayerAccountEntity, each_LoginTitlePlayerAccountEntity); output["LoginTitlePlayerAccountEntity"] = each_LoginTitlePlayerAccountEntity; + Json::Value each_PlayerSecret; ToJsonUtilS(PlayerSecret, each_PlayerSecret); output["PlayerSecret"] = each_PlayerSecret; + Json::Value each_SteamTicket; ToJsonUtilS(SteamTicket, each_SteamTicket); output["SteamTicket"] = each_SteamTicket; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct LoginWithTwitchRequest : public PlayFabRequestCommon + { + std::string AccessToken; + Boxed CreateAccount; + std::string EncryptedRequest; + Boxed InfoRequestParameters; + Boxed LoginTitlePlayerAccountEntity; + std::string PlayerSecret; + std::string TitleId; + + LoginWithTwitchRequest() : + PlayFabRequestCommon(), + AccessToken(), + CreateAccount(), + EncryptedRequest(), + InfoRequestParameters(), + LoginTitlePlayerAccountEntity(), + PlayerSecret(), + TitleId() + {} + + LoginWithTwitchRequest(const LoginWithTwitchRequest& src) : + PlayFabRequestCommon(), + AccessToken(src.AccessToken), + CreateAccount(src.CreateAccount), + EncryptedRequest(src.EncryptedRequest), + InfoRequestParameters(src.InfoRequestParameters), + LoginTitlePlayerAccountEntity(src.LoginTitlePlayerAccountEntity), + PlayerSecret(src.PlayerSecret), + TitleId(src.TitleId) + {} + + ~LoginWithTwitchRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AccessToken"], AccessToken); + FromJsonUtilP(input["CreateAccount"], CreateAccount); + FromJsonUtilS(input["EncryptedRequest"], EncryptedRequest); + FromJsonUtilO(input["InfoRequestParameters"], InfoRequestParameters); + FromJsonUtilP(input["LoginTitlePlayerAccountEntity"], LoginTitlePlayerAccountEntity); + FromJsonUtilS(input["PlayerSecret"], PlayerSecret); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AccessToken; ToJsonUtilS(AccessToken, each_AccessToken); output["AccessToken"] = each_AccessToken; + Json::Value each_CreateAccount; ToJsonUtilP(CreateAccount, each_CreateAccount); output["CreateAccount"] = each_CreateAccount; + Json::Value each_EncryptedRequest; ToJsonUtilS(EncryptedRequest, each_EncryptedRequest); output["EncryptedRequest"] = each_EncryptedRequest; + Json::Value each_InfoRequestParameters; ToJsonUtilO(InfoRequestParameters, each_InfoRequestParameters); output["InfoRequestParameters"] = each_InfoRequestParameters; + Json::Value each_LoginTitlePlayerAccountEntity; ToJsonUtilP(LoginTitlePlayerAccountEntity, each_LoginTitlePlayerAccountEntity); output["LoginTitlePlayerAccountEntity"] = each_LoginTitlePlayerAccountEntity; + Json::Value each_PlayerSecret; ToJsonUtilS(PlayerSecret, each_PlayerSecret); output["PlayerSecret"] = each_PlayerSecret; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct LoginWithWindowsHelloRequest : public PlayFabRequestCommon + { + std::string ChallengeSignature; + Boxed InfoRequestParameters; + Boxed LoginTitlePlayerAccountEntity; + std::string PublicKeyHint; + std::string TitleId; + + LoginWithWindowsHelloRequest() : + PlayFabRequestCommon(), + ChallengeSignature(), + InfoRequestParameters(), + LoginTitlePlayerAccountEntity(), + PublicKeyHint(), + TitleId() + {} + + LoginWithWindowsHelloRequest(const LoginWithWindowsHelloRequest& src) : + PlayFabRequestCommon(), + ChallengeSignature(src.ChallengeSignature), + InfoRequestParameters(src.InfoRequestParameters), + LoginTitlePlayerAccountEntity(src.LoginTitlePlayerAccountEntity), + PublicKeyHint(src.PublicKeyHint), + TitleId(src.TitleId) + {} + + ~LoginWithWindowsHelloRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ChallengeSignature"], ChallengeSignature); + FromJsonUtilO(input["InfoRequestParameters"], InfoRequestParameters); + FromJsonUtilP(input["LoginTitlePlayerAccountEntity"], LoginTitlePlayerAccountEntity); + FromJsonUtilS(input["PublicKeyHint"], PublicKeyHint); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ChallengeSignature; ToJsonUtilS(ChallengeSignature, each_ChallengeSignature); output["ChallengeSignature"] = each_ChallengeSignature; + Json::Value each_InfoRequestParameters; ToJsonUtilO(InfoRequestParameters, each_InfoRequestParameters); output["InfoRequestParameters"] = each_InfoRequestParameters; + Json::Value each_LoginTitlePlayerAccountEntity; ToJsonUtilP(LoginTitlePlayerAccountEntity, each_LoginTitlePlayerAccountEntity); output["LoginTitlePlayerAccountEntity"] = each_LoginTitlePlayerAccountEntity; + Json::Value each_PublicKeyHint; ToJsonUtilS(PublicKeyHint, each_PublicKeyHint); output["PublicKeyHint"] = each_PublicKeyHint; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct MatchmakeRequest : public PlayFabRequestCommon + { + std::string BuildVersion; + std::string CharacterId; + std::string GameMode; + std::string LobbyId; + Boxed pfRegion; + Boxed StartNewIfNoneFound; + std::string StatisticName; + Boxed TagFilter; + + MatchmakeRequest() : + PlayFabRequestCommon(), + BuildVersion(), + CharacterId(), + GameMode(), + LobbyId(), + pfRegion(), + StartNewIfNoneFound(), + StatisticName(), + TagFilter() + {} + + MatchmakeRequest(const MatchmakeRequest& src) : + PlayFabRequestCommon(), + BuildVersion(src.BuildVersion), + CharacterId(src.CharacterId), + GameMode(src.GameMode), + LobbyId(src.LobbyId), + pfRegion(src.pfRegion), + StartNewIfNoneFound(src.StartNewIfNoneFound), + StatisticName(src.StatisticName), + TagFilter(src.TagFilter) + {} + + ~MatchmakeRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["BuildVersion"], BuildVersion); + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["GameMode"], GameMode); + FromJsonUtilS(input["LobbyId"], LobbyId); + FromJsonUtilE(input["pfRegion"], pfRegion); + FromJsonUtilP(input["StartNewIfNoneFound"], StartNewIfNoneFound); + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilO(input["TagFilter"], TagFilter); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BuildVersion; ToJsonUtilS(BuildVersion, each_BuildVersion); output["BuildVersion"] = each_BuildVersion; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_GameMode; ToJsonUtilS(GameMode, each_GameMode); output["GameMode"] = each_GameMode; + Json::Value each_LobbyId; ToJsonUtilS(LobbyId, each_LobbyId); output["LobbyId"] = each_LobbyId; + Json::Value each_pfRegion; ToJsonUtilE(pfRegion, each_pfRegion); output["Region"] = each_pfRegion; + Json::Value each_StartNewIfNoneFound; ToJsonUtilP(StartNewIfNoneFound, each_StartNewIfNoneFound); output["StartNewIfNoneFound"] = each_StartNewIfNoneFound; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_TagFilter; ToJsonUtilO(TagFilter, each_TagFilter); output["TagFilter"] = each_TagFilter; + return output; + } + }; + + struct MatchmakeResult : public PlayFabResultCommon + { + std::string Expires; + std::string LobbyID; + Boxed PollWaitTimeMS; + std::string ServerHostname; + std::string ServerIPV6Address; + Boxed ServerPort; + Boxed Status; + std::string Ticket; + + MatchmakeResult() : + PlayFabResultCommon(), + Expires(), + LobbyID(), + PollWaitTimeMS(), + ServerHostname(), + ServerIPV6Address(), + ServerPort(), + Status(), + Ticket() + {} + + MatchmakeResult(const MatchmakeResult& src) : + PlayFabResultCommon(), + Expires(src.Expires), + LobbyID(src.LobbyID), + PollWaitTimeMS(src.PollWaitTimeMS), + ServerHostname(src.ServerHostname), + ServerIPV6Address(src.ServerIPV6Address), + ServerPort(src.ServerPort), + Status(src.Status), + Ticket(src.Ticket) + {} + + ~MatchmakeResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Expires"], Expires); + FromJsonUtilS(input["LobbyID"], LobbyID); + FromJsonUtilP(input["PollWaitTimeMS"], PollWaitTimeMS); + FromJsonUtilS(input["ServerHostname"], ServerHostname); + FromJsonUtilS(input["ServerIPV6Address"], ServerIPV6Address); + FromJsonUtilP(input["ServerPort"], ServerPort); + FromJsonUtilE(input["Status"], Status); + FromJsonUtilS(input["Ticket"], Ticket); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Expires; ToJsonUtilS(Expires, each_Expires); output["Expires"] = each_Expires; + Json::Value each_LobbyID; ToJsonUtilS(LobbyID, each_LobbyID); output["LobbyID"] = each_LobbyID; + Json::Value each_PollWaitTimeMS; ToJsonUtilP(PollWaitTimeMS, each_PollWaitTimeMS); output["PollWaitTimeMS"] = each_PollWaitTimeMS; + Json::Value each_ServerHostname; ToJsonUtilS(ServerHostname, each_ServerHostname); output["ServerHostname"] = each_ServerHostname; + Json::Value each_ServerIPV6Address; ToJsonUtilS(ServerIPV6Address, each_ServerIPV6Address); output["ServerIPV6Address"] = each_ServerIPV6Address; + Json::Value each_ServerPort; ToJsonUtilP(ServerPort, each_ServerPort); output["ServerPort"] = each_ServerPort; + Json::Value each_Status; ToJsonUtilE(Status, each_Status); output["Status"] = each_Status; + Json::Value each_Ticket; ToJsonUtilS(Ticket, each_Ticket); output["Ticket"] = each_Ticket; + return output; + } + }; + + struct ModifyUserVirtualCurrencyResult : public PlayFabResultCommon + { + Int32 Balance; + Int32 BalanceChange; + std::string PlayFabId; + std::string VirtualCurrency; + + ModifyUserVirtualCurrencyResult() : + PlayFabResultCommon(), + Balance(), + BalanceChange(), + PlayFabId(), + VirtualCurrency() + {} + + ModifyUserVirtualCurrencyResult(const ModifyUserVirtualCurrencyResult& src) : + PlayFabResultCommon(), + Balance(src.Balance), + BalanceChange(src.BalanceChange), + PlayFabId(src.PlayFabId), + VirtualCurrency(src.VirtualCurrency) + {} + + ~ModifyUserVirtualCurrencyResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Balance"], Balance); + FromJsonUtilP(input["BalanceChange"], BalanceChange); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["VirtualCurrency"], VirtualCurrency); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Balance; ToJsonUtilP(Balance, each_Balance); output["Balance"] = each_Balance; + Json::Value each_BalanceChange; ToJsonUtilP(BalanceChange, each_BalanceChange); output["BalanceChange"] = each_BalanceChange; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_VirtualCurrency; ToJsonUtilS(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + return output; + } + }; + + struct NameIdentifier : public PlayFabBaseModel + { + std::string Id; + std::string Name; + + NameIdentifier() : + PlayFabBaseModel(), + Id(), + Name() + {} + + NameIdentifier(const NameIdentifier& src) : + PlayFabBaseModel(), + Id(src.Id), + Name(src.Name) + {} + + ~NameIdentifier() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Id"], Id); + FromJsonUtilS(input["Name"], Name); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Id; ToJsonUtilS(Id, each_Id); output["Id"] = each_Id; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + return output; + } + }; + + struct OpenTradeRequest : public PlayFabRequestCommon + { + std::list AllowedPlayerIds; + std::list OfferedInventoryInstanceIds; + std::list RequestedCatalogItemIds; + + OpenTradeRequest() : + PlayFabRequestCommon(), + AllowedPlayerIds(), + OfferedInventoryInstanceIds(), + RequestedCatalogItemIds() + {} + + OpenTradeRequest(const OpenTradeRequest& src) : + PlayFabRequestCommon(), + AllowedPlayerIds(src.AllowedPlayerIds), + OfferedInventoryInstanceIds(src.OfferedInventoryInstanceIds), + RequestedCatalogItemIds(src.RequestedCatalogItemIds) + {} + + ~OpenTradeRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AllowedPlayerIds"], AllowedPlayerIds); + FromJsonUtilS(input["OfferedInventoryInstanceIds"], OfferedInventoryInstanceIds); + FromJsonUtilS(input["RequestedCatalogItemIds"], RequestedCatalogItemIds); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AllowedPlayerIds; ToJsonUtilS(AllowedPlayerIds, each_AllowedPlayerIds); output["AllowedPlayerIds"] = each_AllowedPlayerIds; + Json::Value each_OfferedInventoryInstanceIds; ToJsonUtilS(OfferedInventoryInstanceIds, each_OfferedInventoryInstanceIds); output["OfferedInventoryInstanceIds"] = each_OfferedInventoryInstanceIds; + Json::Value each_RequestedCatalogItemIds; ToJsonUtilS(RequestedCatalogItemIds, each_RequestedCatalogItemIds); output["RequestedCatalogItemIds"] = each_RequestedCatalogItemIds; + return output; + } + }; + + struct OpenTradeResponse : public PlayFabResultCommon + { + Boxed Trade; + + OpenTradeResponse() : + PlayFabResultCommon(), + Trade() + {} + + OpenTradeResponse(const OpenTradeResponse& src) : + PlayFabResultCommon(), + Trade(src.Trade) + {} + + ~OpenTradeResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Trade"], Trade); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Trade; ToJsonUtilO(Trade, each_Trade); output["Trade"] = each_Trade; + return output; + } + }; + + struct PayForPurchaseRequest : public PlayFabRequestCommon + { + std::string Currency; + std::string OrderId; + std::string ProviderName; + std::string ProviderTransactionId; + + PayForPurchaseRequest() : + PlayFabRequestCommon(), + Currency(), + OrderId(), + ProviderName(), + ProviderTransactionId() + {} + + PayForPurchaseRequest(const PayForPurchaseRequest& src) : + PlayFabRequestCommon(), + Currency(src.Currency), + OrderId(src.OrderId), + ProviderName(src.ProviderName), + ProviderTransactionId(src.ProviderTransactionId) + {} + + ~PayForPurchaseRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Currency"], Currency); + FromJsonUtilS(input["OrderId"], OrderId); + FromJsonUtilS(input["ProviderName"], ProviderName); + FromJsonUtilS(input["ProviderTransactionId"], ProviderTransactionId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Currency; ToJsonUtilS(Currency, each_Currency); output["Currency"] = each_Currency; + Json::Value each_OrderId; ToJsonUtilS(OrderId, each_OrderId); output["OrderId"] = each_OrderId; + Json::Value each_ProviderName; ToJsonUtilS(ProviderName, each_ProviderName); output["ProviderName"] = each_ProviderName; + Json::Value each_ProviderTransactionId; ToJsonUtilS(ProviderTransactionId, each_ProviderTransactionId); output["ProviderTransactionId"] = each_ProviderTransactionId; + return output; + } + }; + + struct PayForPurchaseResult : public PlayFabResultCommon + { + Uint32 CreditApplied; + std::string OrderId; + std::string ProviderData; + std::string ProviderToken; + std::string PurchaseConfirmationPageURL; + std::string PurchaseCurrency; + Uint32 PurchasePrice; + Boxed Status; + std::map VCAmount; + std::map VirtualCurrency; + + PayForPurchaseResult() : + PlayFabResultCommon(), + CreditApplied(), + OrderId(), + ProviderData(), + ProviderToken(), + PurchaseConfirmationPageURL(), + PurchaseCurrency(), + PurchasePrice(), + Status(), + VCAmount(), + VirtualCurrency() + {} + + PayForPurchaseResult(const PayForPurchaseResult& src) : + PlayFabResultCommon(), + CreditApplied(src.CreditApplied), + OrderId(src.OrderId), + ProviderData(src.ProviderData), + ProviderToken(src.ProviderToken), + PurchaseConfirmationPageURL(src.PurchaseConfirmationPageURL), + PurchaseCurrency(src.PurchaseCurrency), + PurchasePrice(src.PurchasePrice), + Status(src.Status), + VCAmount(src.VCAmount), + VirtualCurrency(src.VirtualCurrency) + {} + + ~PayForPurchaseResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["CreditApplied"], CreditApplied); + FromJsonUtilS(input["OrderId"], OrderId); + FromJsonUtilS(input["ProviderData"], ProviderData); + FromJsonUtilS(input["ProviderToken"], ProviderToken); + FromJsonUtilS(input["PurchaseConfirmationPageURL"], PurchaseConfirmationPageURL); + FromJsonUtilS(input["PurchaseCurrency"], PurchaseCurrency); + FromJsonUtilP(input["PurchasePrice"], PurchasePrice); + FromJsonUtilE(input["Status"], Status); + FromJsonUtilP(input["VCAmount"], VCAmount); + FromJsonUtilP(input["VirtualCurrency"], VirtualCurrency); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CreditApplied; ToJsonUtilP(CreditApplied, each_CreditApplied); output["CreditApplied"] = each_CreditApplied; + Json::Value each_OrderId; ToJsonUtilS(OrderId, each_OrderId); output["OrderId"] = each_OrderId; + Json::Value each_ProviderData; ToJsonUtilS(ProviderData, each_ProviderData); output["ProviderData"] = each_ProviderData; + Json::Value each_ProviderToken; ToJsonUtilS(ProviderToken, each_ProviderToken); output["ProviderToken"] = each_ProviderToken; + Json::Value each_PurchaseConfirmationPageURL; ToJsonUtilS(PurchaseConfirmationPageURL, each_PurchaseConfirmationPageURL); output["PurchaseConfirmationPageURL"] = each_PurchaseConfirmationPageURL; + Json::Value each_PurchaseCurrency; ToJsonUtilS(PurchaseCurrency, each_PurchaseCurrency); output["PurchaseCurrency"] = each_PurchaseCurrency; + Json::Value each_PurchasePrice; ToJsonUtilP(PurchasePrice, each_PurchasePrice); output["PurchasePrice"] = each_PurchasePrice; + Json::Value each_Status; ToJsonUtilE(Status, each_Status); output["Status"] = each_Status; + Json::Value each_VCAmount; ToJsonUtilP(VCAmount, each_VCAmount); output["VCAmount"] = each_VCAmount; + Json::Value each_VirtualCurrency; ToJsonUtilP(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + return output; + } + }; + + struct PaymentOption : public PlayFabBaseModel + { + std::string Currency; + Uint32 Price; + std::string ProviderName; + Uint32 StoreCredit; + + PaymentOption() : + PlayFabBaseModel(), + Currency(), + Price(), + ProviderName(), + StoreCredit() + {} + + PaymentOption(const PaymentOption& src) : + PlayFabBaseModel(), + Currency(src.Currency), + Price(src.Price), + ProviderName(src.ProviderName), + StoreCredit(src.StoreCredit) + {} + + ~PaymentOption() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Currency"], Currency); + FromJsonUtilP(input["Price"], Price); + FromJsonUtilS(input["ProviderName"], ProviderName); + FromJsonUtilP(input["StoreCredit"], StoreCredit); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Currency; ToJsonUtilS(Currency, each_Currency); output["Currency"] = each_Currency; + Json::Value each_Price; ToJsonUtilP(Price, each_Price); output["Price"] = each_Price; + Json::Value each_ProviderName; ToJsonUtilS(ProviderName, each_ProviderName); output["ProviderName"] = each_ProviderName; + Json::Value each_StoreCredit; ToJsonUtilP(StoreCredit, each_StoreCredit); output["StoreCredit"] = each_StoreCredit; + return output; + } + }; + + struct PurchaseItemRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::string CharacterId; + std::string ItemId; + Int32 Price; + std::string StoreId; + std::string VirtualCurrency; + + PurchaseItemRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + CharacterId(), + ItemId(), + Price(), + StoreId(), + VirtualCurrency() + {} + + PurchaseItemRequest(const PurchaseItemRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + CharacterId(src.CharacterId), + ItemId(src.ItemId), + Price(src.Price), + StoreId(src.StoreId), + VirtualCurrency(src.VirtualCurrency) + {} + + ~PurchaseItemRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["ItemId"], ItemId); + FromJsonUtilP(input["Price"], Price); + FromJsonUtilS(input["StoreId"], StoreId); + FromJsonUtilS(input["VirtualCurrency"], VirtualCurrency); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + Json::Value each_Price; ToJsonUtilP(Price, each_Price); output["Price"] = each_Price; + Json::Value each_StoreId; ToJsonUtilS(StoreId, each_StoreId); output["StoreId"] = each_StoreId; + Json::Value each_VirtualCurrency; ToJsonUtilS(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + return output; + } + }; + + struct PurchaseItemResult : public PlayFabResultCommon + { + std::list Items; + + PurchaseItemResult() : + PlayFabResultCommon(), + Items() + {} + + PurchaseItemResult(const PurchaseItemResult& src) : + PlayFabResultCommon(), + Items(src.Items) + {} + + ~PurchaseItemResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Items"], Items); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Items; ToJsonUtilO(Items, each_Items); output["Items"] = each_Items; + return output; + } + }; + + struct RedeemCouponRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::string CharacterId; + std::string CouponCode; + + RedeemCouponRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + CharacterId(), + CouponCode() + {} + + RedeemCouponRequest(const RedeemCouponRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + CharacterId(src.CharacterId), + CouponCode(src.CouponCode) + {} + + ~RedeemCouponRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["CouponCode"], CouponCode); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_CouponCode; ToJsonUtilS(CouponCode, each_CouponCode); output["CouponCode"] = each_CouponCode; + return output; + } + }; + + struct RedeemCouponResult : public PlayFabResultCommon + { + std::list GrantedItems; + + RedeemCouponResult() : + PlayFabResultCommon(), + GrantedItems() + {} + + RedeemCouponResult(const RedeemCouponResult& src) : + PlayFabResultCommon(), + GrantedItems(src.GrantedItems) + {} + + ~RedeemCouponResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["GrantedItems"], GrantedItems); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GrantedItems; ToJsonUtilO(GrantedItems, each_GrantedItems); output["GrantedItems"] = each_GrantedItems; + return output; + } + }; + + struct RegisterForIOSPushNotificationRequest : public PlayFabRequestCommon + { + std::string ConfirmationMessage; + std::string DeviceToken; + Boxed SendPushNotificationConfirmation; + + RegisterForIOSPushNotificationRequest() : + PlayFabRequestCommon(), + ConfirmationMessage(), + DeviceToken(), + SendPushNotificationConfirmation() + {} + + RegisterForIOSPushNotificationRequest(const RegisterForIOSPushNotificationRequest& src) : + PlayFabRequestCommon(), + ConfirmationMessage(src.ConfirmationMessage), + DeviceToken(src.DeviceToken), + SendPushNotificationConfirmation(src.SendPushNotificationConfirmation) + {} + + ~RegisterForIOSPushNotificationRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ConfirmationMessage"], ConfirmationMessage); + FromJsonUtilS(input["DeviceToken"], DeviceToken); + FromJsonUtilP(input["SendPushNotificationConfirmation"], SendPushNotificationConfirmation); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ConfirmationMessage; ToJsonUtilS(ConfirmationMessage, each_ConfirmationMessage); output["ConfirmationMessage"] = each_ConfirmationMessage; + Json::Value each_DeviceToken; ToJsonUtilS(DeviceToken, each_DeviceToken); output["DeviceToken"] = each_DeviceToken; + Json::Value each_SendPushNotificationConfirmation; ToJsonUtilP(SendPushNotificationConfirmation, each_SendPushNotificationConfirmation); output["SendPushNotificationConfirmation"] = each_SendPushNotificationConfirmation; + return output; + } + }; + + struct RegisterForIOSPushNotificationResult : public PlayFabResultCommon + { + + RegisterForIOSPushNotificationResult() : + PlayFabResultCommon() + {} + + RegisterForIOSPushNotificationResult(const RegisterForIOSPushNotificationResult&) : + PlayFabResultCommon() + {} + + ~RegisterForIOSPushNotificationResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct RegisterPlayFabUserRequest : public PlayFabRequestCommon + { + std::string DisplayName; + std::string Email; + std::string EncryptedRequest; + Boxed InfoRequestParameters; + Boxed LoginTitlePlayerAccountEntity; + std::string Password; + std::string PlayerSecret; + Boxed RequireBothUsernameAndEmail; + std::string TitleId; + std::string Username; + + RegisterPlayFabUserRequest() : + PlayFabRequestCommon(), + DisplayName(), + Email(), + EncryptedRequest(), + InfoRequestParameters(), + LoginTitlePlayerAccountEntity(), + Password(), + PlayerSecret(), + RequireBothUsernameAndEmail(), + TitleId(), + Username() + {} + + RegisterPlayFabUserRequest(const RegisterPlayFabUserRequest& src) : + PlayFabRequestCommon(), + DisplayName(src.DisplayName), + Email(src.Email), + EncryptedRequest(src.EncryptedRequest), + InfoRequestParameters(src.InfoRequestParameters), + LoginTitlePlayerAccountEntity(src.LoginTitlePlayerAccountEntity), + Password(src.Password), + PlayerSecret(src.PlayerSecret), + RequireBothUsernameAndEmail(src.RequireBothUsernameAndEmail), + TitleId(src.TitleId), + Username(src.Username) + {} + + ~RegisterPlayFabUserRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilS(input["Email"], Email); + FromJsonUtilS(input["EncryptedRequest"], EncryptedRequest); + FromJsonUtilO(input["InfoRequestParameters"], InfoRequestParameters); + FromJsonUtilP(input["LoginTitlePlayerAccountEntity"], LoginTitlePlayerAccountEntity); + FromJsonUtilS(input["Password"], Password); + FromJsonUtilS(input["PlayerSecret"], PlayerSecret); + FromJsonUtilP(input["RequireBothUsernameAndEmail"], RequireBothUsernameAndEmail); + FromJsonUtilS(input["TitleId"], TitleId); + FromJsonUtilS(input["Username"], Username); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_Email; ToJsonUtilS(Email, each_Email); output["Email"] = each_Email; + Json::Value each_EncryptedRequest; ToJsonUtilS(EncryptedRequest, each_EncryptedRequest); output["EncryptedRequest"] = each_EncryptedRequest; + Json::Value each_InfoRequestParameters; ToJsonUtilO(InfoRequestParameters, each_InfoRequestParameters); output["InfoRequestParameters"] = each_InfoRequestParameters; + Json::Value each_LoginTitlePlayerAccountEntity; ToJsonUtilP(LoginTitlePlayerAccountEntity, each_LoginTitlePlayerAccountEntity); output["LoginTitlePlayerAccountEntity"] = each_LoginTitlePlayerAccountEntity; + Json::Value each_Password; ToJsonUtilS(Password, each_Password); output["Password"] = each_Password; + Json::Value each_PlayerSecret; ToJsonUtilS(PlayerSecret, each_PlayerSecret); output["PlayerSecret"] = each_PlayerSecret; + Json::Value each_RequireBothUsernameAndEmail; ToJsonUtilP(RequireBothUsernameAndEmail, each_RequireBothUsernameAndEmail); output["RequireBothUsernameAndEmail"] = each_RequireBothUsernameAndEmail; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + return output; + } + }; + + struct RegisterPlayFabUserResult : public PlayFabResultCommon + { + std::string PlayFabId; + std::string SessionTicket; + Boxed SettingsForUser; + std::string Username; + + RegisterPlayFabUserResult() : + PlayFabResultCommon(), + PlayFabId(), + SessionTicket(), + SettingsForUser(), + Username() + {} + + RegisterPlayFabUserResult(const RegisterPlayFabUserResult& src) : + PlayFabResultCommon(), + PlayFabId(src.PlayFabId), + SessionTicket(src.SessionTicket), + SettingsForUser(src.SettingsForUser), + Username(src.Username) + {} + + ~RegisterPlayFabUserResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["SessionTicket"], SessionTicket); + FromJsonUtilO(input["SettingsForUser"], SettingsForUser); + FromJsonUtilS(input["Username"], Username); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_SessionTicket; ToJsonUtilS(SessionTicket, each_SessionTicket); output["SessionTicket"] = each_SessionTicket; + Json::Value each_SettingsForUser; ToJsonUtilO(SettingsForUser, each_SettingsForUser); output["SettingsForUser"] = each_SettingsForUser; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + return output; + } + }; + + struct RegisterWithWindowsHelloRequest : public PlayFabRequestCommon + { + std::string DeviceName; + std::string EncryptedRequest; + Boxed InfoRequestParameters; + Boxed LoginTitlePlayerAccountEntity; + std::string PlayerSecret; + std::string PublicKey; + std::string TitleId; + std::string UserName; + + RegisterWithWindowsHelloRequest() : + PlayFabRequestCommon(), + DeviceName(), + EncryptedRequest(), + InfoRequestParameters(), + LoginTitlePlayerAccountEntity(), + PlayerSecret(), + PublicKey(), + TitleId(), + UserName() + {} + + RegisterWithWindowsHelloRequest(const RegisterWithWindowsHelloRequest& src) : + PlayFabRequestCommon(), + DeviceName(src.DeviceName), + EncryptedRequest(src.EncryptedRequest), + InfoRequestParameters(src.InfoRequestParameters), + LoginTitlePlayerAccountEntity(src.LoginTitlePlayerAccountEntity), + PlayerSecret(src.PlayerSecret), + PublicKey(src.PublicKey), + TitleId(src.TitleId), + UserName(src.UserName) + {} + + ~RegisterWithWindowsHelloRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["DeviceName"], DeviceName); + FromJsonUtilS(input["EncryptedRequest"], EncryptedRequest); + FromJsonUtilO(input["InfoRequestParameters"], InfoRequestParameters); + FromJsonUtilP(input["LoginTitlePlayerAccountEntity"], LoginTitlePlayerAccountEntity); + FromJsonUtilS(input["PlayerSecret"], PlayerSecret); + FromJsonUtilS(input["PublicKey"], PublicKey); + FromJsonUtilS(input["TitleId"], TitleId); + FromJsonUtilS(input["UserName"], UserName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DeviceName; ToJsonUtilS(DeviceName, each_DeviceName); output["DeviceName"] = each_DeviceName; + Json::Value each_EncryptedRequest; ToJsonUtilS(EncryptedRequest, each_EncryptedRequest); output["EncryptedRequest"] = each_EncryptedRequest; + Json::Value each_InfoRequestParameters; ToJsonUtilO(InfoRequestParameters, each_InfoRequestParameters); output["InfoRequestParameters"] = each_InfoRequestParameters; + Json::Value each_LoginTitlePlayerAccountEntity; ToJsonUtilP(LoginTitlePlayerAccountEntity, each_LoginTitlePlayerAccountEntity); output["LoginTitlePlayerAccountEntity"] = each_LoginTitlePlayerAccountEntity; + Json::Value each_PlayerSecret; ToJsonUtilS(PlayerSecret, each_PlayerSecret); output["PlayerSecret"] = each_PlayerSecret; + Json::Value each_PublicKey; ToJsonUtilS(PublicKey, each_PublicKey); output["PublicKey"] = each_PublicKey; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + Json::Value each_UserName; ToJsonUtilS(UserName, each_UserName); output["UserName"] = each_UserName; + return output; + } + }; + + struct RemoveContactEmailRequest : public PlayFabRequestCommon + { + + RemoveContactEmailRequest() : + PlayFabRequestCommon() + {} + + RemoveContactEmailRequest(const RemoveContactEmailRequest&) : + PlayFabRequestCommon() + {} + + ~RemoveContactEmailRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct RemoveContactEmailResult : public PlayFabResultCommon + { + + RemoveContactEmailResult() : + PlayFabResultCommon() + {} + + RemoveContactEmailResult(const RemoveContactEmailResult&) : + PlayFabResultCommon() + {} + + ~RemoveContactEmailResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct RemoveFriendRequest : public PlayFabRequestCommon + { + std::string FriendPlayFabId; + + RemoveFriendRequest() : + PlayFabRequestCommon(), + FriendPlayFabId() + {} + + RemoveFriendRequest(const RemoveFriendRequest& src) : + PlayFabRequestCommon(), + FriendPlayFabId(src.FriendPlayFabId) + {} + + ~RemoveFriendRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FriendPlayFabId"], FriendPlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FriendPlayFabId; ToJsonUtilS(FriendPlayFabId, each_FriendPlayFabId); output["FriendPlayFabId"] = each_FriendPlayFabId; + return output; + } + }; + + struct RemoveFriendResult : public PlayFabResultCommon + { + + RemoveFriendResult() : + PlayFabResultCommon() + {} + + RemoveFriendResult(const RemoveFriendResult&) : + PlayFabResultCommon() + {} + + ~RemoveFriendResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct RemoveGenericIDRequest : public PlayFabRequestCommon + { + GenericServiceId GenericId; + + RemoveGenericIDRequest() : + PlayFabRequestCommon(), + GenericId() + {} + + RemoveGenericIDRequest(const RemoveGenericIDRequest& src) : + PlayFabRequestCommon(), + GenericId(src.GenericId) + {} + + ~RemoveGenericIDRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["GenericId"], GenericId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GenericId; ToJsonUtilO(GenericId, each_GenericId); output["GenericId"] = each_GenericId; + return output; + } + }; + + struct RemoveGenericIDResult : public PlayFabResultCommon + { + + RemoveGenericIDResult() : + PlayFabResultCommon() + {} + + RemoveGenericIDResult(const RemoveGenericIDResult&) : + PlayFabResultCommon() + {} + + ~RemoveGenericIDResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct RemoveSharedGroupMembersRequest : public PlayFabRequestCommon + { + std::list PlayFabIds; + std::string SharedGroupId; + + RemoveSharedGroupMembersRequest() : + PlayFabRequestCommon(), + PlayFabIds(), + SharedGroupId() + {} + + RemoveSharedGroupMembersRequest(const RemoveSharedGroupMembersRequest& src) : + PlayFabRequestCommon(), + PlayFabIds(src.PlayFabIds), + SharedGroupId(src.SharedGroupId) + {} + + ~RemoveSharedGroupMembersRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabIds"], PlayFabIds); + FromJsonUtilS(input["SharedGroupId"], SharedGroupId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabIds; ToJsonUtilS(PlayFabIds, each_PlayFabIds); output["PlayFabIds"] = each_PlayFabIds; + Json::Value each_SharedGroupId; ToJsonUtilS(SharedGroupId, each_SharedGroupId); output["SharedGroupId"] = each_SharedGroupId; + return output; + } + }; + + struct RemoveSharedGroupMembersResult : public PlayFabResultCommon + { + + RemoveSharedGroupMembersResult() : + PlayFabResultCommon() + {} + + RemoveSharedGroupMembersResult(const RemoveSharedGroupMembersResult&) : + PlayFabResultCommon() + {} + + ~RemoveSharedGroupMembersResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct ReportPlayerClientRequest : public PlayFabRequestCommon + { + std::string Comment; + std::string ReporteeId; + + ReportPlayerClientRequest() : + PlayFabRequestCommon(), + Comment(), + ReporteeId() + {} + + ReportPlayerClientRequest(const ReportPlayerClientRequest& src) : + PlayFabRequestCommon(), + Comment(src.Comment), + ReporteeId(src.ReporteeId) + {} + + ~ReportPlayerClientRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Comment"], Comment); + FromJsonUtilS(input["ReporteeId"], ReporteeId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Comment; ToJsonUtilS(Comment, each_Comment); output["Comment"] = each_Comment; + Json::Value each_ReporteeId; ToJsonUtilS(ReporteeId, each_ReporteeId); output["ReporteeId"] = each_ReporteeId; + return output; + } + }; + + struct ReportPlayerClientResult : public PlayFabResultCommon + { + Int32 SubmissionsRemaining; + + ReportPlayerClientResult() : + PlayFabResultCommon(), + SubmissionsRemaining() + {} + + ReportPlayerClientResult(const ReportPlayerClientResult& src) : + PlayFabResultCommon(), + SubmissionsRemaining(src.SubmissionsRemaining) + {} + + ~ReportPlayerClientResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["SubmissionsRemaining"], SubmissionsRemaining); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_SubmissionsRemaining; ToJsonUtilP(SubmissionsRemaining, each_SubmissionsRemaining); output["SubmissionsRemaining"] = each_SubmissionsRemaining; + return output; + } + }; + + struct RestoreIOSPurchasesRequest : public PlayFabRequestCommon + { + std::string ReceiptData; + + RestoreIOSPurchasesRequest() : + PlayFabRequestCommon(), + ReceiptData() + {} + + RestoreIOSPurchasesRequest(const RestoreIOSPurchasesRequest& src) : + PlayFabRequestCommon(), + ReceiptData(src.ReceiptData) + {} + + ~RestoreIOSPurchasesRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ReceiptData"], ReceiptData); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ReceiptData; ToJsonUtilS(ReceiptData, each_ReceiptData); output["ReceiptData"] = each_ReceiptData; + return output; + } + }; + + struct RestoreIOSPurchasesResult : public PlayFabResultCommon + { + + RestoreIOSPurchasesResult() : + PlayFabResultCommon() + {} + + RestoreIOSPurchasesResult(const RestoreIOSPurchasesResult&) : + PlayFabResultCommon() + {} + + ~RestoreIOSPurchasesResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SendAccountRecoveryEmailRequest : public PlayFabRequestCommon + { + std::string Email; + std::string EmailTemplateId; + std::string TitleId; + + SendAccountRecoveryEmailRequest() : + PlayFabRequestCommon(), + Email(), + EmailTemplateId(), + TitleId() + {} + + SendAccountRecoveryEmailRequest(const SendAccountRecoveryEmailRequest& src) : + PlayFabRequestCommon(), + Email(src.Email), + EmailTemplateId(src.EmailTemplateId), + TitleId(src.TitleId) + {} + + ~SendAccountRecoveryEmailRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Email"], Email); + FromJsonUtilS(input["EmailTemplateId"], EmailTemplateId); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Email; ToJsonUtilS(Email, each_Email); output["Email"] = each_Email; + Json::Value each_EmailTemplateId; ToJsonUtilS(EmailTemplateId, each_EmailTemplateId); output["EmailTemplateId"] = each_EmailTemplateId; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct SendAccountRecoveryEmailResult : public PlayFabResultCommon + { + + SendAccountRecoveryEmailResult() : + PlayFabResultCommon() + {} + + SendAccountRecoveryEmailResult(const SendAccountRecoveryEmailResult&) : + PlayFabResultCommon() + {} + + ~SendAccountRecoveryEmailResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SetFriendTagsRequest : public PlayFabRequestCommon + { + std::string FriendPlayFabId; + std::list Tags; + + SetFriendTagsRequest() : + PlayFabRequestCommon(), + FriendPlayFabId(), + Tags() + {} + + SetFriendTagsRequest(const SetFriendTagsRequest& src) : + PlayFabRequestCommon(), + FriendPlayFabId(src.FriendPlayFabId), + Tags(src.Tags) + {} + + ~SetFriendTagsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FriendPlayFabId"], FriendPlayFabId); + FromJsonUtilS(input["Tags"], Tags); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FriendPlayFabId; ToJsonUtilS(FriendPlayFabId, each_FriendPlayFabId); output["FriendPlayFabId"] = each_FriendPlayFabId; + Json::Value each_Tags; ToJsonUtilS(Tags, each_Tags); output["Tags"] = each_Tags; + return output; + } + }; + + struct SetFriendTagsResult : public PlayFabResultCommon + { + + SetFriendTagsResult() : + PlayFabResultCommon() + {} + + SetFriendTagsResult(const SetFriendTagsResult&) : + PlayFabResultCommon() + {} + + ~SetFriendTagsResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SetPlayerSecretRequest : public PlayFabRequestCommon + { + std::string EncryptedRequest; + std::string PlayerSecret; + + SetPlayerSecretRequest() : + PlayFabRequestCommon(), + EncryptedRequest(), + PlayerSecret() + {} + + SetPlayerSecretRequest(const SetPlayerSecretRequest& src) : + PlayFabRequestCommon(), + EncryptedRequest(src.EncryptedRequest), + PlayerSecret(src.PlayerSecret) + {} + + ~SetPlayerSecretRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["EncryptedRequest"], EncryptedRequest); + FromJsonUtilS(input["PlayerSecret"], PlayerSecret); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_EncryptedRequest; ToJsonUtilS(EncryptedRequest, each_EncryptedRequest); output["EncryptedRequest"] = each_EncryptedRequest; + Json::Value each_PlayerSecret; ToJsonUtilS(PlayerSecret, each_PlayerSecret); output["PlayerSecret"] = each_PlayerSecret; + return output; + } + }; + + struct SetPlayerSecretResult : public PlayFabResultCommon + { + + SetPlayerSecretResult() : + PlayFabResultCommon() + {} + + SetPlayerSecretResult(const SetPlayerSecretResult&) : + PlayFabResultCommon() + {} + + ~SetPlayerSecretResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct StartGameRequest : public PlayFabRequestCommon + { + std::string BuildVersion; + std::string CharacterId; + std::string CustomCommandLineData; + std::string GameMode; + Region pfRegion; + std::string StatisticName; + + StartGameRequest() : + PlayFabRequestCommon(), + BuildVersion(), + CharacterId(), + CustomCommandLineData(), + GameMode(), + pfRegion(), + StatisticName() + {} + + StartGameRequest(const StartGameRequest& src) : + PlayFabRequestCommon(), + BuildVersion(src.BuildVersion), + CharacterId(src.CharacterId), + CustomCommandLineData(src.CustomCommandLineData), + GameMode(src.GameMode), + pfRegion(src.pfRegion), + StatisticName(src.StatisticName) + {} + + ~StartGameRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["BuildVersion"], BuildVersion); + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["CustomCommandLineData"], CustomCommandLineData); + FromJsonUtilS(input["GameMode"], GameMode); + FromJsonEnum(input["pfRegion"], pfRegion); + FromJsonUtilS(input["StatisticName"], StatisticName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BuildVersion; ToJsonUtilS(BuildVersion, each_BuildVersion); output["BuildVersion"] = each_BuildVersion; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_CustomCommandLineData; ToJsonUtilS(CustomCommandLineData, each_CustomCommandLineData); output["CustomCommandLineData"] = each_CustomCommandLineData; + Json::Value each_GameMode; ToJsonUtilS(GameMode, each_GameMode); output["GameMode"] = each_GameMode; + Json::Value each_pfRegion; ToJsonEnum(pfRegion, each_pfRegion); output["Region"] = each_pfRegion; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + return output; + } + }; + + struct StartGameResult : public PlayFabResultCommon + { + std::string Expires; + std::string LobbyID; + std::string Password; + std::string ServerHostname; + std::string ServerIPV6Address; + Boxed ServerPort; + std::string Ticket; + + StartGameResult() : + PlayFabResultCommon(), + Expires(), + LobbyID(), + Password(), + ServerHostname(), + ServerIPV6Address(), + ServerPort(), + Ticket() + {} + + StartGameResult(const StartGameResult& src) : + PlayFabResultCommon(), + Expires(src.Expires), + LobbyID(src.LobbyID), + Password(src.Password), + ServerHostname(src.ServerHostname), + ServerIPV6Address(src.ServerIPV6Address), + ServerPort(src.ServerPort), + Ticket(src.Ticket) + {} + + ~StartGameResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Expires"], Expires); + FromJsonUtilS(input["LobbyID"], LobbyID); + FromJsonUtilS(input["Password"], Password); + FromJsonUtilS(input["ServerHostname"], ServerHostname); + FromJsonUtilS(input["ServerIPV6Address"], ServerIPV6Address); + FromJsonUtilP(input["ServerPort"], ServerPort); + FromJsonUtilS(input["Ticket"], Ticket); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Expires; ToJsonUtilS(Expires, each_Expires); output["Expires"] = each_Expires; + Json::Value each_LobbyID; ToJsonUtilS(LobbyID, each_LobbyID); output["LobbyID"] = each_LobbyID; + Json::Value each_Password; ToJsonUtilS(Password, each_Password); output["Password"] = each_Password; + Json::Value each_ServerHostname; ToJsonUtilS(ServerHostname, each_ServerHostname); output["ServerHostname"] = each_ServerHostname; + Json::Value each_ServerIPV6Address; ToJsonUtilS(ServerIPV6Address, each_ServerIPV6Address); output["ServerIPV6Address"] = each_ServerIPV6Address; + Json::Value each_ServerPort; ToJsonUtilP(ServerPort, each_ServerPort); output["ServerPort"] = each_ServerPort; + Json::Value each_Ticket; ToJsonUtilS(Ticket, each_Ticket); output["Ticket"] = each_Ticket; + return output; + } + }; + + struct StartPurchaseRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::list Items; + std::string StoreId; + + StartPurchaseRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + Items(), + StoreId() + {} + + StartPurchaseRequest(const StartPurchaseRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + Items(src.Items), + StoreId(src.StoreId) + {} + + ~StartPurchaseRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilO(input["Items"], Items); + FromJsonUtilS(input["StoreId"], StoreId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_Items; ToJsonUtilO(Items, each_Items); output["Items"] = each_Items; + Json::Value each_StoreId; ToJsonUtilS(StoreId, each_StoreId); output["StoreId"] = each_StoreId; + return output; + } + }; + + struct StartPurchaseResult : public PlayFabResultCommon + { + std::list Contents; + std::string OrderId; + std::list PaymentOptions; + std::map VirtualCurrencyBalances; + + StartPurchaseResult() : + PlayFabResultCommon(), + Contents(), + OrderId(), + PaymentOptions(), + VirtualCurrencyBalances() + {} + + StartPurchaseResult(const StartPurchaseResult& src) : + PlayFabResultCommon(), + Contents(src.Contents), + OrderId(src.OrderId), + PaymentOptions(src.PaymentOptions), + VirtualCurrencyBalances(src.VirtualCurrencyBalances) + {} + + ~StartPurchaseResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Contents"], Contents); + FromJsonUtilS(input["OrderId"], OrderId); + FromJsonUtilO(input["PaymentOptions"], PaymentOptions); + FromJsonUtilP(input["VirtualCurrencyBalances"], VirtualCurrencyBalances); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Contents; ToJsonUtilO(Contents, each_Contents); output["Contents"] = each_Contents; + Json::Value each_OrderId; ToJsonUtilS(OrderId, each_OrderId); output["OrderId"] = each_OrderId; + Json::Value each_PaymentOptions; ToJsonUtilO(PaymentOptions, each_PaymentOptions); output["PaymentOptions"] = each_PaymentOptions; + Json::Value each_VirtualCurrencyBalances; ToJsonUtilP(VirtualCurrencyBalances, each_VirtualCurrencyBalances); output["VirtualCurrencyBalances"] = each_VirtualCurrencyBalances; + return output; + } + }; + + struct StatisticUpdate : public PlayFabBaseModel + { + std::string StatisticName; + Int32 Value; + Boxed Version; + + StatisticUpdate() : + PlayFabBaseModel(), + StatisticName(), + Value(), + Version() + {} + + StatisticUpdate(const StatisticUpdate& src) : + PlayFabBaseModel(), + StatisticName(src.StatisticName), + Value(src.Value), + Version(src.Version) + {} + + ~StatisticUpdate() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilP(input["Value"], Value); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_Value; ToJsonUtilP(Value, each_Value); output["Value"] = each_Value; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct SubtractUserVirtualCurrencyRequest : public PlayFabRequestCommon + { + Int32 Amount; + std::string VirtualCurrency; + + SubtractUserVirtualCurrencyRequest() : + PlayFabRequestCommon(), + Amount(), + VirtualCurrency() + {} + + SubtractUserVirtualCurrencyRequest(const SubtractUserVirtualCurrencyRequest& src) : + PlayFabRequestCommon(), + Amount(src.Amount), + VirtualCurrency(src.VirtualCurrency) + {} + + ~SubtractUserVirtualCurrencyRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Amount"], Amount); + FromJsonUtilS(input["VirtualCurrency"], VirtualCurrency); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Amount; ToJsonUtilP(Amount, each_Amount); output["Amount"] = each_Amount; + Json::Value each_VirtualCurrency; ToJsonUtilS(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + return output; + } + }; + + struct UnlinkAndroidDeviceIDRequest : public PlayFabRequestCommon + { + std::string AndroidDeviceId; + + UnlinkAndroidDeviceIDRequest() : + PlayFabRequestCommon(), + AndroidDeviceId() + {} + + UnlinkAndroidDeviceIDRequest(const UnlinkAndroidDeviceIDRequest& src) : + PlayFabRequestCommon(), + AndroidDeviceId(src.AndroidDeviceId) + {} + + ~UnlinkAndroidDeviceIDRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AndroidDeviceId"], AndroidDeviceId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AndroidDeviceId; ToJsonUtilS(AndroidDeviceId, each_AndroidDeviceId); output["AndroidDeviceId"] = each_AndroidDeviceId; + return output; + } + }; + + struct UnlinkAndroidDeviceIDResult : public PlayFabResultCommon + { + + UnlinkAndroidDeviceIDResult() : + PlayFabResultCommon() + {} + + UnlinkAndroidDeviceIDResult(const UnlinkAndroidDeviceIDResult&) : + PlayFabResultCommon() + {} + + ~UnlinkAndroidDeviceIDResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UnlinkCustomIDRequest : public PlayFabRequestCommon + { + std::string CustomId; + + UnlinkCustomIDRequest() : + PlayFabRequestCommon(), + CustomId() + {} + + UnlinkCustomIDRequest(const UnlinkCustomIDRequest& src) : + PlayFabRequestCommon(), + CustomId(src.CustomId) + {} + + ~UnlinkCustomIDRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CustomId"], CustomId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CustomId; ToJsonUtilS(CustomId, each_CustomId); output["CustomId"] = each_CustomId; + return output; + } + }; + + struct UnlinkCustomIDResult : public PlayFabResultCommon + { + + UnlinkCustomIDResult() : + PlayFabResultCommon() + {} + + UnlinkCustomIDResult(const UnlinkCustomIDResult&) : + PlayFabResultCommon() + {} + + ~UnlinkCustomIDResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UnlinkFacebookAccountRequest : public PlayFabRequestCommon + { + + UnlinkFacebookAccountRequest() : + PlayFabRequestCommon() + {} + + UnlinkFacebookAccountRequest(const UnlinkFacebookAccountRequest&) : + PlayFabRequestCommon() + {} + + ~UnlinkFacebookAccountRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UnlinkFacebookAccountResult : public PlayFabResultCommon + { + + UnlinkFacebookAccountResult() : + PlayFabResultCommon() + {} + + UnlinkFacebookAccountResult(const UnlinkFacebookAccountResult&) : + PlayFabResultCommon() + {} + + ~UnlinkFacebookAccountResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UnlinkGameCenterAccountRequest : public PlayFabRequestCommon + { + + UnlinkGameCenterAccountRequest() : + PlayFabRequestCommon() + {} + + UnlinkGameCenterAccountRequest(const UnlinkGameCenterAccountRequest&) : + PlayFabRequestCommon() + {} + + ~UnlinkGameCenterAccountRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UnlinkGameCenterAccountResult : public PlayFabResultCommon + { + + UnlinkGameCenterAccountResult() : + PlayFabResultCommon() + {} + + UnlinkGameCenterAccountResult(const UnlinkGameCenterAccountResult&) : + PlayFabResultCommon() + {} + + ~UnlinkGameCenterAccountResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UnlinkGoogleAccountRequest : public PlayFabRequestCommon + { + + UnlinkGoogleAccountRequest() : + PlayFabRequestCommon() + {} + + UnlinkGoogleAccountRequest(const UnlinkGoogleAccountRequest&) : + PlayFabRequestCommon() + {} + + ~UnlinkGoogleAccountRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UnlinkGoogleAccountResult : public PlayFabResultCommon + { + + UnlinkGoogleAccountResult() : + PlayFabResultCommon() + {} + + UnlinkGoogleAccountResult(const UnlinkGoogleAccountResult&) : + PlayFabResultCommon() + {} + + ~UnlinkGoogleAccountResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UnlinkIOSDeviceIDRequest : public PlayFabRequestCommon + { + std::string DeviceId; + + UnlinkIOSDeviceIDRequest() : + PlayFabRequestCommon(), + DeviceId() + {} + + UnlinkIOSDeviceIDRequest(const UnlinkIOSDeviceIDRequest& src) : + PlayFabRequestCommon(), + DeviceId(src.DeviceId) + {} + + ~UnlinkIOSDeviceIDRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["DeviceId"], DeviceId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DeviceId; ToJsonUtilS(DeviceId, each_DeviceId); output["DeviceId"] = each_DeviceId; + return output; + } + }; + + struct UnlinkIOSDeviceIDResult : public PlayFabResultCommon + { + + UnlinkIOSDeviceIDResult() : + PlayFabResultCommon() + {} + + UnlinkIOSDeviceIDResult(const UnlinkIOSDeviceIDResult&) : + PlayFabResultCommon() + {} + + ~UnlinkIOSDeviceIDResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UnlinkKongregateAccountRequest : public PlayFabRequestCommon + { + + UnlinkKongregateAccountRequest() : + PlayFabRequestCommon() + {} + + UnlinkKongregateAccountRequest(const UnlinkKongregateAccountRequest&) : + PlayFabRequestCommon() + {} + + ~UnlinkKongregateAccountRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UnlinkKongregateAccountResult : public PlayFabResultCommon + { + + UnlinkKongregateAccountResult() : + PlayFabResultCommon() + {} + + UnlinkKongregateAccountResult(const UnlinkKongregateAccountResult&) : + PlayFabResultCommon() + {} + + ~UnlinkKongregateAccountResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UnlinkSteamAccountRequest : public PlayFabRequestCommon + { + + UnlinkSteamAccountRequest() : + PlayFabRequestCommon() + {} + + UnlinkSteamAccountRequest(const UnlinkSteamAccountRequest&) : + PlayFabRequestCommon() + {} + + ~UnlinkSteamAccountRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UnlinkSteamAccountResult : public PlayFabResultCommon + { + + UnlinkSteamAccountResult() : + PlayFabResultCommon() + {} + + UnlinkSteamAccountResult(const UnlinkSteamAccountResult&) : + PlayFabResultCommon() + {} + + ~UnlinkSteamAccountResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UnlinkTwitchAccountRequest : public PlayFabRequestCommon + { + + UnlinkTwitchAccountRequest() : + PlayFabRequestCommon() + {} + + UnlinkTwitchAccountRequest(const UnlinkTwitchAccountRequest&) : + PlayFabRequestCommon() + {} + + ~UnlinkTwitchAccountRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UnlinkTwitchAccountResult : public PlayFabResultCommon + { + + UnlinkTwitchAccountResult() : + PlayFabResultCommon() + {} + + UnlinkTwitchAccountResult(const UnlinkTwitchAccountResult&) : + PlayFabResultCommon() + {} + + ~UnlinkTwitchAccountResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UnlinkWindowsHelloAccountRequest : public PlayFabRequestCommon + { + std::string PublicKeyHint; + + UnlinkWindowsHelloAccountRequest() : + PlayFabRequestCommon(), + PublicKeyHint() + {} + + UnlinkWindowsHelloAccountRequest(const UnlinkWindowsHelloAccountRequest& src) : + PlayFabRequestCommon(), + PublicKeyHint(src.PublicKeyHint) + {} + + ~UnlinkWindowsHelloAccountRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PublicKeyHint"], PublicKeyHint); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PublicKeyHint; ToJsonUtilS(PublicKeyHint, each_PublicKeyHint); output["PublicKeyHint"] = each_PublicKeyHint; + return output; + } + }; + + struct UnlinkWindowsHelloAccountResponse : public PlayFabResultCommon + { + + UnlinkWindowsHelloAccountResponse() : + PlayFabResultCommon() + {} + + UnlinkWindowsHelloAccountResponse(const UnlinkWindowsHelloAccountResponse&) : + PlayFabResultCommon() + {} + + ~UnlinkWindowsHelloAccountResponse() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UnlockContainerInstanceRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::string CharacterId; + std::string ContainerItemInstanceId; + std::string KeyItemInstanceId; + + UnlockContainerInstanceRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + CharacterId(), + ContainerItemInstanceId(), + KeyItemInstanceId() + {} + + UnlockContainerInstanceRequest(const UnlockContainerInstanceRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + CharacterId(src.CharacterId), + ContainerItemInstanceId(src.ContainerItemInstanceId), + KeyItemInstanceId(src.KeyItemInstanceId) + {} + + ~UnlockContainerInstanceRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["ContainerItemInstanceId"], ContainerItemInstanceId); + FromJsonUtilS(input["KeyItemInstanceId"], KeyItemInstanceId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_ContainerItemInstanceId; ToJsonUtilS(ContainerItemInstanceId, each_ContainerItemInstanceId); output["ContainerItemInstanceId"] = each_ContainerItemInstanceId; + Json::Value each_KeyItemInstanceId; ToJsonUtilS(KeyItemInstanceId, each_KeyItemInstanceId); output["KeyItemInstanceId"] = each_KeyItemInstanceId; + return output; + } + }; + + struct UnlockContainerItemRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::string CharacterId; + std::string ContainerItemId; + + UnlockContainerItemRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + CharacterId(), + ContainerItemId() + {} + + UnlockContainerItemRequest(const UnlockContainerItemRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + CharacterId(src.CharacterId), + ContainerItemId(src.ContainerItemId) + {} + + ~UnlockContainerItemRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["ContainerItemId"], ContainerItemId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_ContainerItemId; ToJsonUtilS(ContainerItemId, each_ContainerItemId); output["ContainerItemId"] = each_ContainerItemId; + return output; + } + }; + + struct UnlockContainerItemResult : public PlayFabResultCommon + { + std::list GrantedItems; + std::string UnlockedItemInstanceId; + std::string UnlockedWithItemInstanceId; + std::map VirtualCurrency; + + UnlockContainerItemResult() : + PlayFabResultCommon(), + GrantedItems(), + UnlockedItemInstanceId(), + UnlockedWithItemInstanceId(), + VirtualCurrency() + {} + + UnlockContainerItemResult(const UnlockContainerItemResult& src) : + PlayFabResultCommon(), + GrantedItems(src.GrantedItems), + UnlockedItemInstanceId(src.UnlockedItemInstanceId), + UnlockedWithItemInstanceId(src.UnlockedWithItemInstanceId), + VirtualCurrency(src.VirtualCurrency) + {} + + ~UnlockContainerItemResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["GrantedItems"], GrantedItems); + FromJsonUtilS(input["UnlockedItemInstanceId"], UnlockedItemInstanceId); + FromJsonUtilS(input["UnlockedWithItemInstanceId"], UnlockedWithItemInstanceId); + FromJsonUtilP(input["VirtualCurrency"], VirtualCurrency); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GrantedItems; ToJsonUtilO(GrantedItems, each_GrantedItems); output["GrantedItems"] = each_GrantedItems; + Json::Value each_UnlockedItemInstanceId; ToJsonUtilS(UnlockedItemInstanceId, each_UnlockedItemInstanceId); output["UnlockedItemInstanceId"] = each_UnlockedItemInstanceId; + Json::Value each_UnlockedWithItemInstanceId; ToJsonUtilS(UnlockedWithItemInstanceId, each_UnlockedWithItemInstanceId); output["UnlockedWithItemInstanceId"] = each_UnlockedWithItemInstanceId; + Json::Value each_VirtualCurrency; ToJsonUtilP(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + return output; + } + }; + + struct UpdateAvatarUrlRequest : public PlayFabRequestCommon + { + std::string ImageUrl; + + UpdateAvatarUrlRequest() : + PlayFabRequestCommon(), + ImageUrl() + {} + + UpdateAvatarUrlRequest(const UpdateAvatarUrlRequest& src) : + PlayFabRequestCommon(), + ImageUrl(src.ImageUrl) + {} + + ~UpdateAvatarUrlRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ImageUrl"], ImageUrl); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ImageUrl; ToJsonUtilS(ImageUrl, each_ImageUrl); output["ImageUrl"] = each_ImageUrl; + return output; + } + }; + + struct UpdateCharacterDataRequest : public PlayFabRequestCommon + { + std::string CharacterId; + std::map Data; + std::list KeysToRemove; + Boxed Permission; + + UpdateCharacterDataRequest() : + PlayFabRequestCommon(), + CharacterId(), + Data(), + KeysToRemove(), + Permission() + {} + + UpdateCharacterDataRequest(const UpdateCharacterDataRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + Data(src.Data), + KeysToRemove(src.KeysToRemove), + Permission(src.Permission) + {} + + ~UpdateCharacterDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["Data"], Data); + FromJsonUtilS(input["KeysToRemove"], KeysToRemove); + FromJsonUtilE(input["Permission"], Permission); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + Json::Value each_KeysToRemove; ToJsonUtilS(KeysToRemove, each_KeysToRemove); output["KeysToRemove"] = each_KeysToRemove; + Json::Value each_Permission; ToJsonUtilE(Permission, each_Permission); output["Permission"] = each_Permission; + return output; + } + }; + + struct UpdateCharacterDataResult : public PlayFabResultCommon + { + Uint32 DataVersion; + + UpdateCharacterDataResult() : + PlayFabResultCommon(), + DataVersion() + {} + + UpdateCharacterDataResult(const UpdateCharacterDataResult& src) : + PlayFabResultCommon(), + DataVersion(src.DataVersion) + {} + + ~UpdateCharacterDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["DataVersion"], DataVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DataVersion; ToJsonUtilP(DataVersion, each_DataVersion); output["DataVersion"] = each_DataVersion; + return output; + } + }; + + struct UpdateCharacterStatisticsRequest : public PlayFabRequestCommon + { + std::string CharacterId; + std::map CharacterStatistics; + + UpdateCharacterStatisticsRequest() : + PlayFabRequestCommon(), + CharacterId(), + CharacterStatistics() + {} + + UpdateCharacterStatisticsRequest(const UpdateCharacterStatisticsRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + CharacterStatistics(src.CharacterStatistics) + {} + + ~UpdateCharacterStatisticsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilP(input["CharacterStatistics"], CharacterStatistics); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_CharacterStatistics; ToJsonUtilP(CharacterStatistics, each_CharacterStatistics); output["CharacterStatistics"] = each_CharacterStatistics; + return output; + } + }; + + struct UpdateCharacterStatisticsResult : public PlayFabResultCommon + { + + UpdateCharacterStatisticsResult() : + PlayFabResultCommon() + {} + + UpdateCharacterStatisticsResult(const UpdateCharacterStatisticsResult&) : + PlayFabResultCommon() + {} + + ~UpdateCharacterStatisticsResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UpdatePlayerStatisticsRequest : public PlayFabRequestCommon + { + std::list Statistics; + + UpdatePlayerStatisticsRequest() : + PlayFabRequestCommon(), + Statistics() + {} + + UpdatePlayerStatisticsRequest(const UpdatePlayerStatisticsRequest& src) : + PlayFabRequestCommon(), + Statistics(src.Statistics) + {} + + ~UpdatePlayerStatisticsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Statistics"], Statistics); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Statistics; ToJsonUtilO(Statistics, each_Statistics); output["Statistics"] = each_Statistics; + return output; + } + }; + + struct UpdatePlayerStatisticsResult : public PlayFabResultCommon + { + + UpdatePlayerStatisticsResult() : + PlayFabResultCommon() + {} + + UpdatePlayerStatisticsResult(const UpdatePlayerStatisticsResult&) : + PlayFabResultCommon() + {} + + ~UpdatePlayerStatisticsResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UpdateSharedGroupDataRequest : public PlayFabRequestCommon + { + std::map Data; + std::list KeysToRemove; + Boxed Permission; + std::string SharedGroupId; + + UpdateSharedGroupDataRequest() : + PlayFabRequestCommon(), + Data(), + KeysToRemove(), + Permission(), + SharedGroupId() + {} + + UpdateSharedGroupDataRequest(const UpdateSharedGroupDataRequest& src) : + PlayFabRequestCommon(), + Data(src.Data), + KeysToRemove(src.KeysToRemove), + Permission(src.Permission), + SharedGroupId(src.SharedGroupId) + {} + + ~UpdateSharedGroupDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Data"], Data); + FromJsonUtilS(input["KeysToRemove"], KeysToRemove); + FromJsonUtilE(input["Permission"], Permission); + FromJsonUtilS(input["SharedGroupId"], SharedGroupId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + Json::Value each_KeysToRemove; ToJsonUtilS(KeysToRemove, each_KeysToRemove); output["KeysToRemove"] = each_KeysToRemove; + Json::Value each_Permission; ToJsonUtilE(Permission, each_Permission); output["Permission"] = each_Permission; + Json::Value each_SharedGroupId; ToJsonUtilS(SharedGroupId, each_SharedGroupId); output["SharedGroupId"] = each_SharedGroupId; + return output; + } + }; + + struct UpdateSharedGroupDataResult : public PlayFabResultCommon + { + + UpdateSharedGroupDataResult() : + PlayFabResultCommon() + {} + + UpdateSharedGroupDataResult(const UpdateSharedGroupDataResult&) : + PlayFabResultCommon() + {} + + ~UpdateSharedGroupDataResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UpdateUserDataRequest : public PlayFabRequestCommon + { + std::map Data; + std::list KeysToRemove; + Boxed Permission; + + UpdateUserDataRequest() : + PlayFabRequestCommon(), + Data(), + KeysToRemove(), + Permission() + {} + + UpdateUserDataRequest(const UpdateUserDataRequest& src) : + PlayFabRequestCommon(), + Data(src.Data), + KeysToRemove(src.KeysToRemove), + Permission(src.Permission) + {} + + ~UpdateUserDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Data"], Data); + FromJsonUtilS(input["KeysToRemove"], KeysToRemove); + FromJsonUtilE(input["Permission"], Permission); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + Json::Value each_KeysToRemove; ToJsonUtilS(KeysToRemove, each_KeysToRemove); output["KeysToRemove"] = each_KeysToRemove; + Json::Value each_Permission; ToJsonUtilE(Permission, each_Permission); output["Permission"] = each_Permission; + return output; + } + }; + + struct UpdateUserDataResult : public PlayFabResultCommon + { + Uint32 DataVersion; + + UpdateUserDataResult() : + PlayFabResultCommon(), + DataVersion() + {} + + UpdateUserDataResult(const UpdateUserDataResult& src) : + PlayFabResultCommon(), + DataVersion(src.DataVersion) + {} + + ~UpdateUserDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["DataVersion"], DataVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DataVersion; ToJsonUtilP(DataVersion, each_DataVersion); output["DataVersion"] = each_DataVersion; + return output; + } + }; + + struct UpdateUserTitleDisplayNameRequest : public PlayFabRequestCommon + { + std::string DisplayName; + + UpdateUserTitleDisplayNameRequest() : + PlayFabRequestCommon(), + DisplayName() + {} + + UpdateUserTitleDisplayNameRequest(const UpdateUserTitleDisplayNameRequest& src) : + PlayFabRequestCommon(), + DisplayName(src.DisplayName) + {} + + ~UpdateUserTitleDisplayNameRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["DisplayName"], DisplayName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + return output; + } + }; + + struct UpdateUserTitleDisplayNameResult : public PlayFabResultCommon + { + std::string DisplayName; + + UpdateUserTitleDisplayNameResult() : + PlayFabResultCommon(), + DisplayName() + {} + + UpdateUserTitleDisplayNameResult(const UpdateUserTitleDisplayNameResult& src) : + PlayFabResultCommon(), + DisplayName(src.DisplayName) + {} + + ~UpdateUserTitleDisplayNameResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["DisplayName"], DisplayName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + return output; + } + }; + + struct ValidateAmazonReceiptRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::string CurrencyCode; + Int32 PurchasePrice; + std::string ReceiptId; + std::string UserId; + + ValidateAmazonReceiptRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + CurrencyCode(), + PurchasePrice(), + ReceiptId(), + UserId() + {} + + ValidateAmazonReceiptRequest(const ValidateAmazonReceiptRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + CurrencyCode(src.CurrencyCode), + PurchasePrice(src.PurchasePrice), + ReceiptId(src.ReceiptId), + UserId(src.UserId) + {} + + ~ValidateAmazonReceiptRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CurrencyCode"], CurrencyCode); + FromJsonUtilP(input["PurchasePrice"], PurchasePrice); + FromJsonUtilS(input["ReceiptId"], ReceiptId); + FromJsonUtilS(input["UserId"], UserId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CurrencyCode; ToJsonUtilS(CurrencyCode, each_CurrencyCode); output["CurrencyCode"] = each_CurrencyCode; + Json::Value each_PurchasePrice; ToJsonUtilP(PurchasePrice, each_PurchasePrice); output["PurchasePrice"] = each_PurchasePrice; + Json::Value each_ReceiptId; ToJsonUtilS(ReceiptId, each_ReceiptId); output["ReceiptId"] = each_ReceiptId; + Json::Value each_UserId; ToJsonUtilS(UserId, each_UserId); output["UserId"] = each_UserId; + return output; + } + }; + + struct ValidateAmazonReceiptResult : public PlayFabResultCommon + { + + ValidateAmazonReceiptResult() : + PlayFabResultCommon() + {} + + ValidateAmazonReceiptResult(const ValidateAmazonReceiptResult&) : + PlayFabResultCommon() + {} + + ~ValidateAmazonReceiptResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct ValidateGooglePlayPurchaseRequest : public PlayFabRequestCommon + { + std::string CurrencyCode; + Boxed PurchasePrice; + std::string ReceiptJson; + std::string Signature; + + ValidateGooglePlayPurchaseRequest() : + PlayFabRequestCommon(), + CurrencyCode(), + PurchasePrice(), + ReceiptJson(), + Signature() + {} + + ValidateGooglePlayPurchaseRequest(const ValidateGooglePlayPurchaseRequest& src) : + PlayFabRequestCommon(), + CurrencyCode(src.CurrencyCode), + PurchasePrice(src.PurchasePrice), + ReceiptJson(src.ReceiptJson), + Signature(src.Signature) + {} + + ~ValidateGooglePlayPurchaseRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CurrencyCode"], CurrencyCode); + FromJsonUtilP(input["PurchasePrice"], PurchasePrice); + FromJsonUtilS(input["ReceiptJson"], ReceiptJson); + FromJsonUtilS(input["Signature"], Signature); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CurrencyCode; ToJsonUtilS(CurrencyCode, each_CurrencyCode); output["CurrencyCode"] = each_CurrencyCode; + Json::Value each_PurchasePrice; ToJsonUtilP(PurchasePrice, each_PurchasePrice); output["PurchasePrice"] = each_PurchasePrice; + Json::Value each_ReceiptJson; ToJsonUtilS(ReceiptJson, each_ReceiptJson); output["ReceiptJson"] = each_ReceiptJson; + Json::Value each_Signature; ToJsonUtilS(Signature, each_Signature); output["Signature"] = each_Signature; + return output; + } + }; + + struct ValidateGooglePlayPurchaseResult : public PlayFabResultCommon + { + + ValidateGooglePlayPurchaseResult() : + PlayFabResultCommon() + {} + + ValidateGooglePlayPurchaseResult(const ValidateGooglePlayPurchaseResult&) : + PlayFabResultCommon() + {} + + ~ValidateGooglePlayPurchaseResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct ValidateIOSReceiptRequest : public PlayFabRequestCommon + { + std::string CurrencyCode; + Int32 PurchasePrice; + std::string ReceiptData; + + ValidateIOSReceiptRequest() : + PlayFabRequestCommon(), + CurrencyCode(), + PurchasePrice(), + ReceiptData() + {} + + ValidateIOSReceiptRequest(const ValidateIOSReceiptRequest& src) : + PlayFabRequestCommon(), + CurrencyCode(src.CurrencyCode), + PurchasePrice(src.PurchasePrice), + ReceiptData(src.ReceiptData) + {} + + ~ValidateIOSReceiptRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CurrencyCode"], CurrencyCode); + FromJsonUtilP(input["PurchasePrice"], PurchasePrice); + FromJsonUtilS(input["ReceiptData"], ReceiptData); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CurrencyCode; ToJsonUtilS(CurrencyCode, each_CurrencyCode); output["CurrencyCode"] = each_CurrencyCode; + Json::Value each_PurchasePrice; ToJsonUtilP(PurchasePrice, each_PurchasePrice); output["PurchasePrice"] = each_PurchasePrice; + Json::Value each_ReceiptData; ToJsonUtilS(ReceiptData, each_ReceiptData); output["ReceiptData"] = each_ReceiptData; + return output; + } + }; + + struct ValidateIOSReceiptResult : public PlayFabResultCommon + { + + ValidateIOSReceiptResult() : + PlayFabResultCommon() + {} + + ValidateIOSReceiptResult(const ValidateIOSReceiptResult&) : + PlayFabResultCommon() + {} + + ~ValidateIOSReceiptResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct ValidateWindowsReceiptRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::string CurrencyCode; + Uint32 PurchasePrice; + std::string Receipt; + + ValidateWindowsReceiptRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + CurrencyCode(), + PurchasePrice(), + Receipt() + {} + + ValidateWindowsReceiptRequest(const ValidateWindowsReceiptRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + CurrencyCode(src.CurrencyCode), + PurchasePrice(src.PurchasePrice), + Receipt(src.Receipt) + {} + + ~ValidateWindowsReceiptRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CurrencyCode"], CurrencyCode); + FromJsonUtilP(input["PurchasePrice"], PurchasePrice); + FromJsonUtilS(input["Receipt"], Receipt); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CurrencyCode; ToJsonUtilS(CurrencyCode, each_CurrencyCode); output["CurrencyCode"] = each_CurrencyCode; + Json::Value each_PurchasePrice; ToJsonUtilP(PurchasePrice, each_PurchasePrice); output["PurchasePrice"] = each_PurchasePrice; + Json::Value each_Receipt; ToJsonUtilS(Receipt, each_Receipt); output["Receipt"] = each_Receipt; + return output; + } + }; + + struct ValidateWindowsReceiptResult : public PlayFabResultCommon + { + + ValidateWindowsReceiptResult() : + PlayFabResultCommon() + {} + + ValidateWindowsReceiptResult(const ValidateWindowsReceiptResult&) : + PlayFabResultCommon() + {} + + ~ValidateWindowsReceiptResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct WriteClientCharacterEventRequest : public PlayFabRequestCommon + { + Json::Value Body; // Not truly arbitrary. See documentation for restrictions on format + std::string CharacterId; + std::string EventName; + Boxed Timestamp; + + WriteClientCharacterEventRequest() : + PlayFabRequestCommon(), + Body(), + CharacterId(), + EventName(), + Timestamp() + {} + + WriteClientCharacterEventRequest(const WriteClientCharacterEventRequest& src) : + PlayFabRequestCommon(), + Body(src.Body), + CharacterId(src.CharacterId), + EventName(src.EventName), + Timestamp(src.Timestamp) + {} + + ~WriteClientCharacterEventRequest() { } + + void FromJson(Json::Value& input) override + { + Body = input["Body"]; + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["EventName"], EventName); + FromJsonUtilT(input["Timestamp"], Timestamp); + } + + Json::Value ToJson() const override + { + Json::Value output; + output["Body"] = Body; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_EventName; ToJsonUtilS(EventName, each_EventName); output["EventName"] = each_EventName; + Json::Value each_Timestamp; ToJsonUtilT(Timestamp, each_Timestamp); output["Timestamp"] = each_Timestamp; + return output; + } + }; + + struct WriteClientPlayerEventRequest : public PlayFabRequestCommon + { + Json::Value Body; // Not truly arbitrary. See documentation for restrictions on format + std::string EventName; + Boxed Timestamp; + + WriteClientPlayerEventRequest() : + PlayFabRequestCommon(), + Body(), + EventName(), + Timestamp() + {} + + WriteClientPlayerEventRequest(const WriteClientPlayerEventRequest& src) : + PlayFabRequestCommon(), + Body(src.Body), + EventName(src.EventName), + Timestamp(src.Timestamp) + {} + + ~WriteClientPlayerEventRequest() { } + + void FromJson(Json::Value& input) override + { + Body = input["Body"]; + FromJsonUtilS(input["EventName"], EventName); + FromJsonUtilT(input["Timestamp"], Timestamp); + } + + Json::Value ToJson() const override + { + Json::Value output; + output["Body"] = Body; + Json::Value each_EventName; ToJsonUtilS(EventName, each_EventName); output["EventName"] = each_EventName; + Json::Value each_Timestamp; ToJsonUtilT(Timestamp, each_Timestamp); output["Timestamp"] = each_Timestamp; + return output; + } + }; + + struct WriteEventResponse : public PlayFabResultCommon + { + std::string EventId; + + WriteEventResponse() : + PlayFabResultCommon(), + EventId() + {} + + WriteEventResponse(const WriteEventResponse& src) : + PlayFabResultCommon(), + EventId(src.EventId) + {} + + ~WriteEventResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["EventId"], EventId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_EventId; ToJsonUtilS(EventId, each_EventId); output["EventId"] = each_EventId; + return output; + } + }; + + struct WriteTitleEventRequest : public PlayFabRequestCommon + { + Json::Value Body; // Not truly arbitrary. See documentation for restrictions on format + std::string EventName; + Boxed Timestamp; + + WriteTitleEventRequest() : + PlayFabRequestCommon(), + Body(), + EventName(), + Timestamp() + {} + + WriteTitleEventRequest(const WriteTitleEventRequest& src) : + PlayFabRequestCommon(), + Body(src.Body), + EventName(src.EventName), + Timestamp(src.Timestamp) + {} + + ~WriteTitleEventRequest() { } + + void FromJson(Json::Value& input) override + { + Body = input["Body"]; + FromJsonUtilS(input["EventName"], EventName); + FromJsonUtilT(input["Timestamp"], Timestamp); + } + + Json::Value ToJson() const override + { + Json::Value output; + output["Body"] = Body; + Json::Value each_EventName; ToJsonUtilS(EventName, each_EventName); output["EventName"] = each_EventName; + Json::Value each_Timestamp; ToJsonUtilT(Timestamp, each_Timestamp); output["Timestamp"] = each_Timestamp; + return output; + } + }; + + } +} + +#endif diff --git a/cppsdk/include/playfab/PlayFabEntityApi.h b/cppsdk/include/playfab/PlayFabEntityApi.h new file mode 100644 index 00000000..ff1fb56a --- /dev/null +++ b/cppsdk/include/playfab/PlayFabEntityApi.h @@ -0,0 +1,105 @@ +#pragma once + +#ifdef ENABLE_PLAYFABENTITY_API + +#include +#include + +namespace PlayFab +{ + /// + /// Main interface for PlayFab Sdk, specifically all Entity APIs + /// + class PlayFabEntityAPI + { + public: + static size_t Update(); + static void ForgetAllCredentials(); + + + // ------------ Generated API calls + static void AbortFileUploads(EntityModels::AbortFileUploadsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AcceptGroupApplication(EntityModels::AcceptGroupApplicationRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AcceptGroupInvitation(EntityModels::AcceptGroupInvitationRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AddMembers(EntityModels::AddMembersRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ApplyToGroup(EntityModels::ApplyToGroupRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void BlockEntity(EntityModels::BlockEntityRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ChangeMemberRole(EntityModels::ChangeMemberRoleRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void CreateGroup(EntityModels::CreateGroupRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void CreateRole(EntityModels::CreateGroupRoleRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void DeleteFiles(EntityModels::DeleteFilesRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void DeleteGroup(EntityModels::DeleteGroupRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void DeleteRole(EntityModels::DeleteRoleRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void FinalizeFileUploads(EntityModels::FinalizeFileUploadsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetEntityToken(EntityModels::GetEntityTokenRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetFiles(EntityModels::GetFilesRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetGlobalPolicy(EntityModels::GetGlobalPolicyRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetGroup(EntityModels::GetGroupRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetObjects(EntityModels::GetObjectsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetProfile(EntityModels::GetEntityProfileRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void InitiateFileUploads(EntityModels::InitiateFileUploadsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void InviteToGroup(EntityModels::InviteToGroupRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void IsMember(EntityModels::IsMemberRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ListGroupApplications(EntityModels::ListGroupApplicationsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ListGroupBlocks(EntityModels::ListGroupBlocksRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ListGroupInvitations(EntityModels::ListGroupInvitationsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ListGroupMembers(EntityModels::ListGroupMembersRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ListMembership(EntityModels::ListMembershipRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ListMembershipOpportunities(EntityModels::ListMembershipOpportunitiesRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RemoveGroupApplication(EntityModels::RemoveGroupApplicationRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RemoveGroupInvitation(EntityModels::RemoveGroupInvitationRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RemoveMembers(EntityModels::RemoveMembersRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetGlobalPolicy(EntityModels::SetGlobalPolicyRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetObjects(EntityModels::SetObjectsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetProfilePolicy(EntityModels::SetEntityProfilePolicyRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UnblockEntity(EntityModels::UnblockEntityRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateGroup(EntityModels::UpdateGroupRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateRole(EntityModels::UpdateGroupRoleRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + + private: + PlayFabEntityAPI(); // Private constructor, static class should never have an instance + PlayFabEntityAPI(const PlayFabEntityAPI& other); // Private copy-constructor, static class should never have an instance + + // ------------ Generated result handlers + static void OnAbortFileUploadsResult(CallRequestContainer& request); + static void OnAcceptGroupApplicationResult(CallRequestContainer& request); + static void OnAcceptGroupInvitationResult(CallRequestContainer& request); + static void OnAddMembersResult(CallRequestContainer& request); + static void OnApplyToGroupResult(CallRequestContainer& request); + static void OnBlockEntityResult(CallRequestContainer& request); + static void OnChangeMemberRoleResult(CallRequestContainer& request); + static void OnCreateGroupResult(CallRequestContainer& request); + static void OnCreateRoleResult(CallRequestContainer& request); + static void OnDeleteFilesResult(CallRequestContainer& request); + static void OnDeleteGroupResult(CallRequestContainer& request); + static void OnDeleteRoleResult(CallRequestContainer& request); + static void OnFinalizeFileUploadsResult(CallRequestContainer& request); + static void OnGetEntityTokenResult(CallRequestContainer& request); + static void OnGetFilesResult(CallRequestContainer& request); + static void OnGetGlobalPolicyResult(CallRequestContainer& request); + static void OnGetGroupResult(CallRequestContainer& request); + static void OnGetObjectsResult(CallRequestContainer& request); + static void OnGetProfileResult(CallRequestContainer& request); + static void OnInitiateFileUploadsResult(CallRequestContainer& request); + static void OnInviteToGroupResult(CallRequestContainer& request); + static void OnIsMemberResult(CallRequestContainer& request); + static void OnListGroupApplicationsResult(CallRequestContainer& request); + static void OnListGroupBlocksResult(CallRequestContainer& request); + static void OnListGroupInvitationsResult(CallRequestContainer& request); + static void OnListGroupMembersResult(CallRequestContainer& request); + static void OnListMembershipResult(CallRequestContainer& request); + static void OnListMembershipOpportunitiesResult(CallRequestContainer& request); + static void OnRemoveGroupApplicationResult(CallRequestContainer& request); + static void OnRemoveGroupInvitationResult(CallRequestContainer& request); + static void OnRemoveMembersResult(CallRequestContainer& request); + static void OnSetGlobalPolicyResult(CallRequestContainer& request); + static void OnSetObjectsResult(CallRequestContainer& request); + static void OnSetProfilePolicyResult(CallRequestContainer& request); + static void OnUnblockEntityResult(CallRequestContainer& request); + static void OnUpdateGroupResult(CallRequestContainer& request); + static void OnUpdateRoleResult(CallRequestContainer& request); + + }; +} + +#endif diff --git a/cppsdk/include/playfab/PlayFabEntityDataModels.h b/cppsdk/include/playfab/PlayFabEntityDataModels.h new file mode 100644 index 00000000..0e492371 --- /dev/null +++ b/cppsdk/include/playfab/PlayFabEntityDataModels.h @@ -0,0 +1,3048 @@ +#pragma once + +#ifdef ENABLE_PLAYFABENTITY_API + +#include +#include + +namespace PlayFab +{ + namespace EntityModels + { + // Entity Enums + enum EffectType + { + EffectTypeAllow, + EffectTypeDeny + }; + + inline void ToJsonEnum(const EffectType input, Json::Value& output) + { + if (input == EffectTypeAllow) output = Json::Value("Allow"); + if (input == EffectTypeDeny) output = Json::Value("Deny"); + } + inline void FromJsonEnum(const Json::Value& input, EffectType& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Allow") output = EffectTypeAllow; + if (inputStr == "Deny") output = EffectTypeDeny; + } + + enum EntityTypes + { + EntityTypestitle, + EntityTypesmaster_player_account, + EntityTypestitle_player_account, + EntityTypescharacter, + EntityTypesgroup + }; + + inline void ToJsonEnum(const EntityTypes input, Json::Value& output) + { + if (input == EntityTypestitle) output = Json::Value("title"); + if (input == EntityTypesmaster_player_account) output = Json::Value("master_player_account"); + if (input == EntityTypestitle_player_account) output = Json::Value("title_player_account"); + if (input == EntityTypescharacter) output = Json::Value("character"); + if (input == EntityTypesgroup) output = Json::Value("group"); + } + inline void FromJsonEnum(const Json::Value& input, EntityTypes& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "title") output = EntityTypestitle; + if (inputStr == "master_player_account") output = EntityTypesmaster_player_account; + if (inputStr == "title_player_account") output = EntityTypestitle_player_account; + if (inputStr == "character") output = EntityTypescharacter; + if (inputStr == "group") output = EntityTypesgroup; + } + + enum OperationTypes + { + OperationTypesCreated, + OperationTypesUpdated, + OperationTypesDeleted, + OperationTypesNone + }; + + inline void ToJsonEnum(const OperationTypes input, Json::Value& output) + { + if (input == OperationTypesCreated) output = Json::Value("Created"); + if (input == OperationTypesUpdated) output = Json::Value("Updated"); + if (input == OperationTypesDeleted) output = Json::Value("Deleted"); + if (input == OperationTypesNone) output = Json::Value("None"); + } + inline void FromJsonEnum(const Json::Value& input, OperationTypes& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Created") output = OperationTypesCreated; + if (inputStr == "Updated") output = OperationTypesUpdated; + if (inputStr == "Deleted") output = OperationTypesDeleted; + if (inputStr == "None") output = OperationTypesNone; + } + + // Entity Classes + struct EntityKey : public PlayFabBaseModel + { + std::string Id; + Boxed Type; + std::string TypeString; + + EntityKey() : + PlayFabBaseModel(), + Id(), + Type(), + TypeString() + {} + + EntityKey(const EntityKey& src) : + PlayFabBaseModel(), + Id(src.Id), + Type(src.Type), + TypeString(src.TypeString) + {} + + ~EntityKey() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Id"], Id); + FromJsonUtilE(input["Type"], Type); + FromJsonUtilS(input["TypeString"], TypeString); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Id; ToJsonUtilS(Id, each_Id); output["Id"] = each_Id; + Json::Value each_Type; ToJsonUtilE(Type, each_Type); output["Type"] = each_Type; + Json::Value each_TypeString; ToJsonUtilS(TypeString, each_TypeString); output["TypeString"] = each_TypeString; + return output; + } + }; + + struct AbortFileUploadsRequest : public PlayFabRequestCommon + { + EntityKey Entity; + std::list FileNames; + Boxed ProfileVersion; + + AbortFileUploadsRequest() : + PlayFabRequestCommon(), + Entity(), + FileNames(), + ProfileVersion() + {} + + AbortFileUploadsRequest(const AbortFileUploadsRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity), + FileNames(src.FileNames), + ProfileVersion(src.ProfileVersion) + {} + + ~AbortFileUploadsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilS(input["FileNames"], FileNames); + FromJsonUtilP(input["ProfileVersion"], ProfileVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_FileNames; ToJsonUtilS(FileNames, each_FileNames); output["FileNames"] = each_FileNames; + Json::Value each_ProfileVersion; ToJsonUtilP(ProfileVersion, each_ProfileVersion); output["ProfileVersion"] = each_ProfileVersion; + return output; + } + }; + + struct AbortFileUploadsResponse : public PlayFabResultCommon + { + Boxed Entity; + Int32 ProfileVersion; + + AbortFileUploadsResponse() : + PlayFabResultCommon(), + Entity(), + ProfileVersion() + {} + + AbortFileUploadsResponse(const AbortFileUploadsResponse& src) : + PlayFabResultCommon(), + Entity(src.Entity), + ProfileVersion(src.ProfileVersion) + {} + + ~AbortFileUploadsResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilP(input["ProfileVersion"], ProfileVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_ProfileVersion; ToJsonUtilP(ProfileVersion, each_ProfileVersion); output["ProfileVersion"] = each_ProfileVersion; + return output; + } + }; + + struct AcceptGroupApplicationRequest : public PlayFabRequestCommon + { + EntityKey Entity; + EntityKey Group; + + AcceptGroupApplicationRequest() : + PlayFabRequestCommon(), + Entity(), + Group() + {} + + AcceptGroupApplicationRequest(const AcceptGroupApplicationRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity), + Group(src.Group) + {} + + ~AcceptGroupApplicationRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilO(input["Group"], Group); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + return output; + } + }; + + struct AcceptGroupInvitationRequest : public PlayFabRequestCommon + { + Boxed Entity; + EntityKey Group; + + AcceptGroupInvitationRequest() : + PlayFabRequestCommon(), + Entity(), + Group() + {} + + AcceptGroupInvitationRequest(const AcceptGroupInvitationRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity), + Group(src.Group) + {} + + ~AcceptGroupInvitationRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilO(input["Group"], Group); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + return output; + } + }; + + struct AddMembersRequest : public PlayFabRequestCommon + { + EntityKey Group; + std::list Members; + std::string RoleId; + + AddMembersRequest() : + PlayFabRequestCommon(), + Group(), + Members(), + RoleId() + {} + + AddMembersRequest(const AddMembersRequest& src) : + PlayFabRequestCommon(), + Group(src.Group), + Members(src.Members), + RoleId(src.RoleId) + {} + + ~AddMembersRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Group"], Group); + FromJsonUtilO(input["Members"], Members); + FromJsonUtilS(input["RoleId"], RoleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + Json::Value each_Members; ToJsonUtilO(Members, each_Members); output["Members"] = each_Members; + Json::Value each_RoleId; ToJsonUtilS(RoleId, each_RoleId); output["RoleId"] = each_RoleId; + return output; + } + }; + + struct ApplyToGroupRequest : public PlayFabRequestCommon + { + Boxed AutoAcceptOutstandingInvite; + Boxed Entity; + EntityKey Group; + + ApplyToGroupRequest() : + PlayFabRequestCommon(), + AutoAcceptOutstandingInvite(), + Entity(), + Group() + {} + + ApplyToGroupRequest(const ApplyToGroupRequest& src) : + PlayFabRequestCommon(), + AutoAcceptOutstandingInvite(src.AutoAcceptOutstandingInvite), + Entity(src.Entity), + Group(src.Group) + {} + + ~ApplyToGroupRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["AutoAcceptOutstandingInvite"], AutoAcceptOutstandingInvite); + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilO(input["Group"], Group); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AutoAcceptOutstandingInvite; ToJsonUtilP(AutoAcceptOutstandingInvite, each_AutoAcceptOutstandingInvite); output["AutoAcceptOutstandingInvite"] = each_AutoAcceptOutstandingInvite; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + return output; + } + }; + + struct EntityWithLineage : public PlayFabBaseModel + { + Boxed Key; + std::map Lineage; + + EntityWithLineage() : + PlayFabBaseModel(), + Key(), + Lineage() + {} + + EntityWithLineage(const EntityWithLineage& src) : + PlayFabBaseModel(), + Key(src.Key), + Lineage(src.Lineage) + {} + + ~EntityWithLineage() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Key"], Key); + FromJsonUtilO(input["Lineage"], Lineage); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Key; ToJsonUtilO(Key, each_Key); output["Key"] = each_Key; + Json::Value each_Lineage; ToJsonUtilO(Lineage, each_Lineage); output["Lineage"] = each_Lineage; + return output; + } + }; + + struct ApplyToGroupResponse : public PlayFabResultCommon + { + Boxed Entity; + time_t Expires; + Boxed Group; + + ApplyToGroupResponse() : + PlayFabResultCommon(), + Entity(), + Expires(), + Group() + {} + + ApplyToGroupResponse(const ApplyToGroupResponse& src) : + PlayFabResultCommon(), + Entity(src.Entity), + Expires(src.Expires), + Group(src.Group) + {} + + ~ApplyToGroupResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilT(input["Expires"], Expires); + FromJsonUtilO(input["Group"], Group); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_Expires; ToJsonUtilT(Expires, each_Expires); output["Expires"] = each_Expires; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + return output; + } + }; + + struct BlockEntityRequest : public PlayFabRequestCommon + { + EntityKey Entity; + EntityKey Group; + + BlockEntityRequest() : + PlayFabRequestCommon(), + Entity(), + Group() + {} + + BlockEntityRequest(const BlockEntityRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity), + Group(src.Group) + {} + + ~BlockEntityRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilO(input["Group"], Group); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + return output; + } + }; + + struct ChangeMemberRoleRequest : public PlayFabRequestCommon + { + std::string DestinationRoleId; + EntityKey Group; + std::list Members; + std::string OriginRoleId; + + ChangeMemberRoleRequest() : + PlayFabRequestCommon(), + DestinationRoleId(), + Group(), + Members(), + OriginRoleId() + {} + + ChangeMemberRoleRequest(const ChangeMemberRoleRequest& src) : + PlayFabRequestCommon(), + DestinationRoleId(src.DestinationRoleId), + Group(src.Group), + Members(src.Members), + OriginRoleId(src.OriginRoleId) + {} + + ~ChangeMemberRoleRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["DestinationRoleId"], DestinationRoleId); + FromJsonUtilO(input["Group"], Group); + FromJsonUtilO(input["Members"], Members); + FromJsonUtilS(input["OriginRoleId"], OriginRoleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DestinationRoleId; ToJsonUtilS(DestinationRoleId, each_DestinationRoleId); output["DestinationRoleId"] = each_DestinationRoleId; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + Json::Value each_Members; ToJsonUtilO(Members, each_Members); output["Members"] = each_Members; + Json::Value each_OriginRoleId; ToJsonUtilS(OriginRoleId, each_OriginRoleId); output["OriginRoleId"] = each_OriginRoleId; + return output; + } + }; + + struct CreateGroupRequest : public PlayFabRequestCommon + { + Boxed Entity; + std::string GroupName; + + CreateGroupRequest() : + PlayFabRequestCommon(), + Entity(), + GroupName() + {} + + CreateGroupRequest(const CreateGroupRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity), + GroupName(src.GroupName) + {} + + ~CreateGroupRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilS(input["GroupName"], GroupName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_GroupName; ToJsonUtilS(GroupName, each_GroupName); output["GroupName"] = each_GroupName; + return output; + } + }; + + struct CreateGroupResponse : public PlayFabResultCommon + { + std::string AdminRoleId; + time_t Created; + EntityKey Group; + std::string GroupName; + std::string MemberRoleId; + Int32 ProfileVersion; + std::map Roles; + + CreateGroupResponse() : + PlayFabResultCommon(), + AdminRoleId(), + Created(), + Group(), + GroupName(), + MemberRoleId(), + ProfileVersion(), + Roles() + {} + + CreateGroupResponse(const CreateGroupResponse& src) : + PlayFabResultCommon(), + AdminRoleId(src.AdminRoleId), + Created(src.Created), + Group(src.Group), + GroupName(src.GroupName), + MemberRoleId(src.MemberRoleId), + ProfileVersion(src.ProfileVersion), + Roles(src.Roles) + {} + + ~CreateGroupResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AdminRoleId"], AdminRoleId); + FromJsonUtilT(input["Created"], Created); + FromJsonUtilO(input["Group"], Group); + FromJsonUtilS(input["GroupName"], GroupName); + FromJsonUtilS(input["MemberRoleId"], MemberRoleId); + FromJsonUtilP(input["ProfileVersion"], ProfileVersion); + FromJsonUtilS(input["Roles"], Roles); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AdminRoleId; ToJsonUtilS(AdminRoleId, each_AdminRoleId); output["AdminRoleId"] = each_AdminRoleId; + Json::Value each_Created; ToJsonUtilT(Created, each_Created); output["Created"] = each_Created; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + Json::Value each_GroupName; ToJsonUtilS(GroupName, each_GroupName); output["GroupName"] = each_GroupName; + Json::Value each_MemberRoleId; ToJsonUtilS(MemberRoleId, each_MemberRoleId); output["MemberRoleId"] = each_MemberRoleId; + Json::Value each_ProfileVersion; ToJsonUtilP(ProfileVersion, each_ProfileVersion); output["ProfileVersion"] = each_ProfileVersion; + Json::Value each_Roles; ToJsonUtilS(Roles, each_Roles); output["Roles"] = each_Roles; + return output; + } + }; + + struct CreateGroupRoleRequest : public PlayFabRequestCommon + { + EntityKey Group; + std::string RoleId; + std::string RoleName; + + CreateGroupRoleRequest() : + PlayFabRequestCommon(), + Group(), + RoleId(), + RoleName() + {} + + CreateGroupRoleRequest(const CreateGroupRoleRequest& src) : + PlayFabRequestCommon(), + Group(src.Group), + RoleId(src.RoleId), + RoleName(src.RoleName) + {} + + ~CreateGroupRoleRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Group"], Group); + FromJsonUtilS(input["RoleId"], RoleId); + FromJsonUtilS(input["RoleName"], RoleName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + Json::Value each_RoleId; ToJsonUtilS(RoleId, each_RoleId); output["RoleId"] = each_RoleId; + Json::Value each_RoleName; ToJsonUtilS(RoleName, each_RoleName); output["RoleName"] = each_RoleName; + return output; + } + }; + + struct CreateGroupRoleResponse : public PlayFabResultCommon + { + Int32 ProfileVersion; + std::string RoleId; + std::string RoleName; + + CreateGroupRoleResponse() : + PlayFabResultCommon(), + ProfileVersion(), + RoleId(), + RoleName() + {} + + CreateGroupRoleResponse(const CreateGroupRoleResponse& src) : + PlayFabResultCommon(), + ProfileVersion(src.ProfileVersion), + RoleId(src.RoleId), + RoleName(src.RoleName) + {} + + ~CreateGroupRoleResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["ProfileVersion"], ProfileVersion); + FromJsonUtilS(input["RoleId"], RoleId); + FromJsonUtilS(input["RoleName"], RoleName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ProfileVersion; ToJsonUtilP(ProfileVersion, each_ProfileVersion); output["ProfileVersion"] = each_ProfileVersion; + Json::Value each_RoleId; ToJsonUtilS(RoleId, each_RoleId); output["RoleId"] = each_RoleId; + Json::Value each_RoleName; ToJsonUtilS(RoleName, each_RoleName); output["RoleName"] = each_RoleName; + return output; + } + }; + + struct DeleteFilesRequest : public PlayFabRequestCommon + { + EntityKey Entity; + std::list FileNames; + Boxed ProfileVersion; + + DeleteFilesRequest() : + PlayFabRequestCommon(), + Entity(), + FileNames(), + ProfileVersion() + {} + + DeleteFilesRequest(const DeleteFilesRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity), + FileNames(src.FileNames), + ProfileVersion(src.ProfileVersion) + {} + + ~DeleteFilesRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilS(input["FileNames"], FileNames); + FromJsonUtilP(input["ProfileVersion"], ProfileVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_FileNames; ToJsonUtilS(FileNames, each_FileNames); output["FileNames"] = each_FileNames; + Json::Value each_ProfileVersion; ToJsonUtilP(ProfileVersion, each_ProfileVersion); output["ProfileVersion"] = each_ProfileVersion; + return output; + } + }; + + struct DeleteFilesResponse : public PlayFabResultCommon + { + Boxed Entity; + Int32 ProfileVersion; + + DeleteFilesResponse() : + PlayFabResultCommon(), + Entity(), + ProfileVersion() + {} + + DeleteFilesResponse(const DeleteFilesResponse& src) : + PlayFabResultCommon(), + Entity(src.Entity), + ProfileVersion(src.ProfileVersion) + {} + + ~DeleteFilesResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilP(input["ProfileVersion"], ProfileVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_ProfileVersion; ToJsonUtilP(ProfileVersion, each_ProfileVersion); output["ProfileVersion"] = each_ProfileVersion; + return output; + } + }; + + struct DeleteGroupRequest : public PlayFabRequestCommon + { + EntityKey Group; + + DeleteGroupRequest() : + PlayFabRequestCommon(), + Group() + {} + + DeleteGroupRequest(const DeleteGroupRequest& src) : + PlayFabRequestCommon(), + Group(src.Group) + {} + + ~DeleteGroupRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Group"], Group); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + return output; + } + }; + + struct DeleteRoleRequest : public PlayFabRequestCommon + { + EntityKey Group; + std::string RoleId; + + DeleteRoleRequest() : + PlayFabRequestCommon(), + Group(), + RoleId() + {} + + DeleteRoleRequest(const DeleteRoleRequest& src) : + PlayFabRequestCommon(), + Group(src.Group), + RoleId(src.RoleId) + {} + + ~DeleteRoleRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Group"], Group); + FromJsonUtilS(input["RoleId"], RoleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + Json::Value each_RoleId; ToJsonUtilS(RoleId, each_RoleId); output["RoleId"] = each_RoleId; + return output; + } + }; + + struct EmptyResult : public PlayFabResultCommon + { + + EmptyResult() : + PlayFabResultCommon() + {} + + EmptyResult(const EmptyResult&) : + PlayFabResultCommon() + {} + + ~EmptyResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct EntityDataObject : public PlayFabBaseModel + { + Json::Value DataObject; + std::string EscapedDataObject; + std::string ObjectName; + + EntityDataObject() : + PlayFabBaseModel(), + DataObject(), + EscapedDataObject(), + ObjectName() + {} + + EntityDataObject(const EntityDataObject& src) : + PlayFabBaseModel(), + DataObject(src.DataObject), + EscapedDataObject(src.EscapedDataObject), + ObjectName(src.ObjectName) + {} + + ~EntityDataObject() { } + + void FromJson(Json::Value& input) override + { + DataObject = input["DataObject"]; + FromJsonUtilS(input["EscapedDataObject"], EscapedDataObject); + FromJsonUtilS(input["ObjectName"], ObjectName); + } + + Json::Value ToJson() const override + { + Json::Value output; + output["DataObject"] = DataObject; + Json::Value each_EscapedDataObject; ToJsonUtilS(EscapedDataObject, each_EscapedDataObject); output["EscapedDataObject"] = each_EscapedDataObject; + Json::Value each_ObjectName; ToJsonUtilS(ObjectName, each_ObjectName); output["ObjectName"] = each_ObjectName; + return output; + } + }; + + struct EntityMemberRole : public PlayFabBaseModel + { + std::list Members; + std::string RoleId; + std::string RoleName; + + EntityMemberRole() : + PlayFabBaseModel(), + Members(), + RoleId(), + RoleName() + {} + + EntityMemberRole(const EntityMemberRole& src) : + PlayFabBaseModel(), + Members(src.Members), + RoleId(src.RoleId), + RoleName(src.RoleName) + {} + + ~EntityMemberRole() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Members"], Members); + FromJsonUtilS(input["RoleId"], RoleId); + FromJsonUtilS(input["RoleName"], RoleName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Members; ToJsonUtilO(Members, each_Members); output["Members"] = each_Members; + Json::Value each_RoleId; ToJsonUtilS(RoleId, each_RoleId); output["RoleId"] = each_RoleId; + Json::Value each_RoleName; ToJsonUtilS(RoleName, each_RoleName); output["RoleName"] = each_RoleName; + return output; + } + }; + + struct EntityPermissionStatement : public PlayFabBaseModel + { + std::string Action; + std::string Comment; + Json::Value Condition; + EffectType Effect; + Json::Value Principal; + std::string Resource; + + EntityPermissionStatement() : + PlayFabBaseModel(), + Action(), + Comment(), + Condition(), + Effect(), + Principal(), + Resource() + {} + + EntityPermissionStatement(const EntityPermissionStatement& src) : + PlayFabBaseModel(), + Action(src.Action), + Comment(src.Comment), + Condition(src.Condition), + Effect(src.Effect), + Principal(src.Principal), + Resource(src.Resource) + {} + + ~EntityPermissionStatement() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Action"], Action); + FromJsonUtilS(input["Comment"], Comment); + Condition = input["Condition"]; + FromJsonEnum(input["Effect"], Effect); + Principal = input["Principal"]; + FromJsonUtilS(input["Resource"], Resource); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Action; ToJsonUtilS(Action, each_Action); output["Action"] = each_Action; + Json::Value each_Comment; ToJsonUtilS(Comment, each_Comment); output["Comment"] = each_Comment; + output["Condition"] = Condition; + Json::Value each_Effect; ToJsonEnum(Effect, each_Effect); output["Effect"] = each_Effect; + output["Principal"] = Principal; + Json::Value each_Resource; ToJsonUtilS(Resource, each_Resource); output["Resource"] = each_Resource; + return output; + } + }; + + struct EntityProfileFileMetadata : public PlayFabBaseModel + { + std::string Checksum; + std::string FileName; + time_t LastModified; + Int32 Size; + + EntityProfileFileMetadata() : + PlayFabBaseModel(), + Checksum(), + FileName(), + LastModified(), + Size() + {} + + EntityProfileFileMetadata(const EntityProfileFileMetadata& src) : + PlayFabBaseModel(), + Checksum(src.Checksum), + FileName(src.FileName), + LastModified(src.LastModified), + Size(src.Size) + {} + + ~EntityProfileFileMetadata() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Checksum"], Checksum); + FromJsonUtilS(input["FileName"], FileName); + FromJsonUtilT(input["LastModified"], LastModified); + FromJsonUtilP(input["Size"], Size); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Checksum; ToJsonUtilS(Checksum, each_Checksum); output["Checksum"] = each_Checksum; + Json::Value each_FileName; ToJsonUtilS(FileName, each_FileName); output["FileName"] = each_FileName; + Json::Value each_LastModified; ToJsonUtilT(LastModified, each_LastModified); output["LastModified"] = each_LastModified; + Json::Value each_Size; ToJsonUtilP(Size, each_Size); output["Size"] = each_Size; + return output; + } + }; + + struct EntityProfileBody : public PlayFabBaseModel + { + Boxed Entity; + std::string EntityChain; + std::map Files; + std::map Objects; + std::list Permissions; + Int32 VersionNumber; + + EntityProfileBody() : + PlayFabBaseModel(), + Entity(), + EntityChain(), + Files(), + Objects(), + Permissions(), + VersionNumber() + {} + + EntityProfileBody(const EntityProfileBody& src) : + PlayFabBaseModel(), + Entity(src.Entity), + EntityChain(src.EntityChain), + Files(src.Files), + Objects(src.Objects), + Permissions(src.Permissions), + VersionNumber(src.VersionNumber) + {} + + ~EntityProfileBody() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilS(input["EntityChain"], EntityChain); + FromJsonUtilO(input["Files"], Files); + FromJsonUtilO(input["Objects"], Objects); + FromJsonUtilO(input["Permissions"], Permissions); + FromJsonUtilP(input["VersionNumber"], VersionNumber); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_EntityChain; ToJsonUtilS(EntityChain, each_EntityChain); output["EntityChain"] = each_EntityChain; + Json::Value each_Files; ToJsonUtilO(Files, each_Files); output["Files"] = each_Files; + Json::Value each_Objects; ToJsonUtilO(Objects, each_Objects); output["Objects"] = each_Objects; + Json::Value each_Permissions; ToJsonUtilO(Permissions, each_Permissions); output["Permissions"] = each_Permissions; + Json::Value each_VersionNumber; ToJsonUtilP(VersionNumber, each_VersionNumber); output["VersionNumber"] = each_VersionNumber; + return output; + } + }; + + struct FinalizeFileUploadsRequest : public PlayFabRequestCommon + { + EntityKey Entity; + std::list FileNames; + + FinalizeFileUploadsRequest() : + PlayFabRequestCommon(), + Entity(), + FileNames() + {} + + FinalizeFileUploadsRequest(const FinalizeFileUploadsRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity), + FileNames(src.FileNames) + {} + + ~FinalizeFileUploadsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilS(input["FileNames"], FileNames); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_FileNames; ToJsonUtilS(FileNames, each_FileNames); output["FileNames"] = each_FileNames; + return output; + } + }; + + struct GetFileMetadata : public PlayFabBaseModel + { + std::string Checksum; + std::string DownloadUrl; + std::string FileName; + time_t LastModified; + Int32 Size; + + GetFileMetadata() : + PlayFabBaseModel(), + Checksum(), + DownloadUrl(), + FileName(), + LastModified(), + Size() + {} + + GetFileMetadata(const GetFileMetadata& src) : + PlayFabBaseModel(), + Checksum(src.Checksum), + DownloadUrl(src.DownloadUrl), + FileName(src.FileName), + LastModified(src.LastModified), + Size(src.Size) + {} + + ~GetFileMetadata() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Checksum"], Checksum); + FromJsonUtilS(input["DownloadUrl"], DownloadUrl); + FromJsonUtilS(input["FileName"], FileName); + FromJsonUtilT(input["LastModified"], LastModified); + FromJsonUtilP(input["Size"], Size); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Checksum; ToJsonUtilS(Checksum, each_Checksum); output["Checksum"] = each_Checksum; + Json::Value each_DownloadUrl; ToJsonUtilS(DownloadUrl, each_DownloadUrl); output["DownloadUrl"] = each_DownloadUrl; + Json::Value each_FileName; ToJsonUtilS(FileName, each_FileName); output["FileName"] = each_FileName; + Json::Value each_LastModified; ToJsonUtilT(LastModified, each_LastModified); output["LastModified"] = each_LastModified; + Json::Value each_Size; ToJsonUtilP(Size, each_Size); output["Size"] = each_Size; + return output; + } + }; + + struct FinalizeFileUploadsResponse : public PlayFabResultCommon + { + Boxed Entity; + std::map Metadata; + Int32 ProfileVersion; + + FinalizeFileUploadsResponse() : + PlayFabResultCommon(), + Entity(), + Metadata(), + ProfileVersion() + {} + + FinalizeFileUploadsResponse(const FinalizeFileUploadsResponse& src) : + PlayFabResultCommon(), + Entity(src.Entity), + Metadata(src.Metadata), + ProfileVersion(src.ProfileVersion) + {} + + ~FinalizeFileUploadsResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilO(input["Metadata"], Metadata); + FromJsonUtilP(input["ProfileVersion"], ProfileVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_Metadata; ToJsonUtilO(Metadata, each_Metadata); output["Metadata"] = each_Metadata; + Json::Value each_ProfileVersion; ToJsonUtilP(ProfileVersion, each_ProfileVersion); output["ProfileVersion"] = each_ProfileVersion; + return output; + } + }; + + struct GetEntityProfileRequest : public PlayFabRequestCommon + { + Boxed DataAsObject; + EntityKey Entity; + + GetEntityProfileRequest() : + PlayFabRequestCommon(), + DataAsObject(), + Entity() + {} + + GetEntityProfileRequest(const GetEntityProfileRequest& src) : + PlayFabRequestCommon(), + DataAsObject(src.DataAsObject), + Entity(src.Entity) + {} + + ~GetEntityProfileRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["DataAsObject"], DataAsObject); + FromJsonUtilO(input["Entity"], Entity); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DataAsObject; ToJsonUtilP(DataAsObject, each_DataAsObject); output["DataAsObject"] = each_DataAsObject; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + return output; + } + }; + + struct GetEntityProfileResponse : public PlayFabResultCommon + { + Boxed Profile; + + GetEntityProfileResponse() : + PlayFabResultCommon(), + Profile() + {} + + GetEntityProfileResponse(const GetEntityProfileResponse& src) : + PlayFabResultCommon(), + Profile(src.Profile) + {} + + ~GetEntityProfileResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Profile"], Profile); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Profile; ToJsonUtilO(Profile, each_Profile); output["Profile"] = each_Profile; + return output; + } + }; + + struct GetEntityTokenRequest : public PlayFabRequestCommon + { + Boxed Entity; + + GetEntityTokenRequest() : + PlayFabRequestCommon(), + Entity() + {} + + GetEntityTokenRequest(const GetEntityTokenRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity) + {} + + ~GetEntityTokenRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + return output; + } + }; + + struct GetEntityTokenResponse : public PlayFabResultCommon + { + Boxed Entity; + std::string EntityToken; + Boxed TokenExpiration; + + GetEntityTokenResponse() : + PlayFabResultCommon(), + Entity(), + EntityToken(), + TokenExpiration() + {} + + GetEntityTokenResponse(const GetEntityTokenResponse& src) : + PlayFabResultCommon(), + Entity(src.Entity), + EntityToken(src.EntityToken), + TokenExpiration(src.TokenExpiration) + {} + + ~GetEntityTokenResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilS(input["EntityToken"], EntityToken); + FromJsonUtilT(input["TokenExpiration"], TokenExpiration); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_EntityToken; ToJsonUtilS(EntityToken, each_EntityToken); output["EntityToken"] = each_EntityToken; + Json::Value each_TokenExpiration; ToJsonUtilT(TokenExpiration, each_TokenExpiration); output["TokenExpiration"] = each_TokenExpiration; + return output; + } + }; + + struct GetFilesRequest : public PlayFabRequestCommon + { + EntityKey Entity; + + GetFilesRequest() : + PlayFabRequestCommon(), + Entity() + {} + + GetFilesRequest(const GetFilesRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity) + {} + + ~GetFilesRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + return output; + } + }; + + struct GetFilesResponse : public PlayFabResultCommon + { + Boxed Entity; + std::map Metadata; + Int32 ProfileVersion; + + GetFilesResponse() : + PlayFabResultCommon(), + Entity(), + Metadata(), + ProfileVersion() + {} + + GetFilesResponse(const GetFilesResponse& src) : + PlayFabResultCommon(), + Entity(src.Entity), + Metadata(src.Metadata), + ProfileVersion(src.ProfileVersion) + {} + + ~GetFilesResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilO(input["Metadata"], Metadata); + FromJsonUtilP(input["ProfileVersion"], ProfileVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_Metadata; ToJsonUtilO(Metadata, each_Metadata); output["Metadata"] = each_Metadata; + Json::Value each_ProfileVersion; ToJsonUtilP(ProfileVersion, each_ProfileVersion); output["ProfileVersion"] = each_ProfileVersion; + return output; + } + }; + + struct GetGlobalPolicyRequest : public PlayFabRequestCommon + { + + GetGlobalPolicyRequest() : + PlayFabRequestCommon() + {} + + GetGlobalPolicyRequest(const GetGlobalPolicyRequest&) : + PlayFabRequestCommon() + {} + + ~GetGlobalPolicyRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct GetGlobalPolicyResponse : public PlayFabResultCommon + { + std::list Permissions; + + GetGlobalPolicyResponse() : + PlayFabResultCommon(), + Permissions() + {} + + GetGlobalPolicyResponse(const GetGlobalPolicyResponse& src) : + PlayFabResultCommon(), + Permissions(src.Permissions) + {} + + ~GetGlobalPolicyResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Permissions"], Permissions); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Permissions; ToJsonUtilO(Permissions, each_Permissions); output["Permissions"] = each_Permissions; + return output; + } + }; + + struct GetGroupRequest : public PlayFabRequestCommon + { + Boxed Group; + std::string GroupName; + + GetGroupRequest() : + PlayFabRequestCommon(), + Group(), + GroupName() + {} + + GetGroupRequest(const GetGroupRequest& src) : + PlayFabRequestCommon(), + Group(src.Group), + GroupName(src.GroupName) + {} + + ~GetGroupRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Group"], Group); + FromJsonUtilS(input["GroupName"], GroupName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + Json::Value each_GroupName; ToJsonUtilS(GroupName, each_GroupName); output["GroupName"] = each_GroupName; + return output; + } + }; + + struct GetGroupResponse : public PlayFabResultCommon + { + std::string AdminRoleId; + time_t Created; + EntityKey Group; + std::string GroupName; + std::string MemberRoleId; + Int32 ProfileVersion; + std::map Roles; + + GetGroupResponse() : + PlayFabResultCommon(), + AdminRoleId(), + Created(), + Group(), + GroupName(), + MemberRoleId(), + ProfileVersion(), + Roles() + {} + + GetGroupResponse(const GetGroupResponse& src) : + PlayFabResultCommon(), + AdminRoleId(src.AdminRoleId), + Created(src.Created), + Group(src.Group), + GroupName(src.GroupName), + MemberRoleId(src.MemberRoleId), + ProfileVersion(src.ProfileVersion), + Roles(src.Roles) + {} + + ~GetGroupResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AdminRoleId"], AdminRoleId); + FromJsonUtilT(input["Created"], Created); + FromJsonUtilO(input["Group"], Group); + FromJsonUtilS(input["GroupName"], GroupName); + FromJsonUtilS(input["MemberRoleId"], MemberRoleId); + FromJsonUtilP(input["ProfileVersion"], ProfileVersion); + FromJsonUtilS(input["Roles"], Roles); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AdminRoleId; ToJsonUtilS(AdminRoleId, each_AdminRoleId); output["AdminRoleId"] = each_AdminRoleId; + Json::Value each_Created; ToJsonUtilT(Created, each_Created); output["Created"] = each_Created; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + Json::Value each_GroupName; ToJsonUtilS(GroupName, each_GroupName); output["GroupName"] = each_GroupName; + Json::Value each_MemberRoleId; ToJsonUtilS(MemberRoleId, each_MemberRoleId); output["MemberRoleId"] = each_MemberRoleId; + Json::Value each_ProfileVersion; ToJsonUtilP(ProfileVersion, each_ProfileVersion); output["ProfileVersion"] = each_ProfileVersion; + Json::Value each_Roles; ToJsonUtilS(Roles, each_Roles); output["Roles"] = each_Roles; + return output; + } + }; + + struct GetObjectsRequest : public PlayFabRequestCommon + { + EntityKey Entity; + Boxed EscapeObject; + + GetObjectsRequest() : + PlayFabRequestCommon(), + Entity(), + EscapeObject() + {} + + GetObjectsRequest(const GetObjectsRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity), + EscapeObject(src.EscapeObject) + {} + + ~GetObjectsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilP(input["EscapeObject"], EscapeObject); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_EscapeObject; ToJsonUtilP(EscapeObject, each_EscapeObject); output["EscapeObject"] = each_EscapeObject; + return output; + } + }; + + struct ObjectResult : public PlayFabResultCommon + { + Json::Value DataObject; + std::string EscapedDataObject; + std::string ObjectName; + + ObjectResult() : + PlayFabResultCommon(), + DataObject(), + EscapedDataObject(), + ObjectName() + {} + + ObjectResult(const ObjectResult& src) : + PlayFabResultCommon(), + DataObject(src.DataObject), + EscapedDataObject(src.EscapedDataObject), + ObjectName(src.ObjectName) + {} + + ~ObjectResult() { } + + void FromJson(Json::Value& input) override + { + DataObject = input["DataObject"]; + FromJsonUtilS(input["EscapedDataObject"], EscapedDataObject); + FromJsonUtilS(input["ObjectName"], ObjectName); + } + + Json::Value ToJson() const override + { + Json::Value output; + output["DataObject"] = DataObject; + Json::Value each_EscapedDataObject; ToJsonUtilS(EscapedDataObject, each_EscapedDataObject); output["EscapedDataObject"] = each_EscapedDataObject; + Json::Value each_ObjectName; ToJsonUtilS(ObjectName, each_ObjectName); output["ObjectName"] = each_ObjectName; + return output; + } + }; + + struct GetObjectsResponse : public PlayFabResultCommon + { + Boxed Entity; + std::map Objects; + Int32 ProfileVersion; + + GetObjectsResponse() : + PlayFabResultCommon(), + Entity(), + Objects(), + ProfileVersion() + {} + + GetObjectsResponse(const GetObjectsResponse& src) : + PlayFabResultCommon(), + Entity(src.Entity), + Objects(src.Objects), + ProfileVersion(src.ProfileVersion) + {} + + ~GetObjectsResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilO(input["Objects"], Objects); + FromJsonUtilP(input["ProfileVersion"], ProfileVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_Objects; ToJsonUtilO(Objects, each_Objects); output["Objects"] = each_Objects; + Json::Value each_ProfileVersion; ToJsonUtilP(ProfileVersion, each_ProfileVersion); output["ProfileVersion"] = each_ProfileVersion; + return output; + } + }; + + struct GroupApplication : public PlayFabBaseModel + { + Boxed Entity; + time_t Expires; + Boxed Group; + + GroupApplication() : + PlayFabBaseModel(), + Entity(), + Expires(), + Group() + {} + + GroupApplication(const GroupApplication& src) : + PlayFabBaseModel(), + Entity(src.Entity), + Expires(src.Expires), + Group(src.Group) + {} + + ~GroupApplication() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilT(input["Expires"], Expires); + FromJsonUtilO(input["Group"], Group); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_Expires; ToJsonUtilT(Expires, each_Expires); output["Expires"] = each_Expires; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + return output; + } + }; + + struct GroupBlock : public PlayFabBaseModel + { + Boxed Entity; + EntityKey Group; + + GroupBlock() : + PlayFabBaseModel(), + Entity(), + Group() + {} + + GroupBlock(const GroupBlock& src) : + PlayFabBaseModel(), + Entity(src.Entity), + Group(src.Group) + {} + + ~GroupBlock() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilO(input["Group"], Group); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + return output; + } + }; + + struct GroupInvitation : public PlayFabBaseModel + { + time_t Expires; + Boxed Group; + Boxed InvitedByEntity; + Boxed InvitedEntity; + std::string RoleId; + + GroupInvitation() : + PlayFabBaseModel(), + Expires(), + Group(), + InvitedByEntity(), + InvitedEntity(), + RoleId() + {} + + GroupInvitation(const GroupInvitation& src) : + PlayFabBaseModel(), + Expires(src.Expires), + Group(src.Group), + InvitedByEntity(src.InvitedByEntity), + InvitedEntity(src.InvitedEntity), + RoleId(src.RoleId) + {} + + ~GroupInvitation() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["Expires"], Expires); + FromJsonUtilO(input["Group"], Group); + FromJsonUtilO(input["InvitedByEntity"], InvitedByEntity); + FromJsonUtilO(input["InvitedEntity"], InvitedEntity); + FromJsonUtilS(input["RoleId"], RoleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Expires; ToJsonUtilT(Expires, each_Expires); output["Expires"] = each_Expires; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + Json::Value each_InvitedByEntity; ToJsonUtilO(InvitedByEntity, each_InvitedByEntity); output["InvitedByEntity"] = each_InvitedByEntity; + Json::Value each_InvitedEntity; ToJsonUtilO(InvitedEntity, each_InvitedEntity); output["InvitedEntity"] = each_InvitedEntity; + Json::Value each_RoleId; ToJsonUtilS(RoleId, each_RoleId); output["RoleId"] = each_RoleId; + return output; + } + }; + + struct GroupRole : public PlayFabBaseModel + { + std::string RoleId; + std::string RoleName; + + GroupRole() : + PlayFabBaseModel(), + RoleId(), + RoleName() + {} + + GroupRole(const GroupRole& src) : + PlayFabBaseModel(), + RoleId(src.RoleId), + RoleName(src.RoleName) + {} + + ~GroupRole() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["RoleId"], RoleId); + FromJsonUtilS(input["RoleName"], RoleName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_RoleId; ToJsonUtilS(RoleId, each_RoleId); output["RoleId"] = each_RoleId; + Json::Value each_RoleName; ToJsonUtilS(RoleName, each_RoleName); output["RoleName"] = each_RoleName; + return output; + } + }; + + struct GroupWithRoles : public PlayFabBaseModel + { + Boxed Group; + std::string GroupName; + Int32 ProfileVersion; + std::list Roles; + + GroupWithRoles() : + PlayFabBaseModel(), + Group(), + GroupName(), + ProfileVersion(), + Roles() + {} + + GroupWithRoles(const GroupWithRoles& src) : + PlayFabBaseModel(), + Group(src.Group), + GroupName(src.GroupName), + ProfileVersion(src.ProfileVersion), + Roles(src.Roles) + {} + + ~GroupWithRoles() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Group"], Group); + FromJsonUtilS(input["GroupName"], GroupName); + FromJsonUtilP(input["ProfileVersion"], ProfileVersion); + FromJsonUtilO(input["Roles"], Roles); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + Json::Value each_GroupName; ToJsonUtilS(GroupName, each_GroupName); output["GroupName"] = each_GroupName; + Json::Value each_ProfileVersion; ToJsonUtilP(ProfileVersion, each_ProfileVersion); output["ProfileVersion"] = each_ProfileVersion; + Json::Value each_Roles; ToJsonUtilO(Roles, each_Roles); output["Roles"] = each_Roles; + return output; + } + }; + + struct InitiateFileUploadMetadata : public PlayFabBaseModel + { + std::string FileName; + std::string UploadUrl; + + InitiateFileUploadMetadata() : + PlayFabBaseModel(), + FileName(), + UploadUrl() + {} + + InitiateFileUploadMetadata(const InitiateFileUploadMetadata& src) : + PlayFabBaseModel(), + FileName(src.FileName), + UploadUrl(src.UploadUrl) + {} + + ~InitiateFileUploadMetadata() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FileName"], FileName); + FromJsonUtilS(input["UploadUrl"], UploadUrl); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FileName; ToJsonUtilS(FileName, each_FileName); output["FileName"] = each_FileName; + Json::Value each_UploadUrl; ToJsonUtilS(UploadUrl, each_UploadUrl); output["UploadUrl"] = each_UploadUrl; + return output; + } + }; + + struct InitiateFileUploadsRequest : public PlayFabRequestCommon + { + EntityKey Entity; + std::list FileNames; + Boxed ProfileVersion; + + InitiateFileUploadsRequest() : + PlayFabRequestCommon(), + Entity(), + FileNames(), + ProfileVersion() + {} + + InitiateFileUploadsRequest(const InitiateFileUploadsRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity), + FileNames(src.FileNames), + ProfileVersion(src.ProfileVersion) + {} + + ~InitiateFileUploadsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilS(input["FileNames"], FileNames); + FromJsonUtilP(input["ProfileVersion"], ProfileVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_FileNames; ToJsonUtilS(FileNames, each_FileNames); output["FileNames"] = each_FileNames; + Json::Value each_ProfileVersion; ToJsonUtilP(ProfileVersion, each_ProfileVersion); output["ProfileVersion"] = each_ProfileVersion; + return output; + } + }; + + struct InitiateFileUploadsResponse : public PlayFabResultCommon + { + Boxed Entity; + Int32 ProfileVersion; + std::list UploadDetails; + + InitiateFileUploadsResponse() : + PlayFabResultCommon(), + Entity(), + ProfileVersion(), + UploadDetails() + {} + + InitiateFileUploadsResponse(const InitiateFileUploadsResponse& src) : + PlayFabResultCommon(), + Entity(src.Entity), + ProfileVersion(src.ProfileVersion), + UploadDetails(src.UploadDetails) + {} + + ~InitiateFileUploadsResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilP(input["ProfileVersion"], ProfileVersion); + FromJsonUtilO(input["UploadDetails"], UploadDetails); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_ProfileVersion; ToJsonUtilP(ProfileVersion, each_ProfileVersion); output["ProfileVersion"] = each_ProfileVersion; + Json::Value each_UploadDetails; ToJsonUtilO(UploadDetails, each_UploadDetails); output["UploadDetails"] = each_UploadDetails; + return output; + } + }; + + struct InviteToGroupRequest : public PlayFabRequestCommon + { + Boxed AutoAcceptOutstandingApplication; + EntityKey Entity; + EntityKey Group; + std::string RoleId; + + InviteToGroupRequest() : + PlayFabRequestCommon(), + AutoAcceptOutstandingApplication(), + Entity(), + Group(), + RoleId() + {} + + InviteToGroupRequest(const InviteToGroupRequest& src) : + PlayFabRequestCommon(), + AutoAcceptOutstandingApplication(src.AutoAcceptOutstandingApplication), + Entity(src.Entity), + Group(src.Group), + RoleId(src.RoleId) + {} + + ~InviteToGroupRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["AutoAcceptOutstandingApplication"], AutoAcceptOutstandingApplication); + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilO(input["Group"], Group); + FromJsonUtilS(input["RoleId"], RoleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AutoAcceptOutstandingApplication; ToJsonUtilP(AutoAcceptOutstandingApplication, each_AutoAcceptOutstandingApplication); output["AutoAcceptOutstandingApplication"] = each_AutoAcceptOutstandingApplication; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + Json::Value each_RoleId; ToJsonUtilS(RoleId, each_RoleId); output["RoleId"] = each_RoleId; + return output; + } + }; + + struct InviteToGroupResponse : public PlayFabResultCommon + { + time_t Expires; + Boxed Group; + Boxed InvitedByEntity; + Boxed InvitedEntity; + std::string RoleId; + + InviteToGroupResponse() : + PlayFabResultCommon(), + Expires(), + Group(), + InvitedByEntity(), + InvitedEntity(), + RoleId() + {} + + InviteToGroupResponse(const InviteToGroupResponse& src) : + PlayFabResultCommon(), + Expires(src.Expires), + Group(src.Group), + InvitedByEntity(src.InvitedByEntity), + InvitedEntity(src.InvitedEntity), + RoleId(src.RoleId) + {} + + ~InviteToGroupResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["Expires"], Expires); + FromJsonUtilO(input["Group"], Group); + FromJsonUtilO(input["InvitedByEntity"], InvitedByEntity); + FromJsonUtilO(input["InvitedEntity"], InvitedEntity); + FromJsonUtilS(input["RoleId"], RoleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Expires; ToJsonUtilT(Expires, each_Expires); output["Expires"] = each_Expires; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + Json::Value each_InvitedByEntity; ToJsonUtilO(InvitedByEntity, each_InvitedByEntity); output["InvitedByEntity"] = each_InvitedByEntity; + Json::Value each_InvitedEntity; ToJsonUtilO(InvitedEntity, each_InvitedEntity); output["InvitedEntity"] = each_InvitedEntity; + Json::Value each_RoleId; ToJsonUtilS(RoleId, each_RoleId); output["RoleId"] = each_RoleId; + return output; + } + }; + + struct IsMemberRequest : public PlayFabRequestCommon + { + EntityKey Entity; + EntityKey Group; + std::string RoleId; + + IsMemberRequest() : + PlayFabRequestCommon(), + Entity(), + Group(), + RoleId() + {} + + IsMemberRequest(const IsMemberRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity), + Group(src.Group), + RoleId(src.RoleId) + {} + + ~IsMemberRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilO(input["Group"], Group); + FromJsonUtilS(input["RoleId"], RoleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + Json::Value each_RoleId; ToJsonUtilS(RoleId, each_RoleId); output["RoleId"] = each_RoleId; + return output; + } + }; + + struct IsMemberResponse : public PlayFabResultCommon + { + bool IsMember; + + IsMemberResponse() : + PlayFabResultCommon(), + IsMember() + {} + + IsMemberResponse(const IsMemberResponse& src) : + PlayFabResultCommon(), + IsMember(src.IsMember) + {} + + ~IsMemberResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["IsMember"], IsMember); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_IsMember; ToJsonUtilP(IsMember, each_IsMember); output["IsMember"] = each_IsMember; + return output; + } + }; + + struct ListGroupApplicationsRequest : public PlayFabRequestCommon + { + EntityKey Group; + + ListGroupApplicationsRequest() : + PlayFabRequestCommon(), + Group() + {} + + ListGroupApplicationsRequest(const ListGroupApplicationsRequest& src) : + PlayFabRequestCommon(), + Group(src.Group) + {} + + ~ListGroupApplicationsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Group"], Group); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + return output; + } + }; + + struct ListGroupApplicationsResponse : public PlayFabResultCommon + { + std::list Applications; + + ListGroupApplicationsResponse() : + PlayFabResultCommon(), + Applications() + {} + + ListGroupApplicationsResponse(const ListGroupApplicationsResponse& src) : + PlayFabResultCommon(), + Applications(src.Applications) + {} + + ~ListGroupApplicationsResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Applications"], Applications); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Applications; ToJsonUtilO(Applications, each_Applications); output["Applications"] = each_Applications; + return output; + } + }; + + struct ListGroupBlocksRequest : public PlayFabRequestCommon + { + EntityKey Group; + + ListGroupBlocksRequest() : + PlayFabRequestCommon(), + Group() + {} + + ListGroupBlocksRequest(const ListGroupBlocksRequest& src) : + PlayFabRequestCommon(), + Group(src.Group) + {} + + ~ListGroupBlocksRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Group"], Group); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + return output; + } + }; + + struct ListGroupBlocksResponse : public PlayFabResultCommon + { + std::list BlockedEntities; + + ListGroupBlocksResponse() : + PlayFabResultCommon(), + BlockedEntities() + {} + + ListGroupBlocksResponse(const ListGroupBlocksResponse& src) : + PlayFabResultCommon(), + BlockedEntities(src.BlockedEntities) + {} + + ~ListGroupBlocksResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["BlockedEntities"], BlockedEntities); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BlockedEntities; ToJsonUtilO(BlockedEntities, each_BlockedEntities); output["BlockedEntities"] = each_BlockedEntities; + return output; + } + }; + + struct ListGroupInvitationsRequest : public PlayFabRequestCommon + { + EntityKey Group; + + ListGroupInvitationsRequest() : + PlayFabRequestCommon(), + Group() + {} + + ListGroupInvitationsRequest(const ListGroupInvitationsRequest& src) : + PlayFabRequestCommon(), + Group(src.Group) + {} + + ~ListGroupInvitationsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Group"], Group); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + return output; + } + }; + + struct ListGroupInvitationsResponse : public PlayFabResultCommon + { + std::list Invitations; + + ListGroupInvitationsResponse() : + PlayFabResultCommon(), + Invitations() + {} + + ListGroupInvitationsResponse(const ListGroupInvitationsResponse& src) : + PlayFabResultCommon(), + Invitations(src.Invitations) + {} + + ~ListGroupInvitationsResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Invitations"], Invitations); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Invitations; ToJsonUtilO(Invitations, each_Invitations); output["Invitations"] = each_Invitations; + return output; + } + }; + + struct ListGroupMembersRequest : public PlayFabRequestCommon + { + EntityKey Group; + + ListGroupMembersRequest() : + PlayFabRequestCommon(), + Group() + {} + + ListGroupMembersRequest(const ListGroupMembersRequest& src) : + PlayFabRequestCommon(), + Group(src.Group) + {} + + ~ListGroupMembersRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Group"], Group); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + return output; + } + }; + + struct ListGroupMembersResponse : public PlayFabResultCommon + { + std::list Members; + + ListGroupMembersResponse() : + PlayFabResultCommon(), + Members() + {} + + ListGroupMembersResponse(const ListGroupMembersResponse& src) : + PlayFabResultCommon(), + Members(src.Members) + {} + + ~ListGroupMembersResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Members"], Members); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Members; ToJsonUtilO(Members, each_Members); output["Members"] = each_Members; + return output; + } + }; + + struct ListMembershipOpportunitiesRequest : public PlayFabRequestCommon + { + Boxed Entity; + + ListMembershipOpportunitiesRequest() : + PlayFabRequestCommon(), + Entity() + {} + + ListMembershipOpportunitiesRequest(const ListMembershipOpportunitiesRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity) + {} + + ~ListMembershipOpportunitiesRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + return output; + } + }; + + struct ListMembershipOpportunitiesResponse : public PlayFabResultCommon + { + std::list Applications; + std::list Invitations; + + ListMembershipOpportunitiesResponse() : + PlayFabResultCommon(), + Applications(), + Invitations() + {} + + ListMembershipOpportunitiesResponse(const ListMembershipOpportunitiesResponse& src) : + PlayFabResultCommon(), + Applications(src.Applications), + Invitations(src.Invitations) + {} + + ~ListMembershipOpportunitiesResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Applications"], Applications); + FromJsonUtilO(input["Invitations"], Invitations); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Applications; ToJsonUtilO(Applications, each_Applications); output["Applications"] = each_Applications; + Json::Value each_Invitations; ToJsonUtilO(Invitations, each_Invitations); output["Invitations"] = each_Invitations; + return output; + } + }; + + struct ListMembershipRequest : public PlayFabRequestCommon + { + Boxed Entity; + + ListMembershipRequest() : + PlayFabRequestCommon(), + Entity() + {} + + ListMembershipRequest(const ListMembershipRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity) + {} + + ~ListMembershipRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + return output; + } + }; + + struct ListMembershipResponse : public PlayFabResultCommon + { + std::list Groups; + + ListMembershipResponse() : + PlayFabResultCommon(), + Groups() + {} + + ListMembershipResponse(const ListMembershipResponse& src) : + PlayFabResultCommon(), + Groups(src.Groups) + {} + + ~ListMembershipResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Groups"], Groups); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Groups; ToJsonUtilO(Groups, each_Groups); output["Groups"] = each_Groups; + return output; + } + }; + + struct RemoveGroupApplicationRequest : public PlayFabRequestCommon + { + EntityKey Entity; + EntityKey Group; + + RemoveGroupApplicationRequest() : + PlayFabRequestCommon(), + Entity(), + Group() + {} + + RemoveGroupApplicationRequest(const RemoveGroupApplicationRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity), + Group(src.Group) + {} + + ~RemoveGroupApplicationRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilO(input["Group"], Group); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + return output; + } + }; + + struct RemoveGroupInvitationRequest : public PlayFabRequestCommon + { + EntityKey Entity; + EntityKey Group; + + RemoveGroupInvitationRequest() : + PlayFabRequestCommon(), + Entity(), + Group() + {} + + RemoveGroupInvitationRequest(const RemoveGroupInvitationRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity), + Group(src.Group) + {} + + ~RemoveGroupInvitationRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilO(input["Group"], Group); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + return output; + } + }; + + struct RemoveMembersRequest : public PlayFabRequestCommon + { + EntityKey Group; + std::list Members; + std::string RoleId; + + RemoveMembersRequest() : + PlayFabRequestCommon(), + Group(), + Members(), + RoleId() + {} + + RemoveMembersRequest(const RemoveMembersRequest& src) : + PlayFabRequestCommon(), + Group(src.Group), + Members(src.Members), + RoleId(src.RoleId) + {} + + ~RemoveMembersRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Group"], Group); + FromJsonUtilO(input["Members"], Members); + FromJsonUtilS(input["RoleId"], RoleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + Json::Value each_Members; ToJsonUtilO(Members, each_Members); output["Members"] = each_Members; + Json::Value each_RoleId; ToJsonUtilS(RoleId, each_RoleId); output["RoleId"] = each_RoleId; + return output; + } + }; + + struct SetEntityProfilePolicyRequest : public PlayFabRequestCommon + { + EntityKey Entity; + std::list Statements; + + SetEntityProfilePolicyRequest() : + PlayFabRequestCommon(), + Entity(), + Statements() + {} + + SetEntityProfilePolicyRequest(const SetEntityProfilePolicyRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity), + Statements(src.Statements) + {} + + ~SetEntityProfilePolicyRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilO(input["Statements"], Statements); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_Statements; ToJsonUtilO(Statements, each_Statements); output["Statements"] = each_Statements; + return output; + } + }; + + struct SetEntityProfilePolicyResponse : public PlayFabResultCommon + { + std::list Permissions; + + SetEntityProfilePolicyResponse() : + PlayFabResultCommon(), + Permissions() + {} + + SetEntityProfilePolicyResponse(const SetEntityProfilePolicyResponse& src) : + PlayFabResultCommon(), + Permissions(src.Permissions) + {} + + ~SetEntityProfilePolicyResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Permissions"], Permissions); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Permissions; ToJsonUtilO(Permissions, each_Permissions); output["Permissions"] = each_Permissions; + return output; + } + }; + + struct SetGlobalPolicyRequest : public PlayFabRequestCommon + { + std::list Permissions; + + SetGlobalPolicyRequest() : + PlayFabRequestCommon(), + Permissions() + {} + + SetGlobalPolicyRequest(const SetGlobalPolicyRequest& src) : + PlayFabRequestCommon(), + Permissions(src.Permissions) + {} + + ~SetGlobalPolicyRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Permissions"], Permissions); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Permissions; ToJsonUtilO(Permissions, each_Permissions); output["Permissions"] = each_Permissions; + return output; + } + }; + + struct SetGlobalPolicyResponse : public PlayFabResultCommon + { + + SetGlobalPolicyResponse() : + PlayFabResultCommon() + {} + + SetGlobalPolicyResponse(const SetGlobalPolicyResponse&) : + PlayFabResultCommon() + {} + + ~SetGlobalPolicyResponse() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SetObject : public PlayFabBaseModel + { + Json::Value DataObject; + Boxed DeleteObject; + std::string EscapedDataObject; + std::string ObjectName; + + SetObject() : + PlayFabBaseModel(), + DataObject(), + DeleteObject(), + EscapedDataObject(), + ObjectName() + {} + + SetObject(const SetObject& src) : + PlayFabBaseModel(), + DataObject(src.DataObject), + DeleteObject(src.DeleteObject), + EscapedDataObject(src.EscapedDataObject), + ObjectName(src.ObjectName) + {} + + ~SetObject() { } + + void FromJson(Json::Value& input) override + { + DataObject = input["DataObject"]; + FromJsonUtilP(input["DeleteObject"], DeleteObject); + FromJsonUtilS(input["EscapedDataObject"], EscapedDataObject); + FromJsonUtilS(input["ObjectName"], ObjectName); + } + + Json::Value ToJson() const override + { + Json::Value output; + output["DataObject"] = DataObject; + Json::Value each_DeleteObject; ToJsonUtilP(DeleteObject, each_DeleteObject); output["DeleteObject"] = each_DeleteObject; + Json::Value each_EscapedDataObject; ToJsonUtilS(EscapedDataObject, each_EscapedDataObject); output["EscapedDataObject"] = each_EscapedDataObject; + Json::Value each_ObjectName; ToJsonUtilS(ObjectName, each_ObjectName); output["ObjectName"] = each_ObjectName; + return output; + } + }; + + struct SetObjectInfo : public PlayFabBaseModel + { + std::string ObjectName; + std::string OperationReason; + Boxed SetResult; + + SetObjectInfo() : + PlayFabBaseModel(), + ObjectName(), + OperationReason(), + SetResult() + {} + + SetObjectInfo(const SetObjectInfo& src) : + PlayFabBaseModel(), + ObjectName(src.ObjectName), + OperationReason(src.OperationReason), + SetResult(src.SetResult) + {} + + ~SetObjectInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ObjectName"], ObjectName); + FromJsonUtilS(input["OperationReason"], OperationReason); + FromJsonUtilE(input["SetResult"], SetResult); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ObjectName; ToJsonUtilS(ObjectName, each_ObjectName); output["ObjectName"] = each_ObjectName; + Json::Value each_OperationReason; ToJsonUtilS(OperationReason, each_OperationReason); output["OperationReason"] = each_OperationReason; + Json::Value each_SetResult; ToJsonUtilE(SetResult, each_SetResult); output["SetResult"] = each_SetResult; + return output; + } + }; + + struct SetObjectsRequest : public PlayFabRequestCommon + { + EntityKey Entity; + Boxed ExpectedProfileVersion; + std::list Objects; + + SetObjectsRequest() : + PlayFabRequestCommon(), + Entity(), + ExpectedProfileVersion(), + Objects() + {} + + SetObjectsRequest(const SetObjectsRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity), + ExpectedProfileVersion(src.ExpectedProfileVersion), + Objects(src.Objects) + {} + + ~SetObjectsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilP(input["ExpectedProfileVersion"], ExpectedProfileVersion); + FromJsonUtilO(input["Objects"], Objects); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_ExpectedProfileVersion; ToJsonUtilP(ExpectedProfileVersion, each_ExpectedProfileVersion); output["ExpectedProfileVersion"] = each_ExpectedProfileVersion; + Json::Value each_Objects; ToJsonUtilO(Objects, each_Objects); output["Objects"] = each_Objects; + return output; + } + }; + + struct SetObjectsResponse : public PlayFabResultCommon + { + Int32 ProfileVersion; + std::list SetResults; + + SetObjectsResponse() : + PlayFabResultCommon(), + ProfileVersion(), + SetResults() + {} + + SetObjectsResponse(const SetObjectsResponse& src) : + PlayFabResultCommon(), + ProfileVersion(src.ProfileVersion), + SetResults(src.SetResults) + {} + + ~SetObjectsResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["ProfileVersion"], ProfileVersion); + FromJsonUtilO(input["SetResults"], SetResults); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ProfileVersion; ToJsonUtilP(ProfileVersion, each_ProfileVersion); output["ProfileVersion"] = each_ProfileVersion; + Json::Value each_SetResults; ToJsonUtilO(SetResults, each_SetResults); output["SetResults"] = each_SetResults; + return output; + } + }; + + struct UnblockEntityRequest : public PlayFabRequestCommon + { + EntityKey Entity; + EntityKey Group; + + UnblockEntityRequest() : + PlayFabRequestCommon(), + Entity(), + Group() + {} + + UnblockEntityRequest(const UnblockEntityRequest& src) : + PlayFabRequestCommon(), + Entity(src.Entity), + Group(src.Group) + {} + + ~UnblockEntityRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Entity"], Entity); + FromJsonUtilO(input["Group"], Group); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Entity; ToJsonUtilO(Entity, each_Entity); output["Entity"] = each_Entity; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + return output; + } + }; + + struct UpdateGroupRequest : public PlayFabRequestCommon + { + std::string AdminRoleId; + Boxed ExpectedProfileVersion; + EntityKey Group; + std::string GroupName; + std::string MemberRoleId; + + UpdateGroupRequest() : + PlayFabRequestCommon(), + AdminRoleId(), + ExpectedProfileVersion(), + Group(), + GroupName(), + MemberRoleId() + {} + + UpdateGroupRequest(const UpdateGroupRequest& src) : + PlayFabRequestCommon(), + AdminRoleId(src.AdminRoleId), + ExpectedProfileVersion(src.ExpectedProfileVersion), + Group(src.Group), + GroupName(src.GroupName), + MemberRoleId(src.MemberRoleId) + {} + + ~UpdateGroupRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AdminRoleId"], AdminRoleId); + FromJsonUtilP(input["ExpectedProfileVersion"], ExpectedProfileVersion); + FromJsonUtilO(input["Group"], Group); + FromJsonUtilS(input["GroupName"], GroupName); + FromJsonUtilS(input["MemberRoleId"], MemberRoleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AdminRoleId; ToJsonUtilS(AdminRoleId, each_AdminRoleId); output["AdminRoleId"] = each_AdminRoleId; + Json::Value each_ExpectedProfileVersion; ToJsonUtilP(ExpectedProfileVersion, each_ExpectedProfileVersion); output["ExpectedProfileVersion"] = each_ExpectedProfileVersion; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + Json::Value each_GroupName; ToJsonUtilS(GroupName, each_GroupName); output["GroupName"] = each_GroupName; + Json::Value each_MemberRoleId; ToJsonUtilS(MemberRoleId, each_MemberRoleId); output["MemberRoleId"] = each_MemberRoleId; + return output; + } + }; + + struct UpdateGroupResponse : public PlayFabResultCommon + { + std::string OperationReason; + Int32 ProfileVersion; + Boxed SetResult; + + UpdateGroupResponse() : + PlayFabResultCommon(), + OperationReason(), + ProfileVersion(), + SetResult() + {} + + UpdateGroupResponse(const UpdateGroupResponse& src) : + PlayFabResultCommon(), + OperationReason(src.OperationReason), + ProfileVersion(src.ProfileVersion), + SetResult(src.SetResult) + {} + + ~UpdateGroupResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["OperationReason"], OperationReason); + FromJsonUtilP(input["ProfileVersion"], ProfileVersion); + FromJsonUtilE(input["SetResult"], SetResult); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_OperationReason; ToJsonUtilS(OperationReason, each_OperationReason); output["OperationReason"] = each_OperationReason; + Json::Value each_ProfileVersion; ToJsonUtilP(ProfileVersion, each_ProfileVersion); output["ProfileVersion"] = each_ProfileVersion; + Json::Value each_SetResult; ToJsonUtilE(SetResult, each_SetResult); output["SetResult"] = each_SetResult; + return output; + } + }; + + struct UpdateGroupRoleRequest : public PlayFabRequestCommon + { + Boxed ExpectedProfileVersion; + EntityKey Group; + std::string RoleId; + std::string RoleName; + + UpdateGroupRoleRequest() : + PlayFabRequestCommon(), + ExpectedProfileVersion(), + Group(), + RoleId(), + RoleName() + {} + + UpdateGroupRoleRequest(const UpdateGroupRoleRequest& src) : + PlayFabRequestCommon(), + ExpectedProfileVersion(src.ExpectedProfileVersion), + Group(src.Group), + RoleId(src.RoleId), + RoleName(src.RoleName) + {} + + ~UpdateGroupRoleRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["ExpectedProfileVersion"], ExpectedProfileVersion); + FromJsonUtilO(input["Group"], Group); + FromJsonUtilS(input["RoleId"], RoleId); + FromJsonUtilS(input["RoleName"], RoleName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ExpectedProfileVersion; ToJsonUtilP(ExpectedProfileVersion, each_ExpectedProfileVersion); output["ExpectedProfileVersion"] = each_ExpectedProfileVersion; + Json::Value each_Group; ToJsonUtilO(Group, each_Group); output["Group"] = each_Group; + Json::Value each_RoleId; ToJsonUtilS(RoleId, each_RoleId); output["RoleId"] = each_RoleId; + Json::Value each_RoleName; ToJsonUtilS(RoleName, each_RoleName); output["RoleName"] = each_RoleName; + return output; + } + }; + + struct UpdateGroupRoleResponse : public PlayFabResultCommon + { + std::string OperationReason; + Int32 ProfileVersion; + Boxed SetResult; + + UpdateGroupRoleResponse() : + PlayFabResultCommon(), + OperationReason(), + ProfileVersion(), + SetResult() + {} + + UpdateGroupRoleResponse(const UpdateGroupRoleResponse& src) : + PlayFabResultCommon(), + OperationReason(src.OperationReason), + ProfileVersion(src.ProfileVersion), + SetResult(src.SetResult) + {} + + ~UpdateGroupRoleResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["OperationReason"], OperationReason); + FromJsonUtilP(input["ProfileVersion"], ProfileVersion); + FromJsonUtilE(input["SetResult"], SetResult); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_OperationReason; ToJsonUtilS(OperationReason, each_OperationReason); output["OperationReason"] = each_OperationReason; + Json::Value each_ProfileVersion; ToJsonUtilP(ProfileVersion, each_ProfileVersion); output["ProfileVersion"] = each_ProfileVersion; + Json::Value each_SetResult; ToJsonUtilE(SetResult, each_SetResult); output["SetResult"] = each_SetResult; + return output; + } + }; + + } +} + +#endif diff --git a/cppsdk/include/playfab/PlayFabError.h b/cppsdk/include/playfab/PlayFabError.h new file mode 100644 index 00000000..c5f74374 --- /dev/null +++ b/cppsdk/include/playfab/PlayFabError.h @@ -0,0 +1,401 @@ +#pragma once + +#include + +namespace PlayFab +{ + enum PlayFabErrorCode + { + PlayFabErrorHostnameNotFound = 1, + PlayFabErrorConnectionTimeout, + PlayFabErrorConnectionRefused, + PlayFabErrorSocketError, + PlayFabErrorSuccess = 0, + PlayFabErrorInvalidParams = 1000, + PlayFabErrorAccountNotFound = 1001, + PlayFabErrorAccountBanned = 1002, + PlayFabErrorInvalidUsernameOrPassword = 1003, + PlayFabErrorInvalidTitleId = 1004, + PlayFabErrorInvalidEmailAddress = 1005, + PlayFabErrorEmailAddressNotAvailable = 1006, + PlayFabErrorInvalidUsername = 1007, + PlayFabErrorInvalidPassword = 1008, + PlayFabErrorUsernameNotAvailable = 1009, + PlayFabErrorInvalidSteamTicket = 1010, + PlayFabErrorAccountAlreadyLinked = 1011, + PlayFabErrorLinkedAccountAlreadyClaimed = 1012, + PlayFabErrorInvalidFacebookToken = 1013, + PlayFabErrorAccountNotLinked = 1014, + PlayFabErrorFailedByPaymentProvider = 1015, + PlayFabErrorCouponCodeNotFound = 1016, + PlayFabErrorInvalidContainerItem = 1017, + PlayFabErrorContainerNotOwned = 1018, + PlayFabErrorKeyNotOwned = 1019, + PlayFabErrorInvalidItemIdInTable = 1020, + PlayFabErrorInvalidReceipt = 1021, + PlayFabErrorReceiptAlreadyUsed = 1022, + PlayFabErrorReceiptCancelled = 1023, + PlayFabErrorGameNotFound = 1024, + PlayFabErrorGameModeNotFound = 1025, + PlayFabErrorInvalidGoogleToken = 1026, + PlayFabErrorUserIsNotPartOfDeveloper = 1027, + PlayFabErrorInvalidTitleForDeveloper = 1028, + PlayFabErrorTitleNameConflicts = 1029, + PlayFabErrorUserisNotValid = 1030, + PlayFabErrorValueAlreadyExists = 1031, + PlayFabErrorBuildNotFound = 1032, + PlayFabErrorPlayerNotInGame = 1033, + PlayFabErrorInvalidTicket = 1034, + PlayFabErrorInvalidDeveloper = 1035, + PlayFabErrorInvalidOrderInfo = 1036, + PlayFabErrorRegistrationIncomplete = 1037, + PlayFabErrorInvalidPlatform = 1038, + PlayFabErrorUnknownError = 1039, + PlayFabErrorSteamApplicationNotOwned = 1040, + PlayFabErrorWrongSteamAccount = 1041, + PlayFabErrorTitleNotActivated = 1042, + PlayFabErrorRegistrationSessionNotFound = 1043, + PlayFabErrorNoSuchMod = 1044, + PlayFabErrorFileNotFound = 1045, + PlayFabErrorDuplicateEmail = 1046, + PlayFabErrorItemNotFound = 1047, + PlayFabErrorItemNotOwned = 1048, + PlayFabErrorItemNotRecycleable = 1049, + PlayFabErrorItemNotAffordable = 1050, + PlayFabErrorInvalidVirtualCurrency = 1051, + PlayFabErrorWrongVirtualCurrency = 1052, + PlayFabErrorWrongPrice = 1053, + PlayFabErrorNonPositiveValue = 1054, + PlayFabErrorInvalidRegion = 1055, + PlayFabErrorRegionAtCapacity = 1056, + PlayFabErrorServerFailedToStart = 1057, + PlayFabErrorNameNotAvailable = 1058, + PlayFabErrorInsufficientFunds = 1059, + PlayFabErrorInvalidDeviceID = 1060, + PlayFabErrorInvalidPushNotificationToken = 1061, + PlayFabErrorNoRemainingUses = 1062, + PlayFabErrorInvalidPaymentProvider = 1063, + PlayFabErrorPurchaseInitializationFailure = 1064, + PlayFabErrorDuplicateUsername = 1065, + PlayFabErrorInvalidBuyerInfo = 1066, + PlayFabErrorNoGameModeParamsSet = 1067, + PlayFabErrorBodyTooLarge = 1068, + PlayFabErrorReservedWordInBody = 1069, + PlayFabErrorInvalidTypeInBody = 1070, + PlayFabErrorInvalidRequest = 1071, + PlayFabErrorReservedEventName = 1072, + PlayFabErrorInvalidUserStatistics = 1073, + PlayFabErrorNotAuthenticated = 1074, + PlayFabErrorStreamAlreadyExists = 1075, + PlayFabErrorErrorCreatingStream = 1076, + PlayFabErrorStreamNotFound = 1077, + PlayFabErrorInvalidAccount = 1078, + PlayFabErrorPurchaseDoesNotExist = 1080, + PlayFabErrorInvalidPurchaseTransactionStatus = 1081, + PlayFabErrorAPINotEnabledForGameClientAccess = 1082, + PlayFabErrorNoPushNotificationARNForTitle = 1083, + PlayFabErrorBuildAlreadyExists = 1084, + PlayFabErrorBuildPackageDoesNotExist = 1085, + PlayFabErrorCustomAnalyticsEventsNotEnabledForTitle = 1087, + PlayFabErrorInvalidSharedGroupId = 1088, + PlayFabErrorNotAuthorized = 1089, + PlayFabErrorMissingTitleGoogleProperties = 1090, + PlayFabErrorInvalidItemProperties = 1091, + PlayFabErrorInvalidPSNAuthCode = 1092, + PlayFabErrorInvalidItemId = 1093, + PlayFabErrorPushNotEnabledForAccount = 1094, + PlayFabErrorPushServiceError = 1095, + PlayFabErrorReceiptDoesNotContainInAppItems = 1096, + PlayFabErrorReceiptContainsMultipleInAppItems = 1097, + PlayFabErrorInvalidBundleID = 1098, + PlayFabErrorJavascriptException = 1099, + PlayFabErrorInvalidSessionTicket = 1100, + PlayFabErrorUnableToConnectToDatabase = 1101, + PlayFabErrorInternalServerError = 1110, + PlayFabErrorInvalidReportDate = 1111, + PlayFabErrorReportNotAvailable = 1112, + PlayFabErrorDatabaseThroughputExceeded = 1113, + PlayFabErrorInvalidGameTicket = 1115, + PlayFabErrorExpiredGameTicket = 1116, + PlayFabErrorGameTicketDoesNotMatchLobby = 1117, + PlayFabErrorLinkedDeviceAlreadyClaimed = 1118, + PlayFabErrorDeviceAlreadyLinked = 1119, + PlayFabErrorDeviceNotLinked = 1120, + PlayFabErrorPartialFailure = 1121, + PlayFabErrorPublisherNotSet = 1122, + PlayFabErrorServiceUnavailable = 1123, + PlayFabErrorVersionNotFound = 1124, + PlayFabErrorRevisionNotFound = 1125, + PlayFabErrorInvalidPublisherId = 1126, + PlayFabErrorDownstreamServiceUnavailable = 1127, + PlayFabErrorAPINotIncludedInTitleUsageTier = 1128, + PlayFabErrorDAULimitExceeded = 1129, + PlayFabErrorAPIRequestLimitExceeded = 1130, + PlayFabErrorInvalidAPIEndpoint = 1131, + PlayFabErrorBuildNotAvailable = 1132, + PlayFabErrorConcurrentEditError = 1133, + PlayFabErrorContentNotFound = 1134, + PlayFabErrorCharacterNotFound = 1135, + PlayFabErrorCloudScriptNotFound = 1136, + PlayFabErrorContentQuotaExceeded = 1137, + PlayFabErrorInvalidCharacterStatistics = 1138, + PlayFabErrorPhotonNotEnabledForTitle = 1139, + PlayFabErrorPhotonApplicationNotFound = 1140, + PlayFabErrorPhotonApplicationNotAssociatedWithTitle = 1141, + PlayFabErrorInvalidEmailOrPassword = 1142, + PlayFabErrorFacebookAPIError = 1143, + PlayFabErrorInvalidContentType = 1144, + PlayFabErrorKeyLengthExceeded = 1145, + PlayFabErrorDataLengthExceeded = 1146, + PlayFabErrorTooManyKeys = 1147, + PlayFabErrorFreeTierCannotHaveVirtualCurrency = 1148, + PlayFabErrorMissingAmazonSharedKey = 1149, + PlayFabErrorAmazonValidationError = 1150, + PlayFabErrorInvalidPSNIssuerId = 1151, + PlayFabErrorPSNInaccessible = 1152, + PlayFabErrorExpiredAuthToken = 1153, + PlayFabErrorFailedToGetEntitlements = 1154, + PlayFabErrorFailedToConsumeEntitlement = 1155, + PlayFabErrorTradeAcceptingUserNotAllowed = 1156, + PlayFabErrorTradeInventoryItemIsAssignedToCharacter = 1157, + PlayFabErrorTradeInventoryItemIsBundle = 1158, + PlayFabErrorTradeStatusNotValidForCancelling = 1159, + PlayFabErrorTradeStatusNotValidForAccepting = 1160, + PlayFabErrorTradeDoesNotExist = 1161, + PlayFabErrorTradeCancelled = 1162, + PlayFabErrorTradeAlreadyFilled = 1163, + PlayFabErrorTradeWaitForStatusTimeout = 1164, + PlayFabErrorTradeInventoryItemExpired = 1165, + PlayFabErrorTradeMissingOfferedAndAcceptedItems = 1166, + PlayFabErrorTradeAcceptedItemIsBundle = 1167, + PlayFabErrorTradeAcceptedItemIsStackable = 1168, + PlayFabErrorTradeInventoryItemInvalidStatus = 1169, + PlayFabErrorTradeAcceptedCatalogItemInvalid = 1170, + PlayFabErrorTradeAllowedUsersInvalid = 1171, + PlayFabErrorTradeInventoryItemDoesNotExist = 1172, + PlayFabErrorTradeInventoryItemIsConsumed = 1173, + PlayFabErrorTradeInventoryItemIsStackable = 1174, + PlayFabErrorTradeAcceptedItemsMismatch = 1175, + PlayFabErrorInvalidKongregateToken = 1176, + PlayFabErrorFeatureNotConfiguredForTitle = 1177, + PlayFabErrorNoMatchingCatalogItemForReceipt = 1178, + PlayFabErrorInvalidCurrencyCode = 1179, + PlayFabErrorNoRealMoneyPriceForCatalogItem = 1180, + PlayFabErrorTradeInventoryItemIsNotTradable = 1181, + PlayFabErrorTradeAcceptedCatalogItemIsNotTradable = 1182, + PlayFabErrorUsersAlreadyFriends = 1183, + PlayFabErrorLinkedIdentifierAlreadyClaimed = 1184, + PlayFabErrorCustomIdNotLinked = 1185, + PlayFabErrorTotalDataSizeExceeded = 1186, + PlayFabErrorDeleteKeyConflict = 1187, + PlayFabErrorInvalidXboxLiveToken = 1188, + PlayFabErrorExpiredXboxLiveToken = 1189, + PlayFabErrorResettableStatisticVersionRequired = 1190, + PlayFabErrorNotAuthorizedByTitle = 1191, + PlayFabErrorNoPartnerEnabled = 1192, + PlayFabErrorInvalidPartnerResponse = 1193, + PlayFabErrorAPINotEnabledForGameServerAccess = 1194, + PlayFabErrorStatisticNotFound = 1195, + PlayFabErrorStatisticNameConflict = 1196, + PlayFabErrorStatisticVersionClosedForWrites = 1197, + PlayFabErrorStatisticVersionInvalid = 1198, + PlayFabErrorAPIClientRequestRateLimitExceeded = 1199, + PlayFabErrorInvalidJSONContent = 1200, + PlayFabErrorInvalidDropTable = 1201, + PlayFabErrorStatisticVersionAlreadyIncrementedForScheduledInterval = 1202, + PlayFabErrorStatisticCountLimitExceeded = 1203, + PlayFabErrorStatisticVersionIncrementRateExceeded = 1204, + PlayFabErrorContainerKeyInvalid = 1205, + PlayFabErrorCloudScriptExecutionTimeLimitExceeded = 1206, + PlayFabErrorNoWritePermissionsForEvent = 1207, + PlayFabErrorCloudScriptFunctionArgumentSizeExceeded = 1208, + PlayFabErrorCloudScriptAPIRequestCountExceeded = 1209, + PlayFabErrorCloudScriptAPIRequestError = 1210, + PlayFabErrorCloudScriptHTTPRequestError = 1211, + PlayFabErrorInsufficientGuildRole = 1212, + PlayFabErrorGuildNotFound = 1213, + PlayFabErrorOverLimit = 1214, + PlayFabErrorEventNotFound = 1215, + PlayFabErrorInvalidEventField = 1216, + PlayFabErrorInvalidEventName = 1217, + PlayFabErrorCatalogNotConfigured = 1218, + PlayFabErrorOperationNotSupportedForPlatform = 1219, + PlayFabErrorSegmentNotFound = 1220, + PlayFabErrorStoreNotFound = 1221, + PlayFabErrorInvalidStatisticName = 1222, + PlayFabErrorTitleNotQualifiedForLimit = 1223, + PlayFabErrorInvalidServiceLimitLevel = 1224, + PlayFabErrorServiceLimitLevelInTransition = 1225, + PlayFabErrorCouponAlreadyRedeemed = 1226, + PlayFabErrorGameServerBuildSizeLimitExceeded = 1227, + PlayFabErrorGameServerBuildCountLimitExceeded = 1228, + PlayFabErrorVirtualCurrencyCountLimitExceeded = 1229, + PlayFabErrorVirtualCurrencyCodeExists = 1230, + PlayFabErrorTitleNewsItemCountLimitExceeded = 1231, + PlayFabErrorInvalidTwitchToken = 1232, + PlayFabErrorTwitchResponseError = 1233, + PlayFabErrorProfaneDisplayName = 1234, + PlayFabErrorUserAlreadyAdded = 1235, + PlayFabErrorInvalidVirtualCurrencyCode = 1236, + PlayFabErrorVirtualCurrencyCannotBeDeleted = 1237, + PlayFabErrorIdentifierAlreadyClaimed = 1238, + PlayFabErrorIdentifierNotLinked = 1239, + PlayFabErrorInvalidContinuationToken = 1240, + PlayFabErrorExpiredContinuationToken = 1241, + PlayFabErrorInvalidSegment = 1242, + PlayFabErrorInvalidSessionId = 1243, + PlayFabErrorSessionLogNotFound = 1244, + PlayFabErrorInvalidSearchTerm = 1245, + PlayFabErrorTwoFactorAuthenticationTokenRequired = 1246, + PlayFabErrorGameServerHostCountLimitExceeded = 1247, + PlayFabErrorPlayerTagCountLimitExceeded = 1248, + PlayFabErrorRequestAlreadyRunning = 1249, + PlayFabErrorActionGroupNotFound = 1250, + PlayFabErrorMaximumSegmentBulkActionJobsRunning = 1251, + PlayFabErrorNoActionsOnPlayersInSegmentJob = 1252, + PlayFabErrorDuplicateStatisticName = 1253, + PlayFabErrorScheduledTaskNameConflict = 1254, + PlayFabErrorScheduledTaskCreateConflict = 1255, + PlayFabErrorInvalidScheduledTaskName = 1256, + PlayFabErrorInvalidTaskSchedule = 1257, + PlayFabErrorSteamNotEnabledForTitle = 1258, + PlayFabErrorLimitNotAnUpgradeOption = 1259, + PlayFabErrorNoSecretKeyEnabledForCloudScript = 1260, + PlayFabErrorTaskNotFound = 1261, + PlayFabErrorTaskInstanceNotFound = 1262, + PlayFabErrorInvalidIdentityProviderId = 1263, + PlayFabErrorMisconfiguredIdentityProvider = 1264, + PlayFabErrorInvalidScheduledTaskType = 1265, + PlayFabErrorBillingInformationRequired = 1266, + PlayFabErrorLimitedEditionItemUnavailable = 1267, + PlayFabErrorInvalidAdPlacementAndReward = 1268, + PlayFabErrorAllAdPlacementViewsAlreadyConsumed = 1269, + PlayFabErrorGoogleOAuthNotConfiguredForTitle = 1270, + PlayFabErrorGoogleOAuthError = 1271, + PlayFabErrorUserNotFriend = 1272, + PlayFabErrorInvalidSignature = 1273, + PlayFabErrorInvalidPublicKey = 1274, + PlayFabErrorGoogleOAuthNoIdTokenIncludedInResponse = 1275, + PlayFabErrorStatisticUpdateInProgress = 1276, + PlayFabErrorLeaderboardVersionNotAvailable = 1277, + PlayFabErrorStatisticAlreadyHasPrizeTable = 1279, + PlayFabErrorPrizeTableHasOverlappingRanks = 1280, + PlayFabErrorPrizeTableHasMissingRanks = 1281, + PlayFabErrorPrizeTableRankStartsAtZero = 1282, + PlayFabErrorInvalidStatistic = 1283, + PlayFabErrorExpressionParseFailure = 1284, + PlayFabErrorExpressionInvokeFailure = 1285, + PlayFabErrorExpressionTooLong = 1286, + PlayFabErrorDataUpdateRateExceeded = 1287, + PlayFabErrorRestrictedEmailDomain = 1288, + PlayFabErrorEncryptionKeyDisabled = 1289, + PlayFabErrorEncryptionKeyMissing = 1290, + PlayFabErrorEncryptionKeyBroken = 1291, + PlayFabErrorNoSharedSecretKeyConfigured = 1292, + PlayFabErrorSecretKeyNotFound = 1293, + PlayFabErrorPlayerSecretAlreadyConfigured = 1294, + PlayFabErrorAPIRequestsDisabledForTitle = 1295, + PlayFabErrorInvalidSharedSecretKey = 1296, + PlayFabErrorPrizeTableHasNoRanks = 1297, + PlayFabErrorProfileDoesNotExist = 1298, + PlayFabErrorContentS3OriginBucketNotConfigured = 1299, + PlayFabErrorInvalidEnvironmentForReceipt = 1300, + PlayFabErrorEncryptedRequestNotAllowed = 1301, + PlayFabErrorSignedRequestNotAllowed = 1302, + PlayFabErrorRequestViewConstraintParamsNotAllowed = 1303, + PlayFabErrorBadPartnerConfiguration = 1304, + PlayFabErrorXboxBPCertificateFailure = 1305, + PlayFabErrorXboxXASSExchangeFailure = 1306, + PlayFabErrorInvalidEntityId = 1307, + PlayFabErrorStatisticValueAggregationOverflow = 1308, + PlayFabErrorEmailMessageFromAddressIsMissing = 1309, + PlayFabErrorEmailMessageToAddressIsMissing = 1310, + PlayFabErrorSmtpServerAuthenticationError = 1311, + PlayFabErrorSmtpServerLimitExceeded = 1312, + PlayFabErrorSmtpServerInsufficientStorage = 1313, + PlayFabErrorSmtpServerCommunicationError = 1314, + PlayFabErrorSmtpServerGeneralFailure = 1315, + PlayFabErrorEmailClientTimeout = 1316, + PlayFabErrorEmailClientCanceledTask = 1317, + PlayFabErrorEmailTemplateMissing = 1318, + PlayFabErrorInvalidHostForTitleId = 1319, + PlayFabErrorEmailConfirmationTokenDoesNotExist = 1320, + PlayFabErrorEmailConfirmationTokenExpired = 1321, + PlayFabErrorAccountDeleted = 1322, + PlayFabErrorPlayerSecretNotConfigured = 1323, + PlayFabErrorInvalidSignatureTime = 1324, + PlayFabErrorNoContactEmailAddressFound = 1325, + PlayFabErrorInvalidAuthToken = 1326, + PlayFabErrorAuthTokenDoesNotExist = 1327, + PlayFabErrorAuthTokenExpired = 1328, + PlayFabErrorAuthTokenAlreadyUsedToResetPassword = 1329, + PlayFabErrorMembershipNameTooLong = 1330, + PlayFabErrorMembershipNotFound = 1331, + PlayFabErrorGoogleServiceAccountInvalid = 1332, + PlayFabErrorGoogleServiceAccountParseFailure = 1333, + PlayFabErrorEntityTokenMissing = 1334, + PlayFabErrorEntityTokenInvalid = 1335, + PlayFabErrorEntityTokenExpired = 1336, + PlayFabErrorEntityTokenRevoked = 1337, + PlayFabErrorInvalidProductForSubscription = 1338, + PlayFabErrorXboxInaccessible = 1339, + PlayFabErrorSubscriptionAlreadyTaken = 1340, + PlayFabErrorSmtpAddonNotEnabled = 1341, + PlayFabErrorAPIConcurrentRequestLimitExceeded = 1342, + PlayFabErrorXboxRejectedXSTSExchangeRequest = 1343, + PlayFabErrorVariableNotDefined = 1344, + PlayFabErrorTemplateVersionNotDefined = 1345, + PlayFabErrorFileTooLarge = 1346, + PlayFabErrorTitleDeleted = 1347, + PlayFabErrorTitleContainsUserAccounts = 1348, + PlayFabErrorTitleDeletionPlayerCleanupFailure = 1349, + PlayFabErrorEntityFileOperationPending = 1350, + PlayFabErrorNoEntityFileOperationPending = 1351, + PlayFabErrorEntityProfileVersionMismatch = 1352, + PlayFabErrorTemplateVersionTooOld = 1353, + PlayFabErrorMembershipDefinitionInUse = 1354, + PlayFabErrorPaymentPageNotConfigured = 1355, + PlayFabErrorFailedLoginAttemptRateLimitExceeded = 1356, + PlayFabErrorEntityBlockedByGroup = 1357, + PlayFabErrorRoleDoesNotExist = 1358, + PlayFabErrorEntityIsAlreadyMember = 1359, + PlayFabErrorDuplicateRoleId = 1360, + PlayFabErrorGroupInvitationNotFound = 1361, + PlayFabErrorGroupApplicationNotFound = 1362, + PlayFabErrorOutstandingInvitationAcceptedInstead = 1363, + PlayFabErrorOutstandingApplicationAcceptedInstead = 1364, + PlayFabErrorRoleIsGroupDefaultMember = 1365, + PlayFabErrorRoleIsGroupAdmin = 1366, + PlayFabErrorRoleNameNotAvailable = 1367, + PlayFabErrorGroupNameNotAvailable = 1368, + PlayFabErrorEmailReportAlreadySent = 1369, + PlayFabErrorEmailReportRecipientBlacklisted = 1370, + PlayFabErrorEventNamespaceNotAllowed = 1371, + PlayFabErrorEventEntityNotAllowed = 1372, + }; + + /// + /// The wrapper around all PlayFab responses, and all fields needed in the case of an error + /// + struct PlayFabError : public PlayFabBaseModel + { + // Serialized fields + int HttpCode; + std::string HttpStatus; + PlayFabErrorCode ErrorCode; + std::string ErrorName; + std::string ErrorMessage; + Json::Value ErrorDetails; + Json::Value Data; + // Non-serialized fields + std::string UrlPath; + Json::Value Request; + + void FromJson(Json::Value& input) override; + Json::Value ToJson() const override; + + std::string GenerateReport() const; + }; + + typedef std::function ErrorCallback; +} diff --git a/cppsdk/include/playfab/PlayFabHttp.h b/cppsdk/include/playfab/PlayFabHttp.h new file mode 100644 index 00000000..a19c5e95 --- /dev/null +++ b/cppsdk/include/playfab/PlayFabHttp.h @@ -0,0 +1,85 @@ +#pragma once + +#include + +#include +#include +#include +#include +#include + +namespace PlayFab +{ + struct CallRequestContainer; + typedef void(*RequestCompleteCallback)(CallRequestContainer& reqContainer); + typedef std::shared_ptr SharedVoidPointer; + + /// + /// Internal PlayFabHttp container for each api call + /// + struct CallRequestContainer + { + // I own these objects, I must always destroy them + CURL* curlHandle; + curl_slist* curlHttpHeaders; + // I never own this, I can never destroy it + void* customData; + + bool finished; + std::string authKey; + std::string authValue; + std::string responseString; + Json::Value responseJson = Json::Value::null; + PlayFabError errorWrapper; + RequestCompleteCallback internalCallback; + SharedVoidPointer successCallback; + ErrorCallback errorCallback; + + CallRequestContainer(); + ~CallRequestContainer(); + }; + + /// + /// Provides an interface and a static instance for https implementations + /// + class IPlayFabHttp + { + public: + static IPlayFabHttp& Get(); + + virtual ~IPlayFabHttp(); + + virtual void AddRequest(const std::string& urlPath, const std::string& authKey, const std::string& authValue, const Json::Value& requestBody, RequestCompleteCallback internalCallback, SharedVoidPointer successCallback, ErrorCallback errorCallback, void* customData) = 0; + virtual size_t Update() = 0; + protected: + static std::unique_ptr httpInstance; + }; + + /// + /// PlayFabHttp is the default https implementation for Win/C++, using cpprestsdk + /// + class PlayFabHttp : public IPlayFabHttp + { + public: + static void MakeInstance(); + ~PlayFabHttp() override; + + void AddRequest(const std::string& urlPath, const std::string& authKey, const std::string& authValue, const Json::Value& requestBody, RequestCompleteCallback internalCallback, SharedVoidPointer successCallback, ErrorCallback errorCallback, void* customData) override; + size_t Update() override; + private: + PlayFabHttp(); // Private constructor, to enforce singleton instance + PlayFabHttp(const PlayFabHttp& other); // Private copy-constructor, to enforce singleton instance + + static size_t CurlReceiveData(char* buffer, size_t blockSize, size_t blockCount, void* userData); + static void ExecuteRequest(CallRequestContainer& reqContainer); + void WorkerThread(); + static void HandleCallback(CallRequestContainer& reqContainer); + static void HandleResults(CallRequestContainer& reqContainer); + + std::thread pfHttpWorkerThread; + std::mutex httpRequestMutex; + bool threadRunning; + std::vector pendingRequests; + std::vector pendingResults; + }; +} diff --git a/cppsdk/include/playfab/PlayFabMatchmakerApi.h b/cppsdk/include/playfab/PlayFabMatchmakerApi.h new file mode 100644 index 00000000..5f0c8050 --- /dev/null +++ b/cppsdk/include/playfab/PlayFabMatchmakerApi.h @@ -0,0 +1,41 @@ +#pragma once + +#ifdef ENABLE_PLAYFABSERVER_API + +#include +#include + +namespace PlayFab +{ + /// + /// Main interface for PlayFab Sdk, specifically all Matchmaker APIs + /// + class PlayFabMatchmakerAPI + { + public: + static size_t Update(); + static void ForgetAllCredentials(); + + + // ------------ Generated API calls + static void AuthUser(MatchmakerModels::AuthUserRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void PlayerJoined(MatchmakerModels::PlayerJoinedRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void PlayerLeft(MatchmakerModels::PlayerLeftRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void StartGame(MatchmakerModels::StartGameRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UserInfo(MatchmakerModels::UserInfoRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + + private: + PlayFabMatchmakerAPI(); // Private constructor, static class should never have an instance + PlayFabMatchmakerAPI(const PlayFabMatchmakerAPI& other); // Private copy-constructor, static class should never have an instance + + // ------------ Generated result handlers + static void OnAuthUserResult(CallRequestContainer& request); + static void OnPlayerJoinedResult(CallRequestContainer& request); + static void OnPlayerLeftResult(CallRequestContainer& request); + static void OnStartGameResult(CallRequestContainer& request); + static void OnUserInfoResult(CallRequestContainer& request); + + }; +} + +#endif diff --git a/cppsdk/include/playfab/PlayFabMatchmakerDataModels.h b/cppsdk/include/playfab/PlayFabMatchmakerDataModels.h new file mode 100644 index 00000000..6c070b9a --- /dev/null +++ b/cppsdk/include/playfab/PlayFabMatchmakerDataModels.h @@ -0,0 +1,705 @@ +#pragma once + +#ifdef ENABLE_PLAYFABSERVER_API + +#include +#include + +namespace PlayFab +{ + namespace MatchmakerModels + { + // Matchmaker Enums + enum Region + { + RegionUSCentral, + RegionUSEast, + RegionEUWest, + RegionSingapore, + RegionJapan, + RegionBrazil, + RegionAustralia + }; + + inline void ToJsonEnum(const Region input, Json::Value& output) + { + if (input == RegionUSCentral) output = Json::Value("USCentral"); + if (input == RegionUSEast) output = Json::Value("USEast"); + if (input == RegionEUWest) output = Json::Value("EUWest"); + if (input == RegionSingapore) output = Json::Value("Singapore"); + if (input == RegionJapan) output = Json::Value("Japan"); + if (input == RegionBrazil) output = Json::Value("Brazil"); + if (input == RegionAustralia) output = Json::Value("Australia"); + } + inline void FromJsonEnum(const Json::Value& input, Region& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "USCentral") output = RegionUSCentral; + if (inputStr == "USEast") output = RegionUSEast; + if (inputStr == "EUWest") output = RegionEUWest; + if (inputStr == "Singapore") output = RegionSingapore; + if (inputStr == "Japan") output = RegionJapan; + if (inputStr == "Brazil") output = RegionBrazil; + if (inputStr == "Australia") output = RegionAustralia; + } + + // Matchmaker Classes + struct AuthUserRequest : public PlayFabRequestCommon + { + std::string AuthorizationTicket; + + AuthUserRequest() : + PlayFabRequestCommon(), + AuthorizationTicket() + {} + + AuthUserRequest(const AuthUserRequest& src) : + PlayFabRequestCommon(), + AuthorizationTicket(src.AuthorizationTicket) + {} + + ~AuthUserRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AuthorizationTicket"], AuthorizationTicket); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AuthorizationTicket; ToJsonUtilS(AuthorizationTicket, each_AuthorizationTicket); output["AuthorizationTicket"] = each_AuthorizationTicket; + return output; + } + }; + + struct AuthUserResponse : public PlayFabResultCommon + { + bool Authorized; + std::string PlayFabId; + + AuthUserResponse() : + PlayFabResultCommon(), + Authorized(), + PlayFabId() + {} + + AuthUserResponse(const AuthUserResponse& src) : + PlayFabResultCommon(), + Authorized(src.Authorized), + PlayFabId(src.PlayFabId) + {} + + ~AuthUserResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Authorized"], Authorized); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Authorized; ToJsonUtilP(Authorized, each_Authorized); output["Authorized"] = each_Authorized; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct DeregisterGameRequest : public PlayFabRequestCommon + { + std::string LobbyId; + + DeregisterGameRequest() : + PlayFabRequestCommon(), + LobbyId() + {} + + DeregisterGameRequest(const DeregisterGameRequest& src) : + PlayFabRequestCommon(), + LobbyId(src.LobbyId) + {} + + ~DeregisterGameRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["LobbyId"], LobbyId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LobbyId; ToJsonUtilS(LobbyId, each_LobbyId); output["LobbyId"] = each_LobbyId; + return output; + } + }; + + struct DeregisterGameResponse : public PlayFabResultCommon + { + + DeregisterGameResponse() : + PlayFabResultCommon() + {} + + DeregisterGameResponse(const DeregisterGameResponse&) : + PlayFabResultCommon() + {} + + ~DeregisterGameResponse() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct ItemInstance : public PlayFabBaseModel + { + std::string Annotation; + std::list BundleContents; + std::string BundleParent; + std::string CatalogVersion; + std::map CustomData; + std::string DisplayName; + Boxed Expiration; + std::string ItemClass; + std::string ItemId; + std::string ItemInstanceId; + Boxed PurchaseDate; + Boxed RemainingUses; + std::string UnitCurrency; + Uint32 UnitPrice; + Boxed UsesIncrementedBy; + + ItemInstance() : + PlayFabBaseModel(), + Annotation(), + BundleContents(), + BundleParent(), + CatalogVersion(), + CustomData(), + DisplayName(), + Expiration(), + ItemClass(), + ItemId(), + ItemInstanceId(), + PurchaseDate(), + RemainingUses(), + UnitCurrency(), + UnitPrice(), + UsesIncrementedBy() + {} + + ItemInstance(const ItemInstance& src) : + PlayFabBaseModel(), + Annotation(src.Annotation), + BundleContents(src.BundleContents), + BundleParent(src.BundleParent), + CatalogVersion(src.CatalogVersion), + CustomData(src.CustomData), + DisplayName(src.DisplayName), + Expiration(src.Expiration), + ItemClass(src.ItemClass), + ItemId(src.ItemId), + ItemInstanceId(src.ItemInstanceId), + PurchaseDate(src.PurchaseDate), + RemainingUses(src.RemainingUses), + UnitCurrency(src.UnitCurrency), + UnitPrice(src.UnitPrice), + UsesIncrementedBy(src.UsesIncrementedBy) + {} + + ~ItemInstance() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Annotation"], Annotation); + FromJsonUtilS(input["BundleContents"], BundleContents); + FromJsonUtilS(input["BundleParent"], BundleParent); + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CustomData"], CustomData); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilT(input["Expiration"], Expiration); + FromJsonUtilS(input["ItemClass"], ItemClass); + FromJsonUtilS(input["ItemId"], ItemId); + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilT(input["PurchaseDate"], PurchaseDate); + FromJsonUtilP(input["RemainingUses"], RemainingUses); + FromJsonUtilS(input["UnitCurrency"], UnitCurrency); + FromJsonUtilP(input["UnitPrice"], UnitPrice); + FromJsonUtilP(input["UsesIncrementedBy"], UsesIncrementedBy); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Annotation; ToJsonUtilS(Annotation, each_Annotation); output["Annotation"] = each_Annotation; + Json::Value each_BundleContents; ToJsonUtilS(BundleContents, each_BundleContents); output["BundleContents"] = each_BundleContents; + Json::Value each_BundleParent; ToJsonUtilS(BundleParent, each_BundleParent); output["BundleParent"] = each_BundleParent; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CustomData; ToJsonUtilS(CustomData, each_CustomData); output["CustomData"] = each_CustomData; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_Expiration; ToJsonUtilT(Expiration, each_Expiration); output["Expiration"] = each_Expiration; + Json::Value each_ItemClass; ToJsonUtilS(ItemClass, each_ItemClass); output["ItemClass"] = each_ItemClass; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_PurchaseDate; ToJsonUtilT(PurchaseDate, each_PurchaseDate); output["PurchaseDate"] = each_PurchaseDate; + Json::Value each_RemainingUses; ToJsonUtilP(RemainingUses, each_RemainingUses); output["RemainingUses"] = each_RemainingUses; + Json::Value each_UnitCurrency; ToJsonUtilS(UnitCurrency, each_UnitCurrency); output["UnitCurrency"] = each_UnitCurrency; + Json::Value each_UnitPrice; ToJsonUtilP(UnitPrice, each_UnitPrice); output["UnitPrice"] = each_UnitPrice; + Json::Value each_UsesIncrementedBy; ToJsonUtilP(UsesIncrementedBy, each_UsesIncrementedBy); output["UsesIncrementedBy"] = each_UsesIncrementedBy; + return output; + } + }; + + struct PlayerJoinedRequest : public PlayFabRequestCommon + { + std::string LobbyId; + std::string PlayFabId; + + PlayerJoinedRequest() : + PlayFabRequestCommon(), + LobbyId(), + PlayFabId() + {} + + PlayerJoinedRequest(const PlayerJoinedRequest& src) : + PlayFabRequestCommon(), + LobbyId(src.LobbyId), + PlayFabId(src.PlayFabId) + {} + + ~PlayerJoinedRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["LobbyId"], LobbyId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LobbyId; ToJsonUtilS(LobbyId, each_LobbyId); output["LobbyId"] = each_LobbyId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct PlayerJoinedResponse : public PlayFabResultCommon + { + + PlayerJoinedResponse() : + PlayFabResultCommon() + {} + + PlayerJoinedResponse(const PlayerJoinedResponse&) : + PlayFabResultCommon() + {} + + ~PlayerJoinedResponse() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct PlayerLeftRequest : public PlayFabRequestCommon + { + std::string LobbyId; + std::string PlayFabId; + + PlayerLeftRequest() : + PlayFabRequestCommon(), + LobbyId(), + PlayFabId() + {} + + PlayerLeftRequest(const PlayerLeftRequest& src) : + PlayFabRequestCommon(), + LobbyId(src.LobbyId), + PlayFabId(src.PlayFabId) + {} + + ~PlayerLeftRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["LobbyId"], LobbyId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LobbyId; ToJsonUtilS(LobbyId, each_LobbyId); output["LobbyId"] = each_LobbyId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct PlayerLeftResponse : public PlayFabResultCommon + { + + PlayerLeftResponse() : + PlayFabResultCommon() + {} + + PlayerLeftResponse(const PlayerLeftResponse&) : + PlayFabResultCommon() + {} + + ~PlayerLeftResponse() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct RegisterGameRequest : public PlayFabRequestCommon + { + std::string Build; + std::string GameMode; + std::string LobbyId; + Region pfRegion; + std::string ServerHost; + std::string ServerIPV6Address; + std::string ServerPort; + std::map Tags; + + RegisterGameRequest() : + PlayFabRequestCommon(), + Build(), + GameMode(), + LobbyId(), + pfRegion(), + ServerHost(), + ServerIPV6Address(), + ServerPort(), + Tags() + {} + + RegisterGameRequest(const RegisterGameRequest& src) : + PlayFabRequestCommon(), + Build(src.Build), + GameMode(src.GameMode), + LobbyId(src.LobbyId), + pfRegion(src.pfRegion), + ServerHost(src.ServerHost), + ServerIPV6Address(src.ServerIPV6Address), + ServerPort(src.ServerPort), + Tags(src.Tags) + {} + + ~RegisterGameRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Build"], Build); + FromJsonUtilS(input["GameMode"], GameMode); + FromJsonUtilS(input["LobbyId"], LobbyId); + FromJsonEnum(input["pfRegion"], pfRegion); + FromJsonUtilS(input["ServerHost"], ServerHost); + FromJsonUtilS(input["ServerIPV6Address"], ServerIPV6Address); + FromJsonUtilS(input["ServerPort"], ServerPort); + FromJsonUtilS(input["Tags"], Tags); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Build; ToJsonUtilS(Build, each_Build); output["Build"] = each_Build; + Json::Value each_GameMode; ToJsonUtilS(GameMode, each_GameMode); output["GameMode"] = each_GameMode; + Json::Value each_LobbyId; ToJsonUtilS(LobbyId, each_LobbyId); output["LobbyId"] = each_LobbyId; + Json::Value each_pfRegion; ToJsonEnum(pfRegion, each_pfRegion); output["Region"] = each_pfRegion; + Json::Value each_ServerHost; ToJsonUtilS(ServerHost, each_ServerHost); output["ServerHost"] = each_ServerHost; + Json::Value each_ServerIPV6Address; ToJsonUtilS(ServerIPV6Address, each_ServerIPV6Address); output["ServerIPV6Address"] = each_ServerIPV6Address; + Json::Value each_ServerPort; ToJsonUtilS(ServerPort, each_ServerPort); output["ServerPort"] = each_ServerPort; + Json::Value each_Tags; ToJsonUtilS(Tags, each_Tags); output["Tags"] = each_Tags; + return output; + } + }; + + struct RegisterGameResponse : public PlayFabResultCommon + { + std::string LobbyId; + + RegisterGameResponse() : + PlayFabResultCommon(), + LobbyId() + {} + + RegisterGameResponse(const RegisterGameResponse& src) : + PlayFabResultCommon(), + LobbyId(src.LobbyId) + {} + + ~RegisterGameResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["LobbyId"], LobbyId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LobbyId; ToJsonUtilS(LobbyId, each_LobbyId); output["LobbyId"] = each_LobbyId; + return output; + } + }; + + struct StartGameRequest : public PlayFabRequestCommon + { + std::string Build; + std::string CustomCommandLineData; + std::string ExternalMatchmakerEventEndpoint; + std::string GameMode; + Region pfRegion; + + StartGameRequest() : + PlayFabRequestCommon(), + Build(), + CustomCommandLineData(), + ExternalMatchmakerEventEndpoint(), + GameMode(), + pfRegion() + {} + + StartGameRequest(const StartGameRequest& src) : + PlayFabRequestCommon(), + Build(src.Build), + CustomCommandLineData(src.CustomCommandLineData), + ExternalMatchmakerEventEndpoint(src.ExternalMatchmakerEventEndpoint), + GameMode(src.GameMode), + pfRegion(src.pfRegion) + {} + + ~StartGameRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Build"], Build); + FromJsonUtilS(input["CustomCommandLineData"], CustomCommandLineData); + FromJsonUtilS(input["ExternalMatchmakerEventEndpoint"], ExternalMatchmakerEventEndpoint); + FromJsonUtilS(input["GameMode"], GameMode); + FromJsonEnum(input["pfRegion"], pfRegion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Build; ToJsonUtilS(Build, each_Build); output["Build"] = each_Build; + Json::Value each_CustomCommandLineData; ToJsonUtilS(CustomCommandLineData, each_CustomCommandLineData); output["CustomCommandLineData"] = each_CustomCommandLineData; + Json::Value each_ExternalMatchmakerEventEndpoint; ToJsonUtilS(ExternalMatchmakerEventEndpoint, each_ExternalMatchmakerEventEndpoint); output["ExternalMatchmakerEventEndpoint"] = each_ExternalMatchmakerEventEndpoint; + Json::Value each_GameMode; ToJsonUtilS(GameMode, each_GameMode); output["GameMode"] = each_GameMode; + Json::Value each_pfRegion; ToJsonEnum(pfRegion, each_pfRegion); output["Region"] = each_pfRegion; + return output; + } + }; + + struct StartGameResponse : public PlayFabResultCommon + { + std::string GameID; + std::string ServerHostname; + std::string ServerIPV6Address; + Uint32 ServerPort; + + StartGameResponse() : + PlayFabResultCommon(), + GameID(), + ServerHostname(), + ServerIPV6Address(), + ServerPort() + {} + + StartGameResponse(const StartGameResponse& src) : + PlayFabResultCommon(), + GameID(src.GameID), + ServerHostname(src.ServerHostname), + ServerIPV6Address(src.ServerIPV6Address), + ServerPort(src.ServerPort) + {} + + ~StartGameResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["GameID"], GameID); + FromJsonUtilS(input["ServerHostname"], ServerHostname); + FromJsonUtilS(input["ServerIPV6Address"], ServerIPV6Address); + FromJsonUtilP(input["ServerPort"], ServerPort); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GameID; ToJsonUtilS(GameID, each_GameID); output["GameID"] = each_GameID; + Json::Value each_ServerHostname; ToJsonUtilS(ServerHostname, each_ServerHostname); output["ServerHostname"] = each_ServerHostname; + Json::Value each_ServerIPV6Address; ToJsonUtilS(ServerIPV6Address, each_ServerIPV6Address); output["ServerIPV6Address"] = each_ServerIPV6Address; + Json::Value each_ServerPort; ToJsonUtilP(ServerPort, each_ServerPort); output["ServerPort"] = each_ServerPort; + return output; + } + }; + + struct UserInfoRequest : public PlayFabRequestCommon + { + Int32 MinCatalogVersion; + std::string PlayFabId; + + UserInfoRequest() : + PlayFabRequestCommon(), + MinCatalogVersion(), + PlayFabId() + {} + + UserInfoRequest(const UserInfoRequest& src) : + PlayFabRequestCommon(), + MinCatalogVersion(src.MinCatalogVersion), + PlayFabId(src.PlayFabId) + {} + + ~UserInfoRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["MinCatalogVersion"], MinCatalogVersion); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_MinCatalogVersion; ToJsonUtilP(MinCatalogVersion, each_MinCatalogVersion); output["MinCatalogVersion"] = each_MinCatalogVersion; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct VirtualCurrencyRechargeTime : public PlayFabBaseModel + { + Int32 RechargeMax; + time_t RechargeTime; + Int32 SecondsToRecharge; + + VirtualCurrencyRechargeTime() : + PlayFabBaseModel(), + RechargeMax(), + RechargeTime(), + SecondsToRecharge() + {} + + VirtualCurrencyRechargeTime(const VirtualCurrencyRechargeTime& src) : + PlayFabBaseModel(), + RechargeMax(src.RechargeMax), + RechargeTime(src.RechargeTime), + SecondsToRecharge(src.SecondsToRecharge) + {} + + ~VirtualCurrencyRechargeTime() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["RechargeMax"], RechargeMax); + FromJsonUtilT(input["RechargeTime"], RechargeTime); + FromJsonUtilP(input["SecondsToRecharge"], SecondsToRecharge); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_RechargeMax; ToJsonUtilP(RechargeMax, each_RechargeMax); output["RechargeMax"] = each_RechargeMax; + Json::Value each_RechargeTime; ToJsonUtilT(RechargeTime, each_RechargeTime); output["RechargeTime"] = each_RechargeTime; + Json::Value each_SecondsToRecharge; ToJsonUtilP(SecondsToRecharge, each_SecondsToRecharge); output["SecondsToRecharge"] = each_SecondsToRecharge; + return output; + } + }; + + struct UserInfoResponse : public PlayFabResultCommon + { + std::list Inventory; + bool IsDeveloper; + std::string PlayFabId; + std::string SteamId; + std::string TitleDisplayName; + std::string Username; + std::map VirtualCurrency; + std::map VirtualCurrencyRechargeTimes; + + UserInfoResponse() : + PlayFabResultCommon(), + Inventory(), + IsDeveloper(), + PlayFabId(), + SteamId(), + TitleDisplayName(), + Username(), + VirtualCurrency(), + VirtualCurrencyRechargeTimes() + {} + + UserInfoResponse(const UserInfoResponse& src) : + PlayFabResultCommon(), + Inventory(src.Inventory), + IsDeveloper(src.IsDeveloper), + PlayFabId(src.PlayFabId), + SteamId(src.SteamId), + TitleDisplayName(src.TitleDisplayName), + Username(src.Username), + VirtualCurrency(src.VirtualCurrency), + VirtualCurrencyRechargeTimes(src.VirtualCurrencyRechargeTimes) + {} + + ~UserInfoResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Inventory"], Inventory); + FromJsonUtilP(input["IsDeveloper"], IsDeveloper); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["SteamId"], SteamId); + FromJsonUtilS(input["TitleDisplayName"], TitleDisplayName); + FromJsonUtilS(input["Username"], Username); + FromJsonUtilP(input["VirtualCurrency"], VirtualCurrency); + FromJsonUtilO(input["VirtualCurrencyRechargeTimes"], VirtualCurrencyRechargeTimes); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Inventory; ToJsonUtilO(Inventory, each_Inventory); output["Inventory"] = each_Inventory; + Json::Value each_IsDeveloper; ToJsonUtilP(IsDeveloper, each_IsDeveloper); output["IsDeveloper"] = each_IsDeveloper; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_SteamId; ToJsonUtilS(SteamId, each_SteamId); output["SteamId"] = each_SteamId; + Json::Value each_TitleDisplayName; ToJsonUtilS(TitleDisplayName, each_TitleDisplayName); output["TitleDisplayName"] = each_TitleDisplayName; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + Json::Value each_VirtualCurrency; ToJsonUtilP(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + Json::Value each_VirtualCurrencyRechargeTimes; ToJsonUtilO(VirtualCurrencyRechargeTimes, each_VirtualCurrencyRechargeTimes); output["VirtualCurrencyRechargeTimes"] = each_VirtualCurrencyRechargeTimes; + return output; + } + }; + + } +} + +#endif diff --git a/cppsdk/include/playfab/PlayFabServerApi.h b/cppsdk/include/playfab/PlayFabServerApi.h new file mode 100644 index 00000000..f31a65bc --- /dev/null +++ b/cppsdk/include/playfab/PlayFabServerApi.h @@ -0,0 +1,253 @@ +#pragma once + +#ifdef ENABLE_PLAYFABSERVER_API + +#include +#include + +namespace PlayFab +{ + /// + /// Main interface for PlayFab Sdk, specifically all Server APIs + /// + class PlayFabServerAPI + { + public: + static size_t Update(); + static void ForgetAllCredentials(); + + + // ------------ Generated API calls + static void AddCharacterVirtualCurrency(ServerModels::AddCharacterVirtualCurrencyRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AddFriend(ServerModels::AddFriendRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AddPlayerTag(ServerModels::AddPlayerTagRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AddSharedGroupMembers(ServerModels::AddSharedGroupMembersRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AddUserVirtualCurrency(ServerModels::AddUserVirtualCurrencyRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AuthenticateSessionTicket(ServerModels::AuthenticateSessionTicketRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void AwardSteamAchievement(ServerModels::AwardSteamAchievementRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void BanUsers(ServerModels::BanUsersRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ConsumeItem(ServerModels::ConsumeItemRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void CreateSharedGroup(ServerModels::CreateSharedGroupRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void DeleteCharacterFromUser(ServerModels::DeleteCharacterFromUserRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void DeleteSharedGroup(ServerModels::DeleteSharedGroupRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void DeleteUsers(ServerModels::DeleteUsersRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void DeregisterGame(ServerModels::DeregisterGameRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void EvaluateRandomResultTable(ServerModels::EvaluateRandomResultTableRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ExecuteCloudScript(ServerModels::ExecuteCloudScriptServerRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetAllSegments(ServerModels::GetAllSegmentsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetAllUsersCharacters(ServerModels::ListUsersCharactersRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCatalogItems(ServerModels::GetCatalogItemsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCharacterData(ServerModels::GetCharacterDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCharacterInternalData(ServerModels::GetCharacterDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCharacterInventory(ServerModels::GetCharacterInventoryRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCharacterLeaderboard(ServerModels::GetCharacterLeaderboardRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCharacterReadOnlyData(ServerModels::GetCharacterDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetCharacterStatistics(ServerModels::GetCharacterStatisticsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetContentDownloadUrl(ServerModels::GetContentDownloadUrlRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetFriendLeaderboard(ServerModels::GetFriendLeaderboardRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetFriendsList(ServerModels::GetFriendsListRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetLeaderboard(ServerModels::GetLeaderboardRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetLeaderboardAroundCharacter(ServerModels::GetLeaderboardAroundCharacterRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetLeaderboardAroundUser(ServerModels::GetLeaderboardAroundUserRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetLeaderboardForUserCharacters(ServerModels::GetLeaderboardForUsersCharactersRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerCombinedInfo(ServerModels::GetPlayerCombinedInfoRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerProfile(ServerModels::GetPlayerProfileRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerSegments(ServerModels::GetPlayersSegmentsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayersInSegment(ServerModels::GetPlayersInSegmentRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerStatistics(ServerModels::GetPlayerStatisticsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerStatisticVersions(ServerModels::GetPlayerStatisticVersionsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayerTags(ServerModels::GetPlayerTagsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayFabIDsFromFacebookIDs(ServerModels::GetPlayFabIDsFromFacebookIDsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPlayFabIDsFromSteamIDs(ServerModels::GetPlayFabIDsFromSteamIDsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetPublisherData(ServerModels::GetPublisherDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetRandomResultTables(ServerModels::GetRandomResultTablesRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetSharedGroupData(ServerModels::GetSharedGroupDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetTime(ServerModels::GetTimeRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetTitleData(ServerModels::GetTitleDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetTitleInternalData(ServerModels::GetTitleDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetTitleNews(ServerModels::GetTitleNewsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserAccountInfo(ServerModels::GetUserAccountInfoRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserBans(ServerModels::GetUserBansRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserData(ServerModels::GetUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserInternalData(ServerModels::GetUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserInventory(ServerModels::GetUserInventoryRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserPublisherData(ServerModels::GetUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserPublisherInternalData(ServerModels::GetUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserPublisherReadOnlyData(ServerModels::GetUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GetUserReadOnlyData(ServerModels::GetUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GrantCharacterToUser(ServerModels::GrantCharacterToUserRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GrantItemsToCharacter(ServerModels::GrantItemsToCharacterRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GrantItemsToUser(ServerModels::GrantItemsToUserRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void GrantItemsToUsers(ServerModels::GrantItemsToUsersRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ModifyItemUses(ServerModels::ModifyItemUsesRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void MoveItemToCharacterFromCharacter(ServerModels::MoveItemToCharacterFromCharacterRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void MoveItemToCharacterFromUser(ServerModels::MoveItemToCharacterFromUserRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void MoveItemToUserFromCharacter(ServerModels::MoveItemToUserFromCharacterRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void NotifyMatchmakerPlayerLeft(ServerModels::NotifyMatchmakerPlayerLeftRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RedeemCoupon(ServerModels::RedeemCouponRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RedeemMatchmakerTicket(ServerModels::RedeemMatchmakerTicketRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RefreshGameServerInstanceHeartbeat(ServerModels::RefreshGameServerInstanceHeartbeatRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RegisterGame(ServerModels::RegisterGameRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RemoveFriend(ServerModels::RemoveFriendRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RemovePlayerTag(ServerModels::RemovePlayerTagRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RemoveSharedGroupMembers(ServerModels::RemoveSharedGroupMembersRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void ReportPlayer(ServerModels::ReportPlayerServerRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RevokeAllBansForUser(ServerModels::RevokeAllBansForUserRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RevokeBans(ServerModels::RevokeBansRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RevokeInventoryItem(ServerModels::RevokeInventoryItemRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void RevokeInventoryItems(ServerModels::RevokeInventoryItemsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SendCustomAccountRecoveryEmail(ServerModels::SendCustomAccountRecoveryEmailRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SendEmailFromTemplate(ServerModels::SendEmailFromTemplateRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SendPushNotification(ServerModels::SendPushNotificationRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetFriendTags(ServerModels::SetFriendTagsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetGameServerInstanceData(ServerModels::SetGameServerInstanceDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetGameServerInstanceState(ServerModels::SetGameServerInstanceStateRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetGameServerInstanceTags(ServerModels::SetGameServerInstanceTagsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetPlayerSecret(ServerModels::SetPlayerSecretRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetPublisherData(ServerModels::SetPublisherDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetTitleData(ServerModels::SetTitleDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SetTitleInternalData(ServerModels::SetTitleDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SubtractCharacterVirtualCurrency(ServerModels::SubtractCharacterVirtualCurrencyRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void SubtractUserVirtualCurrency(ServerModels::SubtractUserVirtualCurrencyRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UnlockContainerInstance(ServerModels::UnlockContainerInstanceRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UnlockContainerItem(ServerModels::UnlockContainerItemRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateAvatarUrl(ServerModels::UpdateAvatarUrlRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateBans(ServerModels::UpdateBansRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateCharacterData(ServerModels::UpdateCharacterDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateCharacterInternalData(ServerModels::UpdateCharacterDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateCharacterReadOnlyData(ServerModels::UpdateCharacterDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateCharacterStatistics(ServerModels::UpdateCharacterStatisticsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdatePlayerStatistics(ServerModels::UpdatePlayerStatisticsRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateSharedGroupData(ServerModels::UpdateSharedGroupDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateUserData(ServerModels::UpdateUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateUserInternalData(ServerModels::UpdateUserInternalDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateUserInventoryItemCustomData(ServerModels::UpdateUserInventoryItemDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateUserPublisherData(ServerModels::UpdateUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateUserPublisherInternalData(ServerModels::UpdateUserInternalDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateUserPublisherReadOnlyData(ServerModels::UpdateUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void UpdateUserReadOnlyData(ServerModels::UpdateUserDataRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void WriteCharacterEvent(ServerModels::WriteServerCharacterEventRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void WritePlayerEvent(ServerModels::WriteServerPlayerEventRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + static void WriteTitleEvent(ServerModels::WriteTitleEventRequest& request, ProcessApiCallback callback, ErrorCallback errorCallback = nullptr, void* customData = nullptr); + + private: + PlayFabServerAPI(); // Private constructor, static class should never have an instance + PlayFabServerAPI(const PlayFabServerAPI& other); // Private copy-constructor, static class should never have an instance + + // ------------ Generated result handlers + static void OnAddCharacterVirtualCurrencyResult(CallRequestContainer& request); + static void OnAddFriendResult(CallRequestContainer& request); + static void OnAddPlayerTagResult(CallRequestContainer& request); + static void OnAddSharedGroupMembersResult(CallRequestContainer& request); + static void OnAddUserVirtualCurrencyResult(CallRequestContainer& request); + static void OnAuthenticateSessionTicketResult(CallRequestContainer& request); + static void OnAwardSteamAchievementResult(CallRequestContainer& request); + static void OnBanUsersResult(CallRequestContainer& request); + static void OnConsumeItemResult(CallRequestContainer& request); + static void OnCreateSharedGroupResult(CallRequestContainer& request); + static void OnDeleteCharacterFromUserResult(CallRequestContainer& request); + static void OnDeleteSharedGroupResult(CallRequestContainer& request); + static void OnDeleteUsersResult(CallRequestContainer& request); + static void OnDeregisterGameResult(CallRequestContainer& request); + static void OnEvaluateRandomResultTableResult(CallRequestContainer& request); + static void OnExecuteCloudScriptResult(CallRequestContainer& request); + static void OnGetAllSegmentsResult(CallRequestContainer& request); + static void OnGetAllUsersCharactersResult(CallRequestContainer& request); + static void OnGetCatalogItemsResult(CallRequestContainer& request); + static void OnGetCharacterDataResult(CallRequestContainer& request); + static void OnGetCharacterInternalDataResult(CallRequestContainer& request); + static void OnGetCharacterInventoryResult(CallRequestContainer& request); + static void OnGetCharacterLeaderboardResult(CallRequestContainer& request); + static void OnGetCharacterReadOnlyDataResult(CallRequestContainer& request); + static void OnGetCharacterStatisticsResult(CallRequestContainer& request); + static void OnGetContentDownloadUrlResult(CallRequestContainer& request); + static void OnGetFriendLeaderboardResult(CallRequestContainer& request); + static void OnGetFriendsListResult(CallRequestContainer& request); + static void OnGetLeaderboardResult(CallRequestContainer& request); + static void OnGetLeaderboardAroundCharacterResult(CallRequestContainer& request); + static void OnGetLeaderboardAroundUserResult(CallRequestContainer& request); + static void OnGetLeaderboardForUserCharactersResult(CallRequestContainer& request); + static void OnGetPlayerCombinedInfoResult(CallRequestContainer& request); + static void OnGetPlayerProfileResult(CallRequestContainer& request); + static void OnGetPlayerSegmentsResult(CallRequestContainer& request); + static void OnGetPlayersInSegmentResult(CallRequestContainer& request); + static void OnGetPlayerStatisticsResult(CallRequestContainer& request); + static void OnGetPlayerStatisticVersionsResult(CallRequestContainer& request); + static void OnGetPlayerTagsResult(CallRequestContainer& request); + static void OnGetPlayFabIDsFromFacebookIDsResult(CallRequestContainer& request); + static void OnGetPlayFabIDsFromSteamIDsResult(CallRequestContainer& request); + static void OnGetPublisherDataResult(CallRequestContainer& request); + static void OnGetRandomResultTablesResult(CallRequestContainer& request); + static void OnGetSharedGroupDataResult(CallRequestContainer& request); + static void OnGetTimeResult(CallRequestContainer& request); + static void OnGetTitleDataResult(CallRequestContainer& request); + static void OnGetTitleInternalDataResult(CallRequestContainer& request); + static void OnGetTitleNewsResult(CallRequestContainer& request); + static void OnGetUserAccountInfoResult(CallRequestContainer& request); + static void OnGetUserBansResult(CallRequestContainer& request); + static void OnGetUserDataResult(CallRequestContainer& request); + static void OnGetUserInternalDataResult(CallRequestContainer& request); + static void OnGetUserInventoryResult(CallRequestContainer& request); + static void OnGetUserPublisherDataResult(CallRequestContainer& request); + static void OnGetUserPublisherInternalDataResult(CallRequestContainer& request); + static void OnGetUserPublisherReadOnlyDataResult(CallRequestContainer& request); + static void OnGetUserReadOnlyDataResult(CallRequestContainer& request); + static void OnGrantCharacterToUserResult(CallRequestContainer& request); + static void OnGrantItemsToCharacterResult(CallRequestContainer& request); + static void OnGrantItemsToUserResult(CallRequestContainer& request); + static void OnGrantItemsToUsersResult(CallRequestContainer& request); + static void OnModifyItemUsesResult(CallRequestContainer& request); + static void OnMoveItemToCharacterFromCharacterResult(CallRequestContainer& request); + static void OnMoveItemToCharacterFromUserResult(CallRequestContainer& request); + static void OnMoveItemToUserFromCharacterResult(CallRequestContainer& request); + static void OnNotifyMatchmakerPlayerLeftResult(CallRequestContainer& request); + static void OnRedeemCouponResult(CallRequestContainer& request); + static void OnRedeemMatchmakerTicketResult(CallRequestContainer& request); + static void OnRefreshGameServerInstanceHeartbeatResult(CallRequestContainer& request); + static void OnRegisterGameResult(CallRequestContainer& request); + static void OnRemoveFriendResult(CallRequestContainer& request); + static void OnRemovePlayerTagResult(CallRequestContainer& request); + static void OnRemoveSharedGroupMembersResult(CallRequestContainer& request); + static void OnReportPlayerResult(CallRequestContainer& request); + static void OnRevokeAllBansForUserResult(CallRequestContainer& request); + static void OnRevokeBansResult(CallRequestContainer& request); + static void OnRevokeInventoryItemResult(CallRequestContainer& request); + static void OnRevokeInventoryItemsResult(CallRequestContainer& request); + static void OnSendCustomAccountRecoveryEmailResult(CallRequestContainer& request); + static void OnSendEmailFromTemplateResult(CallRequestContainer& request); + static void OnSendPushNotificationResult(CallRequestContainer& request); + static void OnSetFriendTagsResult(CallRequestContainer& request); + static void OnSetGameServerInstanceDataResult(CallRequestContainer& request); + static void OnSetGameServerInstanceStateResult(CallRequestContainer& request); + static void OnSetGameServerInstanceTagsResult(CallRequestContainer& request); + static void OnSetPlayerSecretResult(CallRequestContainer& request); + static void OnSetPublisherDataResult(CallRequestContainer& request); + static void OnSetTitleDataResult(CallRequestContainer& request); + static void OnSetTitleInternalDataResult(CallRequestContainer& request); + static void OnSubtractCharacterVirtualCurrencyResult(CallRequestContainer& request); + static void OnSubtractUserVirtualCurrencyResult(CallRequestContainer& request); + static void OnUnlockContainerInstanceResult(CallRequestContainer& request); + static void OnUnlockContainerItemResult(CallRequestContainer& request); + static void OnUpdateAvatarUrlResult(CallRequestContainer& request); + static void OnUpdateBansResult(CallRequestContainer& request); + static void OnUpdateCharacterDataResult(CallRequestContainer& request); + static void OnUpdateCharacterInternalDataResult(CallRequestContainer& request); + static void OnUpdateCharacterReadOnlyDataResult(CallRequestContainer& request); + static void OnUpdateCharacterStatisticsResult(CallRequestContainer& request); + static void OnUpdatePlayerStatisticsResult(CallRequestContainer& request); + static void OnUpdateSharedGroupDataResult(CallRequestContainer& request); + static void OnUpdateUserDataResult(CallRequestContainer& request); + static void OnUpdateUserInternalDataResult(CallRequestContainer& request); + static void OnUpdateUserInventoryItemCustomDataResult(CallRequestContainer& request); + static void OnUpdateUserPublisherDataResult(CallRequestContainer& request); + static void OnUpdateUserPublisherInternalDataResult(CallRequestContainer& request); + static void OnUpdateUserPublisherReadOnlyDataResult(CallRequestContainer& request); + static void OnUpdateUserReadOnlyDataResult(CallRequestContainer& request); + static void OnWriteCharacterEventResult(CallRequestContainer& request); + static void OnWritePlayerEventResult(CallRequestContainer& request); + static void OnWriteTitleEventResult(CallRequestContainer& request); + + }; +} + +#endif diff --git a/cppsdk/include/playfab/PlayFabServerDataModels.h b/cppsdk/include/playfab/PlayFabServerDataModels.h new file mode 100644 index 00000000..96e76499 --- /dev/null +++ b/cppsdk/include/playfab/PlayFabServerDataModels.h @@ -0,0 +1,12487 @@ +#pragma once + +#ifdef ENABLE_PLAYFABSERVER_API + +#include +#include + +namespace PlayFab +{ + namespace ServerModels + { + // Server Enums + enum CloudScriptRevisionOption + { + CloudScriptRevisionOptionLive, + CloudScriptRevisionOptionLatest, + CloudScriptRevisionOptionSpecific + }; + + inline void ToJsonEnum(const CloudScriptRevisionOption input, Json::Value& output) + { + if (input == CloudScriptRevisionOptionLive) output = Json::Value("Live"); + if (input == CloudScriptRevisionOptionLatest) output = Json::Value("Latest"); + if (input == CloudScriptRevisionOptionSpecific) output = Json::Value("Specific"); + } + inline void FromJsonEnum(const Json::Value& input, CloudScriptRevisionOption& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Live") output = CloudScriptRevisionOptionLive; + if (inputStr == "Latest") output = CloudScriptRevisionOptionLatest; + if (inputStr == "Specific") output = CloudScriptRevisionOptionSpecific; + } + + enum ContinentCode + { + ContinentCodeAF, + ContinentCodeAN, + ContinentCodeAS, + ContinentCodeEU, + ContinentCodeNA, + ContinentCodeOC, + ContinentCodeSA + }; + + inline void ToJsonEnum(const ContinentCode input, Json::Value& output) + { + if (input == ContinentCodeAF) output = Json::Value("AF"); + if (input == ContinentCodeAN) output = Json::Value("AN"); + if (input == ContinentCodeAS) output = Json::Value("AS"); + if (input == ContinentCodeEU) output = Json::Value("EU"); + if (input == ContinentCodeNA) output = Json::Value("NA"); + if (input == ContinentCodeOC) output = Json::Value("OC"); + if (input == ContinentCodeSA) output = Json::Value("SA"); + } + inline void FromJsonEnum(const Json::Value& input, ContinentCode& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "AF") output = ContinentCodeAF; + if (inputStr == "AN") output = ContinentCodeAN; + if (inputStr == "AS") output = ContinentCodeAS; + if (inputStr == "EU") output = ContinentCodeEU; + if (inputStr == "NA") output = ContinentCodeNA; + if (inputStr == "OC") output = ContinentCodeOC; + if (inputStr == "SA") output = ContinentCodeSA; + } + + enum CountryCode + { + CountryCodeAF, + CountryCodeAX, + CountryCodeAL, + CountryCodeDZ, + CountryCodeAS, + CountryCodeAD, + CountryCodeAO, + CountryCodeAI, + CountryCodeAQ, + CountryCodeAG, + CountryCodeAR, + CountryCodeAM, + CountryCodeAW, + CountryCodeAU, + CountryCodeAT, + CountryCodeAZ, + CountryCodeBS, + CountryCodeBH, + CountryCodeBD, + CountryCodeBB, + CountryCodeBY, + CountryCodeBE, + CountryCodeBZ, + CountryCodeBJ, + CountryCodeBM, + CountryCodeBT, + CountryCodeBO, + CountryCodeBQ, + CountryCodeBA, + CountryCodeBW, + CountryCodeBV, + CountryCodeBR, + CountryCodeIO, + CountryCodeBN, + CountryCodeBG, + CountryCodeBF, + CountryCodeBI, + CountryCodeKH, + CountryCodeCM, + CountryCodeCA, + CountryCodeCV, + CountryCodeKY, + CountryCodeCF, + CountryCodeTD, + CountryCodeCL, + CountryCodeCN, + CountryCodeCX, + CountryCodeCC, + CountryCodeCO, + CountryCodeKM, + CountryCodeCG, + CountryCodeCD, + CountryCodeCK, + CountryCodeCR, + CountryCodeCI, + CountryCodeHR, + CountryCodeCU, + CountryCodeCW, + CountryCodeCY, + CountryCodeCZ, + CountryCodeDK, + CountryCodeDJ, + CountryCodeDM, + CountryCodeDO, + CountryCodeEC, + CountryCodeEG, + CountryCodeSV, + CountryCodeGQ, + CountryCodeER, + CountryCodeEE, + CountryCodeET, + CountryCodeFK, + CountryCodeFO, + CountryCodeFJ, + CountryCodeFI, + CountryCodeFR, + CountryCodeGF, + CountryCodePF, + CountryCodeTF, + CountryCodeGA, + CountryCodeGM, + CountryCodeGE, + CountryCodeDE, + CountryCodeGH, + CountryCodeGI, + CountryCodeGR, + CountryCodeGL, + CountryCodeGD, + CountryCodeGP, + CountryCodeGU, + CountryCodeGT, + CountryCodeGG, + CountryCodeGN, + CountryCodeGW, + CountryCodeGY, + CountryCodeHT, + CountryCodeHM, + CountryCodeVA, + CountryCodeHN, + CountryCodeHK, + CountryCodeHU, + CountryCodeIS, + CountryCodeIN, + CountryCodeID, + CountryCodeIR, + CountryCodeIQ, + CountryCodeIE, + CountryCodeIM, + CountryCodeIL, + CountryCodeIT, + CountryCodeJM, + CountryCodeJP, + CountryCodeJE, + CountryCodeJO, + CountryCodeKZ, + CountryCodeKE, + CountryCodeKI, + CountryCodeKP, + CountryCodeKR, + CountryCodeKW, + CountryCodeKG, + CountryCodeLA, + CountryCodeLV, + CountryCodeLB, + CountryCodeLS, + CountryCodeLR, + CountryCodeLY, + CountryCodeLI, + CountryCodeLT, + CountryCodeLU, + CountryCodeMO, + CountryCodeMK, + CountryCodeMG, + CountryCodeMW, + CountryCodeMY, + CountryCodeMV, + CountryCodeML, + CountryCodeMT, + CountryCodeMH, + CountryCodeMQ, + CountryCodeMR, + CountryCodeMU, + CountryCodeYT, + CountryCodeMX, + CountryCodeFM, + CountryCodeMD, + CountryCodeMC, + CountryCodeMN, + CountryCodeME, + CountryCodeMS, + CountryCodeMA, + CountryCodeMZ, + CountryCodeMM, + CountryCodeNA, + CountryCodeNR, + CountryCodeNP, + CountryCodeNL, + CountryCodeNC, + CountryCodeNZ, + CountryCodeNI, + CountryCodeNE, + CountryCodeNG, + CountryCodeNU, + CountryCodeNF, + CountryCodeMP, + CountryCodeNO, + CountryCodeOM, + CountryCodePK, + CountryCodePW, + CountryCodePS, + CountryCodePA, + CountryCodePG, + CountryCodePY, + CountryCodePE, + CountryCodePH, + CountryCodePN, + CountryCodePL, + CountryCodePT, + CountryCodePR, + CountryCodeQA, + CountryCodeRE, + CountryCodeRO, + CountryCodeRU, + CountryCodeRW, + CountryCodeBL, + CountryCodeSH, + CountryCodeKN, + CountryCodeLC, + CountryCodeMF, + CountryCodePM, + CountryCodeVC, + CountryCodeWS, + CountryCodeSM, + CountryCodeST, + CountryCodeSA, + CountryCodeSN, + CountryCodeRS, + CountryCodeSC, + CountryCodeSL, + CountryCodeSG, + CountryCodeSX, + CountryCodeSK, + CountryCodeSI, + CountryCodeSB, + CountryCodeSO, + CountryCodeZA, + CountryCodeGS, + CountryCodeSS, + CountryCodeES, + CountryCodeLK, + CountryCodeSD, + CountryCodeSR, + CountryCodeSJ, + CountryCodeSZ, + CountryCodeSE, + CountryCodeCH, + CountryCodeSY, + CountryCodeTW, + CountryCodeTJ, + CountryCodeTZ, + CountryCodeTH, + CountryCodeTL, + CountryCodeTG, + CountryCodeTK, + CountryCodeTO, + CountryCodeTT, + CountryCodeTN, + CountryCodeTR, + CountryCodeTM, + CountryCodeTC, + CountryCodeTV, + CountryCodeUG, + CountryCodeUA, + CountryCodeAE, + CountryCodeGB, + CountryCodeUS, + CountryCodeUM, + CountryCodeUY, + CountryCodeUZ, + CountryCodeVU, + CountryCodeVE, + CountryCodeVN, + CountryCodeVG, + CountryCodeVI, + CountryCodeWF, + CountryCodeEH, + CountryCodeYE, + CountryCodeZM, + CountryCodeZW + }; + + inline void ToJsonEnum(const CountryCode input, Json::Value& output) + { + if (input == CountryCodeAF) output = Json::Value("AF"); + if (input == CountryCodeAX) output = Json::Value("AX"); + if (input == CountryCodeAL) output = Json::Value("AL"); + if (input == CountryCodeDZ) output = Json::Value("DZ"); + if (input == CountryCodeAS) output = Json::Value("AS"); + if (input == CountryCodeAD) output = Json::Value("AD"); + if (input == CountryCodeAO) output = Json::Value("AO"); + if (input == CountryCodeAI) output = Json::Value("AI"); + if (input == CountryCodeAQ) output = Json::Value("AQ"); + if (input == CountryCodeAG) output = Json::Value("AG"); + if (input == CountryCodeAR) output = Json::Value("AR"); + if (input == CountryCodeAM) output = Json::Value("AM"); + if (input == CountryCodeAW) output = Json::Value("AW"); + if (input == CountryCodeAU) output = Json::Value("AU"); + if (input == CountryCodeAT) output = Json::Value("AT"); + if (input == CountryCodeAZ) output = Json::Value("AZ"); + if (input == CountryCodeBS) output = Json::Value("BS"); + if (input == CountryCodeBH) output = Json::Value("BH"); + if (input == CountryCodeBD) output = Json::Value("BD"); + if (input == CountryCodeBB) output = Json::Value("BB"); + if (input == CountryCodeBY) output = Json::Value("BY"); + if (input == CountryCodeBE) output = Json::Value("BE"); + if (input == CountryCodeBZ) output = Json::Value("BZ"); + if (input == CountryCodeBJ) output = Json::Value("BJ"); + if (input == CountryCodeBM) output = Json::Value("BM"); + if (input == CountryCodeBT) output = Json::Value("BT"); + if (input == CountryCodeBO) output = Json::Value("BO"); + if (input == CountryCodeBQ) output = Json::Value("BQ"); + if (input == CountryCodeBA) output = Json::Value("BA"); + if (input == CountryCodeBW) output = Json::Value("BW"); + if (input == CountryCodeBV) output = Json::Value("BV"); + if (input == CountryCodeBR) output = Json::Value("BR"); + if (input == CountryCodeIO) output = Json::Value("IO"); + if (input == CountryCodeBN) output = Json::Value("BN"); + if (input == CountryCodeBG) output = Json::Value("BG"); + if (input == CountryCodeBF) output = Json::Value("BF"); + if (input == CountryCodeBI) output = Json::Value("BI"); + if (input == CountryCodeKH) output = Json::Value("KH"); + if (input == CountryCodeCM) output = Json::Value("CM"); + if (input == CountryCodeCA) output = Json::Value("CA"); + if (input == CountryCodeCV) output = Json::Value("CV"); + if (input == CountryCodeKY) output = Json::Value("KY"); + if (input == CountryCodeCF) output = Json::Value("CF"); + if (input == CountryCodeTD) output = Json::Value("TD"); + if (input == CountryCodeCL) output = Json::Value("CL"); + if (input == CountryCodeCN) output = Json::Value("CN"); + if (input == CountryCodeCX) output = Json::Value("CX"); + if (input == CountryCodeCC) output = Json::Value("CC"); + if (input == CountryCodeCO) output = Json::Value("CO"); + if (input == CountryCodeKM) output = Json::Value("KM"); + if (input == CountryCodeCG) output = Json::Value("CG"); + if (input == CountryCodeCD) output = Json::Value("CD"); + if (input == CountryCodeCK) output = Json::Value("CK"); + if (input == CountryCodeCR) output = Json::Value("CR"); + if (input == CountryCodeCI) output = Json::Value("CI"); + if (input == CountryCodeHR) output = Json::Value("HR"); + if (input == CountryCodeCU) output = Json::Value("CU"); + if (input == CountryCodeCW) output = Json::Value("CW"); + if (input == CountryCodeCY) output = Json::Value("CY"); + if (input == CountryCodeCZ) output = Json::Value("CZ"); + if (input == CountryCodeDK) output = Json::Value("DK"); + if (input == CountryCodeDJ) output = Json::Value("DJ"); + if (input == CountryCodeDM) output = Json::Value("DM"); + if (input == CountryCodeDO) output = Json::Value("DO"); + if (input == CountryCodeEC) output = Json::Value("EC"); + if (input == CountryCodeEG) output = Json::Value("EG"); + if (input == CountryCodeSV) output = Json::Value("SV"); + if (input == CountryCodeGQ) output = Json::Value("GQ"); + if (input == CountryCodeER) output = Json::Value("ER"); + if (input == CountryCodeEE) output = Json::Value("EE"); + if (input == CountryCodeET) output = Json::Value("ET"); + if (input == CountryCodeFK) output = Json::Value("FK"); + if (input == CountryCodeFO) output = Json::Value("FO"); + if (input == CountryCodeFJ) output = Json::Value("FJ"); + if (input == CountryCodeFI) output = Json::Value("FI"); + if (input == CountryCodeFR) output = Json::Value("FR"); + if (input == CountryCodeGF) output = Json::Value("GF"); + if (input == CountryCodePF) output = Json::Value("PF"); + if (input == CountryCodeTF) output = Json::Value("TF"); + if (input == CountryCodeGA) output = Json::Value("GA"); + if (input == CountryCodeGM) output = Json::Value("GM"); + if (input == CountryCodeGE) output = Json::Value("GE"); + if (input == CountryCodeDE) output = Json::Value("DE"); + if (input == CountryCodeGH) output = Json::Value("GH"); + if (input == CountryCodeGI) output = Json::Value("GI"); + if (input == CountryCodeGR) output = Json::Value("GR"); + if (input == CountryCodeGL) output = Json::Value("GL"); + if (input == CountryCodeGD) output = Json::Value("GD"); + if (input == CountryCodeGP) output = Json::Value("GP"); + if (input == CountryCodeGU) output = Json::Value("GU"); + if (input == CountryCodeGT) output = Json::Value("GT"); + if (input == CountryCodeGG) output = Json::Value("GG"); + if (input == CountryCodeGN) output = Json::Value("GN"); + if (input == CountryCodeGW) output = Json::Value("GW"); + if (input == CountryCodeGY) output = Json::Value("GY"); + if (input == CountryCodeHT) output = Json::Value("HT"); + if (input == CountryCodeHM) output = Json::Value("HM"); + if (input == CountryCodeVA) output = Json::Value("VA"); + if (input == CountryCodeHN) output = Json::Value("HN"); + if (input == CountryCodeHK) output = Json::Value("HK"); + if (input == CountryCodeHU) output = Json::Value("HU"); + if (input == CountryCodeIS) output = Json::Value("IS"); + if (input == CountryCodeIN) output = Json::Value("IN"); + if (input == CountryCodeID) output = Json::Value("ID"); + if (input == CountryCodeIR) output = Json::Value("IR"); + if (input == CountryCodeIQ) output = Json::Value("IQ"); + if (input == CountryCodeIE) output = Json::Value("IE"); + if (input == CountryCodeIM) output = Json::Value("IM"); + if (input == CountryCodeIL) output = Json::Value("IL"); + if (input == CountryCodeIT) output = Json::Value("IT"); + if (input == CountryCodeJM) output = Json::Value("JM"); + if (input == CountryCodeJP) output = Json::Value("JP"); + if (input == CountryCodeJE) output = Json::Value("JE"); + if (input == CountryCodeJO) output = Json::Value("JO"); + if (input == CountryCodeKZ) output = Json::Value("KZ"); + if (input == CountryCodeKE) output = Json::Value("KE"); + if (input == CountryCodeKI) output = Json::Value("KI"); + if (input == CountryCodeKP) output = Json::Value("KP"); + if (input == CountryCodeKR) output = Json::Value("KR"); + if (input == CountryCodeKW) output = Json::Value("KW"); + if (input == CountryCodeKG) output = Json::Value("KG"); + if (input == CountryCodeLA) output = Json::Value("LA"); + if (input == CountryCodeLV) output = Json::Value("LV"); + if (input == CountryCodeLB) output = Json::Value("LB"); + if (input == CountryCodeLS) output = Json::Value("LS"); + if (input == CountryCodeLR) output = Json::Value("LR"); + if (input == CountryCodeLY) output = Json::Value("LY"); + if (input == CountryCodeLI) output = Json::Value("LI"); + if (input == CountryCodeLT) output = Json::Value("LT"); + if (input == CountryCodeLU) output = Json::Value("LU"); + if (input == CountryCodeMO) output = Json::Value("MO"); + if (input == CountryCodeMK) output = Json::Value("MK"); + if (input == CountryCodeMG) output = Json::Value("MG"); + if (input == CountryCodeMW) output = Json::Value("MW"); + if (input == CountryCodeMY) output = Json::Value("MY"); + if (input == CountryCodeMV) output = Json::Value("MV"); + if (input == CountryCodeML) output = Json::Value("ML"); + if (input == CountryCodeMT) output = Json::Value("MT"); + if (input == CountryCodeMH) output = Json::Value("MH"); + if (input == CountryCodeMQ) output = Json::Value("MQ"); + if (input == CountryCodeMR) output = Json::Value("MR"); + if (input == CountryCodeMU) output = Json::Value("MU"); + if (input == CountryCodeYT) output = Json::Value("YT"); + if (input == CountryCodeMX) output = Json::Value("MX"); + if (input == CountryCodeFM) output = Json::Value("FM"); + if (input == CountryCodeMD) output = Json::Value("MD"); + if (input == CountryCodeMC) output = Json::Value("MC"); + if (input == CountryCodeMN) output = Json::Value("MN"); + if (input == CountryCodeME) output = Json::Value("ME"); + if (input == CountryCodeMS) output = Json::Value("MS"); + if (input == CountryCodeMA) output = Json::Value("MA"); + if (input == CountryCodeMZ) output = Json::Value("MZ"); + if (input == CountryCodeMM) output = Json::Value("MM"); + if (input == CountryCodeNA) output = Json::Value("NA"); + if (input == CountryCodeNR) output = Json::Value("NR"); + if (input == CountryCodeNP) output = Json::Value("NP"); + if (input == CountryCodeNL) output = Json::Value("NL"); + if (input == CountryCodeNC) output = Json::Value("NC"); + if (input == CountryCodeNZ) output = Json::Value("NZ"); + if (input == CountryCodeNI) output = Json::Value("NI"); + if (input == CountryCodeNE) output = Json::Value("NE"); + if (input == CountryCodeNG) output = Json::Value("NG"); + if (input == CountryCodeNU) output = Json::Value("NU"); + if (input == CountryCodeNF) output = Json::Value("NF"); + if (input == CountryCodeMP) output = Json::Value("MP"); + if (input == CountryCodeNO) output = Json::Value("NO"); + if (input == CountryCodeOM) output = Json::Value("OM"); + if (input == CountryCodePK) output = Json::Value("PK"); + if (input == CountryCodePW) output = Json::Value("PW"); + if (input == CountryCodePS) output = Json::Value("PS"); + if (input == CountryCodePA) output = Json::Value("PA"); + if (input == CountryCodePG) output = Json::Value("PG"); + if (input == CountryCodePY) output = Json::Value("PY"); + if (input == CountryCodePE) output = Json::Value("PE"); + if (input == CountryCodePH) output = Json::Value("PH"); + if (input == CountryCodePN) output = Json::Value("PN"); + if (input == CountryCodePL) output = Json::Value("PL"); + if (input == CountryCodePT) output = Json::Value("PT"); + if (input == CountryCodePR) output = Json::Value("PR"); + if (input == CountryCodeQA) output = Json::Value("QA"); + if (input == CountryCodeRE) output = Json::Value("RE"); + if (input == CountryCodeRO) output = Json::Value("RO"); + if (input == CountryCodeRU) output = Json::Value("RU"); + if (input == CountryCodeRW) output = Json::Value("RW"); + if (input == CountryCodeBL) output = Json::Value("BL"); + if (input == CountryCodeSH) output = Json::Value("SH"); + if (input == CountryCodeKN) output = Json::Value("KN"); + if (input == CountryCodeLC) output = Json::Value("LC"); + if (input == CountryCodeMF) output = Json::Value("MF"); + if (input == CountryCodePM) output = Json::Value("PM"); + if (input == CountryCodeVC) output = Json::Value("VC"); + if (input == CountryCodeWS) output = Json::Value("WS"); + if (input == CountryCodeSM) output = Json::Value("SM"); + if (input == CountryCodeST) output = Json::Value("ST"); + if (input == CountryCodeSA) output = Json::Value("SA"); + if (input == CountryCodeSN) output = Json::Value("SN"); + if (input == CountryCodeRS) output = Json::Value("RS"); + if (input == CountryCodeSC) output = Json::Value("SC"); + if (input == CountryCodeSL) output = Json::Value("SL"); + if (input == CountryCodeSG) output = Json::Value("SG"); + if (input == CountryCodeSX) output = Json::Value("SX"); + if (input == CountryCodeSK) output = Json::Value("SK"); + if (input == CountryCodeSI) output = Json::Value("SI"); + if (input == CountryCodeSB) output = Json::Value("SB"); + if (input == CountryCodeSO) output = Json::Value("SO"); + if (input == CountryCodeZA) output = Json::Value("ZA"); + if (input == CountryCodeGS) output = Json::Value("GS"); + if (input == CountryCodeSS) output = Json::Value("SS"); + if (input == CountryCodeES) output = Json::Value("ES"); + if (input == CountryCodeLK) output = Json::Value("LK"); + if (input == CountryCodeSD) output = Json::Value("SD"); + if (input == CountryCodeSR) output = Json::Value("SR"); + if (input == CountryCodeSJ) output = Json::Value("SJ"); + if (input == CountryCodeSZ) output = Json::Value("SZ"); + if (input == CountryCodeSE) output = Json::Value("SE"); + if (input == CountryCodeCH) output = Json::Value("CH"); + if (input == CountryCodeSY) output = Json::Value("SY"); + if (input == CountryCodeTW) output = Json::Value("TW"); + if (input == CountryCodeTJ) output = Json::Value("TJ"); + if (input == CountryCodeTZ) output = Json::Value("TZ"); + if (input == CountryCodeTH) output = Json::Value("TH"); + if (input == CountryCodeTL) output = Json::Value("TL"); + if (input == CountryCodeTG) output = Json::Value("TG"); + if (input == CountryCodeTK) output = Json::Value("TK"); + if (input == CountryCodeTO) output = Json::Value("TO"); + if (input == CountryCodeTT) output = Json::Value("TT"); + if (input == CountryCodeTN) output = Json::Value("TN"); + if (input == CountryCodeTR) output = Json::Value("TR"); + if (input == CountryCodeTM) output = Json::Value("TM"); + if (input == CountryCodeTC) output = Json::Value("TC"); + if (input == CountryCodeTV) output = Json::Value("TV"); + if (input == CountryCodeUG) output = Json::Value("UG"); + if (input == CountryCodeUA) output = Json::Value("UA"); + if (input == CountryCodeAE) output = Json::Value("AE"); + if (input == CountryCodeGB) output = Json::Value("GB"); + if (input == CountryCodeUS) output = Json::Value("US"); + if (input == CountryCodeUM) output = Json::Value("UM"); + if (input == CountryCodeUY) output = Json::Value("UY"); + if (input == CountryCodeUZ) output = Json::Value("UZ"); + if (input == CountryCodeVU) output = Json::Value("VU"); + if (input == CountryCodeVE) output = Json::Value("VE"); + if (input == CountryCodeVN) output = Json::Value("VN"); + if (input == CountryCodeVG) output = Json::Value("VG"); + if (input == CountryCodeVI) output = Json::Value("VI"); + if (input == CountryCodeWF) output = Json::Value("WF"); + if (input == CountryCodeEH) output = Json::Value("EH"); + if (input == CountryCodeYE) output = Json::Value("YE"); + if (input == CountryCodeZM) output = Json::Value("ZM"); + if (input == CountryCodeZW) output = Json::Value("ZW"); + } + inline void FromJsonEnum(const Json::Value& input, CountryCode& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "AF") output = CountryCodeAF; + if (inputStr == "AX") output = CountryCodeAX; + if (inputStr == "AL") output = CountryCodeAL; + if (inputStr == "DZ") output = CountryCodeDZ; + if (inputStr == "AS") output = CountryCodeAS; + if (inputStr == "AD") output = CountryCodeAD; + if (inputStr == "AO") output = CountryCodeAO; + if (inputStr == "AI") output = CountryCodeAI; + if (inputStr == "AQ") output = CountryCodeAQ; + if (inputStr == "AG") output = CountryCodeAG; + if (inputStr == "AR") output = CountryCodeAR; + if (inputStr == "AM") output = CountryCodeAM; + if (inputStr == "AW") output = CountryCodeAW; + if (inputStr == "AU") output = CountryCodeAU; + if (inputStr == "AT") output = CountryCodeAT; + if (inputStr == "AZ") output = CountryCodeAZ; + if (inputStr == "BS") output = CountryCodeBS; + if (inputStr == "BH") output = CountryCodeBH; + if (inputStr == "BD") output = CountryCodeBD; + if (inputStr == "BB") output = CountryCodeBB; + if (inputStr == "BY") output = CountryCodeBY; + if (inputStr == "BE") output = CountryCodeBE; + if (inputStr == "BZ") output = CountryCodeBZ; + if (inputStr == "BJ") output = CountryCodeBJ; + if (inputStr == "BM") output = CountryCodeBM; + if (inputStr == "BT") output = CountryCodeBT; + if (inputStr == "BO") output = CountryCodeBO; + if (inputStr == "BQ") output = CountryCodeBQ; + if (inputStr == "BA") output = CountryCodeBA; + if (inputStr == "BW") output = CountryCodeBW; + if (inputStr == "BV") output = CountryCodeBV; + if (inputStr == "BR") output = CountryCodeBR; + if (inputStr == "IO") output = CountryCodeIO; + if (inputStr == "BN") output = CountryCodeBN; + if (inputStr == "BG") output = CountryCodeBG; + if (inputStr == "BF") output = CountryCodeBF; + if (inputStr == "BI") output = CountryCodeBI; + if (inputStr == "KH") output = CountryCodeKH; + if (inputStr == "CM") output = CountryCodeCM; + if (inputStr == "CA") output = CountryCodeCA; + if (inputStr == "CV") output = CountryCodeCV; + if (inputStr == "KY") output = CountryCodeKY; + if (inputStr == "CF") output = CountryCodeCF; + if (inputStr == "TD") output = CountryCodeTD; + if (inputStr == "CL") output = CountryCodeCL; + if (inputStr == "CN") output = CountryCodeCN; + if (inputStr == "CX") output = CountryCodeCX; + if (inputStr == "CC") output = CountryCodeCC; + if (inputStr == "CO") output = CountryCodeCO; + if (inputStr == "KM") output = CountryCodeKM; + if (inputStr == "CG") output = CountryCodeCG; + if (inputStr == "CD") output = CountryCodeCD; + if (inputStr == "CK") output = CountryCodeCK; + if (inputStr == "CR") output = CountryCodeCR; + if (inputStr == "CI") output = CountryCodeCI; + if (inputStr == "HR") output = CountryCodeHR; + if (inputStr == "CU") output = CountryCodeCU; + if (inputStr == "CW") output = CountryCodeCW; + if (inputStr == "CY") output = CountryCodeCY; + if (inputStr == "CZ") output = CountryCodeCZ; + if (inputStr == "DK") output = CountryCodeDK; + if (inputStr == "DJ") output = CountryCodeDJ; + if (inputStr == "DM") output = CountryCodeDM; + if (inputStr == "DO") output = CountryCodeDO; + if (inputStr == "EC") output = CountryCodeEC; + if (inputStr == "EG") output = CountryCodeEG; + if (inputStr == "SV") output = CountryCodeSV; + if (inputStr == "GQ") output = CountryCodeGQ; + if (inputStr == "ER") output = CountryCodeER; + if (inputStr == "EE") output = CountryCodeEE; + if (inputStr == "ET") output = CountryCodeET; + if (inputStr == "FK") output = CountryCodeFK; + if (inputStr == "FO") output = CountryCodeFO; + if (inputStr == "FJ") output = CountryCodeFJ; + if (inputStr == "FI") output = CountryCodeFI; + if (inputStr == "FR") output = CountryCodeFR; + if (inputStr == "GF") output = CountryCodeGF; + if (inputStr == "PF") output = CountryCodePF; + if (inputStr == "TF") output = CountryCodeTF; + if (inputStr == "GA") output = CountryCodeGA; + if (inputStr == "GM") output = CountryCodeGM; + if (inputStr == "GE") output = CountryCodeGE; + if (inputStr == "DE") output = CountryCodeDE; + if (inputStr == "GH") output = CountryCodeGH; + if (inputStr == "GI") output = CountryCodeGI; + if (inputStr == "GR") output = CountryCodeGR; + if (inputStr == "GL") output = CountryCodeGL; + if (inputStr == "GD") output = CountryCodeGD; + if (inputStr == "GP") output = CountryCodeGP; + if (inputStr == "GU") output = CountryCodeGU; + if (inputStr == "GT") output = CountryCodeGT; + if (inputStr == "GG") output = CountryCodeGG; + if (inputStr == "GN") output = CountryCodeGN; + if (inputStr == "GW") output = CountryCodeGW; + if (inputStr == "GY") output = CountryCodeGY; + if (inputStr == "HT") output = CountryCodeHT; + if (inputStr == "HM") output = CountryCodeHM; + if (inputStr == "VA") output = CountryCodeVA; + if (inputStr == "HN") output = CountryCodeHN; + if (inputStr == "HK") output = CountryCodeHK; + if (inputStr == "HU") output = CountryCodeHU; + if (inputStr == "IS") output = CountryCodeIS; + if (inputStr == "IN") output = CountryCodeIN; + if (inputStr == "ID") output = CountryCodeID; + if (inputStr == "IR") output = CountryCodeIR; + if (inputStr == "IQ") output = CountryCodeIQ; + if (inputStr == "IE") output = CountryCodeIE; + if (inputStr == "IM") output = CountryCodeIM; + if (inputStr == "IL") output = CountryCodeIL; + if (inputStr == "IT") output = CountryCodeIT; + if (inputStr == "JM") output = CountryCodeJM; + if (inputStr == "JP") output = CountryCodeJP; + if (inputStr == "JE") output = CountryCodeJE; + if (inputStr == "JO") output = CountryCodeJO; + if (inputStr == "KZ") output = CountryCodeKZ; + if (inputStr == "KE") output = CountryCodeKE; + if (inputStr == "KI") output = CountryCodeKI; + if (inputStr == "KP") output = CountryCodeKP; + if (inputStr == "KR") output = CountryCodeKR; + if (inputStr == "KW") output = CountryCodeKW; + if (inputStr == "KG") output = CountryCodeKG; + if (inputStr == "LA") output = CountryCodeLA; + if (inputStr == "LV") output = CountryCodeLV; + if (inputStr == "LB") output = CountryCodeLB; + if (inputStr == "LS") output = CountryCodeLS; + if (inputStr == "LR") output = CountryCodeLR; + if (inputStr == "LY") output = CountryCodeLY; + if (inputStr == "LI") output = CountryCodeLI; + if (inputStr == "LT") output = CountryCodeLT; + if (inputStr == "LU") output = CountryCodeLU; + if (inputStr == "MO") output = CountryCodeMO; + if (inputStr == "MK") output = CountryCodeMK; + if (inputStr == "MG") output = CountryCodeMG; + if (inputStr == "MW") output = CountryCodeMW; + if (inputStr == "MY") output = CountryCodeMY; + if (inputStr == "MV") output = CountryCodeMV; + if (inputStr == "ML") output = CountryCodeML; + if (inputStr == "MT") output = CountryCodeMT; + if (inputStr == "MH") output = CountryCodeMH; + if (inputStr == "MQ") output = CountryCodeMQ; + if (inputStr == "MR") output = CountryCodeMR; + if (inputStr == "MU") output = CountryCodeMU; + if (inputStr == "YT") output = CountryCodeYT; + if (inputStr == "MX") output = CountryCodeMX; + if (inputStr == "FM") output = CountryCodeFM; + if (inputStr == "MD") output = CountryCodeMD; + if (inputStr == "MC") output = CountryCodeMC; + if (inputStr == "MN") output = CountryCodeMN; + if (inputStr == "ME") output = CountryCodeME; + if (inputStr == "MS") output = CountryCodeMS; + if (inputStr == "MA") output = CountryCodeMA; + if (inputStr == "MZ") output = CountryCodeMZ; + if (inputStr == "MM") output = CountryCodeMM; + if (inputStr == "NA") output = CountryCodeNA; + if (inputStr == "NR") output = CountryCodeNR; + if (inputStr == "NP") output = CountryCodeNP; + if (inputStr == "NL") output = CountryCodeNL; + if (inputStr == "NC") output = CountryCodeNC; + if (inputStr == "NZ") output = CountryCodeNZ; + if (inputStr == "NI") output = CountryCodeNI; + if (inputStr == "NE") output = CountryCodeNE; + if (inputStr == "NG") output = CountryCodeNG; + if (inputStr == "NU") output = CountryCodeNU; + if (inputStr == "NF") output = CountryCodeNF; + if (inputStr == "MP") output = CountryCodeMP; + if (inputStr == "NO") output = CountryCodeNO; + if (inputStr == "OM") output = CountryCodeOM; + if (inputStr == "PK") output = CountryCodePK; + if (inputStr == "PW") output = CountryCodePW; + if (inputStr == "PS") output = CountryCodePS; + if (inputStr == "PA") output = CountryCodePA; + if (inputStr == "PG") output = CountryCodePG; + if (inputStr == "PY") output = CountryCodePY; + if (inputStr == "PE") output = CountryCodePE; + if (inputStr == "PH") output = CountryCodePH; + if (inputStr == "PN") output = CountryCodePN; + if (inputStr == "PL") output = CountryCodePL; + if (inputStr == "PT") output = CountryCodePT; + if (inputStr == "PR") output = CountryCodePR; + if (inputStr == "QA") output = CountryCodeQA; + if (inputStr == "RE") output = CountryCodeRE; + if (inputStr == "RO") output = CountryCodeRO; + if (inputStr == "RU") output = CountryCodeRU; + if (inputStr == "RW") output = CountryCodeRW; + if (inputStr == "BL") output = CountryCodeBL; + if (inputStr == "SH") output = CountryCodeSH; + if (inputStr == "KN") output = CountryCodeKN; + if (inputStr == "LC") output = CountryCodeLC; + if (inputStr == "MF") output = CountryCodeMF; + if (inputStr == "PM") output = CountryCodePM; + if (inputStr == "VC") output = CountryCodeVC; + if (inputStr == "WS") output = CountryCodeWS; + if (inputStr == "SM") output = CountryCodeSM; + if (inputStr == "ST") output = CountryCodeST; + if (inputStr == "SA") output = CountryCodeSA; + if (inputStr == "SN") output = CountryCodeSN; + if (inputStr == "RS") output = CountryCodeRS; + if (inputStr == "SC") output = CountryCodeSC; + if (inputStr == "SL") output = CountryCodeSL; + if (inputStr == "SG") output = CountryCodeSG; + if (inputStr == "SX") output = CountryCodeSX; + if (inputStr == "SK") output = CountryCodeSK; + if (inputStr == "SI") output = CountryCodeSI; + if (inputStr == "SB") output = CountryCodeSB; + if (inputStr == "SO") output = CountryCodeSO; + if (inputStr == "ZA") output = CountryCodeZA; + if (inputStr == "GS") output = CountryCodeGS; + if (inputStr == "SS") output = CountryCodeSS; + if (inputStr == "ES") output = CountryCodeES; + if (inputStr == "LK") output = CountryCodeLK; + if (inputStr == "SD") output = CountryCodeSD; + if (inputStr == "SR") output = CountryCodeSR; + if (inputStr == "SJ") output = CountryCodeSJ; + if (inputStr == "SZ") output = CountryCodeSZ; + if (inputStr == "SE") output = CountryCodeSE; + if (inputStr == "CH") output = CountryCodeCH; + if (inputStr == "SY") output = CountryCodeSY; + if (inputStr == "TW") output = CountryCodeTW; + if (inputStr == "TJ") output = CountryCodeTJ; + if (inputStr == "TZ") output = CountryCodeTZ; + if (inputStr == "TH") output = CountryCodeTH; + if (inputStr == "TL") output = CountryCodeTL; + if (inputStr == "TG") output = CountryCodeTG; + if (inputStr == "TK") output = CountryCodeTK; + if (inputStr == "TO") output = CountryCodeTO; + if (inputStr == "TT") output = CountryCodeTT; + if (inputStr == "TN") output = CountryCodeTN; + if (inputStr == "TR") output = CountryCodeTR; + if (inputStr == "TM") output = CountryCodeTM; + if (inputStr == "TC") output = CountryCodeTC; + if (inputStr == "TV") output = CountryCodeTV; + if (inputStr == "UG") output = CountryCodeUG; + if (inputStr == "UA") output = CountryCodeUA; + if (inputStr == "AE") output = CountryCodeAE; + if (inputStr == "GB") output = CountryCodeGB; + if (inputStr == "US") output = CountryCodeUS; + if (inputStr == "UM") output = CountryCodeUM; + if (inputStr == "UY") output = CountryCodeUY; + if (inputStr == "UZ") output = CountryCodeUZ; + if (inputStr == "VU") output = CountryCodeVU; + if (inputStr == "VE") output = CountryCodeVE; + if (inputStr == "VN") output = CountryCodeVN; + if (inputStr == "VG") output = CountryCodeVG; + if (inputStr == "VI") output = CountryCodeVI; + if (inputStr == "WF") output = CountryCodeWF; + if (inputStr == "EH") output = CountryCodeEH; + if (inputStr == "YE") output = CountryCodeYE; + if (inputStr == "ZM") output = CountryCodeZM; + if (inputStr == "ZW") output = CountryCodeZW; + } + + enum Currency + { + CurrencyAED, + CurrencyAFN, + CurrencyALL, + CurrencyAMD, + CurrencyANG, + CurrencyAOA, + CurrencyARS, + CurrencyAUD, + CurrencyAWG, + CurrencyAZN, + CurrencyBAM, + CurrencyBBD, + CurrencyBDT, + CurrencyBGN, + CurrencyBHD, + CurrencyBIF, + CurrencyBMD, + CurrencyBND, + CurrencyBOB, + CurrencyBRL, + CurrencyBSD, + CurrencyBTN, + CurrencyBWP, + CurrencyBYR, + CurrencyBZD, + CurrencyCAD, + CurrencyCDF, + CurrencyCHF, + CurrencyCLP, + CurrencyCNY, + CurrencyCOP, + CurrencyCRC, + CurrencyCUC, + CurrencyCUP, + CurrencyCVE, + CurrencyCZK, + CurrencyDJF, + CurrencyDKK, + CurrencyDOP, + CurrencyDZD, + CurrencyEGP, + CurrencyERN, + CurrencyETB, + CurrencyEUR, + CurrencyFJD, + CurrencyFKP, + CurrencyGBP, + CurrencyGEL, + CurrencyGGP, + CurrencyGHS, + CurrencyGIP, + CurrencyGMD, + CurrencyGNF, + CurrencyGTQ, + CurrencyGYD, + CurrencyHKD, + CurrencyHNL, + CurrencyHRK, + CurrencyHTG, + CurrencyHUF, + CurrencyIDR, + CurrencyILS, + CurrencyIMP, + CurrencyINR, + CurrencyIQD, + CurrencyIRR, + CurrencyISK, + CurrencyJEP, + CurrencyJMD, + CurrencyJOD, + CurrencyJPY, + CurrencyKES, + CurrencyKGS, + CurrencyKHR, + CurrencyKMF, + CurrencyKPW, + CurrencyKRW, + CurrencyKWD, + CurrencyKYD, + CurrencyKZT, + CurrencyLAK, + CurrencyLBP, + CurrencyLKR, + CurrencyLRD, + CurrencyLSL, + CurrencyLYD, + CurrencyMAD, + CurrencyMDL, + CurrencyMGA, + CurrencyMKD, + CurrencyMMK, + CurrencyMNT, + CurrencyMOP, + CurrencyMRO, + CurrencyMUR, + CurrencyMVR, + CurrencyMWK, + CurrencyMXN, + CurrencyMYR, + CurrencyMZN, + CurrencyNAD, + CurrencyNGN, + CurrencyNIO, + CurrencyNOK, + CurrencyNPR, + CurrencyNZD, + CurrencyOMR, + CurrencyPAB, + CurrencyPEN, + CurrencyPGK, + CurrencyPHP, + CurrencyPKR, + CurrencyPLN, + CurrencyPYG, + CurrencyQAR, + CurrencyRON, + CurrencyRSD, + CurrencyRUB, + CurrencyRWF, + CurrencySAR, + CurrencySBD, + CurrencySCR, + CurrencySDG, + CurrencySEK, + CurrencySGD, + CurrencySHP, + CurrencySLL, + CurrencySOS, + CurrencySPL, + CurrencySRD, + CurrencySTD, + CurrencySVC, + CurrencySYP, + CurrencySZL, + CurrencyTHB, + CurrencyTJS, + CurrencyTMT, + CurrencyTND, + CurrencyTOP, + CurrencyTRY, + CurrencyTTD, + CurrencyTVD, + CurrencyTWD, + CurrencyTZS, + CurrencyUAH, + CurrencyUGX, + CurrencyUSD, + CurrencyUYU, + CurrencyUZS, + CurrencyVEF, + CurrencyVND, + CurrencyVUV, + CurrencyWST, + CurrencyXAF, + CurrencyXCD, + CurrencyXDR, + CurrencyXOF, + CurrencyXPF, + CurrencyYER, + CurrencyZAR, + CurrencyZMW, + CurrencyZWD + }; + + inline void ToJsonEnum(const Currency input, Json::Value& output) + { + if (input == CurrencyAED) output = Json::Value("AED"); + if (input == CurrencyAFN) output = Json::Value("AFN"); + if (input == CurrencyALL) output = Json::Value("ALL"); + if (input == CurrencyAMD) output = Json::Value("AMD"); + if (input == CurrencyANG) output = Json::Value("ANG"); + if (input == CurrencyAOA) output = Json::Value("AOA"); + if (input == CurrencyARS) output = Json::Value("ARS"); + if (input == CurrencyAUD) output = Json::Value("AUD"); + if (input == CurrencyAWG) output = Json::Value("AWG"); + if (input == CurrencyAZN) output = Json::Value("AZN"); + if (input == CurrencyBAM) output = Json::Value("BAM"); + if (input == CurrencyBBD) output = Json::Value("BBD"); + if (input == CurrencyBDT) output = Json::Value("BDT"); + if (input == CurrencyBGN) output = Json::Value("BGN"); + if (input == CurrencyBHD) output = Json::Value("BHD"); + if (input == CurrencyBIF) output = Json::Value("BIF"); + if (input == CurrencyBMD) output = Json::Value("BMD"); + if (input == CurrencyBND) output = Json::Value("BND"); + if (input == CurrencyBOB) output = Json::Value("BOB"); + if (input == CurrencyBRL) output = Json::Value("BRL"); + if (input == CurrencyBSD) output = Json::Value("BSD"); + if (input == CurrencyBTN) output = Json::Value("BTN"); + if (input == CurrencyBWP) output = Json::Value("BWP"); + if (input == CurrencyBYR) output = Json::Value("BYR"); + if (input == CurrencyBZD) output = Json::Value("BZD"); + if (input == CurrencyCAD) output = Json::Value("CAD"); + if (input == CurrencyCDF) output = Json::Value("CDF"); + if (input == CurrencyCHF) output = Json::Value("CHF"); + if (input == CurrencyCLP) output = Json::Value("CLP"); + if (input == CurrencyCNY) output = Json::Value("CNY"); + if (input == CurrencyCOP) output = Json::Value("COP"); + if (input == CurrencyCRC) output = Json::Value("CRC"); + if (input == CurrencyCUC) output = Json::Value("CUC"); + if (input == CurrencyCUP) output = Json::Value("CUP"); + if (input == CurrencyCVE) output = Json::Value("CVE"); + if (input == CurrencyCZK) output = Json::Value("CZK"); + if (input == CurrencyDJF) output = Json::Value("DJF"); + if (input == CurrencyDKK) output = Json::Value("DKK"); + if (input == CurrencyDOP) output = Json::Value("DOP"); + if (input == CurrencyDZD) output = Json::Value("DZD"); + if (input == CurrencyEGP) output = Json::Value("EGP"); + if (input == CurrencyERN) output = Json::Value("ERN"); + if (input == CurrencyETB) output = Json::Value("ETB"); + if (input == CurrencyEUR) output = Json::Value("EUR"); + if (input == CurrencyFJD) output = Json::Value("FJD"); + if (input == CurrencyFKP) output = Json::Value("FKP"); + if (input == CurrencyGBP) output = Json::Value("GBP"); + if (input == CurrencyGEL) output = Json::Value("GEL"); + if (input == CurrencyGGP) output = Json::Value("GGP"); + if (input == CurrencyGHS) output = Json::Value("GHS"); + if (input == CurrencyGIP) output = Json::Value("GIP"); + if (input == CurrencyGMD) output = Json::Value("GMD"); + if (input == CurrencyGNF) output = Json::Value("GNF"); + if (input == CurrencyGTQ) output = Json::Value("GTQ"); + if (input == CurrencyGYD) output = Json::Value("GYD"); + if (input == CurrencyHKD) output = Json::Value("HKD"); + if (input == CurrencyHNL) output = Json::Value("HNL"); + if (input == CurrencyHRK) output = Json::Value("HRK"); + if (input == CurrencyHTG) output = Json::Value("HTG"); + if (input == CurrencyHUF) output = Json::Value("HUF"); + if (input == CurrencyIDR) output = Json::Value("IDR"); + if (input == CurrencyILS) output = Json::Value("ILS"); + if (input == CurrencyIMP) output = Json::Value("IMP"); + if (input == CurrencyINR) output = Json::Value("INR"); + if (input == CurrencyIQD) output = Json::Value("IQD"); + if (input == CurrencyIRR) output = Json::Value("IRR"); + if (input == CurrencyISK) output = Json::Value("ISK"); + if (input == CurrencyJEP) output = Json::Value("JEP"); + if (input == CurrencyJMD) output = Json::Value("JMD"); + if (input == CurrencyJOD) output = Json::Value("JOD"); + if (input == CurrencyJPY) output = Json::Value("JPY"); + if (input == CurrencyKES) output = Json::Value("KES"); + if (input == CurrencyKGS) output = Json::Value("KGS"); + if (input == CurrencyKHR) output = Json::Value("KHR"); + if (input == CurrencyKMF) output = Json::Value("KMF"); + if (input == CurrencyKPW) output = Json::Value("KPW"); + if (input == CurrencyKRW) output = Json::Value("KRW"); + if (input == CurrencyKWD) output = Json::Value("KWD"); + if (input == CurrencyKYD) output = Json::Value("KYD"); + if (input == CurrencyKZT) output = Json::Value("KZT"); + if (input == CurrencyLAK) output = Json::Value("LAK"); + if (input == CurrencyLBP) output = Json::Value("LBP"); + if (input == CurrencyLKR) output = Json::Value("LKR"); + if (input == CurrencyLRD) output = Json::Value("LRD"); + if (input == CurrencyLSL) output = Json::Value("LSL"); + if (input == CurrencyLYD) output = Json::Value("LYD"); + if (input == CurrencyMAD) output = Json::Value("MAD"); + if (input == CurrencyMDL) output = Json::Value("MDL"); + if (input == CurrencyMGA) output = Json::Value("MGA"); + if (input == CurrencyMKD) output = Json::Value("MKD"); + if (input == CurrencyMMK) output = Json::Value("MMK"); + if (input == CurrencyMNT) output = Json::Value("MNT"); + if (input == CurrencyMOP) output = Json::Value("MOP"); + if (input == CurrencyMRO) output = Json::Value("MRO"); + if (input == CurrencyMUR) output = Json::Value("MUR"); + if (input == CurrencyMVR) output = Json::Value("MVR"); + if (input == CurrencyMWK) output = Json::Value("MWK"); + if (input == CurrencyMXN) output = Json::Value("MXN"); + if (input == CurrencyMYR) output = Json::Value("MYR"); + if (input == CurrencyMZN) output = Json::Value("MZN"); + if (input == CurrencyNAD) output = Json::Value("NAD"); + if (input == CurrencyNGN) output = Json::Value("NGN"); + if (input == CurrencyNIO) output = Json::Value("NIO"); + if (input == CurrencyNOK) output = Json::Value("NOK"); + if (input == CurrencyNPR) output = Json::Value("NPR"); + if (input == CurrencyNZD) output = Json::Value("NZD"); + if (input == CurrencyOMR) output = Json::Value("OMR"); + if (input == CurrencyPAB) output = Json::Value("PAB"); + if (input == CurrencyPEN) output = Json::Value("PEN"); + if (input == CurrencyPGK) output = Json::Value("PGK"); + if (input == CurrencyPHP) output = Json::Value("PHP"); + if (input == CurrencyPKR) output = Json::Value("PKR"); + if (input == CurrencyPLN) output = Json::Value("PLN"); + if (input == CurrencyPYG) output = Json::Value("PYG"); + if (input == CurrencyQAR) output = Json::Value("QAR"); + if (input == CurrencyRON) output = Json::Value("RON"); + if (input == CurrencyRSD) output = Json::Value("RSD"); + if (input == CurrencyRUB) output = Json::Value("RUB"); + if (input == CurrencyRWF) output = Json::Value("RWF"); + if (input == CurrencySAR) output = Json::Value("SAR"); + if (input == CurrencySBD) output = Json::Value("SBD"); + if (input == CurrencySCR) output = Json::Value("SCR"); + if (input == CurrencySDG) output = Json::Value("SDG"); + if (input == CurrencySEK) output = Json::Value("SEK"); + if (input == CurrencySGD) output = Json::Value("SGD"); + if (input == CurrencySHP) output = Json::Value("SHP"); + if (input == CurrencySLL) output = Json::Value("SLL"); + if (input == CurrencySOS) output = Json::Value("SOS"); + if (input == CurrencySPL) output = Json::Value("SPL"); + if (input == CurrencySRD) output = Json::Value("SRD"); + if (input == CurrencySTD) output = Json::Value("STD"); + if (input == CurrencySVC) output = Json::Value("SVC"); + if (input == CurrencySYP) output = Json::Value("SYP"); + if (input == CurrencySZL) output = Json::Value("SZL"); + if (input == CurrencyTHB) output = Json::Value("THB"); + if (input == CurrencyTJS) output = Json::Value("TJS"); + if (input == CurrencyTMT) output = Json::Value("TMT"); + if (input == CurrencyTND) output = Json::Value("TND"); + if (input == CurrencyTOP) output = Json::Value("TOP"); + if (input == CurrencyTRY) output = Json::Value("TRY"); + if (input == CurrencyTTD) output = Json::Value("TTD"); + if (input == CurrencyTVD) output = Json::Value("TVD"); + if (input == CurrencyTWD) output = Json::Value("TWD"); + if (input == CurrencyTZS) output = Json::Value("TZS"); + if (input == CurrencyUAH) output = Json::Value("UAH"); + if (input == CurrencyUGX) output = Json::Value("UGX"); + if (input == CurrencyUSD) output = Json::Value("USD"); + if (input == CurrencyUYU) output = Json::Value("UYU"); + if (input == CurrencyUZS) output = Json::Value("UZS"); + if (input == CurrencyVEF) output = Json::Value("VEF"); + if (input == CurrencyVND) output = Json::Value("VND"); + if (input == CurrencyVUV) output = Json::Value("VUV"); + if (input == CurrencyWST) output = Json::Value("WST"); + if (input == CurrencyXAF) output = Json::Value("XAF"); + if (input == CurrencyXCD) output = Json::Value("XCD"); + if (input == CurrencyXDR) output = Json::Value("XDR"); + if (input == CurrencyXOF) output = Json::Value("XOF"); + if (input == CurrencyXPF) output = Json::Value("XPF"); + if (input == CurrencyYER) output = Json::Value("YER"); + if (input == CurrencyZAR) output = Json::Value("ZAR"); + if (input == CurrencyZMW) output = Json::Value("ZMW"); + if (input == CurrencyZWD) output = Json::Value("ZWD"); + } + inline void FromJsonEnum(const Json::Value& input, Currency& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "AED") output = CurrencyAED; + if (inputStr == "AFN") output = CurrencyAFN; + if (inputStr == "ALL") output = CurrencyALL; + if (inputStr == "AMD") output = CurrencyAMD; + if (inputStr == "ANG") output = CurrencyANG; + if (inputStr == "AOA") output = CurrencyAOA; + if (inputStr == "ARS") output = CurrencyARS; + if (inputStr == "AUD") output = CurrencyAUD; + if (inputStr == "AWG") output = CurrencyAWG; + if (inputStr == "AZN") output = CurrencyAZN; + if (inputStr == "BAM") output = CurrencyBAM; + if (inputStr == "BBD") output = CurrencyBBD; + if (inputStr == "BDT") output = CurrencyBDT; + if (inputStr == "BGN") output = CurrencyBGN; + if (inputStr == "BHD") output = CurrencyBHD; + if (inputStr == "BIF") output = CurrencyBIF; + if (inputStr == "BMD") output = CurrencyBMD; + if (inputStr == "BND") output = CurrencyBND; + if (inputStr == "BOB") output = CurrencyBOB; + if (inputStr == "BRL") output = CurrencyBRL; + if (inputStr == "BSD") output = CurrencyBSD; + if (inputStr == "BTN") output = CurrencyBTN; + if (inputStr == "BWP") output = CurrencyBWP; + if (inputStr == "BYR") output = CurrencyBYR; + if (inputStr == "BZD") output = CurrencyBZD; + if (inputStr == "CAD") output = CurrencyCAD; + if (inputStr == "CDF") output = CurrencyCDF; + if (inputStr == "CHF") output = CurrencyCHF; + if (inputStr == "CLP") output = CurrencyCLP; + if (inputStr == "CNY") output = CurrencyCNY; + if (inputStr == "COP") output = CurrencyCOP; + if (inputStr == "CRC") output = CurrencyCRC; + if (inputStr == "CUC") output = CurrencyCUC; + if (inputStr == "CUP") output = CurrencyCUP; + if (inputStr == "CVE") output = CurrencyCVE; + if (inputStr == "CZK") output = CurrencyCZK; + if (inputStr == "DJF") output = CurrencyDJF; + if (inputStr == "DKK") output = CurrencyDKK; + if (inputStr == "DOP") output = CurrencyDOP; + if (inputStr == "DZD") output = CurrencyDZD; + if (inputStr == "EGP") output = CurrencyEGP; + if (inputStr == "ERN") output = CurrencyERN; + if (inputStr == "ETB") output = CurrencyETB; + if (inputStr == "EUR") output = CurrencyEUR; + if (inputStr == "FJD") output = CurrencyFJD; + if (inputStr == "FKP") output = CurrencyFKP; + if (inputStr == "GBP") output = CurrencyGBP; + if (inputStr == "GEL") output = CurrencyGEL; + if (inputStr == "GGP") output = CurrencyGGP; + if (inputStr == "GHS") output = CurrencyGHS; + if (inputStr == "GIP") output = CurrencyGIP; + if (inputStr == "GMD") output = CurrencyGMD; + if (inputStr == "GNF") output = CurrencyGNF; + if (inputStr == "GTQ") output = CurrencyGTQ; + if (inputStr == "GYD") output = CurrencyGYD; + if (inputStr == "HKD") output = CurrencyHKD; + if (inputStr == "HNL") output = CurrencyHNL; + if (inputStr == "HRK") output = CurrencyHRK; + if (inputStr == "HTG") output = CurrencyHTG; + if (inputStr == "HUF") output = CurrencyHUF; + if (inputStr == "IDR") output = CurrencyIDR; + if (inputStr == "ILS") output = CurrencyILS; + if (inputStr == "IMP") output = CurrencyIMP; + if (inputStr == "INR") output = CurrencyINR; + if (inputStr == "IQD") output = CurrencyIQD; + if (inputStr == "IRR") output = CurrencyIRR; + if (inputStr == "ISK") output = CurrencyISK; + if (inputStr == "JEP") output = CurrencyJEP; + if (inputStr == "JMD") output = CurrencyJMD; + if (inputStr == "JOD") output = CurrencyJOD; + if (inputStr == "JPY") output = CurrencyJPY; + if (inputStr == "KES") output = CurrencyKES; + if (inputStr == "KGS") output = CurrencyKGS; + if (inputStr == "KHR") output = CurrencyKHR; + if (inputStr == "KMF") output = CurrencyKMF; + if (inputStr == "KPW") output = CurrencyKPW; + if (inputStr == "KRW") output = CurrencyKRW; + if (inputStr == "KWD") output = CurrencyKWD; + if (inputStr == "KYD") output = CurrencyKYD; + if (inputStr == "KZT") output = CurrencyKZT; + if (inputStr == "LAK") output = CurrencyLAK; + if (inputStr == "LBP") output = CurrencyLBP; + if (inputStr == "LKR") output = CurrencyLKR; + if (inputStr == "LRD") output = CurrencyLRD; + if (inputStr == "LSL") output = CurrencyLSL; + if (inputStr == "LYD") output = CurrencyLYD; + if (inputStr == "MAD") output = CurrencyMAD; + if (inputStr == "MDL") output = CurrencyMDL; + if (inputStr == "MGA") output = CurrencyMGA; + if (inputStr == "MKD") output = CurrencyMKD; + if (inputStr == "MMK") output = CurrencyMMK; + if (inputStr == "MNT") output = CurrencyMNT; + if (inputStr == "MOP") output = CurrencyMOP; + if (inputStr == "MRO") output = CurrencyMRO; + if (inputStr == "MUR") output = CurrencyMUR; + if (inputStr == "MVR") output = CurrencyMVR; + if (inputStr == "MWK") output = CurrencyMWK; + if (inputStr == "MXN") output = CurrencyMXN; + if (inputStr == "MYR") output = CurrencyMYR; + if (inputStr == "MZN") output = CurrencyMZN; + if (inputStr == "NAD") output = CurrencyNAD; + if (inputStr == "NGN") output = CurrencyNGN; + if (inputStr == "NIO") output = CurrencyNIO; + if (inputStr == "NOK") output = CurrencyNOK; + if (inputStr == "NPR") output = CurrencyNPR; + if (inputStr == "NZD") output = CurrencyNZD; + if (inputStr == "OMR") output = CurrencyOMR; + if (inputStr == "PAB") output = CurrencyPAB; + if (inputStr == "PEN") output = CurrencyPEN; + if (inputStr == "PGK") output = CurrencyPGK; + if (inputStr == "PHP") output = CurrencyPHP; + if (inputStr == "PKR") output = CurrencyPKR; + if (inputStr == "PLN") output = CurrencyPLN; + if (inputStr == "PYG") output = CurrencyPYG; + if (inputStr == "QAR") output = CurrencyQAR; + if (inputStr == "RON") output = CurrencyRON; + if (inputStr == "RSD") output = CurrencyRSD; + if (inputStr == "RUB") output = CurrencyRUB; + if (inputStr == "RWF") output = CurrencyRWF; + if (inputStr == "SAR") output = CurrencySAR; + if (inputStr == "SBD") output = CurrencySBD; + if (inputStr == "SCR") output = CurrencySCR; + if (inputStr == "SDG") output = CurrencySDG; + if (inputStr == "SEK") output = CurrencySEK; + if (inputStr == "SGD") output = CurrencySGD; + if (inputStr == "SHP") output = CurrencySHP; + if (inputStr == "SLL") output = CurrencySLL; + if (inputStr == "SOS") output = CurrencySOS; + if (inputStr == "SPL") output = CurrencySPL; + if (inputStr == "SRD") output = CurrencySRD; + if (inputStr == "STD") output = CurrencySTD; + if (inputStr == "SVC") output = CurrencySVC; + if (inputStr == "SYP") output = CurrencySYP; + if (inputStr == "SZL") output = CurrencySZL; + if (inputStr == "THB") output = CurrencyTHB; + if (inputStr == "TJS") output = CurrencyTJS; + if (inputStr == "TMT") output = CurrencyTMT; + if (inputStr == "TND") output = CurrencyTND; + if (inputStr == "TOP") output = CurrencyTOP; + if (inputStr == "TRY") output = CurrencyTRY; + if (inputStr == "TTD") output = CurrencyTTD; + if (inputStr == "TVD") output = CurrencyTVD; + if (inputStr == "TWD") output = CurrencyTWD; + if (inputStr == "TZS") output = CurrencyTZS; + if (inputStr == "UAH") output = CurrencyUAH; + if (inputStr == "UGX") output = CurrencyUGX; + if (inputStr == "USD") output = CurrencyUSD; + if (inputStr == "UYU") output = CurrencyUYU; + if (inputStr == "UZS") output = CurrencyUZS; + if (inputStr == "VEF") output = CurrencyVEF; + if (inputStr == "VND") output = CurrencyVND; + if (inputStr == "VUV") output = CurrencyVUV; + if (inputStr == "WST") output = CurrencyWST; + if (inputStr == "XAF") output = CurrencyXAF; + if (inputStr == "XCD") output = CurrencyXCD; + if (inputStr == "XDR") output = CurrencyXDR; + if (inputStr == "XOF") output = CurrencyXOF; + if (inputStr == "XPF") output = CurrencyXPF; + if (inputStr == "YER") output = CurrencyYER; + if (inputStr == "ZAR") output = CurrencyZAR; + if (inputStr == "ZMW") output = CurrencyZMW; + if (inputStr == "ZWD") output = CurrencyZWD; + } + + enum EmailVerificationStatus + { + EmailVerificationStatusUnverified, + EmailVerificationStatusPending, + EmailVerificationStatusConfirmed + }; + + inline void ToJsonEnum(const EmailVerificationStatus input, Json::Value& output) + { + if (input == EmailVerificationStatusUnverified) output = Json::Value("Unverified"); + if (input == EmailVerificationStatusPending) output = Json::Value("Pending"); + if (input == EmailVerificationStatusConfirmed) output = Json::Value("Confirmed"); + } + inline void FromJsonEnum(const Json::Value& input, EmailVerificationStatus& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Unverified") output = EmailVerificationStatusUnverified; + if (inputStr == "Pending") output = EmailVerificationStatusPending; + if (inputStr == "Confirmed") output = EmailVerificationStatusConfirmed; + } + + enum EntityTypes + { + EntityTypestitle, + EntityTypesmaster_player_account, + EntityTypestitle_player_account, + EntityTypescharacter, + EntityTypesgroup + }; + + inline void ToJsonEnum(const EntityTypes input, Json::Value& output) + { + if (input == EntityTypestitle) output = Json::Value("title"); + if (input == EntityTypesmaster_player_account) output = Json::Value("master_player_account"); + if (input == EntityTypestitle_player_account) output = Json::Value("title_player_account"); + if (input == EntityTypescharacter) output = Json::Value("character"); + if (input == EntityTypesgroup) output = Json::Value("group"); + } + inline void FromJsonEnum(const Json::Value& input, EntityTypes& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "title") output = EntityTypestitle; + if (inputStr == "master_player_account") output = EntityTypesmaster_player_account; + if (inputStr == "title_player_account") output = EntityTypestitle_player_account; + if (inputStr == "character") output = EntityTypescharacter; + if (inputStr == "group") output = EntityTypesgroup; + } + + enum GameInstanceState + { + GameInstanceStateOpen, + GameInstanceStateClosed + }; + + inline void ToJsonEnum(const GameInstanceState input, Json::Value& output) + { + if (input == GameInstanceStateOpen) output = Json::Value("Open"); + if (input == GameInstanceStateClosed) output = Json::Value("Closed"); + } + inline void FromJsonEnum(const Json::Value& input, GameInstanceState& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Open") output = GameInstanceStateOpen; + if (inputStr == "Closed") output = GameInstanceStateClosed; + } + + enum GenericErrorCodes + { + GenericErrorCodesSuccess, + GenericErrorCodesInvalidParams, + GenericErrorCodesAccountNotFound, + GenericErrorCodesAccountBanned, + GenericErrorCodesInvalidUsernameOrPassword, + GenericErrorCodesInvalidTitleId, + GenericErrorCodesInvalidEmailAddress, + GenericErrorCodesEmailAddressNotAvailable, + GenericErrorCodesInvalidUsername, + GenericErrorCodesInvalidPassword, + GenericErrorCodesUsernameNotAvailable, + GenericErrorCodesInvalidSteamTicket, + GenericErrorCodesAccountAlreadyLinked, + GenericErrorCodesLinkedAccountAlreadyClaimed, + GenericErrorCodesInvalidFacebookToken, + GenericErrorCodesAccountNotLinked, + GenericErrorCodesFailedByPaymentProvider, + GenericErrorCodesCouponCodeNotFound, + GenericErrorCodesInvalidContainerItem, + GenericErrorCodesContainerNotOwned, + GenericErrorCodesKeyNotOwned, + GenericErrorCodesInvalidItemIdInTable, + GenericErrorCodesInvalidReceipt, + GenericErrorCodesReceiptAlreadyUsed, + GenericErrorCodesReceiptCancelled, + GenericErrorCodesGameNotFound, + GenericErrorCodesGameModeNotFound, + GenericErrorCodesInvalidGoogleToken, + GenericErrorCodesUserIsNotPartOfDeveloper, + GenericErrorCodesInvalidTitleForDeveloper, + GenericErrorCodesTitleNameConflicts, + GenericErrorCodesUserisNotValid, + GenericErrorCodesValueAlreadyExists, + GenericErrorCodesBuildNotFound, + GenericErrorCodesPlayerNotInGame, + GenericErrorCodesInvalidTicket, + GenericErrorCodesInvalidDeveloper, + GenericErrorCodesInvalidOrderInfo, + GenericErrorCodesRegistrationIncomplete, + GenericErrorCodesInvalidPlatform, + GenericErrorCodesUnknownError, + GenericErrorCodesSteamApplicationNotOwned, + GenericErrorCodesWrongSteamAccount, + GenericErrorCodesTitleNotActivated, + GenericErrorCodesRegistrationSessionNotFound, + GenericErrorCodesNoSuchMod, + GenericErrorCodesFileNotFound, + GenericErrorCodesDuplicateEmail, + GenericErrorCodesItemNotFound, + GenericErrorCodesItemNotOwned, + GenericErrorCodesItemNotRecycleable, + GenericErrorCodesItemNotAffordable, + GenericErrorCodesInvalidVirtualCurrency, + GenericErrorCodesWrongVirtualCurrency, + GenericErrorCodesWrongPrice, + GenericErrorCodesNonPositiveValue, + GenericErrorCodesInvalidRegion, + GenericErrorCodesRegionAtCapacity, + GenericErrorCodesServerFailedToStart, + GenericErrorCodesNameNotAvailable, + GenericErrorCodesInsufficientFunds, + GenericErrorCodesInvalidDeviceID, + GenericErrorCodesInvalidPushNotificationToken, + GenericErrorCodesNoRemainingUses, + GenericErrorCodesInvalidPaymentProvider, + GenericErrorCodesPurchaseInitializationFailure, + GenericErrorCodesDuplicateUsername, + GenericErrorCodesInvalidBuyerInfo, + GenericErrorCodesNoGameModeParamsSet, + GenericErrorCodesBodyTooLarge, + GenericErrorCodesReservedWordInBody, + GenericErrorCodesInvalidTypeInBody, + GenericErrorCodesInvalidRequest, + GenericErrorCodesReservedEventName, + GenericErrorCodesInvalidUserStatistics, + GenericErrorCodesNotAuthenticated, + GenericErrorCodesStreamAlreadyExists, + GenericErrorCodesErrorCreatingStream, + GenericErrorCodesStreamNotFound, + GenericErrorCodesInvalidAccount, + GenericErrorCodesPurchaseDoesNotExist, + GenericErrorCodesInvalidPurchaseTransactionStatus, + GenericErrorCodesAPINotEnabledForGameClientAccess, + GenericErrorCodesNoPushNotificationARNForTitle, + GenericErrorCodesBuildAlreadyExists, + GenericErrorCodesBuildPackageDoesNotExist, + GenericErrorCodesCustomAnalyticsEventsNotEnabledForTitle, + GenericErrorCodesInvalidSharedGroupId, + GenericErrorCodesNotAuthorized, + GenericErrorCodesMissingTitleGoogleProperties, + GenericErrorCodesInvalidItemProperties, + GenericErrorCodesInvalidPSNAuthCode, + GenericErrorCodesInvalidItemId, + GenericErrorCodesPushNotEnabledForAccount, + GenericErrorCodesPushServiceError, + GenericErrorCodesReceiptDoesNotContainInAppItems, + GenericErrorCodesReceiptContainsMultipleInAppItems, + GenericErrorCodesInvalidBundleID, + GenericErrorCodesJavascriptException, + GenericErrorCodesInvalidSessionTicket, + GenericErrorCodesUnableToConnectToDatabase, + GenericErrorCodesInternalServerError, + GenericErrorCodesInvalidReportDate, + GenericErrorCodesReportNotAvailable, + GenericErrorCodesDatabaseThroughputExceeded, + GenericErrorCodesInvalidGameTicket, + GenericErrorCodesExpiredGameTicket, + GenericErrorCodesGameTicketDoesNotMatchLobby, + GenericErrorCodesLinkedDeviceAlreadyClaimed, + GenericErrorCodesDeviceAlreadyLinked, + GenericErrorCodesDeviceNotLinked, + GenericErrorCodesPartialFailure, + GenericErrorCodesPublisherNotSet, + GenericErrorCodesServiceUnavailable, + GenericErrorCodesVersionNotFound, + GenericErrorCodesRevisionNotFound, + GenericErrorCodesInvalidPublisherId, + GenericErrorCodesDownstreamServiceUnavailable, + GenericErrorCodesAPINotIncludedInTitleUsageTier, + GenericErrorCodesDAULimitExceeded, + GenericErrorCodesAPIRequestLimitExceeded, + GenericErrorCodesInvalidAPIEndpoint, + GenericErrorCodesBuildNotAvailable, + GenericErrorCodesConcurrentEditError, + GenericErrorCodesContentNotFound, + GenericErrorCodesCharacterNotFound, + GenericErrorCodesCloudScriptNotFound, + GenericErrorCodesContentQuotaExceeded, + GenericErrorCodesInvalidCharacterStatistics, + GenericErrorCodesPhotonNotEnabledForTitle, + GenericErrorCodesPhotonApplicationNotFound, + GenericErrorCodesPhotonApplicationNotAssociatedWithTitle, + GenericErrorCodesInvalidEmailOrPassword, + GenericErrorCodesFacebookAPIError, + GenericErrorCodesInvalidContentType, + GenericErrorCodesKeyLengthExceeded, + GenericErrorCodesDataLengthExceeded, + GenericErrorCodesTooManyKeys, + GenericErrorCodesFreeTierCannotHaveVirtualCurrency, + GenericErrorCodesMissingAmazonSharedKey, + GenericErrorCodesAmazonValidationError, + GenericErrorCodesInvalidPSNIssuerId, + GenericErrorCodesPSNInaccessible, + GenericErrorCodesExpiredAuthToken, + GenericErrorCodesFailedToGetEntitlements, + GenericErrorCodesFailedToConsumeEntitlement, + GenericErrorCodesTradeAcceptingUserNotAllowed, + GenericErrorCodesTradeInventoryItemIsAssignedToCharacter, + GenericErrorCodesTradeInventoryItemIsBundle, + GenericErrorCodesTradeStatusNotValidForCancelling, + GenericErrorCodesTradeStatusNotValidForAccepting, + GenericErrorCodesTradeDoesNotExist, + GenericErrorCodesTradeCancelled, + GenericErrorCodesTradeAlreadyFilled, + GenericErrorCodesTradeWaitForStatusTimeout, + GenericErrorCodesTradeInventoryItemExpired, + GenericErrorCodesTradeMissingOfferedAndAcceptedItems, + GenericErrorCodesTradeAcceptedItemIsBundle, + GenericErrorCodesTradeAcceptedItemIsStackable, + GenericErrorCodesTradeInventoryItemInvalidStatus, + GenericErrorCodesTradeAcceptedCatalogItemInvalid, + GenericErrorCodesTradeAllowedUsersInvalid, + GenericErrorCodesTradeInventoryItemDoesNotExist, + GenericErrorCodesTradeInventoryItemIsConsumed, + GenericErrorCodesTradeInventoryItemIsStackable, + GenericErrorCodesTradeAcceptedItemsMismatch, + GenericErrorCodesInvalidKongregateToken, + GenericErrorCodesFeatureNotConfiguredForTitle, + GenericErrorCodesNoMatchingCatalogItemForReceipt, + GenericErrorCodesInvalidCurrencyCode, + GenericErrorCodesNoRealMoneyPriceForCatalogItem, + GenericErrorCodesTradeInventoryItemIsNotTradable, + GenericErrorCodesTradeAcceptedCatalogItemIsNotTradable, + GenericErrorCodesUsersAlreadyFriends, + GenericErrorCodesLinkedIdentifierAlreadyClaimed, + GenericErrorCodesCustomIdNotLinked, + GenericErrorCodesTotalDataSizeExceeded, + GenericErrorCodesDeleteKeyConflict, + GenericErrorCodesInvalidXboxLiveToken, + GenericErrorCodesExpiredXboxLiveToken, + GenericErrorCodesResettableStatisticVersionRequired, + GenericErrorCodesNotAuthorizedByTitle, + GenericErrorCodesNoPartnerEnabled, + GenericErrorCodesInvalidPartnerResponse, + GenericErrorCodesAPINotEnabledForGameServerAccess, + GenericErrorCodesStatisticNotFound, + GenericErrorCodesStatisticNameConflict, + GenericErrorCodesStatisticVersionClosedForWrites, + GenericErrorCodesStatisticVersionInvalid, + GenericErrorCodesAPIClientRequestRateLimitExceeded, + GenericErrorCodesInvalidJSONContent, + GenericErrorCodesInvalidDropTable, + GenericErrorCodesStatisticVersionAlreadyIncrementedForScheduledInterval, + GenericErrorCodesStatisticCountLimitExceeded, + GenericErrorCodesStatisticVersionIncrementRateExceeded, + GenericErrorCodesContainerKeyInvalid, + GenericErrorCodesCloudScriptExecutionTimeLimitExceeded, + GenericErrorCodesNoWritePermissionsForEvent, + GenericErrorCodesCloudScriptFunctionArgumentSizeExceeded, + GenericErrorCodesCloudScriptAPIRequestCountExceeded, + GenericErrorCodesCloudScriptAPIRequestError, + GenericErrorCodesCloudScriptHTTPRequestError, + GenericErrorCodesInsufficientGuildRole, + GenericErrorCodesGuildNotFound, + GenericErrorCodesOverLimit, + GenericErrorCodesEventNotFound, + GenericErrorCodesInvalidEventField, + GenericErrorCodesInvalidEventName, + GenericErrorCodesCatalogNotConfigured, + GenericErrorCodesOperationNotSupportedForPlatform, + GenericErrorCodesSegmentNotFound, + GenericErrorCodesStoreNotFound, + GenericErrorCodesInvalidStatisticName, + GenericErrorCodesTitleNotQualifiedForLimit, + GenericErrorCodesInvalidServiceLimitLevel, + GenericErrorCodesServiceLimitLevelInTransition, + GenericErrorCodesCouponAlreadyRedeemed, + GenericErrorCodesGameServerBuildSizeLimitExceeded, + GenericErrorCodesGameServerBuildCountLimitExceeded, + GenericErrorCodesVirtualCurrencyCountLimitExceeded, + GenericErrorCodesVirtualCurrencyCodeExists, + GenericErrorCodesTitleNewsItemCountLimitExceeded, + GenericErrorCodesInvalidTwitchToken, + GenericErrorCodesTwitchResponseError, + GenericErrorCodesProfaneDisplayName, + GenericErrorCodesUserAlreadyAdded, + GenericErrorCodesInvalidVirtualCurrencyCode, + GenericErrorCodesVirtualCurrencyCannotBeDeleted, + GenericErrorCodesIdentifierAlreadyClaimed, + GenericErrorCodesIdentifierNotLinked, + GenericErrorCodesInvalidContinuationToken, + GenericErrorCodesExpiredContinuationToken, + GenericErrorCodesInvalidSegment, + GenericErrorCodesInvalidSessionId, + GenericErrorCodesSessionLogNotFound, + GenericErrorCodesInvalidSearchTerm, + GenericErrorCodesTwoFactorAuthenticationTokenRequired, + GenericErrorCodesGameServerHostCountLimitExceeded, + GenericErrorCodesPlayerTagCountLimitExceeded, + GenericErrorCodesRequestAlreadyRunning, + GenericErrorCodesActionGroupNotFound, + GenericErrorCodesMaximumSegmentBulkActionJobsRunning, + GenericErrorCodesNoActionsOnPlayersInSegmentJob, + GenericErrorCodesDuplicateStatisticName, + GenericErrorCodesScheduledTaskNameConflict, + GenericErrorCodesScheduledTaskCreateConflict, + GenericErrorCodesInvalidScheduledTaskName, + GenericErrorCodesInvalidTaskSchedule, + GenericErrorCodesSteamNotEnabledForTitle, + GenericErrorCodesLimitNotAnUpgradeOption, + GenericErrorCodesNoSecretKeyEnabledForCloudScript, + GenericErrorCodesTaskNotFound, + GenericErrorCodesTaskInstanceNotFound, + GenericErrorCodesInvalidIdentityProviderId, + GenericErrorCodesMisconfiguredIdentityProvider, + GenericErrorCodesInvalidScheduledTaskType, + GenericErrorCodesBillingInformationRequired, + GenericErrorCodesLimitedEditionItemUnavailable, + GenericErrorCodesInvalidAdPlacementAndReward, + GenericErrorCodesAllAdPlacementViewsAlreadyConsumed, + GenericErrorCodesGoogleOAuthNotConfiguredForTitle, + GenericErrorCodesGoogleOAuthError, + GenericErrorCodesUserNotFriend, + GenericErrorCodesInvalidSignature, + GenericErrorCodesInvalidPublicKey, + GenericErrorCodesGoogleOAuthNoIdTokenIncludedInResponse, + GenericErrorCodesStatisticUpdateInProgress, + GenericErrorCodesLeaderboardVersionNotAvailable, + GenericErrorCodesStatisticAlreadyHasPrizeTable, + GenericErrorCodesPrizeTableHasOverlappingRanks, + GenericErrorCodesPrizeTableHasMissingRanks, + GenericErrorCodesPrizeTableRankStartsAtZero, + GenericErrorCodesInvalidStatistic, + GenericErrorCodesExpressionParseFailure, + GenericErrorCodesExpressionInvokeFailure, + GenericErrorCodesExpressionTooLong, + GenericErrorCodesDataUpdateRateExceeded, + GenericErrorCodesRestrictedEmailDomain, + GenericErrorCodesEncryptionKeyDisabled, + GenericErrorCodesEncryptionKeyMissing, + GenericErrorCodesEncryptionKeyBroken, + GenericErrorCodesNoSharedSecretKeyConfigured, + GenericErrorCodesSecretKeyNotFound, + GenericErrorCodesPlayerSecretAlreadyConfigured, + GenericErrorCodesAPIRequestsDisabledForTitle, + GenericErrorCodesInvalidSharedSecretKey, + GenericErrorCodesPrizeTableHasNoRanks, + GenericErrorCodesProfileDoesNotExist, + GenericErrorCodesContentS3OriginBucketNotConfigured, + GenericErrorCodesInvalidEnvironmentForReceipt, + GenericErrorCodesEncryptedRequestNotAllowed, + GenericErrorCodesSignedRequestNotAllowed, + GenericErrorCodesRequestViewConstraintParamsNotAllowed, + GenericErrorCodesBadPartnerConfiguration, + GenericErrorCodesXboxBPCertificateFailure, + GenericErrorCodesXboxXASSExchangeFailure, + GenericErrorCodesInvalidEntityId, + GenericErrorCodesStatisticValueAggregationOverflow, + GenericErrorCodesEmailMessageFromAddressIsMissing, + GenericErrorCodesEmailMessageToAddressIsMissing, + GenericErrorCodesSmtpServerAuthenticationError, + GenericErrorCodesSmtpServerLimitExceeded, + GenericErrorCodesSmtpServerInsufficientStorage, + GenericErrorCodesSmtpServerCommunicationError, + GenericErrorCodesSmtpServerGeneralFailure, + GenericErrorCodesEmailClientTimeout, + GenericErrorCodesEmailClientCanceledTask, + GenericErrorCodesEmailTemplateMissing, + GenericErrorCodesInvalidHostForTitleId, + GenericErrorCodesEmailConfirmationTokenDoesNotExist, + GenericErrorCodesEmailConfirmationTokenExpired, + GenericErrorCodesAccountDeleted, + GenericErrorCodesPlayerSecretNotConfigured, + GenericErrorCodesInvalidSignatureTime, + GenericErrorCodesNoContactEmailAddressFound, + GenericErrorCodesInvalidAuthToken, + GenericErrorCodesAuthTokenDoesNotExist, + GenericErrorCodesAuthTokenExpired, + GenericErrorCodesAuthTokenAlreadyUsedToResetPassword, + GenericErrorCodesMembershipNameTooLong, + GenericErrorCodesMembershipNotFound, + GenericErrorCodesGoogleServiceAccountInvalid, + GenericErrorCodesGoogleServiceAccountParseFailure, + GenericErrorCodesEntityTokenMissing, + GenericErrorCodesEntityTokenInvalid, + GenericErrorCodesEntityTokenExpired, + GenericErrorCodesEntityTokenRevoked, + GenericErrorCodesInvalidProductForSubscription, + GenericErrorCodesXboxInaccessible, + GenericErrorCodesSubscriptionAlreadyTaken, + GenericErrorCodesSmtpAddonNotEnabled, + GenericErrorCodesAPIConcurrentRequestLimitExceeded, + GenericErrorCodesXboxRejectedXSTSExchangeRequest, + GenericErrorCodesVariableNotDefined, + GenericErrorCodesTemplateVersionNotDefined, + GenericErrorCodesFileTooLarge, + GenericErrorCodesTitleDeleted, + GenericErrorCodesTitleContainsUserAccounts, + GenericErrorCodesTitleDeletionPlayerCleanupFailure, + GenericErrorCodesEntityFileOperationPending, + GenericErrorCodesNoEntityFileOperationPending, + GenericErrorCodesEntityProfileVersionMismatch, + GenericErrorCodesTemplateVersionTooOld, + GenericErrorCodesMembershipDefinitionInUse, + GenericErrorCodesPaymentPageNotConfigured, + GenericErrorCodesFailedLoginAttemptRateLimitExceeded, + GenericErrorCodesEntityBlockedByGroup, + GenericErrorCodesRoleDoesNotExist, + GenericErrorCodesEntityIsAlreadyMember, + GenericErrorCodesDuplicateRoleId, + GenericErrorCodesGroupInvitationNotFound, + GenericErrorCodesGroupApplicationNotFound, + GenericErrorCodesOutstandingInvitationAcceptedInstead, + GenericErrorCodesOutstandingApplicationAcceptedInstead, + GenericErrorCodesRoleIsGroupDefaultMember, + GenericErrorCodesRoleIsGroupAdmin, + GenericErrorCodesRoleNameNotAvailable, + GenericErrorCodesGroupNameNotAvailable, + GenericErrorCodesEmailReportAlreadySent, + GenericErrorCodesEmailReportRecipientBlacklisted, + GenericErrorCodesEventNamespaceNotAllowed, + GenericErrorCodesEventEntityNotAllowed + }; + + inline void ToJsonEnum(const GenericErrorCodes input, Json::Value& output) + { + if (input == GenericErrorCodesSuccess) output = Json::Value("Success"); + if (input == GenericErrorCodesInvalidParams) output = Json::Value("InvalidParams"); + if (input == GenericErrorCodesAccountNotFound) output = Json::Value("AccountNotFound"); + if (input == GenericErrorCodesAccountBanned) output = Json::Value("AccountBanned"); + if (input == GenericErrorCodesInvalidUsernameOrPassword) output = Json::Value("InvalidUsernameOrPassword"); + if (input == GenericErrorCodesInvalidTitleId) output = Json::Value("InvalidTitleId"); + if (input == GenericErrorCodesInvalidEmailAddress) output = Json::Value("InvalidEmailAddress"); + if (input == GenericErrorCodesEmailAddressNotAvailable) output = Json::Value("EmailAddressNotAvailable"); + if (input == GenericErrorCodesInvalidUsername) output = Json::Value("InvalidUsername"); + if (input == GenericErrorCodesInvalidPassword) output = Json::Value("InvalidPassword"); + if (input == GenericErrorCodesUsernameNotAvailable) output = Json::Value("UsernameNotAvailable"); + if (input == GenericErrorCodesInvalidSteamTicket) output = Json::Value("InvalidSteamTicket"); + if (input == GenericErrorCodesAccountAlreadyLinked) output = Json::Value("AccountAlreadyLinked"); + if (input == GenericErrorCodesLinkedAccountAlreadyClaimed) output = Json::Value("LinkedAccountAlreadyClaimed"); + if (input == GenericErrorCodesInvalidFacebookToken) output = Json::Value("InvalidFacebookToken"); + if (input == GenericErrorCodesAccountNotLinked) output = Json::Value("AccountNotLinked"); + if (input == GenericErrorCodesFailedByPaymentProvider) output = Json::Value("FailedByPaymentProvider"); + if (input == GenericErrorCodesCouponCodeNotFound) output = Json::Value("CouponCodeNotFound"); + if (input == GenericErrorCodesInvalidContainerItem) output = Json::Value("InvalidContainerItem"); + if (input == GenericErrorCodesContainerNotOwned) output = Json::Value("ContainerNotOwned"); + if (input == GenericErrorCodesKeyNotOwned) output = Json::Value("KeyNotOwned"); + if (input == GenericErrorCodesInvalidItemIdInTable) output = Json::Value("InvalidItemIdInTable"); + if (input == GenericErrorCodesInvalidReceipt) output = Json::Value("InvalidReceipt"); + if (input == GenericErrorCodesReceiptAlreadyUsed) output = Json::Value("ReceiptAlreadyUsed"); + if (input == GenericErrorCodesReceiptCancelled) output = Json::Value("ReceiptCancelled"); + if (input == GenericErrorCodesGameNotFound) output = Json::Value("GameNotFound"); + if (input == GenericErrorCodesGameModeNotFound) output = Json::Value("GameModeNotFound"); + if (input == GenericErrorCodesInvalidGoogleToken) output = Json::Value("InvalidGoogleToken"); + if (input == GenericErrorCodesUserIsNotPartOfDeveloper) output = Json::Value("UserIsNotPartOfDeveloper"); + if (input == GenericErrorCodesInvalidTitleForDeveloper) output = Json::Value("InvalidTitleForDeveloper"); + if (input == GenericErrorCodesTitleNameConflicts) output = Json::Value("TitleNameConflicts"); + if (input == GenericErrorCodesUserisNotValid) output = Json::Value("UserisNotValid"); + if (input == GenericErrorCodesValueAlreadyExists) output = Json::Value("ValueAlreadyExists"); + if (input == GenericErrorCodesBuildNotFound) output = Json::Value("BuildNotFound"); + if (input == GenericErrorCodesPlayerNotInGame) output = Json::Value("PlayerNotInGame"); + if (input == GenericErrorCodesInvalidTicket) output = Json::Value("InvalidTicket"); + if (input == GenericErrorCodesInvalidDeveloper) output = Json::Value("InvalidDeveloper"); + if (input == GenericErrorCodesInvalidOrderInfo) output = Json::Value("InvalidOrderInfo"); + if (input == GenericErrorCodesRegistrationIncomplete) output = Json::Value("RegistrationIncomplete"); + if (input == GenericErrorCodesInvalidPlatform) output = Json::Value("InvalidPlatform"); + if (input == GenericErrorCodesUnknownError) output = Json::Value("UnknownError"); + if (input == GenericErrorCodesSteamApplicationNotOwned) output = Json::Value("SteamApplicationNotOwned"); + if (input == GenericErrorCodesWrongSteamAccount) output = Json::Value("WrongSteamAccount"); + if (input == GenericErrorCodesTitleNotActivated) output = Json::Value("TitleNotActivated"); + if (input == GenericErrorCodesRegistrationSessionNotFound) output = Json::Value("RegistrationSessionNotFound"); + if (input == GenericErrorCodesNoSuchMod) output = Json::Value("NoSuchMod"); + if (input == GenericErrorCodesFileNotFound) output = Json::Value("FileNotFound"); + if (input == GenericErrorCodesDuplicateEmail) output = Json::Value("DuplicateEmail"); + if (input == GenericErrorCodesItemNotFound) output = Json::Value("ItemNotFound"); + if (input == GenericErrorCodesItemNotOwned) output = Json::Value("ItemNotOwned"); + if (input == GenericErrorCodesItemNotRecycleable) output = Json::Value("ItemNotRecycleable"); + if (input == GenericErrorCodesItemNotAffordable) output = Json::Value("ItemNotAffordable"); + if (input == GenericErrorCodesInvalidVirtualCurrency) output = Json::Value("InvalidVirtualCurrency"); + if (input == GenericErrorCodesWrongVirtualCurrency) output = Json::Value("WrongVirtualCurrency"); + if (input == GenericErrorCodesWrongPrice) output = Json::Value("WrongPrice"); + if (input == GenericErrorCodesNonPositiveValue) output = Json::Value("NonPositiveValue"); + if (input == GenericErrorCodesInvalidRegion) output = Json::Value("InvalidRegion"); + if (input == GenericErrorCodesRegionAtCapacity) output = Json::Value("RegionAtCapacity"); + if (input == GenericErrorCodesServerFailedToStart) output = Json::Value("ServerFailedToStart"); + if (input == GenericErrorCodesNameNotAvailable) output = Json::Value("NameNotAvailable"); + if (input == GenericErrorCodesInsufficientFunds) output = Json::Value("InsufficientFunds"); + if (input == GenericErrorCodesInvalidDeviceID) output = Json::Value("InvalidDeviceID"); + if (input == GenericErrorCodesInvalidPushNotificationToken) output = Json::Value("InvalidPushNotificationToken"); + if (input == GenericErrorCodesNoRemainingUses) output = Json::Value("NoRemainingUses"); + if (input == GenericErrorCodesInvalidPaymentProvider) output = Json::Value("InvalidPaymentProvider"); + if (input == GenericErrorCodesPurchaseInitializationFailure) output = Json::Value("PurchaseInitializationFailure"); + if (input == GenericErrorCodesDuplicateUsername) output = Json::Value("DuplicateUsername"); + if (input == GenericErrorCodesInvalidBuyerInfo) output = Json::Value("InvalidBuyerInfo"); + if (input == GenericErrorCodesNoGameModeParamsSet) output = Json::Value("NoGameModeParamsSet"); + if (input == GenericErrorCodesBodyTooLarge) output = Json::Value("BodyTooLarge"); + if (input == GenericErrorCodesReservedWordInBody) output = Json::Value("ReservedWordInBody"); + if (input == GenericErrorCodesInvalidTypeInBody) output = Json::Value("InvalidTypeInBody"); + if (input == GenericErrorCodesInvalidRequest) output = Json::Value("InvalidRequest"); + if (input == GenericErrorCodesReservedEventName) output = Json::Value("ReservedEventName"); + if (input == GenericErrorCodesInvalidUserStatistics) output = Json::Value("InvalidUserStatistics"); + if (input == GenericErrorCodesNotAuthenticated) output = Json::Value("NotAuthenticated"); + if (input == GenericErrorCodesStreamAlreadyExists) output = Json::Value("StreamAlreadyExists"); + if (input == GenericErrorCodesErrorCreatingStream) output = Json::Value("ErrorCreatingStream"); + if (input == GenericErrorCodesStreamNotFound) output = Json::Value("StreamNotFound"); + if (input == GenericErrorCodesInvalidAccount) output = Json::Value("InvalidAccount"); + if (input == GenericErrorCodesPurchaseDoesNotExist) output = Json::Value("PurchaseDoesNotExist"); + if (input == GenericErrorCodesInvalidPurchaseTransactionStatus) output = Json::Value("InvalidPurchaseTransactionStatus"); + if (input == GenericErrorCodesAPINotEnabledForGameClientAccess) output = Json::Value("APINotEnabledForGameClientAccess"); + if (input == GenericErrorCodesNoPushNotificationARNForTitle) output = Json::Value("NoPushNotificationARNForTitle"); + if (input == GenericErrorCodesBuildAlreadyExists) output = Json::Value("BuildAlreadyExists"); + if (input == GenericErrorCodesBuildPackageDoesNotExist) output = Json::Value("BuildPackageDoesNotExist"); + if (input == GenericErrorCodesCustomAnalyticsEventsNotEnabledForTitle) output = Json::Value("CustomAnalyticsEventsNotEnabledForTitle"); + if (input == GenericErrorCodesInvalidSharedGroupId) output = Json::Value("InvalidSharedGroupId"); + if (input == GenericErrorCodesNotAuthorized) output = Json::Value("NotAuthorized"); + if (input == GenericErrorCodesMissingTitleGoogleProperties) output = Json::Value("MissingTitleGoogleProperties"); + if (input == GenericErrorCodesInvalidItemProperties) output = Json::Value("InvalidItemProperties"); + if (input == GenericErrorCodesInvalidPSNAuthCode) output = Json::Value("InvalidPSNAuthCode"); + if (input == GenericErrorCodesInvalidItemId) output = Json::Value("InvalidItemId"); + if (input == GenericErrorCodesPushNotEnabledForAccount) output = Json::Value("PushNotEnabledForAccount"); + if (input == GenericErrorCodesPushServiceError) output = Json::Value("PushServiceError"); + if (input == GenericErrorCodesReceiptDoesNotContainInAppItems) output = Json::Value("ReceiptDoesNotContainInAppItems"); + if (input == GenericErrorCodesReceiptContainsMultipleInAppItems) output = Json::Value("ReceiptContainsMultipleInAppItems"); + if (input == GenericErrorCodesInvalidBundleID) output = Json::Value("InvalidBundleID"); + if (input == GenericErrorCodesJavascriptException) output = Json::Value("JavascriptException"); + if (input == GenericErrorCodesInvalidSessionTicket) output = Json::Value("InvalidSessionTicket"); + if (input == GenericErrorCodesUnableToConnectToDatabase) output = Json::Value("UnableToConnectToDatabase"); + if (input == GenericErrorCodesInternalServerError) output = Json::Value("InternalServerError"); + if (input == GenericErrorCodesInvalidReportDate) output = Json::Value("InvalidReportDate"); + if (input == GenericErrorCodesReportNotAvailable) output = Json::Value("ReportNotAvailable"); + if (input == GenericErrorCodesDatabaseThroughputExceeded) output = Json::Value("DatabaseThroughputExceeded"); + if (input == GenericErrorCodesInvalidGameTicket) output = Json::Value("InvalidGameTicket"); + if (input == GenericErrorCodesExpiredGameTicket) output = Json::Value("ExpiredGameTicket"); + if (input == GenericErrorCodesGameTicketDoesNotMatchLobby) output = Json::Value("GameTicketDoesNotMatchLobby"); + if (input == GenericErrorCodesLinkedDeviceAlreadyClaimed) output = Json::Value("LinkedDeviceAlreadyClaimed"); + if (input == GenericErrorCodesDeviceAlreadyLinked) output = Json::Value("DeviceAlreadyLinked"); + if (input == GenericErrorCodesDeviceNotLinked) output = Json::Value("DeviceNotLinked"); + if (input == GenericErrorCodesPartialFailure) output = Json::Value("PartialFailure"); + if (input == GenericErrorCodesPublisherNotSet) output = Json::Value("PublisherNotSet"); + if (input == GenericErrorCodesServiceUnavailable) output = Json::Value("ServiceUnavailable"); + if (input == GenericErrorCodesVersionNotFound) output = Json::Value("VersionNotFound"); + if (input == GenericErrorCodesRevisionNotFound) output = Json::Value("RevisionNotFound"); + if (input == GenericErrorCodesInvalidPublisherId) output = Json::Value("InvalidPublisherId"); + if (input == GenericErrorCodesDownstreamServiceUnavailable) output = Json::Value("DownstreamServiceUnavailable"); + if (input == GenericErrorCodesAPINotIncludedInTitleUsageTier) output = Json::Value("APINotIncludedInTitleUsageTier"); + if (input == GenericErrorCodesDAULimitExceeded) output = Json::Value("DAULimitExceeded"); + if (input == GenericErrorCodesAPIRequestLimitExceeded) output = Json::Value("APIRequestLimitExceeded"); + if (input == GenericErrorCodesInvalidAPIEndpoint) output = Json::Value("InvalidAPIEndpoint"); + if (input == GenericErrorCodesBuildNotAvailable) output = Json::Value("BuildNotAvailable"); + if (input == GenericErrorCodesConcurrentEditError) output = Json::Value("ConcurrentEditError"); + if (input == GenericErrorCodesContentNotFound) output = Json::Value("ContentNotFound"); + if (input == GenericErrorCodesCharacterNotFound) output = Json::Value("CharacterNotFound"); + if (input == GenericErrorCodesCloudScriptNotFound) output = Json::Value("CloudScriptNotFound"); + if (input == GenericErrorCodesContentQuotaExceeded) output = Json::Value("ContentQuotaExceeded"); + if (input == GenericErrorCodesInvalidCharacterStatistics) output = Json::Value("InvalidCharacterStatistics"); + if (input == GenericErrorCodesPhotonNotEnabledForTitle) output = Json::Value("PhotonNotEnabledForTitle"); + if (input == GenericErrorCodesPhotonApplicationNotFound) output = Json::Value("PhotonApplicationNotFound"); + if (input == GenericErrorCodesPhotonApplicationNotAssociatedWithTitle) output = Json::Value("PhotonApplicationNotAssociatedWithTitle"); + if (input == GenericErrorCodesInvalidEmailOrPassword) output = Json::Value("InvalidEmailOrPassword"); + if (input == GenericErrorCodesFacebookAPIError) output = Json::Value("FacebookAPIError"); + if (input == GenericErrorCodesInvalidContentType) output = Json::Value("InvalidContentType"); + if (input == GenericErrorCodesKeyLengthExceeded) output = Json::Value("KeyLengthExceeded"); + if (input == GenericErrorCodesDataLengthExceeded) output = Json::Value("DataLengthExceeded"); + if (input == GenericErrorCodesTooManyKeys) output = Json::Value("TooManyKeys"); + if (input == GenericErrorCodesFreeTierCannotHaveVirtualCurrency) output = Json::Value("FreeTierCannotHaveVirtualCurrency"); + if (input == GenericErrorCodesMissingAmazonSharedKey) output = Json::Value("MissingAmazonSharedKey"); + if (input == GenericErrorCodesAmazonValidationError) output = Json::Value("AmazonValidationError"); + if (input == GenericErrorCodesInvalidPSNIssuerId) output = Json::Value("InvalidPSNIssuerId"); + if (input == GenericErrorCodesPSNInaccessible) output = Json::Value("PSNInaccessible"); + if (input == GenericErrorCodesExpiredAuthToken) output = Json::Value("ExpiredAuthToken"); + if (input == GenericErrorCodesFailedToGetEntitlements) output = Json::Value("FailedToGetEntitlements"); + if (input == GenericErrorCodesFailedToConsumeEntitlement) output = Json::Value("FailedToConsumeEntitlement"); + if (input == GenericErrorCodesTradeAcceptingUserNotAllowed) output = Json::Value("TradeAcceptingUserNotAllowed"); + if (input == GenericErrorCodesTradeInventoryItemIsAssignedToCharacter) output = Json::Value("TradeInventoryItemIsAssignedToCharacter"); + if (input == GenericErrorCodesTradeInventoryItemIsBundle) output = Json::Value("TradeInventoryItemIsBundle"); + if (input == GenericErrorCodesTradeStatusNotValidForCancelling) output = Json::Value("TradeStatusNotValidForCancelling"); + if (input == GenericErrorCodesTradeStatusNotValidForAccepting) output = Json::Value("TradeStatusNotValidForAccepting"); + if (input == GenericErrorCodesTradeDoesNotExist) output = Json::Value("TradeDoesNotExist"); + if (input == GenericErrorCodesTradeCancelled) output = Json::Value("TradeCancelled"); + if (input == GenericErrorCodesTradeAlreadyFilled) output = Json::Value("TradeAlreadyFilled"); + if (input == GenericErrorCodesTradeWaitForStatusTimeout) output = Json::Value("TradeWaitForStatusTimeout"); + if (input == GenericErrorCodesTradeInventoryItemExpired) output = Json::Value("TradeInventoryItemExpired"); + if (input == GenericErrorCodesTradeMissingOfferedAndAcceptedItems) output = Json::Value("TradeMissingOfferedAndAcceptedItems"); + if (input == GenericErrorCodesTradeAcceptedItemIsBundle) output = Json::Value("TradeAcceptedItemIsBundle"); + if (input == GenericErrorCodesTradeAcceptedItemIsStackable) output = Json::Value("TradeAcceptedItemIsStackable"); + if (input == GenericErrorCodesTradeInventoryItemInvalidStatus) output = Json::Value("TradeInventoryItemInvalidStatus"); + if (input == GenericErrorCodesTradeAcceptedCatalogItemInvalid) output = Json::Value("TradeAcceptedCatalogItemInvalid"); + if (input == GenericErrorCodesTradeAllowedUsersInvalid) output = Json::Value("TradeAllowedUsersInvalid"); + if (input == GenericErrorCodesTradeInventoryItemDoesNotExist) output = Json::Value("TradeInventoryItemDoesNotExist"); + if (input == GenericErrorCodesTradeInventoryItemIsConsumed) output = Json::Value("TradeInventoryItemIsConsumed"); + if (input == GenericErrorCodesTradeInventoryItemIsStackable) output = Json::Value("TradeInventoryItemIsStackable"); + if (input == GenericErrorCodesTradeAcceptedItemsMismatch) output = Json::Value("TradeAcceptedItemsMismatch"); + if (input == GenericErrorCodesInvalidKongregateToken) output = Json::Value("InvalidKongregateToken"); + if (input == GenericErrorCodesFeatureNotConfiguredForTitle) output = Json::Value("FeatureNotConfiguredForTitle"); + if (input == GenericErrorCodesNoMatchingCatalogItemForReceipt) output = Json::Value("NoMatchingCatalogItemForReceipt"); + if (input == GenericErrorCodesInvalidCurrencyCode) output = Json::Value("InvalidCurrencyCode"); + if (input == GenericErrorCodesNoRealMoneyPriceForCatalogItem) output = Json::Value("NoRealMoneyPriceForCatalogItem"); + if (input == GenericErrorCodesTradeInventoryItemIsNotTradable) output = Json::Value("TradeInventoryItemIsNotTradable"); + if (input == GenericErrorCodesTradeAcceptedCatalogItemIsNotTradable) output = Json::Value("TradeAcceptedCatalogItemIsNotTradable"); + if (input == GenericErrorCodesUsersAlreadyFriends) output = Json::Value("UsersAlreadyFriends"); + if (input == GenericErrorCodesLinkedIdentifierAlreadyClaimed) output = Json::Value("LinkedIdentifierAlreadyClaimed"); + if (input == GenericErrorCodesCustomIdNotLinked) output = Json::Value("CustomIdNotLinked"); + if (input == GenericErrorCodesTotalDataSizeExceeded) output = Json::Value("TotalDataSizeExceeded"); + if (input == GenericErrorCodesDeleteKeyConflict) output = Json::Value("DeleteKeyConflict"); + if (input == GenericErrorCodesInvalidXboxLiveToken) output = Json::Value("InvalidXboxLiveToken"); + if (input == GenericErrorCodesExpiredXboxLiveToken) output = Json::Value("ExpiredXboxLiveToken"); + if (input == GenericErrorCodesResettableStatisticVersionRequired) output = Json::Value("ResettableStatisticVersionRequired"); + if (input == GenericErrorCodesNotAuthorizedByTitle) output = Json::Value("NotAuthorizedByTitle"); + if (input == GenericErrorCodesNoPartnerEnabled) output = Json::Value("NoPartnerEnabled"); + if (input == GenericErrorCodesInvalidPartnerResponse) output = Json::Value("InvalidPartnerResponse"); + if (input == GenericErrorCodesAPINotEnabledForGameServerAccess) output = Json::Value("APINotEnabledForGameServerAccess"); + if (input == GenericErrorCodesStatisticNotFound) output = Json::Value("StatisticNotFound"); + if (input == GenericErrorCodesStatisticNameConflict) output = Json::Value("StatisticNameConflict"); + if (input == GenericErrorCodesStatisticVersionClosedForWrites) output = Json::Value("StatisticVersionClosedForWrites"); + if (input == GenericErrorCodesStatisticVersionInvalid) output = Json::Value("StatisticVersionInvalid"); + if (input == GenericErrorCodesAPIClientRequestRateLimitExceeded) output = Json::Value("APIClientRequestRateLimitExceeded"); + if (input == GenericErrorCodesInvalidJSONContent) output = Json::Value("InvalidJSONContent"); + if (input == GenericErrorCodesInvalidDropTable) output = Json::Value("InvalidDropTable"); + if (input == GenericErrorCodesStatisticVersionAlreadyIncrementedForScheduledInterval) output = Json::Value("StatisticVersionAlreadyIncrementedForScheduledInterval"); + if (input == GenericErrorCodesStatisticCountLimitExceeded) output = Json::Value("StatisticCountLimitExceeded"); + if (input == GenericErrorCodesStatisticVersionIncrementRateExceeded) output = Json::Value("StatisticVersionIncrementRateExceeded"); + if (input == GenericErrorCodesContainerKeyInvalid) output = Json::Value("ContainerKeyInvalid"); + if (input == GenericErrorCodesCloudScriptExecutionTimeLimitExceeded) output = Json::Value("CloudScriptExecutionTimeLimitExceeded"); + if (input == GenericErrorCodesNoWritePermissionsForEvent) output = Json::Value("NoWritePermissionsForEvent"); + if (input == GenericErrorCodesCloudScriptFunctionArgumentSizeExceeded) output = Json::Value("CloudScriptFunctionArgumentSizeExceeded"); + if (input == GenericErrorCodesCloudScriptAPIRequestCountExceeded) output = Json::Value("CloudScriptAPIRequestCountExceeded"); + if (input == GenericErrorCodesCloudScriptAPIRequestError) output = Json::Value("CloudScriptAPIRequestError"); + if (input == GenericErrorCodesCloudScriptHTTPRequestError) output = Json::Value("CloudScriptHTTPRequestError"); + if (input == GenericErrorCodesInsufficientGuildRole) output = Json::Value("InsufficientGuildRole"); + if (input == GenericErrorCodesGuildNotFound) output = Json::Value("GuildNotFound"); + if (input == GenericErrorCodesOverLimit) output = Json::Value("OverLimit"); + if (input == GenericErrorCodesEventNotFound) output = Json::Value("EventNotFound"); + if (input == GenericErrorCodesInvalidEventField) output = Json::Value("InvalidEventField"); + if (input == GenericErrorCodesInvalidEventName) output = Json::Value("InvalidEventName"); + if (input == GenericErrorCodesCatalogNotConfigured) output = Json::Value("CatalogNotConfigured"); + if (input == GenericErrorCodesOperationNotSupportedForPlatform) output = Json::Value("OperationNotSupportedForPlatform"); + if (input == GenericErrorCodesSegmentNotFound) output = Json::Value("SegmentNotFound"); + if (input == GenericErrorCodesStoreNotFound) output = Json::Value("StoreNotFound"); + if (input == GenericErrorCodesInvalidStatisticName) output = Json::Value("InvalidStatisticName"); + if (input == GenericErrorCodesTitleNotQualifiedForLimit) output = Json::Value("TitleNotQualifiedForLimit"); + if (input == GenericErrorCodesInvalidServiceLimitLevel) output = Json::Value("InvalidServiceLimitLevel"); + if (input == GenericErrorCodesServiceLimitLevelInTransition) output = Json::Value("ServiceLimitLevelInTransition"); + if (input == GenericErrorCodesCouponAlreadyRedeemed) output = Json::Value("CouponAlreadyRedeemed"); + if (input == GenericErrorCodesGameServerBuildSizeLimitExceeded) output = Json::Value("GameServerBuildSizeLimitExceeded"); + if (input == GenericErrorCodesGameServerBuildCountLimitExceeded) output = Json::Value("GameServerBuildCountLimitExceeded"); + if (input == GenericErrorCodesVirtualCurrencyCountLimitExceeded) output = Json::Value("VirtualCurrencyCountLimitExceeded"); + if (input == GenericErrorCodesVirtualCurrencyCodeExists) output = Json::Value("VirtualCurrencyCodeExists"); + if (input == GenericErrorCodesTitleNewsItemCountLimitExceeded) output = Json::Value("TitleNewsItemCountLimitExceeded"); + if (input == GenericErrorCodesInvalidTwitchToken) output = Json::Value("InvalidTwitchToken"); + if (input == GenericErrorCodesTwitchResponseError) output = Json::Value("TwitchResponseError"); + if (input == GenericErrorCodesProfaneDisplayName) output = Json::Value("ProfaneDisplayName"); + if (input == GenericErrorCodesUserAlreadyAdded) output = Json::Value("UserAlreadyAdded"); + if (input == GenericErrorCodesInvalidVirtualCurrencyCode) output = Json::Value("InvalidVirtualCurrencyCode"); + if (input == GenericErrorCodesVirtualCurrencyCannotBeDeleted) output = Json::Value("VirtualCurrencyCannotBeDeleted"); + if (input == GenericErrorCodesIdentifierAlreadyClaimed) output = Json::Value("IdentifierAlreadyClaimed"); + if (input == GenericErrorCodesIdentifierNotLinked) output = Json::Value("IdentifierNotLinked"); + if (input == GenericErrorCodesInvalidContinuationToken) output = Json::Value("InvalidContinuationToken"); + if (input == GenericErrorCodesExpiredContinuationToken) output = Json::Value("ExpiredContinuationToken"); + if (input == GenericErrorCodesInvalidSegment) output = Json::Value("InvalidSegment"); + if (input == GenericErrorCodesInvalidSessionId) output = Json::Value("InvalidSessionId"); + if (input == GenericErrorCodesSessionLogNotFound) output = Json::Value("SessionLogNotFound"); + if (input == GenericErrorCodesInvalidSearchTerm) output = Json::Value("InvalidSearchTerm"); + if (input == GenericErrorCodesTwoFactorAuthenticationTokenRequired) output = Json::Value("TwoFactorAuthenticationTokenRequired"); + if (input == GenericErrorCodesGameServerHostCountLimitExceeded) output = Json::Value("GameServerHostCountLimitExceeded"); + if (input == GenericErrorCodesPlayerTagCountLimitExceeded) output = Json::Value("PlayerTagCountLimitExceeded"); + if (input == GenericErrorCodesRequestAlreadyRunning) output = Json::Value("RequestAlreadyRunning"); + if (input == GenericErrorCodesActionGroupNotFound) output = Json::Value("ActionGroupNotFound"); + if (input == GenericErrorCodesMaximumSegmentBulkActionJobsRunning) output = Json::Value("MaximumSegmentBulkActionJobsRunning"); + if (input == GenericErrorCodesNoActionsOnPlayersInSegmentJob) output = Json::Value("NoActionsOnPlayersInSegmentJob"); + if (input == GenericErrorCodesDuplicateStatisticName) output = Json::Value("DuplicateStatisticName"); + if (input == GenericErrorCodesScheduledTaskNameConflict) output = Json::Value("ScheduledTaskNameConflict"); + if (input == GenericErrorCodesScheduledTaskCreateConflict) output = Json::Value("ScheduledTaskCreateConflict"); + if (input == GenericErrorCodesInvalidScheduledTaskName) output = Json::Value("InvalidScheduledTaskName"); + if (input == GenericErrorCodesInvalidTaskSchedule) output = Json::Value("InvalidTaskSchedule"); + if (input == GenericErrorCodesSteamNotEnabledForTitle) output = Json::Value("SteamNotEnabledForTitle"); + if (input == GenericErrorCodesLimitNotAnUpgradeOption) output = Json::Value("LimitNotAnUpgradeOption"); + if (input == GenericErrorCodesNoSecretKeyEnabledForCloudScript) output = Json::Value("NoSecretKeyEnabledForCloudScript"); + if (input == GenericErrorCodesTaskNotFound) output = Json::Value("TaskNotFound"); + if (input == GenericErrorCodesTaskInstanceNotFound) output = Json::Value("TaskInstanceNotFound"); + if (input == GenericErrorCodesInvalidIdentityProviderId) output = Json::Value("InvalidIdentityProviderId"); + if (input == GenericErrorCodesMisconfiguredIdentityProvider) output = Json::Value("MisconfiguredIdentityProvider"); + if (input == GenericErrorCodesInvalidScheduledTaskType) output = Json::Value("InvalidScheduledTaskType"); + if (input == GenericErrorCodesBillingInformationRequired) output = Json::Value("BillingInformationRequired"); + if (input == GenericErrorCodesLimitedEditionItemUnavailable) output = Json::Value("LimitedEditionItemUnavailable"); + if (input == GenericErrorCodesInvalidAdPlacementAndReward) output = Json::Value("InvalidAdPlacementAndReward"); + if (input == GenericErrorCodesAllAdPlacementViewsAlreadyConsumed) output = Json::Value("AllAdPlacementViewsAlreadyConsumed"); + if (input == GenericErrorCodesGoogleOAuthNotConfiguredForTitle) output = Json::Value("GoogleOAuthNotConfiguredForTitle"); + if (input == GenericErrorCodesGoogleOAuthError) output = Json::Value("GoogleOAuthError"); + if (input == GenericErrorCodesUserNotFriend) output = Json::Value("UserNotFriend"); + if (input == GenericErrorCodesInvalidSignature) output = Json::Value("InvalidSignature"); + if (input == GenericErrorCodesInvalidPublicKey) output = Json::Value("InvalidPublicKey"); + if (input == GenericErrorCodesGoogleOAuthNoIdTokenIncludedInResponse) output = Json::Value("GoogleOAuthNoIdTokenIncludedInResponse"); + if (input == GenericErrorCodesStatisticUpdateInProgress) output = Json::Value("StatisticUpdateInProgress"); + if (input == GenericErrorCodesLeaderboardVersionNotAvailable) output = Json::Value("LeaderboardVersionNotAvailable"); + if (input == GenericErrorCodesStatisticAlreadyHasPrizeTable) output = Json::Value("StatisticAlreadyHasPrizeTable"); + if (input == GenericErrorCodesPrizeTableHasOverlappingRanks) output = Json::Value("PrizeTableHasOverlappingRanks"); + if (input == GenericErrorCodesPrizeTableHasMissingRanks) output = Json::Value("PrizeTableHasMissingRanks"); + if (input == GenericErrorCodesPrizeTableRankStartsAtZero) output = Json::Value("PrizeTableRankStartsAtZero"); + if (input == GenericErrorCodesInvalidStatistic) output = Json::Value("InvalidStatistic"); + if (input == GenericErrorCodesExpressionParseFailure) output = Json::Value("ExpressionParseFailure"); + if (input == GenericErrorCodesExpressionInvokeFailure) output = Json::Value("ExpressionInvokeFailure"); + if (input == GenericErrorCodesExpressionTooLong) output = Json::Value("ExpressionTooLong"); + if (input == GenericErrorCodesDataUpdateRateExceeded) output = Json::Value("DataUpdateRateExceeded"); + if (input == GenericErrorCodesRestrictedEmailDomain) output = Json::Value("RestrictedEmailDomain"); + if (input == GenericErrorCodesEncryptionKeyDisabled) output = Json::Value("EncryptionKeyDisabled"); + if (input == GenericErrorCodesEncryptionKeyMissing) output = Json::Value("EncryptionKeyMissing"); + if (input == GenericErrorCodesEncryptionKeyBroken) output = Json::Value("EncryptionKeyBroken"); + if (input == GenericErrorCodesNoSharedSecretKeyConfigured) output = Json::Value("NoSharedSecretKeyConfigured"); + if (input == GenericErrorCodesSecretKeyNotFound) output = Json::Value("SecretKeyNotFound"); + if (input == GenericErrorCodesPlayerSecretAlreadyConfigured) output = Json::Value("PlayerSecretAlreadyConfigured"); + if (input == GenericErrorCodesAPIRequestsDisabledForTitle) output = Json::Value("APIRequestsDisabledForTitle"); + if (input == GenericErrorCodesInvalidSharedSecretKey) output = Json::Value("InvalidSharedSecretKey"); + if (input == GenericErrorCodesPrizeTableHasNoRanks) output = Json::Value("PrizeTableHasNoRanks"); + if (input == GenericErrorCodesProfileDoesNotExist) output = Json::Value("ProfileDoesNotExist"); + if (input == GenericErrorCodesContentS3OriginBucketNotConfigured) output = Json::Value("ContentS3OriginBucketNotConfigured"); + if (input == GenericErrorCodesInvalidEnvironmentForReceipt) output = Json::Value("InvalidEnvironmentForReceipt"); + if (input == GenericErrorCodesEncryptedRequestNotAllowed) output = Json::Value("EncryptedRequestNotAllowed"); + if (input == GenericErrorCodesSignedRequestNotAllowed) output = Json::Value("SignedRequestNotAllowed"); + if (input == GenericErrorCodesRequestViewConstraintParamsNotAllowed) output = Json::Value("RequestViewConstraintParamsNotAllowed"); + if (input == GenericErrorCodesBadPartnerConfiguration) output = Json::Value("BadPartnerConfiguration"); + if (input == GenericErrorCodesXboxBPCertificateFailure) output = Json::Value("XboxBPCertificateFailure"); + if (input == GenericErrorCodesXboxXASSExchangeFailure) output = Json::Value("XboxXASSExchangeFailure"); + if (input == GenericErrorCodesInvalidEntityId) output = Json::Value("InvalidEntityId"); + if (input == GenericErrorCodesStatisticValueAggregationOverflow) output = Json::Value("StatisticValueAggregationOverflow"); + if (input == GenericErrorCodesEmailMessageFromAddressIsMissing) output = Json::Value("EmailMessageFromAddressIsMissing"); + if (input == GenericErrorCodesEmailMessageToAddressIsMissing) output = Json::Value("EmailMessageToAddressIsMissing"); + if (input == GenericErrorCodesSmtpServerAuthenticationError) output = Json::Value("SmtpServerAuthenticationError"); + if (input == GenericErrorCodesSmtpServerLimitExceeded) output = Json::Value("SmtpServerLimitExceeded"); + if (input == GenericErrorCodesSmtpServerInsufficientStorage) output = Json::Value("SmtpServerInsufficientStorage"); + if (input == GenericErrorCodesSmtpServerCommunicationError) output = Json::Value("SmtpServerCommunicationError"); + if (input == GenericErrorCodesSmtpServerGeneralFailure) output = Json::Value("SmtpServerGeneralFailure"); + if (input == GenericErrorCodesEmailClientTimeout) output = Json::Value("EmailClientTimeout"); + if (input == GenericErrorCodesEmailClientCanceledTask) output = Json::Value("EmailClientCanceledTask"); + if (input == GenericErrorCodesEmailTemplateMissing) output = Json::Value("EmailTemplateMissing"); + if (input == GenericErrorCodesInvalidHostForTitleId) output = Json::Value("InvalidHostForTitleId"); + if (input == GenericErrorCodesEmailConfirmationTokenDoesNotExist) output = Json::Value("EmailConfirmationTokenDoesNotExist"); + if (input == GenericErrorCodesEmailConfirmationTokenExpired) output = Json::Value("EmailConfirmationTokenExpired"); + if (input == GenericErrorCodesAccountDeleted) output = Json::Value("AccountDeleted"); + if (input == GenericErrorCodesPlayerSecretNotConfigured) output = Json::Value("PlayerSecretNotConfigured"); + if (input == GenericErrorCodesInvalidSignatureTime) output = Json::Value("InvalidSignatureTime"); + if (input == GenericErrorCodesNoContactEmailAddressFound) output = Json::Value("NoContactEmailAddressFound"); + if (input == GenericErrorCodesInvalidAuthToken) output = Json::Value("InvalidAuthToken"); + if (input == GenericErrorCodesAuthTokenDoesNotExist) output = Json::Value("AuthTokenDoesNotExist"); + if (input == GenericErrorCodesAuthTokenExpired) output = Json::Value("AuthTokenExpired"); + if (input == GenericErrorCodesAuthTokenAlreadyUsedToResetPassword) output = Json::Value("AuthTokenAlreadyUsedToResetPassword"); + if (input == GenericErrorCodesMembershipNameTooLong) output = Json::Value("MembershipNameTooLong"); + if (input == GenericErrorCodesMembershipNotFound) output = Json::Value("MembershipNotFound"); + if (input == GenericErrorCodesGoogleServiceAccountInvalid) output = Json::Value("GoogleServiceAccountInvalid"); + if (input == GenericErrorCodesGoogleServiceAccountParseFailure) output = Json::Value("GoogleServiceAccountParseFailure"); + if (input == GenericErrorCodesEntityTokenMissing) output = Json::Value("EntityTokenMissing"); + if (input == GenericErrorCodesEntityTokenInvalid) output = Json::Value("EntityTokenInvalid"); + if (input == GenericErrorCodesEntityTokenExpired) output = Json::Value("EntityTokenExpired"); + if (input == GenericErrorCodesEntityTokenRevoked) output = Json::Value("EntityTokenRevoked"); + if (input == GenericErrorCodesInvalidProductForSubscription) output = Json::Value("InvalidProductForSubscription"); + if (input == GenericErrorCodesXboxInaccessible) output = Json::Value("XboxInaccessible"); + if (input == GenericErrorCodesSubscriptionAlreadyTaken) output = Json::Value("SubscriptionAlreadyTaken"); + if (input == GenericErrorCodesSmtpAddonNotEnabled) output = Json::Value("SmtpAddonNotEnabled"); + if (input == GenericErrorCodesAPIConcurrentRequestLimitExceeded) output = Json::Value("APIConcurrentRequestLimitExceeded"); + if (input == GenericErrorCodesXboxRejectedXSTSExchangeRequest) output = Json::Value("XboxRejectedXSTSExchangeRequest"); + if (input == GenericErrorCodesVariableNotDefined) output = Json::Value("VariableNotDefined"); + if (input == GenericErrorCodesTemplateVersionNotDefined) output = Json::Value("TemplateVersionNotDefined"); + if (input == GenericErrorCodesFileTooLarge) output = Json::Value("FileTooLarge"); + if (input == GenericErrorCodesTitleDeleted) output = Json::Value("TitleDeleted"); + if (input == GenericErrorCodesTitleContainsUserAccounts) output = Json::Value("TitleContainsUserAccounts"); + if (input == GenericErrorCodesTitleDeletionPlayerCleanupFailure) output = Json::Value("TitleDeletionPlayerCleanupFailure"); + if (input == GenericErrorCodesEntityFileOperationPending) output = Json::Value("EntityFileOperationPending"); + if (input == GenericErrorCodesNoEntityFileOperationPending) output = Json::Value("NoEntityFileOperationPending"); + if (input == GenericErrorCodesEntityProfileVersionMismatch) output = Json::Value("EntityProfileVersionMismatch"); + if (input == GenericErrorCodesTemplateVersionTooOld) output = Json::Value("TemplateVersionTooOld"); + if (input == GenericErrorCodesMembershipDefinitionInUse) output = Json::Value("MembershipDefinitionInUse"); + if (input == GenericErrorCodesPaymentPageNotConfigured) output = Json::Value("PaymentPageNotConfigured"); + if (input == GenericErrorCodesFailedLoginAttemptRateLimitExceeded) output = Json::Value("FailedLoginAttemptRateLimitExceeded"); + if (input == GenericErrorCodesEntityBlockedByGroup) output = Json::Value("EntityBlockedByGroup"); + if (input == GenericErrorCodesRoleDoesNotExist) output = Json::Value("RoleDoesNotExist"); + if (input == GenericErrorCodesEntityIsAlreadyMember) output = Json::Value("EntityIsAlreadyMember"); + if (input == GenericErrorCodesDuplicateRoleId) output = Json::Value("DuplicateRoleId"); + if (input == GenericErrorCodesGroupInvitationNotFound) output = Json::Value("GroupInvitationNotFound"); + if (input == GenericErrorCodesGroupApplicationNotFound) output = Json::Value("GroupApplicationNotFound"); + if (input == GenericErrorCodesOutstandingInvitationAcceptedInstead) output = Json::Value("OutstandingInvitationAcceptedInstead"); + if (input == GenericErrorCodesOutstandingApplicationAcceptedInstead) output = Json::Value("OutstandingApplicationAcceptedInstead"); + if (input == GenericErrorCodesRoleIsGroupDefaultMember) output = Json::Value("RoleIsGroupDefaultMember"); + if (input == GenericErrorCodesRoleIsGroupAdmin) output = Json::Value("RoleIsGroupAdmin"); + if (input == GenericErrorCodesRoleNameNotAvailable) output = Json::Value("RoleNameNotAvailable"); + if (input == GenericErrorCodesGroupNameNotAvailable) output = Json::Value("GroupNameNotAvailable"); + if (input == GenericErrorCodesEmailReportAlreadySent) output = Json::Value("EmailReportAlreadySent"); + if (input == GenericErrorCodesEmailReportRecipientBlacklisted) output = Json::Value("EmailReportRecipientBlacklisted"); + if (input == GenericErrorCodesEventNamespaceNotAllowed) output = Json::Value("EventNamespaceNotAllowed"); + if (input == GenericErrorCodesEventEntityNotAllowed) output = Json::Value("EventEntityNotAllowed"); + } + inline void FromJsonEnum(const Json::Value& input, GenericErrorCodes& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Success") output = GenericErrorCodesSuccess; + if (inputStr == "InvalidParams") output = GenericErrorCodesInvalidParams; + if (inputStr == "AccountNotFound") output = GenericErrorCodesAccountNotFound; + if (inputStr == "AccountBanned") output = GenericErrorCodesAccountBanned; + if (inputStr == "InvalidUsernameOrPassword") output = GenericErrorCodesInvalidUsernameOrPassword; + if (inputStr == "InvalidTitleId") output = GenericErrorCodesInvalidTitleId; + if (inputStr == "InvalidEmailAddress") output = GenericErrorCodesInvalidEmailAddress; + if (inputStr == "EmailAddressNotAvailable") output = GenericErrorCodesEmailAddressNotAvailable; + if (inputStr == "InvalidUsername") output = GenericErrorCodesInvalidUsername; + if (inputStr == "InvalidPassword") output = GenericErrorCodesInvalidPassword; + if (inputStr == "UsernameNotAvailable") output = GenericErrorCodesUsernameNotAvailable; + if (inputStr == "InvalidSteamTicket") output = GenericErrorCodesInvalidSteamTicket; + if (inputStr == "AccountAlreadyLinked") output = GenericErrorCodesAccountAlreadyLinked; + if (inputStr == "LinkedAccountAlreadyClaimed") output = GenericErrorCodesLinkedAccountAlreadyClaimed; + if (inputStr == "InvalidFacebookToken") output = GenericErrorCodesInvalidFacebookToken; + if (inputStr == "AccountNotLinked") output = GenericErrorCodesAccountNotLinked; + if (inputStr == "FailedByPaymentProvider") output = GenericErrorCodesFailedByPaymentProvider; + if (inputStr == "CouponCodeNotFound") output = GenericErrorCodesCouponCodeNotFound; + if (inputStr == "InvalidContainerItem") output = GenericErrorCodesInvalidContainerItem; + if (inputStr == "ContainerNotOwned") output = GenericErrorCodesContainerNotOwned; + if (inputStr == "KeyNotOwned") output = GenericErrorCodesKeyNotOwned; + if (inputStr == "InvalidItemIdInTable") output = GenericErrorCodesInvalidItemIdInTable; + if (inputStr == "InvalidReceipt") output = GenericErrorCodesInvalidReceipt; + if (inputStr == "ReceiptAlreadyUsed") output = GenericErrorCodesReceiptAlreadyUsed; + if (inputStr == "ReceiptCancelled") output = GenericErrorCodesReceiptCancelled; + if (inputStr == "GameNotFound") output = GenericErrorCodesGameNotFound; + if (inputStr == "GameModeNotFound") output = GenericErrorCodesGameModeNotFound; + if (inputStr == "InvalidGoogleToken") output = GenericErrorCodesInvalidGoogleToken; + if (inputStr == "UserIsNotPartOfDeveloper") output = GenericErrorCodesUserIsNotPartOfDeveloper; + if (inputStr == "InvalidTitleForDeveloper") output = GenericErrorCodesInvalidTitleForDeveloper; + if (inputStr == "TitleNameConflicts") output = GenericErrorCodesTitleNameConflicts; + if (inputStr == "UserisNotValid") output = GenericErrorCodesUserisNotValid; + if (inputStr == "ValueAlreadyExists") output = GenericErrorCodesValueAlreadyExists; + if (inputStr == "BuildNotFound") output = GenericErrorCodesBuildNotFound; + if (inputStr == "PlayerNotInGame") output = GenericErrorCodesPlayerNotInGame; + if (inputStr == "InvalidTicket") output = GenericErrorCodesInvalidTicket; + if (inputStr == "InvalidDeveloper") output = GenericErrorCodesInvalidDeveloper; + if (inputStr == "InvalidOrderInfo") output = GenericErrorCodesInvalidOrderInfo; + if (inputStr == "RegistrationIncomplete") output = GenericErrorCodesRegistrationIncomplete; + if (inputStr == "InvalidPlatform") output = GenericErrorCodesInvalidPlatform; + if (inputStr == "UnknownError") output = GenericErrorCodesUnknownError; + if (inputStr == "SteamApplicationNotOwned") output = GenericErrorCodesSteamApplicationNotOwned; + if (inputStr == "WrongSteamAccount") output = GenericErrorCodesWrongSteamAccount; + if (inputStr == "TitleNotActivated") output = GenericErrorCodesTitleNotActivated; + if (inputStr == "RegistrationSessionNotFound") output = GenericErrorCodesRegistrationSessionNotFound; + if (inputStr == "NoSuchMod") output = GenericErrorCodesNoSuchMod; + if (inputStr == "FileNotFound") output = GenericErrorCodesFileNotFound; + if (inputStr == "DuplicateEmail") output = GenericErrorCodesDuplicateEmail; + if (inputStr == "ItemNotFound") output = GenericErrorCodesItemNotFound; + if (inputStr == "ItemNotOwned") output = GenericErrorCodesItemNotOwned; + if (inputStr == "ItemNotRecycleable") output = GenericErrorCodesItemNotRecycleable; + if (inputStr == "ItemNotAffordable") output = GenericErrorCodesItemNotAffordable; + if (inputStr == "InvalidVirtualCurrency") output = GenericErrorCodesInvalidVirtualCurrency; + if (inputStr == "WrongVirtualCurrency") output = GenericErrorCodesWrongVirtualCurrency; + if (inputStr == "WrongPrice") output = GenericErrorCodesWrongPrice; + if (inputStr == "NonPositiveValue") output = GenericErrorCodesNonPositiveValue; + if (inputStr == "InvalidRegion") output = GenericErrorCodesInvalidRegion; + if (inputStr == "RegionAtCapacity") output = GenericErrorCodesRegionAtCapacity; + if (inputStr == "ServerFailedToStart") output = GenericErrorCodesServerFailedToStart; + if (inputStr == "NameNotAvailable") output = GenericErrorCodesNameNotAvailable; + if (inputStr == "InsufficientFunds") output = GenericErrorCodesInsufficientFunds; + if (inputStr == "InvalidDeviceID") output = GenericErrorCodesInvalidDeviceID; + if (inputStr == "InvalidPushNotificationToken") output = GenericErrorCodesInvalidPushNotificationToken; + if (inputStr == "NoRemainingUses") output = GenericErrorCodesNoRemainingUses; + if (inputStr == "InvalidPaymentProvider") output = GenericErrorCodesInvalidPaymentProvider; + if (inputStr == "PurchaseInitializationFailure") output = GenericErrorCodesPurchaseInitializationFailure; + if (inputStr == "DuplicateUsername") output = GenericErrorCodesDuplicateUsername; + if (inputStr == "InvalidBuyerInfo") output = GenericErrorCodesInvalidBuyerInfo; + if (inputStr == "NoGameModeParamsSet") output = GenericErrorCodesNoGameModeParamsSet; + if (inputStr == "BodyTooLarge") output = GenericErrorCodesBodyTooLarge; + if (inputStr == "ReservedWordInBody") output = GenericErrorCodesReservedWordInBody; + if (inputStr == "InvalidTypeInBody") output = GenericErrorCodesInvalidTypeInBody; + if (inputStr == "InvalidRequest") output = GenericErrorCodesInvalidRequest; + if (inputStr == "ReservedEventName") output = GenericErrorCodesReservedEventName; + if (inputStr == "InvalidUserStatistics") output = GenericErrorCodesInvalidUserStatistics; + if (inputStr == "NotAuthenticated") output = GenericErrorCodesNotAuthenticated; + if (inputStr == "StreamAlreadyExists") output = GenericErrorCodesStreamAlreadyExists; + if (inputStr == "ErrorCreatingStream") output = GenericErrorCodesErrorCreatingStream; + if (inputStr == "StreamNotFound") output = GenericErrorCodesStreamNotFound; + if (inputStr == "InvalidAccount") output = GenericErrorCodesInvalidAccount; + if (inputStr == "PurchaseDoesNotExist") output = GenericErrorCodesPurchaseDoesNotExist; + if (inputStr == "InvalidPurchaseTransactionStatus") output = GenericErrorCodesInvalidPurchaseTransactionStatus; + if (inputStr == "APINotEnabledForGameClientAccess") output = GenericErrorCodesAPINotEnabledForGameClientAccess; + if (inputStr == "NoPushNotificationARNForTitle") output = GenericErrorCodesNoPushNotificationARNForTitle; + if (inputStr == "BuildAlreadyExists") output = GenericErrorCodesBuildAlreadyExists; + if (inputStr == "BuildPackageDoesNotExist") output = GenericErrorCodesBuildPackageDoesNotExist; + if (inputStr == "CustomAnalyticsEventsNotEnabledForTitle") output = GenericErrorCodesCustomAnalyticsEventsNotEnabledForTitle; + if (inputStr == "InvalidSharedGroupId") output = GenericErrorCodesInvalidSharedGroupId; + if (inputStr == "NotAuthorized") output = GenericErrorCodesNotAuthorized; + if (inputStr == "MissingTitleGoogleProperties") output = GenericErrorCodesMissingTitleGoogleProperties; + if (inputStr == "InvalidItemProperties") output = GenericErrorCodesInvalidItemProperties; + if (inputStr == "InvalidPSNAuthCode") output = GenericErrorCodesInvalidPSNAuthCode; + if (inputStr == "InvalidItemId") output = GenericErrorCodesInvalidItemId; + if (inputStr == "PushNotEnabledForAccount") output = GenericErrorCodesPushNotEnabledForAccount; + if (inputStr == "PushServiceError") output = GenericErrorCodesPushServiceError; + if (inputStr == "ReceiptDoesNotContainInAppItems") output = GenericErrorCodesReceiptDoesNotContainInAppItems; + if (inputStr == "ReceiptContainsMultipleInAppItems") output = GenericErrorCodesReceiptContainsMultipleInAppItems; + if (inputStr == "InvalidBundleID") output = GenericErrorCodesInvalidBundleID; + if (inputStr == "JavascriptException") output = GenericErrorCodesJavascriptException; + if (inputStr == "InvalidSessionTicket") output = GenericErrorCodesInvalidSessionTicket; + if (inputStr == "UnableToConnectToDatabase") output = GenericErrorCodesUnableToConnectToDatabase; + if (inputStr == "InternalServerError") output = GenericErrorCodesInternalServerError; + if (inputStr == "InvalidReportDate") output = GenericErrorCodesInvalidReportDate; + if (inputStr == "ReportNotAvailable") output = GenericErrorCodesReportNotAvailable; + if (inputStr == "DatabaseThroughputExceeded") output = GenericErrorCodesDatabaseThroughputExceeded; + if (inputStr == "InvalidGameTicket") output = GenericErrorCodesInvalidGameTicket; + if (inputStr == "ExpiredGameTicket") output = GenericErrorCodesExpiredGameTicket; + if (inputStr == "GameTicketDoesNotMatchLobby") output = GenericErrorCodesGameTicketDoesNotMatchLobby; + if (inputStr == "LinkedDeviceAlreadyClaimed") output = GenericErrorCodesLinkedDeviceAlreadyClaimed; + if (inputStr == "DeviceAlreadyLinked") output = GenericErrorCodesDeviceAlreadyLinked; + if (inputStr == "DeviceNotLinked") output = GenericErrorCodesDeviceNotLinked; + if (inputStr == "PartialFailure") output = GenericErrorCodesPartialFailure; + if (inputStr == "PublisherNotSet") output = GenericErrorCodesPublisherNotSet; + if (inputStr == "ServiceUnavailable") output = GenericErrorCodesServiceUnavailable; + if (inputStr == "VersionNotFound") output = GenericErrorCodesVersionNotFound; + if (inputStr == "RevisionNotFound") output = GenericErrorCodesRevisionNotFound; + if (inputStr == "InvalidPublisherId") output = GenericErrorCodesInvalidPublisherId; + if (inputStr == "DownstreamServiceUnavailable") output = GenericErrorCodesDownstreamServiceUnavailable; + if (inputStr == "APINotIncludedInTitleUsageTier") output = GenericErrorCodesAPINotIncludedInTitleUsageTier; + if (inputStr == "DAULimitExceeded") output = GenericErrorCodesDAULimitExceeded; + if (inputStr == "APIRequestLimitExceeded") output = GenericErrorCodesAPIRequestLimitExceeded; + if (inputStr == "InvalidAPIEndpoint") output = GenericErrorCodesInvalidAPIEndpoint; + if (inputStr == "BuildNotAvailable") output = GenericErrorCodesBuildNotAvailable; + if (inputStr == "ConcurrentEditError") output = GenericErrorCodesConcurrentEditError; + if (inputStr == "ContentNotFound") output = GenericErrorCodesContentNotFound; + if (inputStr == "CharacterNotFound") output = GenericErrorCodesCharacterNotFound; + if (inputStr == "CloudScriptNotFound") output = GenericErrorCodesCloudScriptNotFound; + if (inputStr == "ContentQuotaExceeded") output = GenericErrorCodesContentQuotaExceeded; + if (inputStr == "InvalidCharacterStatistics") output = GenericErrorCodesInvalidCharacterStatistics; + if (inputStr == "PhotonNotEnabledForTitle") output = GenericErrorCodesPhotonNotEnabledForTitle; + if (inputStr == "PhotonApplicationNotFound") output = GenericErrorCodesPhotonApplicationNotFound; + if (inputStr == "PhotonApplicationNotAssociatedWithTitle") output = GenericErrorCodesPhotonApplicationNotAssociatedWithTitle; + if (inputStr == "InvalidEmailOrPassword") output = GenericErrorCodesInvalidEmailOrPassword; + if (inputStr == "FacebookAPIError") output = GenericErrorCodesFacebookAPIError; + if (inputStr == "InvalidContentType") output = GenericErrorCodesInvalidContentType; + if (inputStr == "KeyLengthExceeded") output = GenericErrorCodesKeyLengthExceeded; + if (inputStr == "DataLengthExceeded") output = GenericErrorCodesDataLengthExceeded; + if (inputStr == "TooManyKeys") output = GenericErrorCodesTooManyKeys; + if (inputStr == "FreeTierCannotHaveVirtualCurrency") output = GenericErrorCodesFreeTierCannotHaveVirtualCurrency; + if (inputStr == "MissingAmazonSharedKey") output = GenericErrorCodesMissingAmazonSharedKey; + if (inputStr == "AmazonValidationError") output = GenericErrorCodesAmazonValidationError; + if (inputStr == "InvalidPSNIssuerId") output = GenericErrorCodesInvalidPSNIssuerId; + if (inputStr == "PSNInaccessible") output = GenericErrorCodesPSNInaccessible; + if (inputStr == "ExpiredAuthToken") output = GenericErrorCodesExpiredAuthToken; + if (inputStr == "FailedToGetEntitlements") output = GenericErrorCodesFailedToGetEntitlements; + if (inputStr == "FailedToConsumeEntitlement") output = GenericErrorCodesFailedToConsumeEntitlement; + if (inputStr == "TradeAcceptingUserNotAllowed") output = GenericErrorCodesTradeAcceptingUserNotAllowed; + if (inputStr == "TradeInventoryItemIsAssignedToCharacter") output = GenericErrorCodesTradeInventoryItemIsAssignedToCharacter; + if (inputStr == "TradeInventoryItemIsBundle") output = GenericErrorCodesTradeInventoryItemIsBundle; + if (inputStr == "TradeStatusNotValidForCancelling") output = GenericErrorCodesTradeStatusNotValidForCancelling; + if (inputStr == "TradeStatusNotValidForAccepting") output = GenericErrorCodesTradeStatusNotValidForAccepting; + if (inputStr == "TradeDoesNotExist") output = GenericErrorCodesTradeDoesNotExist; + if (inputStr == "TradeCancelled") output = GenericErrorCodesTradeCancelled; + if (inputStr == "TradeAlreadyFilled") output = GenericErrorCodesTradeAlreadyFilled; + if (inputStr == "TradeWaitForStatusTimeout") output = GenericErrorCodesTradeWaitForStatusTimeout; + if (inputStr == "TradeInventoryItemExpired") output = GenericErrorCodesTradeInventoryItemExpired; + if (inputStr == "TradeMissingOfferedAndAcceptedItems") output = GenericErrorCodesTradeMissingOfferedAndAcceptedItems; + if (inputStr == "TradeAcceptedItemIsBundle") output = GenericErrorCodesTradeAcceptedItemIsBundle; + if (inputStr == "TradeAcceptedItemIsStackable") output = GenericErrorCodesTradeAcceptedItemIsStackable; + if (inputStr == "TradeInventoryItemInvalidStatus") output = GenericErrorCodesTradeInventoryItemInvalidStatus; + if (inputStr == "TradeAcceptedCatalogItemInvalid") output = GenericErrorCodesTradeAcceptedCatalogItemInvalid; + if (inputStr == "TradeAllowedUsersInvalid") output = GenericErrorCodesTradeAllowedUsersInvalid; + if (inputStr == "TradeInventoryItemDoesNotExist") output = GenericErrorCodesTradeInventoryItemDoesNotExist; + if (inputStr == "TradeInventoryItemIsConsumed") output = GenericErrorCodesTradeInventoryItemIsConsumed; + if (inputStr == "TradeInventoryItemIsStackable") output = GenericErrorCodesTradeInventoryItemIsStackable; + if (inputStr == "TradeAcceptedItemsMismatch") output = GenericErrorCodesTradeAcceptedItemsMismatch; + if (inputStr == "InvalidKongregateToken") output = GenericErrorCodesInvalidKongregateToken; + if (inputStr == "FeatureNotConfiguredForTitle") output = GenericErrorCodesFeatureNotConfiguredForTitle; + if (inputStr == "NoMatchingCatalogItemForReceipt") output = GenericErrorCodesNoMatchingCatalogItemForReceipt; + if (inputStr == "InvalidCurrencyCode") output = GenericErrorCodesInvalidCurrencyCode; + if (inputStr == "NoRealMoneyPriceForCatalogItem") output = GenericErrorCodesNoRealMoneyPriceForCatalogItem; + if (inputStr == "TradeInventoryItemIsNotTradable") output = GenericErrorCodesTradeInventoryItemIsNotTradable; + if (inputStr == "TradeAcceptedCatalogItemIsNotTradable") output = GenericErrorCodesTradeAcceptedCatalogItemIsNotTradable; + if (inputStr == "UsersAlreadyFriends") output = GenericErrorCodesUsersAlreadyFriends; + if (inputStr == "LinkedIdentifierAlreadyClaimed") output = GenericErrorCodesLinkedIdentifierAlreadyClaimed; + if (inputStr == "CustomIdNotLinked") output = GenericErrorCodesCustomIdNotLinked; + if (inputStr == "TotalDataSizeExceeded") output = GenericErrorCodesTotalDataSizeExceeded; + if (inputStr == "DeleteKeyConflict") output = GenericErrorCodesDeleteKeyConflict; + if (inputStr == "InvalidXboxLiveToken") output = GenericErrorCodesInvalidXboxLiveToken; + if (inputStr == "ExpiredXboxLiveToken") output = GenericErrorCodesExpiredXboxLiveToken; + if (inputStr == "ResettableStatisticVersionRequired") output = GenericErrorCodesResettableStatisticVersionRequired; + if (inputStr == "NotAuthorizedByTitle") output = GenericErrorCodesNotAuthorizedByTitle; + if (inputStr == "NoPartnerEnabled") output = GenericErrorCodesNoPartnerEnabled; + if (inputStr == "InvalidPartnerResponse") output = GenericErrorCodesInvalidPartnerResponse; + if (inputStr == "APINotEnabledForGameServerAccess") output = GenericErrorCodesAPINotEnabledForGameServerAccess; + if (inputStr == "StatisticNotFound") output = GenericErrorCodesStatisticNotFound; + if (inputStr == "StatisticNameConflict") output = GenericErrorCodesStatisticNameConflict; + if (inputStr == "StatisticVersionClosedForWrites") output = GenericErrorCodesStatisticVersionClosedForWrites; + if (inputStr == "StatisticVersionInvalid") output = GenericErrorCodesStatisticVersionInvalid; + if (inputStr == "APIClientRequestRateLimitExceeded") output = GenericErrorCodesAPIClientRequestRateLimitExceeded; + if (inputStr == "InvalidJSONContent") output = GenericErrorCodesInvalidJSONContent; + if (inputStr == "InvalidDropTable") output = GenericErrorCodesInvalidDropTable; + if (inputStr == "StatisticVersionAlreadyIncrementedForScheduledInterval") output = GenericErrorCodesStatisticVersionAlreadyIncrementedForScheduledInterval; + if (inputStr == "StatisticCountLimitExceeded") output = GenericErrorCodesStatisticCountLimitExceeded; + if (inputStr == "StatisticVersionIncrementRateExceeded") output = GenericErrorCodesStatisticVersionIncrementRateExceeded; + if (inputStr == "ContainerKeyInvalid") output = GenericErrorCodesContainerKeyInvalid; + if (inputStr == "CloudScriptExecutionTimeLimitExceeded") output = GenericErrorCodesCloudScriptExecutionTimeLimitExceeded; + if (inputStr == "NoWritePermissionsForEvent") output = GenericErrorCodesNoWritePermissionsForEvent; + if (inputStr == "CloudScriptFunctionArgumentSizeExceeded") output = GenericErrorCodesCloudScriptFunctionArgumentSizeExceeded; + if (inputStr == "CloudScriptAPIRequestCountExceeded") output = GenericErrorCodesCloudScriptAPIRequestCountExceeded; + if (inputStr == "CloudScriptAPIRequestError") output = GenericErrorCodesCloudScriptAPIRequestError; + if (inputStr == "CloudScriptHTTPRequestError") output = GenericErrorCodesCloudScriptHTTPRequestError; + if (inputStr == "InsufficientGuildRole") output = GenericErrorCodesInsufficientGuildRole; + if (inputStr == "GuildNotFound") output = GenericErrorCodesGuildNotFound; + if (inputStr == "OverLimit") output = GenericErrorCodesOverLimit; + if (inputStr == "EventNotFound") output = GenericErrorCodesEventNotFound; + if (inputStr == "InvalidEventField") output = GenericErrorCodesInvalidEventField; + if (inputStr == "InvalidEventName") output = GenericErrorCodesInvalidEventName; + if (inputStr == "CatalogNotConfigured") output = GenericErrorCodesCatalogNotConfigured; + if (inputStr == "OperationNotSupportedForPlatform") output = GenericErrorCodesOperationNotSupportedForPlatform; + if (inputStr == "SegmentNotFound") output = GenericErrorCodesSegmentNotFound; + if (inputStr == "StoreNotFound") output = GenericErrorCodesStoreNotFound; + if (inputStr == "InvalidStatisticName") output = GenericErrorCodesInvalidStatisticName; + if (inputStr == "TitleNotQualifiedForLimit") output = GenericErrorCodesTitleNotQualifiedForLimit; + if (inputStr == "InvalidServiceLimitLevel") output = GenericErrorCodesInvalidServiceLimitLevel; + if (inputStr == "ServiceLimitLevelInTransition") output = GenericErrorCodesServiceLimitLevelInTransition; + if (inputStr == "CouponAlreadyRedeemed") output = GenericErrorCodesCouponAlreadyRedeemed; + if (inputStr == "GameServerBuildSizeLimitExceeded") output = GenericErrorCodesGameServerBuildSizeLimitExceeded; + if (inputStr == "GameServerBuildCountLimitExceeded") output = GenericErrorCodesGameServerBuildCountLimitExceeded; + if (inputStr == "VirtualCurrencyCountLimitExceeded") output = GenericErrorCodesVirtualCurrencyCountLimitExceeded; + if (inputStr == "VirtualCurrencyCodeExists") output = GenericErrorCodesVirtualCurrencyCodeExists; + if (inputStr == "TitleNewsItemCountLimitExceeded") output = GenericErrorCodesTitleNewsItemCountLimitExceeded; + if (inputStr == "InvalidTwitchToken") output = GenericErrorCodesInvalidTwitchToken; + if (inputStr == "TwitchResponseError") output = GenericErrorCodesTwitchResponseError; + if (inputStr == "ProfaneDisplayName") output = GenericErrorCodesProfaneDisplayName; + if (inputStr == "UserAlreadyAdded") output = GenericErrorCodesUserAlreadyAdded; + if (inputStr == "InvalidVirtualCurrencyCode") output = GenericErrorCodesInvalidVirtualCurrencyCode; + if (inputStr == "VirtualCurrencyCannotBeDeleted") output = GenericErrorCodesVirtualCurrencyCannotBeDeleted; + if (inputStr == "IdentifierAlreadyClaimed") output = GenericErrorCodesIdentifierAlreadyClaimed; + if (inputStr == "IdentifierNotLinked") output = GenericErrorCodesIdentifierNotLinked; + if (inputStr == "InvalidContinuationToken") output = GenericErrorCodesInvalidContinuationToken; + if (inputStr == "ExpiredContinuationToken") output = GenericErrorCodesExpiredContinuationToken; + if (inputStr == "InvalidSegment") output = GenericErrorCodesInvalidSegment; + if (inputStr == "InvalidSessionId") output = GenericErrorCodesInvalidSessionId; + if (inputStr == "SessionLogNotFound") output = GenericErrorCodesSessionLogNotFound; + if (inputStr == "InvalidSearchTerm") output = GenericErrorCodesInvalidSearchTerm; + if (inputStr == "TwoFactorAuthenticationTokenRequired") output = GenericErrorCodesTwoFactorAuthenticationTokenRequired; + if (inputStr == "GameServerHostCountLimitExceeded") output = GenericErrorCodesGameServerHostCountLimitExceeded; + if (inputStr == "PlayerTagCountLimitExceeded") output = GenericErrorCodesPlayerTagCountLimitExceeded; + if (inputStr == "RequestAlreadyRunning") output = GenericErrorCodesRequestAlreadyRunning; + if (inputStr == "ActionGroupNotFound") output = GenericErrorCodesActionGroupNotFound; + if (inputStr == "MaximumSegmentBulkActionJobsRunning") output = GenericErrorCodesMaximumSegmentBulkActionJobsRunning; + if (inputStr == "NoActionsOnPlayersInSegmentJob") output = GenericErrorCodesNoActionsOnPlayersInSegmentJob; + if (inputStr == "DuplicateStatisticName") output = GenericErrorCodesDuplicateStatisticName; + if (inputStr == "ScheduledTaskNameConflict") output = GenericErrorCodesScheduledTaskNameConflict; + if (inputStr == "ScheduledTaskCreateConflict") output = GenericErrorCodesScheduledTaskCreateConflict; + if (inputStr == "InvalidScheduledTaskName") output = GenericErrorCodesInvalidScheduledTaskName; + if (inputStr == "InvalidTaskSchedule") output = GenericErrorCodesInvalidTaskSchedule; + if (inputStr == "SteamNotEnabledForTitle") output = GenericErrorCodesSteamNotEnabledForTitle; + if (inputStr == "LimitNotAnUpgradeOption") output = GenericErrorCodesLimitNotAnUpgradeOption; + if (inputStr == "NoSecretKeyEnabledForCloudScript") output = GenericErrorCodesNoSecretKeyEnabledForCloudScript; + if (inputStr == "TaskNotFound") output = GenericErrorCodesTaskNotFound; + if (inputStr == "TaskInstanceNotFound") output = GenericErrorCodesTaskInstanceNotFound; + if (inputStr == "InvalidIdentityProviderId") output = GenericErrorCodesInvalidIdentityProviderId; + if (inputStr == "MisconfiguredIdentityProvider") output = GenericErrorCodesMisconfiguredIdentityProvider; + if (inputStr == "InvalidScheduledTaskType") output = GenericErrorCodesInvalidScheduledTaskType; + if (inputStr == "BillingInformationRequired") output = GenericErrorCodesBillingInformationRequired; + if (inputStr == "LimitedEditionItemUnavailable") output = GenericErrorCodesLimitedEditionItemUnavailable; + if (inputStr == "InvalidAdPlacementAndReward") output = GenericErrorCodesInvalidAdPlacementAndReward; + if (inputStr == "AllAdPlacementViewsAlreadyConsumed") output = GenericErrorCodesAllAdPlacementViewsAlreadyConsumed; + if (inputStr == "GoogleOAuthNotConfiguredForTitle") output = GenericErrorCodesGoogleOAuthNotConfiguredForTitle; + if (inputStr == "GoogleOAuthError") output = GenericErrorCodesGoogleOAuthError; + if (inputStr == "UserNotFriend") output = GenericErrorCodesUserNotFriend; + if (inputStr == "InvalidSignature") output = GenericErrorCodesInvalidSignature; + if (inputStr == "InvalidPublicKey") output = GenericErrorCodesInvalidPublicKey; + if (inputStr == "GoogleOAuthNoIdTokenIncludedInResponse") output = GenericErrorCodesGoogleOAuthNoIdTokenIncludedInResponse; + if (inputStr == "StatisticUpdateInProgress") output = GenericErrorCodesStatisticUpdateInProgress; + if (inputStr == "LeaderboardVersionNotAvailable") output = GenericErrorCodesLeaderboardVersionNotAvailable; + if (inputStr == "StatisticAlreadyHasPrizeTable") output = GenericErrorCodesStatisticAlreadyHasPrizeTable; + if (inputStr == "PrizeTableHasOverlappingRanks") output = GenericErrorCodesPrizeTableHasOverlappingRanks; + if (inputStr == "PrizeTableHasMissingRanks") output = GenericErrorCodesPrizeTableHasMissingRanks; + if (inputStr == "PrizeTableRankStartsAtZero") output = GenericErrorCodesPrizeTableRankStartsAtZero; + if (inputStr == "InvalidStatistic") output = GenericErrorCodesInvalidStatistic; + if (inputStr == "ExpressionParseFailure") output = GenericErrorCodesExpressionParseFailure; + if (inputStr == "ExpressionInvokeFailure") output = GenericErrorCodesExpressionInvokeFailure; + if (inputStr == "ExpressionTooLong") output = GenericErrorCodesExpressionTooLong; + if (inputStr == "DataUpdateRateExceeded") output = GenericErrorCodesDataUpdateRateExceeded; + if (inputStr == "RestrictedEmailDomain") output = GenericErrorCodesRestrictedEmailDomain; + if (inputStr == "EncryptionKeyDisabled") output = GenericErrorCodesEncryptionKeyDisabled; + if (inputStr == "EncryptionKeyMissing") output = GenericErrorCodesEncryptionKeyMissing; + if (inputStr == "EncryptionKeyBroken") output = GenericErrorCodesEncryptionKeyBroken; + if (inputStr == "NoSharedSecretKeyConfigured") output = GenericErrorCodesNoSharedSecretKeyConfigured; + if (inputStr == "SecretKeyNotFound") output = GenericErrorCodesSecretKeyNotFound; + if (inputStr == "PlayerSecretAlreadyConfigured") output = GenericErrorCodesPlayerSecretAlreadyConfigured; + if (inputStr == "APIRequestsDisabledForTitle") output = GenericErrorCodesAPIRequestsDisabledForTitle; + if (inputStr == "InvalidSharedSecretKey") output = GenericErrorCodesInvalidSharedSecretKey; + if (inputStr == "PrizeTableHasNoRanks") output = GenericErrorCodesPrizeTableHasNoRanks; + if (inputStr == "ProfileDoesNotExist") output = GenericErrorCodesProfileDoesNotExist; + if (inputStr == "ContentS3OriginBucketNotConfigured") output = GenericErrorCodesContentS3OriginBucketNotConfigured; + if (inputStr == "InvalidEnvironmentForReceipt") output = GenericErrorCodesInvalidEnvironmentForReceipt; + if (inputStr == "EncryptedRequestNotAllowed") output = GenericErrorCodesEncryptedRequestNotAllowed; + if (inputStr == "SignedRequestNotAllowed") output = GenericErrorCodesSignedRequestNotAllowed; + if (inputStr == "RequestViewConstraintParamsNotAllowed") output = GenericErrorCodesRequestViewConstraintParamsNotAllowed; + if (inputStr == "BadPartnerConfiguration") output = GenericErrorCodesBadPartnerConfiguration; + if (inputStr == "XboxBPCertificateFailure") output = GenericErrorCodesXboxBPCertificateFailure; + if (inputStr == "XboxXASSExchangeFailure") output = GenericErrorCodesXboxXASSExchangeFailure; + if (inputStr == "InvalidEntityId") output = GenericErrorCodesInvalidEntityId; + if (inputStr == "StatisticValueAggregationOverflow") output = GenericErrorCodesStatisticValueAggregationOverflow; + if (inputStr == "EmailMessageFromAddressIsMissing") output = GenericErrorCodesEmailMessageFromAddressIsMissing; + if (inputStr == "EmailMessageToAddressIsMissing") output = GenericErrorCodesEmailMessageToAddressIsMissing; + if (inputStr == "SmtpServerAuthenticationError") output = GenericErrorCodesSmtpServerAuthenticationError; + if (inputStr == "SmtpServerLimitExceeded") output = GenericErrorCodesSmtpServerLimitExceeded; + if (inputStr == "SmtpServerInsufficientStorage") output = GenericErrorCodesSmtpServerInsufficientStorage; + if (inputStr == "SmtpServerCommunicationError") output = GenericErrorCodesSmtpServerCommunicationError; + if (inputStr == "SmtpServerGeneralFailure") output = GenericErrorCodesSmtpServerGeneralFailure; + if (inputStr == "EmailClientTimeout") output = GenericErrorCodesEmailClientTimeout; + if (inputStr == "EmailClientCanceledTask") output = GenericErrorCodesEmailClientCanceledTask; + if (inputStr == "EmailTemplateMissing") output = GenericErrorCodesEmailTemplateMissing; + if (inputStr == "InvalidHostForTitleId") output = GenericErrorCodesInvalidHostForTitleId; + if (inputStr == "EmailConfirmationTokenDoesNotExist") output = GenericErrorCodesEmailConfirmationTokenDoesNotExist; + if (inputStr == "EmailConfirmationTokenExpired") output = GenericErrorCodesEmailConfirmationTokenExpired; + if (inputStr == "AccountDeleted") output = GenericErrorCodesAccountDeleted; + if (inputStr == "PlayerSecretNotConfigured") output = GenericErrorCodesPlayerSecretNotConfigured; + if (inputStr == "InvalidSignatureTime") output = GenericErrorCodesInvalidSignatureTime; + if (inputStr == "NoContactEmailAddressFound") output = GenericErrorCodesNoContactEmailAddressFound; + if (inputStr == "InvalidAuthToken") output = GenericErrorCodesInvalidAuthToken; + if (inputStr == "AuthTokenDoesNotExist") output = GenericErrorCodesAuthTokenDoesNotExist; + if (inputStr == "AuthTokenExpired") output = GenericErrorCodesAuthTokenExpired; + if (inputStr == "AuthTokenAlreadyUsedToResetPassword") output = GenericErrorCodesAuthTokenAlreadyUsedToResetPassword; + if (inputStr == "MembershipNameTooLong") output = GenericErrorCodesMembershipNameTooLong; + if (inputStr == "MembershipNotFound") output = GenericErrorCodesMembershipNotFound; + if (inputStr == "GoogleServiceAccountInvalid") output = GenericErrorCodesGoogleServiceAccountInvalid; + if (inputStr == "GoogleServiceAccountParseFailure") output = GenericErrorCodesGoogleServiceAccountParseFailure; + if (inputStr == "EntityTokenMissing") output = GenericErrorCodesEntityTokenMissing; + if (inputStr == "EntityTokenInvalid") output = GenericErrorCodesEntityTokenInvalid; + if (inputStr == "EntityTokenExpired") output = GenericErrorCodesEntityTokenExpired; + if (inputStr == "EntityTokenRevoked") output = GenericErrorCodesEntityTokenRevoked; + if (inputStr == "InvalidProductForSubscription") output = GenericErrorCodesInvalidProductForSubscription; + if (inputStr == "XboxInaccessible") output = GenericErrorCodesXboxInaccessible; + if (inputStr == "SubscriptionAlreadyTaken") output = GenericErrorCodesSubscriptionAlreadyTaken; + if (inputStr == "SmtpAddonNotEnabled") output = GenericErrorCodesSmtpAddonNotEnabled; + if (inputStr == "APIConcurrentRequestLimitExceeded") output = GenericErrorCodesAPIConcurrentRequestLimitExceeded; + if (inputStr == "XboxRejectedXSTSExchangeRequest") output = GenericErrorCodesXboxRejectedXSTSExchangeRequest; + if (inputStr == "VariableNotDefined") output = GenericErrorCodesVariableNotDefined; + if (inputStr == "TemplateVersionNotDefined") output = GenericErrorCodesTemplateVersionNotDefined; + if (inputStr == "FileTooLarge") output = GenericErrorCodesFileTooLarge; + if (inputStr == "TitleDeleted") output = GenericErrorCodesTitleDeleted; + if (inputStr == "TitleContainsUserAccounts") output = GenericErrorCodesTitleContainsUserAccounts; + if (inputStr == "TitleDeletionPlayerCleanupFailure") output = GenericErrorCodesTitleDeletionPlayerCleanupFailure; + if (inputStr == "EntityFileOperationPending") output = GenericErrorCodesEntityFileOperationPending; + if (inputStr == "NoEntityFileOperationPending") output = GenericErrorCodesNoEntityFileOperationPending; + if (inputStr == "EntityProfileVersionMismatch") output = GenericErrorCodesEntityProfileVersionMismatch; + if (inputStr == "TemplateVersionTooOld") output = GenericErrorCodesTemplateVersionTooOld; + if (inputStr == "MembershipDefinitionInUse") output = GenericErrorCodesMembershipDefinitionInUse; + if (inputStr == "PaymentPageNotConfigured") output = GenericErrorCodesPaymentPageNotConfigured; + if (inputStr == "FailedLoginAttemptRateLimitExceeded") output = GenericErrorCodesFailedLoginAttemptRateLimitExceeded; + if (inputStr == "EntityBlockedByGroup") output = GenericErrorCodesEntityBlockedByGroup; + if (inputStr == "RoleDoesNotExist") output = GenericErrorCodesRoleDoesNotExist; + if (inputStr == "EntityIsAlreadyMember") output = GenericErrorCodesEntityIsAlreadyMember; + if (inputStr == "DuplicateRoleId") output = GenericErrorCodesDuplicateRoleId; + if (inputStr == "GroupInvitationNotFound") output = GenericErrorCodesGroupInvitationNotFound; + if (inputStr == "GroupApplicationNotFound") output = GenericErrorCodesGroupApplicationNotFound; + if (inputStr == "OutstandingInvitationAcceptedInstead") output = GenericErrorCodesOutstandingInvitationAcceptedInstead; + if (inputStr == "OutstandingApplicationAcceptedInstead") output = GenericErrorCodesOutstandingApplicationAcceptedInstead; + if (inputStr == "RoleIsGroupDefaultMember") output = GenericErrorCodesRoleIsGroupDefaultMember; + if (inputStr == "RoleIsGroupAdmin") output = GenericErrorCodesRoleIsGroupAdmin; + if (inputStr == "RoleNameNotAvailable") output = GenericErrorCodesRoleNameNotAvailable; + if (inputStr == "GroupNameNotAvailable") output = GenericErrorCodesGroupNameNotAvailable; + if (inputStr == "EmailReportAlreadySent") output = GenericErrorCodesEmailReportAlreadySent; + if (inputStr == "EmailReportRecipientBlacklisted") output = GenericErrorCodesEmailReportRecipientBlacklisted; + if (inputStr == "EventNamespaceNotAllowed") output = GenericErrorCodesEventNamespaceNotAllowed; + if (inputStr == "EventEntityNotAllowed") output = GenericErrorCodesEventEntityNotAllowed; + } + + enum LoginIdentityProvider + { + LoginIdentityProviderUnknown, + LoginIdentityProviderPlayFab, + LoginIdentityProviderCustom, + LoginIdentityProviderGameCenter, + LoginIdentityProviderGooglePlay, + LoginIdentityProviderSteam, + LoginIdentityProviderXBoxLive, + LoginIdentityProviderPSN, + LoginIdentityProviderKongregate, + LoginIdentityProviderFacebook, + LoginIdentityProviderIOSDevice, + LoginIdentityProviderAndroidDevice, + LoginIdentityProviderTwitch, + LoginIdentityProviderWindowsHello + }; + + inline void ToJsonEnum(const LoginIdentityProvider input, Json::Value& output) + { + if (input == LoginIdentityProviderUnknown) output = Json::Value("Unknown"); + if (input == LoginIdentityProviderPlayFab) output = Json::Value("PlayFab"); + if (input == LoginIdentityProviderCustom) output = Json::Value("Custom"); + if (input == LoginIdentityProviderGameCenter) output = Json::Value("GameCenter"); + if (input == LoginIdentityProviderGooglePlay) output = Json::Value("GooglePlay"); + if (input == LoginIdentityProviderSteam) output = Json::Value("Steam"); + if (input == LoginIdentityProviderXBoxLive) output = Json::Value("XBoxLive"); + if (input == LoginIdentityProviderPSN) output = Json::Value("PSN"); + if (input == LoginIdentityProviderKongregate) output = Json::Value("Kongregate"); + if (input == LoginIdentityProviderFacebook) output = Json::Value("Facebook"); + if (input == LoginIdentityProviderIOSDevice) output = Json::Value("IOSDevice"); + if (input == LoginIdentityProviderAndroidDevice) output = Json::Value("AndroidDevice"); + if (input == LoginIdentityProviderTwitch) output = Json::Value("Twitch"); + if (input == LoginIdentityProviderWindowsHello) output = Json::Value("WindowsHello"); + } + inline void FromJsonEnum(const Json::Value& input, LoginIdentityProvider& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Unknown") output = LoginIdentityProviderUnknown; + if (inputStr == "PlayFab") output = LoginIdentityProviderPlayFab; + if (inputStr == "Custom") output = LoginIdentityProviderCustom; + if (inputStr == "GameCenter") output = LoginIdentityProviderGameCenter; + if (inputStr == "GooglePlay") output = LoginIdentityProviderGooglePlay; + if (inputStr == "Steam") output = LoginIdentityProviderSteam; + if (inputStr == "XBoxLive") output = LoginIdentityProviderXBoxLive; + if (inputStr == "PSN") output = LoginIdentityProviderPSN; + if (inputStr == "Kongregate") output = LoginIdentityProviderKongregate; + if (inputStr == "Facebook") output = LoginIdentityProviderFacebook; + if (inputStr == "IOSDevice") output = LoginIdentityProviderIOSDevice; + if (inputStr == "AndroidDevice") output = LoginIdentityProviderAndroidDevice; + if (inputStr == "Twitch") output = LoginIdentityProviderTwitch; + if (inputStr == "WindowsHello") output = LoginIdentityProviderWindowsHello; + } + + enum PlayerConnectionState + { + PlayerConnectionStateUnassigned, + PlayerConnectionStateConnecting, + PlayerConnectionStateParticipating, + PlayerConnectionStateParticipated + }; + + inline void ToJsonEnum(const PlayerConnectionState input, Json::Value& output) + { + if (input == PlayerConnectionStateUnassigned) output = Json::Value("Unassigned"); + if (input == PlayerConnectionStateConnecting) output = Json::Value("Connecting"); + if (input == PlayerConnectionStateParticipating) output = Json::Value("Participating"); + if (input == PlayerConnectionStateParticipated) output = Json::Value("Participated"); + } + inline void FromJsonEnum(const Json::Value& input, PlayerConnectionState& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Unassigned") output = PlayerConnectionStateUnassigned; + if (inputStr == "Connecting") output = PlayerConnectionStateConnecting; + if (inputStr == "Participating") output = PlayerConnectionStateParticipating; + if (inputStr == "Participated") output = PlayerConnectionStateParticipated; + } + + enum PushNotificationPlatform + { + PushNotificationPlatformApplePushNotificationService, + PushNotificationPlatformGoogleCloudMessaging + }; + + inline void ToJsonEnum(const PushNotificationPlatform input, Json::Value& output) + { + if (input == PushNotificationPlatformApplePushNotificationService) output = Json::Value("ApplePushNotificationService"); + if (input == PushNotificationPlatformGoogleCloudMessaging) output = Json::Value("GoogleCloudMessaging"); + } + inline void FromJsonEnum(const Json::Value& input, PushNotificationPlatform& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "ApplePushNotificationService") output = PushNotificationPlatformApplePushNotificationService; + if (inputStr == "GoogleCloudMessaging") output = PushNotificationPlatformGoogleCloudMessaging; + } + + enum Region + { + RegionUSCentral, + RegionUSEast, + RegionEUWest, + RegionSingapore, + RegionJapan, + RegionBrazil, + RegionAustralia + }; + + inline void ToJsonEnum(const Region input, Json::Value& output) + { + if (input == RegionUSCentral) output = Json::Value("USCentral"); + if (input == RegionUSEast) output = Json::Value("USEast"); + if (input == RegionEUWest) output = Json::Value("EUWest"); + if (input == RegionSingapore) output = Json::Value("Singapore"); + if (input == RegionJapan) output = Json::Value("Japan"); + if (input == RegionBrazil) output = Json::Value("Brazil"); + if (input == RegionAustralia) output = Json::Value("Australia"); + } + inline void FromJsonEnum(const Json::Value& input, Region& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "USCentral") output = RegionUSCentral; + if (inputStr == "USEast") output = RegionUSEast; + if (inputStr == "EUWest") output = RegionEUWest; + if (inputStr == "Singapore") output = RegionSingapore; + if (inputStr == "Japan") output = RegionJapan; + if (inputStr == "Brazil") output = RegionBrazil; + if (inputStr == "Australia") output = RegionAustralia; + } + + enum ResultTableNodeType + { + ResultTableNodeTypeItemId, + ResultTableNodeTypeTableId + }; + + inline void ToJsonEnum(const ResultTableNodeType input, Json::Value& output) + { + if (input == ResultTableNodeTypeItemId) output = Json::Value("ItemId"); + if (input == ResultTableNodeTypeTableId) output = Json::Value("TableId"); + } + inline void FromJsonEnum(const Json::Value& input, ResultTableNodeType& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "ItemId") output = ResultTableNodeTypeItemId; + if (inputStr == "TableId") output = ResultTableNodeTypeTableId; + } + + enum SubscriptionProviderStatus + { + SubscriptionProviderStatusNoError, + SubscriptionProviderStatusCancelled, + SubscriptionProviderStatusUnknownError, + SubscriptionProviderStatusBillingError, + SubscriptionProviderStatusProductUnavailable, + SubscriptionProviderStatusCustomerDidNotAcceptPriceChange, + SubscriptionProviderStatusFreeTrial, + SubscriptionProviderStatusPaymentPending + }; + + inline void ToJsonEnum(const SubscriptionProviderStatus input, Json::Value& output) + { + if (input == SubscriptionProviderStatusNoError) output = Json::Value("NoError"); + if (input == SubscriptionProviderStatusCancelled) output = Json::Value("Cancelled"); + if (input == SubscriptionProviderStatusUnknownError) output = Json::Value("UnknownError"); + if (input == SubscriptionProviderStatusBillingError) output = Json::Value("BillingError"); + if (input == SubscriptionProviderStatusProductUnavailable) output = Json::Value("ProductUnavailable"); + if (input == SubscriptionProviderStatusCustomerDidNotAcceptPriceChange) output = Json::Value("CustomerDidNotAcceptPriceChange"); + if (input == SubscriptionProviderStatusFreeTrial) output = Json::Value("FreeTrial"); + if (input == SubscriptionProviderStatusPaymentPending) output = Json::Value("PaymentPending"); + } + inline void FromJsonEnum(const Json::Value& input, SubscriptionProviderStatus& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "NoError") output = SubscriptionProviderStatusNoError; + if (inputStr == "Cancelled") output = SubscriptionProviderStatusCancelled; + if (inputStr == "UnknownError") output = SubscriptionProviderStatusUnknownError; + if (inputStr == "BillingError") output = SubscriptionProviderStatusBillingError; + if (inputStr == "ProductUnavailable") output = SubscriptionProviderStatusProductUnavailable; + if (inputStr == "CustomerDidNotAcceptPriceChange") output = SubscriptionProviderStatusCustomerDidNotAcceptPriceChange; + if (inputStr == "FreeTrial") output = SubscriptionProviderStatusFreeTrial; + if (inputStr == "PaymentPending") output = SubscriptionProviderStatusPaymentPending; + } + + enum TitleActivationStatus + { + TitleActivationStatusNone, + TitleActivationStatusActivatedTitleKey, + TitleActivationStatusPendingSteam, + TitleActivationStatusActivatedSteam, + TitleActivationStatusRevokedSteam + }; + + inline void ToJsonEnum(const TitleActivationStatus input, Json::Value& output) + { + if (input == TitleActivationStatusNone) output = Json::Value("None"); + if (input == TitleActivationStatusActivatedTitleKey) output = Json::Value("ActivatedTitleKey"); + if (input == TitleActivationStatusPendingSteam) output = Json::Value("PendingSteam"); + if (input == TitleActivationStatusActivatedSteam) output = Json::Value("ActivatedSteam"); + if (input == TitleActivationStatusRevokedSteam) output = Json::Value("RevokedSteam"); + } + inline void FromJsonEnum(const Json::Value& input, TitleActivationStatus& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "None") output = TitleActivationStatusNone; + if (inputStr == "ActivatedTitleKey") output = TitleActivationStatusActivatedTitleKey; + if (inputStr == "PendingSteam") output = TitleActivationStatusPendingSteam; + if (inputStr == "ActivatedSteam") output = TitleActivationStatusActivatedSteam; + if (inputStr == "RevokedSteam") output = TitleActivationStatusRevokedSteam; + } + + enum UserDataPermission + { + UserDataPermissionPrivate, + UserDataPermissionPublic + }; + + inline void ToJsonEnum(const UserDataPermission input, Json::Value& output) + { + if (input == UserDataPermissionPrivate) output = Json::Value("Private"); + if (input == UserDataPermissionPublic) output = Json::Value("Public"); + } + inline void FromJsonEnum(const Json::Value& input, UserDataPermission& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Private") output = UserDataPermissionPrivate; + if (inputStr == "Public") output = UserDataPermissionPublic; + } + + enum UserOrigination + { + UserOriginationOrganic, + UserOriginationSteam, + UserOriginationGoogle, + UserOriginationAmazon, + UserOriginationFacebook, + UserOriginationKongregate, + UserOriginationGamersFirst, + UserOriginationUnknown, + UserOriginationIOS, + UserOriginationLoadTest, + UserOriginationAndroid, + UserOriginationPSN, + UserOriginationGameCenter, + UserOriginationCustomId, + UserOriginationXboxLive, + UserOriginationParse, + UserOriginationTwitch, + UserOriginationWindowsHello + }; + + inline void ToJsonEnum(const UserOrigination input, Json::Value& output) + { + if (input == UserOriginationOrganic) output = Json::Value("Organic"); + if (input == UserOriginationSteam) output = Json::Value("Steam"); + if (input == UserOriginationGoogle) output = Json::Value("Google"); + if (input == UserOriginationAmazon) output = Json::Value("Amazon"); + if (input == UserOriginationFacebook) output = Json::Value("Facebook"); + if (input == UserOriginationKongregate) output = Json::Value("Kongregate"); + if (input == UserOriginationGamersFirst) output = Json::Value("GamersFirst"); + if (input == UserOriginationUnknown) output = Json::Value("Unknown"); + if (input == UserOriginationIOS) output = Json::Value("IOS"); + if (input == UserOriginationLoadTest) output = Json::Value("LoadTest"); + if (input == UserOriginationAndroid) output = Json::Value("Android"); + if (input == UserOriginationPSN) output = Json::Value("PSN"); + if (input == UserOriginationGameCenter) output = Json::Value("GameCenter"); + if (input == UserOriginationCustomId) output = Json::Value("CustomId"); + if (input == UserOriginationXboxLive) output = Json::Value("XboxLive"); + if (input == UserOriginationParse) output = Json::Value("Parse"); + if (input == UserOriginationTwitch) output = Json::Value("Twitch"); + if (input == UserOriginationWindowsHello) output = Json::Value("WindowsHello"); + } + inline void FromJsonEnum(const Json::Value& input, UserOrigination& output) + { + if (!input.isString()) return; + const std::string& inputStr = input.asString(); + if (inputStr == "Organic") output = UserOriginationOrganic; + if (inputStr == "Steam") output = UserOriginationSteam; + if (inputStr == "Google") output = UserOriginationGoogle; + if (inputStr == "Amazon") output = UserOriginationAmazon; + if (inputStr == "Facebook") output = UserOriginationFacebook; + if (inputStr == "Kongregate") output = UserOriginationKongregate; + if (inputStr == "GamersFirst") output = UserOriginationGamersFirst; + if (inputStr == "Unknown") output = UserOriginationUnknown; + if (inputStr == "IOS") output = UserOriginationIOS; + if (inputStr == "LoadTest") output = UserOriginationLoadTest; + if (inputStr == "Android") output = UserOriginationAndroid; + if (inputStr == "PSN") output = UserOriginationPSN; + if (inputStr == "GameCenter") output = UserOriginationGameCenter; + if (inputStr == "CustomId") output = UserOriginationCustomId; + if (inputStr == "XboxLive") output = UserOriginationXboxLive; + if (inputStr == "Parse") output = UserOriginationParse; + if (inputStr == "Twitch") output = UserOriginationTwitch; + if (inputStr == "WindowsHello") output = UserOriginationWindowsHello; + } + + // Server Classes + struct AdCampaignAttribution : public PlayFabBaseModel + { + time_t AttributedAt; + std::string CampaignId; + std::string Platform; + + AdCampaignAttribution() : + PlayFabBaseModel(), + AttributedAt(), + CampaignId(), + Platform() + {} + + AdCampaignAttribution(const AdCampaignAttribution& src) : + PlayFabBaseModel(), + AttributedAt(src.AttributedAt), + CampaignId(src.CampaignId), + Platform(src.Platform) + {} + + ~AdCampaignAttribution() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["AttributedAt"], AttributedAt); + FromJsonUtilS(input["CampaignId"], CampaignId); + FromJsonUtilS(input["Platform"], Platform); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AttributedAt; ToJsonUtilT(AttributedAt, each_AttributedAt); output["AttributedAt"] = each_AttributedAt; + Json::Value each_CampaignId; ToJsonUtilS(CampaignId, each_CampaignId); output["CampaignId"] = each_CampaignId; + Json::Value each_Platform; ToJsonUtilS(Platform, each_Platform); output["Platform"] = each_Platform; + return output; + } + }; + + struct AdCampaignAttributionModel : public PlayFabBaseModel + { + time_t AttributedAt; + std::string CampaignId; + std::string Platform; + + AdCampaignAttributionModel() : + PlayFabBaseModel(), + AttributedAt(), + CampaignId(), + Platform() + {} + + AdCampaignAttributionModel(const AdCampaignAttributionModel& src) : + PlayFabBaseModel(), + AttributedAt(src.AttributedAt), + CampaignId(src.CampaignId), + Platform(src.Platform) + {} + + ~AdCampaignAttributionModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["AttributedAt"], AttributedAt); + FromJsonUtilS(input["CampaignId"], CampaignId); + FromJsonUtilS(input["Platform"], Platform); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AttributedAt; ToJsonUtilT(AttributedAt, each_AttributedAt); output["AttributedAt"] = each_AttributedAt; + Json::Value each_CampaignId; ToJsonUtilS(CampaignId, each_CampaignId); output["CampaignId"] = each_CampaignId; + Json::Value each_Platform; ToJsonUtilS(Platform, each_Platform); output["Platform"] = each_Platform; + return output; + } + }; + + struct AddCharacterVirtualCurrencyRequest : public PlayFabRequestCommon + { + Int32 Amount; + std::string CharacterId; + std::string PlayFabId; + std::string VirtualCurrency; + + AddCharacterVirtualCurrencyRequest() : + PlayFabRequestCommon(), + Amount(), + CharacterId(), + PlayFabId(), + VirtualCurrency() + {} + + AddCharacterVirtualCurrencyRequest(const AddCharacterVirtualCurrencyRequest& src) : + PlayFabRequestCommon(), + Amount(src.Amount), + CharacterId(src.CharacterId), + PlayFabId(src.PlayFabId), + VirtualCurrency(src.VirtualCurrency) + {} + + ~AddCharacterVirtualCurrencyRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Amount"], Amount); + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["VirtualCurrency"], VirtualCurrency); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Amount; ToJsonUtilP(Amount, each_Amount); output["Amount"] = each_Amount; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_VirtualCurrency; ToJsonUtilS(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + return output; + } + }; + + struct AddFriendRequest : public PlayFabRequestCommon + { + std::string FriendEmail; + std::string FriendPlayFabId; + std::string FriendTitleDisplayName; + std::string FriendUsername; + std::string PlayFabId; + + AddFriendRequest() : + PlayFabRequestCommon(), + FriendEmail(), + FriendPlayFabId(), + FriendTitleDisplayName(), + FriendUsername(), + PlayFabId() + {} + + AddFriendRequest(const AddFriendRequest& src) : + PlayFabRequestCommon(), + FriendEmail(src.FriendEmail), + FriendPlayFabId(src.FriendPlayFabId), + FriendTitleDisplayName(src.FriendTitleDisplayName), + FriendUsername(src.FriendUsername), + PlayFabId(src.PlayFabId) + {} + + ~AddFriendRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FriendEmail"], FriendEmail); + FromJsonUtilS(input["FriendPlayFabId"], FriendPlayFabId); + FromJsonUtilS(input["FriendTitleDisplayName"], FriendTitleDisplayName); + FromJsonUtilS(input["FriendUsername"], FriendUsername); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FriendEmail; ToJsonUtilS(FriendEmail, each_FriendEmail); output["FriendEmail"] = each_FriendEmail; + Json::Value each_FriendPlayFabId; ToJsonUtilS(FriendPlayFabId, each_FriendPlayFabId); output["FriendPlayFabId"] = each_FriendPlayFabId; + Json::Value each_FriendTitleDisplayName; ToJsonUtilS(FriendTitleDisplayName, each_FriendTitleDisplayName); output["FriendTitleDisplayName"] = each_FriendTitleDisplayName; + Json::Value each_FriendUsername; ToJsonUtilS(FriendUsername, each_FriendUsername); output["FriendUsername"] = each_FriendUsername; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct AddPlayerTagRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + std::string TagName; + + AddPlayerTagRequest() : + PlayFabRequestCommon(), + PlayFabId(), + TagName() + {} + + AddPlayerTagRequest(const AddPlayerTagRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId), + TagName(src.TagName) + {} + + ~AddPlayerTagRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["TagName"], TagName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_TagName; ToJsonUtilS(TagName, each_TagName); output["TagName"] = each_TagName; + return output; + } + }; + + struct AddPlayerTagResult : public PlayFabResultCommon + { + + AddPlayerTagResult() : + PlayFabResultCommon() + {} + + AddPlayerTagResult(const AddPlayerTagResult&) : + PlayFabResultCommon() + {} + + ~AddPlayerTagResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct AddSharedGroupMembersRequest : public PlayFabRequestCommon + { + std::list PlayFabIds; + std::string SharedGroupId; + + AddSharedGroupMembersRequest() : + PlayFabRequestCommon(), + PlayFabIds(), + SharedGroupId() + {} + + AddSharedGroupMembersRequest(const AddSharedGroupMembersRequest& src) : + PlayFabRequestCommon(), + PlayFabIds(src.PlayFabIds), + SharedGroupId(src.SharedGroupId) + {} + + ~AddSharedGroupMembersRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabIds"], PlayFabIds); + FromJsonUtilS(input["SharedGroupId"], SharedGroupId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabIds; ToJsonUtilS(PlayFabIds, each_PlayFabIds); output["PlayFabIds"] = each_PlayFabIds; + Json::Value each_SharedGroupId; ToJsonUtilS(SharedGroupId, each_SharedGroupId); output["SharedGroupId"] = each_SharedGroupId; + return output; + } + }; + + struct AddSharedGroupMembersResult : public PlayFabResultCommon + { + + AddSharedGroupMembersResult() : + PlayFabResultCommon() + {} + + AddSharedGroupMembersResult(const AddSharedGroupMembersResult&) : + PlayFabResultCommon() + {} + + ~AddSharedGroupMembersResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct AddUserVirtualCurrencyRequest : public PlayFabRequestCommon + { + Int32 Amount; + std::string PlayFabId; + std::string VirtualCurrency; + + AddUserVirtualCurrencyRequest() : + PlayFabRequestCommon(), + Amount(), + PlayFabId(), + VirtualCurrency() + {} + + AddUserVirtualCurrencyRequest(const AddUserVirtualCurrencyRequest& src) : + PlayFabRequestCommon(), + Amount(src.Amount), + PlayFabId(src.PlayFabId), + VirtualCurrency(src.VirtualCurrency) + {} + + ~AddUserVirtualCurrencyRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Amount"], Amount); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["VirtualCurrency"], VirtualCurrency); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Amount; ToJsonUtilP(Amount, each_Amount); output["Amount"] = each_Amount; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_VirtualCurrency; ToJsonUtilS(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + return output; + } + }; + + struct AdvancedPushPlatformMsg : public PlayFabBaseModel + { + std::string Json; + PushNotificationPlatform Platform; + + AdvancedPushPlatformMsg() : + PlayFabBaseModel(), + Json(), + Platform() + {} + + AdvancedPushPlatformMsg(const AdvancedPushPlatformMsg& src) : + PlayFabBaseModel(), + Json(src.Json), + Platform(src.Platform) + {} + + ~AdvancedPushPlatformMsg() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Json"], Json); + FromJsonEnum(input["Platform"], Platform); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Json; ToJsonUtilS(Json, each_Json); output["Json"] = each_Json; + Json::Value each_Platform; ToJsonEnum(Platform, each_Platform); output["Platform"] = each_Platform; + return output; + } + }; + + struct AuthenticateSessionTicketRequest : public PlayFabRequestCommon + { + std::string SessionTicket; + + AuthenticateSessionTicketRequest() : + PlayFabRequestCommon(), + SessionTicket() + {} + + AuthenticateSessionTicketRequest(const AuthenticateSessionTicketRequest& src) : + PlayFabRequestCommon(), + SessionTicket(src.SessionTicket) + {} + + ~AuthenticateSessionTicketRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["SessionTicket"], SessionTicket); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_SessionTicket; ToJsonUtilS(SessionTicket, each_SessionTicket); output["SessionTicket"] = each_SessionTicket; + return output; + } + }; + + struct UserAndroidDeviceInfo : public PlayFabBaseModel + { + std::string AndroidDeviceId; + + UserAndroidDeviceInfo() : + PlayFabBaseModel(), + AndroidDeviceId() + {} + + UserAndroidDeviceInfo(const UserAndroidDeviceInfo& src) : + PlayFabBaseModel(), + AndroidDeviceId(src.AndroidDeviceId) + {} + + ~UserAndroidDeviceInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AndroidDeviceId"], AndroidDeviceId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AndroidDeviceId; ToJsonUtilS(AndroidDeviceId, each_AndroidDeviceId); output["AndroidDeviceId"] = each_AndroidDeviceId; + return output; + } + }; + + struct UserCustomIdInfo : public PlayFabBaseModel + { + std::string CustomId; + + UserCustomIdInfo() : + PlayFabBaseModel(), + CustomId() + {} + + UserCustomIdInfo(const UserCustomIdInfo& src) : + PlayFabBaseModel(), + CustomId(src.CustomId) + {} + + ~UserCustomIdInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CustomId"], CustomId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CustomId; ToJsonUtilS(CustomId, each_CustomId); output["CustomId"] = each_CustomId; + return output; + } + }; + + struct UserFacebookInfo : public PlayFabBaseModel + { + std::string FacebookId; + std::string FullName; + + UserFacebookInfo() : + PlayFabBaseModel(), + FacebookId(), + FullName() + {} + + UserFacebookInfo(const UserFacebookInfo& src) : + PlayFabBaseModel(), + FacebookId(src.FacebookId), + FullName(src.FullName) + {} + + ~UserFacebookInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FacebookId"], FacebookId); + FromJsonUtilS(input["FullName"], FullName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FacebookId; ToJsonUtilS(FacebookId, each_FacebookId); output["FacebookId"] = each_FacebookId; + Json::Value each_FullName; ToJsonUtilS(FullName, each_FullName); output["FullName"] = each_FullName; + return output; + } + }; + + struct UserGameCenterInfo : public PlayFabBaseModel + { + std::string GameCenterId; + + UserGameCenterInfo() : + PlayFabBaseModel(), + GameCenterId() + {} + + UserGameCenterInfo(const UserGameCenterInfo& src) : + PlayFabBaseModel(), + GameCenterId(src.GameCenterId) + {} + + ~UserGameCenterInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["GameCenterId"], GameCenterId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GameCenterId; ToJsonUtilS(GameCenterId, each_GameCenterId); output["GameCenterId"] = each_GameCenterId; + return output; + } + }; + + struct UserGoogleInfo : public PlayFabBaseModel + { + std::string GoogleEmail; + std::string GoogleGender; + std::string GoogleId; + std::string GoogleLocale; + + UserGoogleInfo() : + PlayFabBaseModel(), + GoogleEmail(), + GoogleGender(), + GoogleId(), + GoogleLocale() + {} + + UserGoogleInfo(const UserGoogleInfo& src) : + PlayFabBaseModel(), + GoogleEmail(src.GoogleEmail), + GoogleGender(src.GoogleGender), + GoogleId(src.GoogleId), + GoogleLocale(src.GoogleLocale) + {} + + ~UserGoogleInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["GoogleEmail"], GoogleEmail); + FromJsonUtilS(input["GoogleGender"], GoogleGender); + FromJsonUtilS(input["GoogleId"], GoogleId); + FromJsonUtilS(input["GoogleLocale"], GoogleLocale); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GoogleEmail; ToJsonUtilS(GoogleEmail, each_GoogleEmail); output["GoogleEmail"] = each_GoogleEmail; + Json::Value each_GoogleGender; ToJsonUtilS(GoogleGender, each_GoogleGender); output["GoogleGender"] = each_GoogleGender; + Json::Value each_GoogleId; ToJsonUtilS(GoogleId, each_GoogleId); output["GoogleId"] = each_GoogleId; + Json::Value each_GoogleLocale; ToJsonUtilS(GoogleLocale, each_GoogleLocale); output["GoogleLocale"] = each_GoogleLocale; + return output; + } + }; + + struct UserIosDeviceInfo : public PlayFabBaseModel + { + std::string IosDeviceId; + + UserIosDeviceInfo() : + PlayFabBaseModel(), + IosDeviceId() + {} + + UserIosDeviceInfo(const UserIosDeviceInfo& src) : + PlayFabBaseModel(), + IosDeviceId(src.IosDeviceId) + {} + + ~UserIosDeviceInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["IosDeviceId"], IosDeviceId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_IosDeviceId; ToJsonUtilS(IosDeviceId, each_IosDeviceId); output["IosDeviceId"] = each_IosDeviceId; + return output; + } + }; + + struct UserKongregateInfo : public PlayFabBaseModel + { + std::string KongregateId; + std::string KongregateName; + + UserKongregateInfo() : + PlayFabBaseModel(), + KongregateId(), + KongregateName() + {} + + UserKongregateInfo(const UserKongregateInfo& src) : + PlayFabBaseModel(), + KongregateId(src.KongregateId), + KongregateName(src.KongregateName) + {} + + ~UserKongregateInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["KongregateId"], KongregateId); + FromJsonUtilS(input["KongregateName"], KongregateName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_KongregateId; ToJsonUtilS(KongregateId, each_KongregateId); output["KongregateId"] = each_KongregateId; + Json::Value each_KongregateName; ToJsonUtilS(KongregateName, each_KongregateName); output["KongregateName"] = each_KongregateName; + return output; + } + }; + + struct UserPrivateAccountInfo : public PlayFabBaseModel + { + std::string Email; + + UserPrivateAccountInfo() : + PlayFabBaseModel(), + Email() + {} + + UserPrivateAccountInfo(const UserPrivateAccountInfo& src) : + PlayFabBaseModel(), + Email(src.Email) + {} + + ~UserPrivateAccountInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Email"], Email); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Email; ToJsonUtilS(Email, each_Email); output["Email"] = each_Email; + return output; + } + }; + + struct UserPsnInfo : public PlayFabBaseModel + { + std::string PsnAccountId; + std::string PsnOnlineId; + + UserPsnInfo() : + PlayFabBaseModel(), + PsnAccountId(), + PsnOnlineId() + {} + + UserPsnInfo(const UserPsnInfo& src) : + PlayFabBaseModel(), + PsnAccountId(src.PsnAccountId), + PsnOnlineId(src.PsnOnlineId) + {} + + ~UserPsnInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PsnAccountId"], PsnAccountId); + FromJsonUtilS(input["PsnOnlineId"], PsnOnlineId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PsnAccountId; ToJsonUtilS(PsnAccountId, each_PsnAccountId); output["PsnAccountId"] = each_PsnAccountId; + Json::Value each_PsnOnlineId; ToJsonUtilS(PsnOnlineId, each_PsnOnlineId); output["PsnOnlineId"] = each_PsnOnlineId; + return output; + } + }; + + struct UserSteamInfo : public PlayFabBaseModel + { + Boxed SteamActivationStatus; + std::string SteamCountry; + Boxed SteamCurrency; + std::string SteamId; + + UserSteamInfo() : + PlayFabBaseModel(), + SteamActivationStatus(), + SteamCountry(), + SteamCurrency(), + SteamId() + {} + + UserSteamInfo(const UserSteamInfo& src) : + PlayFabBaseModel(), + SteamActivationStatus(src.SteamActivationStatus), + SteamCountry(src.SteamCountry), + SteamCurrency(src.SteamCurrency), + SteamId(src.SteamId) + {} + + ~UserSteamInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilE(input["SteamActivationStatus"], SteamActivationStatus); + FromJsonUtilS(input["SteamCountry"], SteamCountry); + FromJsonUtilE(input["SteamCurrency"], SteamCurrency); + FromJsonUtilS(input["SteamId"], SteamId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_SteamActivationStatus; ToJsonUtilE(SteamActivationStatus, each_SteamActivationStatus); output["SteamActivationStatus"] = each_SteamActivationStatus; + Json::Value each_SteamCountry; ToJsonUtilS(SteamCountry, each_SteamCountry); output["SteamCountry"] = each_SteamCountry; + Json::Value each_SteamCurrency; ToJsonUtilE(SteamCurrency, each_SteamCurrency); output["SteamCurrency"] = each_SteamCurrency; + Json::Value each_SteamId; ToJsonUtilS(SteamId, each_SteamId); output["SteamId"] = each_SteamId; + return output; + } + }; + + struct EntityKey : public PlayFabBaseModel + { + std::string Id; + Boxed Type; + std::string TypeString; + + EntityKey() : + PlayFabBaseModel(), + Id(), + Type(), + TypeString() + {} + + EntityKey(const EntityKey& src) : + PlayFabBaseModel(), + Id(src.Id), + Type(src.Type), + TypeString(src.TypeString) + {} + + ~EntityKey() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Id"], Id); + FromJsonUtilE(input["Type"], Type); + FromJsonUtilS(input["TypeString"], TypeString); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Id; ToJsonUtilS(Id, each_Id); output["Id"] = each_Id; + Json::Value each_Type; ToJsonUtilE(Type, each_Type); output["Type"] = each_Type; + Json::Value each_TypeString; ToJsonUtilS(TypeString, each_TypeString); output["TypeString"] = each_TypeString; + return output; + } + }; + + struct UserTitleInfo : public PlayFabBaseModel + { + std::string AvatarUrl; + time_t Created; + std::string DisplayName; + Boxed FirstLogin; + Boxed isBanned; + Boxed LastLogin; + Boxed Origination; + Boxed TitlePlayerAccount; + + UserTitleInfo() : + PlayFabBaseModel(), + AvatarUrl(), + Created(), + DisplayName(), + FirstLogin(), + isBanned(), + LastLogin(), + Origination(), + TitlePlayerAccount() + {} + + UserTitleInfo(const UserTitleInfo& src) : + PlayFabBaseModel(), + AvatarUrl(src.AvatarUrl), + Created(src.Created), + DisplayName(src.DisplayName), + FirstLogin(src.FirstLogin), + isBanned(src.isBanned), + LastLogin(src.LastLogin), + Origination(src.Origination), + TitlePlayerAccount(src.TitlePlayerAccount) + {} + + ~UserTitleInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AvatarUrl"], AvatarUrl); + FromJsonUtilT(input["Created"], Created); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilT(input["FirstLogin"], FirstLogin); + FromJsonUtilP(input["isBanned"], isBanned); + FromJsonUtilT(input["LastLogin"], LastLogin); + FromJsonUtilE(input["Origination"], Origination); + FromJsonUtilO(input["TitlePlayerAccount"], TitlePlayerAccount); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AvatarUrl; ToJsonUtilS(AvatarUrl, each_AvatarUrl); output["AvatarUrl"] = each_AvatarUrl; + Json::Value each_Created; ToJsonUtilT(Created, each_Created); output["Created"] = each_Created; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_FirstLogin; ToJsonUtilT(FirstLogin, each_FirstLogin); output["FirstLogin"] = each_FirstLogin; + Json::Value each_isBanned; ToJsonUtilP(isBanned, each_isBanned); output["isBanned"] = each_isBanned; + Json::Value each_LastLogin; ToJsonUtilT(LastLogin, each_LastLogin); output["LastLogin"] = each_LastLogin; + Json::Value each_Origination; ToJsonUtilE(Origination, each_Origination); output["Origination"] = each_Origination; + Json::Value each_TitlePlayerAccount; ToJsonUtilO(TitlePlayerAccount, each_TitlePlayerAccount); output["TitlePlayerAccount"] = each_TitlePlayerAccount; + return output; + } + }; + + struct UserTwitchInfo : public PlayFabBaseModel + { + std::string TwitchId; + std::string TwitchUserName; + + UserTwitchInfo() : + PlayFabBaseModel(), + TwitchId(), + TwitchUserName() + {} + + UserTwitchInfo(const UserTwitchInfo& src) : + PlayFabBaseModel(), + TwitchId(src.TwitchId), + TwitchUserName(src.TwitchUserName) + {} + + ~UserTwitchInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["TwitchId"], TwitchId); + FromJsonUtilS(input["TwitchUserName"], TwitchUserName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_TwitchId; ToJsonUtilS(TwitchId, each_TwitchId); output["TwitchId"] = each_TwitchId; + Json::Value each_TwitchUserName; ToJsonUtilS(TwitchUserName, each_TwitchUserName); output["TwitchUserName"] = each_TwitchUserName; + return output; + } + }; + + struct UserXboxInfo : public PlayFabBaseModel + { + std::string XboxUserId; + + UserXboxInfo() : + PlayFabBaseModel(), + XboxUserId() + {} + + UserXboxInfo(const UserXboxInfo& src) : + PlayFabBaseModel(), + XboxUserId(src.XboxUserId) + {} + + ~UserXboxInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["XboxUserId"], XboxUserId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_XboxUserId; ToJsonUtilS(XboxUserId, each_XboxUserId); output["XboxUserId"] = each_XboxUserId; + return output; + } + }; + + struct UserAccountInfo : public PlayFabBaseModel + { + Boxed AndroidDeviceInfo; + time_t Created; + Boxed CustomIdInfo; + Boxed FacebookInfo; + Boxed GameCenterInfo; + Boxed GoogleInfo; + Boxed IosDeviceInfo; + Boxed KongregateInfo; + std::string PlayFabId; + Boxed PrivateInfo; + Boxed PsnInfo; + Boxed SteamInfo; + Boxed TitleInfo; + Boxed TwitchInfo; + std::string Username; + Boxed XboxInfo; + + UserAccountInfo() : + PlayFabBaseModel(), + AndroidDeviceInfo(), + Created(), + CustomIdInfo(), + FacebookInfo(), + GameCenterInfo(), + GoogleInfo(), + IosDeviceInfo(), + KongregateInfo(), + PlayFabId(), + PrivateInfo(), + PsnInfo(), + SteamInfo(), + TitleInfo(), + TwitchInfo(), + Username(), + XboxInfo() + {} + + UserAccountInfo(const UserAccountInfo& src) : + PlayFabBaseModel(), + AndroidDeviceInfo(src.AndroidDeviceInfo), + Created(src.Created), + CustomIdInfo(src.CustomIdInfo), + FacebookInfo(src.FacebookInfo), + GameCenterInfo(src.GameCenterInfo), + GoogleInfo(src.GoogleInfo), + IosDeviceInfo(src.IosDeviceInfo), + KongregateInfo(src.KongregateInfo), + PlayFabId(src.PlayFabId), + PrivateInfo(src.PrivateInfo), + PsnInfo(src.PsnInfo), + SteamInfo(src.SteamInfo), + TitleInfo(src.TitleInfo), + TwitchInfo(src.TwitchInfo), + Username(src.Username), + XboxInfo(src.XboxInfo) + {} + + ~UserAccountInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["AndroidDeviceInfo"], AndroidDeviceInfo); + FromJsonUtilT(input["Created"], Created); + FromJsonUtilO(input["CustomIdInfo"], CustomIdInfo); + FromJsonUtilO(input["FacebookInfo"], FacebookInfo); + FromJsonUtilO(input["GameCenterInfo"], GameCenterInfo); + FromJsonUtilO(input["GoogleInfo"], GoogleInfo); + FromJsonUtilO(input["IosDeviceInfo"], IosDeviceInfo); + FromJsonUtilO(input["KongregateInfo"], KongregateInfo); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilO(input["PrivateInfo"], PrivateInfo); + FromJsonUtilO(input["PsnInfo"], PsnInfo); + FromJsonUtilO(input["SteamInfo"], SteamInfo); + FromJsonUtilO(input["TitleInfo"], TitleInfo); + FromJsonUtilO(input["TwitchInfo"], TwitchInfo); + FromJsonUtilS(input["Username"], Username); + FromJsonUtilO(input["XboxInfo"], XboxInfo); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AndroidDeviceInfo; ToJsonUtilO(AndroidDeviceInfo, each_AndroidDeviceInfo); output["AndroidDeviceInfo"] = each_AndroidDeviceInfo; + 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; + Json::Value each_GameCenterInfo; ToJsonUtilO(GameCenterInfo, each_GameCenterInfo); output["GameCenterInfo"] = each_GameCenterInfo; + 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_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_PrivateInfo; ToJsonUtilO(PrivateInfo, each_PrivateInfo); output["PrivateInfo"] = each_PrivateInfo; + Json::Value each_PsnInfo; ToJsonUtilO(PsnInfo, each_PsnInfo); output["PsnInfo"] = each_PsnInfo; + Json::Value each_SteamInfo; ToJsonUtilO(SteamInfo, each_SteamInfo); output["SteamInfo"] = each_SteamInfo; + Json::Value each_TitleInfo; ToJsonUtilO(TitleInfo, each_TitleInfo); output["TitleInfo"] = each_TitleInfo; + Json::Value each_TwitchInfo; ToJsonUtilO(TwitchInfo, each_TwitchInfo); output["TwitchInfo"] = each_TwitchInfo; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + Json::Value each_XboxInfo; ToJsonUtilO(XboxInfo, each_XboxInfo); output["XboxInfo"] = each_XboxInfo; + return output; + } + }; + + struct AuthenticateSessionTicketResult : public PlayFabResultCommon + { + Boxed UserInfo; + + AuthenticateSessionTicketResult() : + PlayFabResultCommon(), + UserInfo() + {} + + AuthenticateSessionTicketResult(const AuthenticateSessionTicketResult& src) : + PlayFabResultCommon(), + UserInfo(src.UserInfo) + {} + + ~AuthenticateSessionTicketResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["UserInfo"], UserInfo); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_UserInfo; ToJsonUtilO(UserInfo, each_UserInfo); output["UserInfo"] = each_UserInfo; + return output; + } + }; + + struct AwardSteamAchievementItem : public PlayFabBaseModel + { + std::string AchievementName; + std::string PlayFabId; + bool Result; + + AwardSteamAchievementItem() : + PlayFabBaseModel(), + AchievementName(), + PlayFabId(), + Result() + {} + + AwardSteamAchievementItem(const AwardSteamAchievementItem& src) : + PlayFabBaseModel(), + AchievementName(src.AchievementName), + PlayFabId(src.PlayFabId), + Result(src.Result) + {} + + ~AwardSteamAchievementItem() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["AchievementName"], AchievementName); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilP(input["Result"], Result); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AchievementName; ToJsonUtilS(AchievementName, each_AchievementName); output["AchievementName"] = each_AchievementName; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Result; ToJsonUtilP(Result, each_Result); output["Result"] = each_Result; + return output; + } + }; + + struct AwardSteamAchievementRequest : public PlayFabRequestCommon + { + std::list Achievements; + + AwardSteamAchievementRequest() : + PlayFabRequestCommon(), + Achievements() + {} + + AwardSteamAchievementRequest(const AwardSteamAchievementRequest& src) : + PlayFabRequestCommon(), + Achievements(src.Achievements) + {} + + ~AwardSteamAchievementRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Achievements"], Achievements); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Achievements; ToJsonUtilO(Achievements, each_Achievements); output["Achievements"] = each_Achievements; + return output; + } + }; + + struct AwardSteamAchievementResult : public PlayFabResultCommon + { + std::list AchievementResults; + + AwardSteamAchievementResult() : + PlayFabResultCommon(), + AchievementResults() + {} + + AwardSteamAchievementResult(const AwardSteamAchievementResult& src) : + PlayFabResultCommon(), + AchievementResults(src.AchievementResults) + {} + + ~AwardSteamAchievementResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["AchievementResults"], AchievementResults); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AchievementResults; ToJsonUtilO(AchievementResults, each_AchievementResults); output["AchievementResults"] = each_AchievementResults; + return output; + } + }; + + struct BanInfo : public PlayFabBaseModel + { + bool Active; + std::string BanId; + Boxed Created; + Boxed Expires; + std::string IPAddress; + std::string MACAddress; + std::string PlayFabId; + std::string Reason; + + BanInfo() : + PlayFabBaseModel(), + Active(), + BanId(), + Created(), + Expires(), + IPAddress(), + MACAddress(), + PlayFabId(), + Reason() + {} + + BanInfo(const BanInfo& src) : + PlayFabBaseModel(), + Active(src.Active), + BanId(src.BanId), + Created(src.Created), + Expires(src.Expires), + IPAddress(src.IPAddress), + MACAddress(src.MACAddress), + PlayFabId(src.PlayFabId), + Reason(src.Reason) + {} + + ~BanInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Active"], Active); + FromJsonUtilS(input["BanId"], BanId); + FromJsonUtilT(input["Created"], Created); + FromJsonUtilT(input["Expires"], Expires); + FromJsonUtilS(input["IPAddress"], IPAddress); + FromJsonUtilS(input["MACAddress"], MACAddress); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["Reason"], Reason); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Active; ToJsonUtilP(Active, each_Active); output["Active"] = each_Active; + Json::Value each_BanId; ToJsonUtilS(BanId, each_BanId); output["BanId"] = each_BanId; + Json::Value each_Created; ToJsonUtilT(Created, each_Created); output["Created"] = each_Created; + Json::Value each_Expires; ToJsonUtilT(Expires, each_Expires); output["Expires"] = each_Expires; + Json::Value each_IPAddress; ToJsonUtilS(IPAddress, each_IPAddress); output["IPAddress"] = each_IPAddress; + Json::Value each_MACAddress; ToJsonUtilS(MACAddress, each_MACAddress); output["MACAddress"] = each_MACAddress; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Reason; ToJsonUtilS(Reason, each_Reason); output["Reason"] = each_Reason; + return output; + } + }; + + struct BanRequest : public PlayFabRequestCommon + { + Boxed DurationInHours; + std::string IPAddress; + std::string MACAddress; + std::string PlayFabId; + std::string Reason; + + BanRequest() : + PlayFabRequestCommon(), + DurationInHours(), + IPAddress(), + MACAddress(), + PlayFabId(), + Reason() + {} + + BanRequest(const BanRequest& src) : + PlayFabRequestCommon(), + DurationInHours(src.DurationInHours), + IPAddress(src.IPAddress), + MACAddress(src.MACAddress), + PlayFabId(src.PlayFabId), + Reason(src.Reason) + {} + + ~BanRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["DurationInHours"], DurationInHours); + FromJsonUtilS(input["IPAddress"], IPAddress); + FromJsonUtilS(input["MACAddress"], MACAddress); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["Reason"], Reason); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DurationInHours; ToJsonUtilP(DurationInHours, each_DurationInHours); output["DurationInHours"] = each_DurationInHours; + Json::Value each_IPAddress; ToJsonUtilS(IPAddress, each_IPAddress); output["IPAddress"] = each_IPAddress; + Json::Value each_MACAddress; ToJsonUtilS(MACAddress, each_MACAddress); output["MACAddress"] = each_MACAddress; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Reason; ToJsonUtilS(Reason, each_Reason); output["Reason"] = each_Reason; + return output; + } + }; + + struct BanUsersRequest : public PlayFabRequestCommon + { + std::list Bans; + + BanUsersRequest() : + PlayFabRequestCommon(), + Bans() + {} + + BanUsersRequest(const BanUsersRequest& src) : + PlayFabRequestCommon(), + Bans(src.Bans) + {} + + ~BanUsersRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Bans"], Bans); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Bans; ToJsonUtilO(Bans, each_Bans); output["Bans"] = each_Bans; + return output; + } + }; + + struct BanUsersResult : public PlayFabResultCommon + { + std::list BanData; + + BanUsersResult() : + PlayFabResultCommon(), + BanData() + {} + + BanUsersResult(const BanUsersResult& src) : + PlayFabResultCommon(), + BanData(src.BanData) + {} + + ~BanUsersResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["BanData"], BanData); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BanData; ToJsonUtilO(BanData, each_BanData); output["BanData"] = each_BanData; + return output; + } + }; + + struct CatalogItemBundleInfo : public PlayFabBaseModel + { + std::list BundledItems; + std::list BundledResultTables; + std::map BundledVirtualCurrencies; + + CatalogItemBundleInfo() : + PlayFabBaseModel(), + BundledItems(), + BundledResultTables(), + BundledVirtualCurrencies() + {} + + CatalogItemBundleInfo(const CatalogItemBundleInfo& src) : + PlayFabBaseModel(), + BundledItems(src.BundledItems), + BundledResultTables(src.BundledResultTables), + BundledVirtualCurrencies(src.BundledVirtualCurrencies) + {} + + ~CatalogItemBundleInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["BundledItems"], BundledItems); + FromJsonUtilS(input["BundledResultTables"], BundledResultTables); + FromJsonUtilP(input["BundledVirtualCurrencies"], BundledVirtualCurrencies); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BundledItems; ToJsonUtilS(BundledItems, each_BundledItems); output["BundledItems"] = each_BundledItems; + Json::Value each_BundledResultTables; ToJsonUtilS(BundledResultTables, each_BundledResultTables); output["BundledResultTables"] = each_BundledResultTables; + Json::Value each_BundledVirtualCurrencies; ToJsonUtilP(BundledVirtualCurrencies, each_BundledVirtualCurrencies); output["BundledVirtualCurrencies"] = each_BundledVirtualCurrencies; + return output; + } + }; + + struct CatalogItemConsumableInfo : public PlayFabBaseModel + { + Boxed UsageCount; + Boxed UsagePeriod; + std::string UsagePeriodGroup; + + CatalogItemConsumableInfo() : + PlayFabBaseModel(), + UsageCount(), + UsagePeriod(), + UsagePeriodGroup() + {} + + CatalogItemConsumableInfo(const CatalogItemConsumableInfo& src) : + PlayFabBaseModel(), + UsageCount(src.UsageCount), + UsagePeriod(src.UsagePeriod), + UsagePeriodGroup(src.UsagePeriodGroup) + {} + + ~CatalogItemConsumableInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["UsageCount"], UsageCount); + FromJsonUtilP(input["UsagePeriod"], UsagePeriod); + FromJsonUtilS(input["UsagePeriodGroup"], UsagePeriodGroup); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_UsageCount; ToJsonUtilP(UsageCount, each_UsageCount); output["UsageCount"] = each_UsageCount; + Json::Value each_UsagePeriod; ToJsonUtilP(UsagePeriod, each_UsagePeriod); output["UsagePeriod"] = each_UsagePeriod; + Json::Value each_UsagePeriodGroup; ToJsonUtilS(UsagePeriodGroup, each_UsagePeriodGroup); output["UsagePeriodGroup"] = each_UsagePeriodGroup; + return output; + } + }; + + struct CatalogItemContainerInfo : public PlayFabBaseModel + { + std::list ItemContents; + std::string KeyItemId; + std::list ResultTableContents; + std::map VirtualCurrencyContents; + + CatalogItemContainerInfo() : + PlayFabBaseModel(), + ItemContents(), + KeyItemId(), + ResultTableContents(), + VirtualCurrencyContents() + {} + + CatalogItemContainerInfo(const CatalogItemContainerInfo& src) : + PlayFabBaseModel(), + ItemContents(src.ItemContents), + KeyItemId(src.KeyItemId), + ResultTableContents(src.ResultTableContents), + VirtualCurrencyContents(src.VirtualCurrencyContents) + {} + + ~CatalogItemContainerInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ItemContents"], ItemContents); + FromJsonUtilS(input["KeyItemId"], KeyItemId); + FromJsonUtilS(input["ResultTableContents"], ResultTableContents); + FromJsonUtilP(input["VirtualCurrencyContents"], VirtualCurrencyContents); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ItemContents; ToJsonUtilS(ItemContents, each_ItemContents); output["ItemContents"] = each_ItemContents; + Json::Value each_KeyItemId; ToJsonUtilS(KeyItemId, each_KeyItemId); output["KeyItemId"] = each_KeyItemId; + Json::Value each_ResultTableContents; ToJsonUtilS(ResultTableContents, each_ResultTableContents); output["ResultTableContents"] = each_ResultTableContents; + Json::Value each_VirtualCurrencyContents; ToJsonUtilP(VirtualCurrencyContents, each_VirtualCurrencyContents); output["VirtualCurrencyContents"] = each_VirtualCurrencyContents; + return output; + } + }; + + struct CatalogItem : public PlayFabBaseModel + { + Boxed Bundle; + bool CanBecomeCharacter; + std::string CatalogVersion; + Boxed Consumable; + Boxed Container; + std::string CustomData; + std::string Description; + std::string DisplayName; + Int32 InitialLimitedEditionCount; + bool IsLimitedEdition; + bool IsStackable; + bool IsTradable; + std::string ItemClass; + std::string ItemId; + std::string ItemImageUrl; + std::map RealCurrencyPrices; + std::list Tags; + std::map VirtualCurrencyPrices; + + CatalogItem() : + PlayFabBaseModel(), + Bundle(), + CanBecomeCharacter(), + CatalogVersion(), + Consumable(), + Container(), + CustomData(), + Description(), + DisplayName(), + InitialLimitedEditionCount(), + IsLimitedEdition(), + IsStackable(), + IsTradable(), + ItemClass(), + ItemId(), + ItemImageUrl(), + RealCurrencyPrices(), + Tags(), + VirtualCurrencyPrices() + {} + + CatalogItem(const CatalogItem& src) : + PlayFabBaseModel(), + Bundle(src.Bundle), + CanBecomeCharacter(src.CanBecomeCharacter), + CatalogVersion(src.CatalogVersion), + Consumable(src.Consumable), + Container(src.Container), + CustomData(src.CustomData), + Description(src.Description), + DisplayName(src.DisplayName), + InitialLimitedEditionCount(src.InitialLimitedEditionCount), + IsLimitedEdition(src.IsLimitedEdition), + IsStackable(src.IsStackable), + IsTradable(src.IsTradable), + ItemClass(src.ItemClass), + ItemId(src.ItemId), + ItemImageUrl(src.ItemImageUrl), + RealCurrencyPrices(src.RealCurrencyPrices), + Tags(src.Tags), + VirtualCurrencyPrices(src.VirtualCurrencyPrices) + {} + + ~CatalogItem() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Bundle"], Bundle); + FromJsonUtilP(input["CanBecomeCharacter"], CanBecomeCharacter); + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilO(input["Consumable"], Consumable); + FromJsonUtilO(input["Container"], Container); + FromJsonUtilS(input["CustomData"], CustomData); + FromJsonUtilS(input["Description"], Description); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilP(input["InitialLimitedEditionCount"], InitialLimitedEditionCount); + FromJsonUtilP(input["IsLimitedEdition"], IsLimitedEdition); + FromJsonUtilP(input["IsStackable"], IsStackable); + FromJsonUtilP(input["IsTradable"], IsTradable); + FromJsonUtilS(input["ItemClass"], ItemClass); + FromJsonUtilS(input["ItemId"], ItemId); + FromJsonUtilS(input["ItemImageUrl"], ItemImageUrl); + FromJsonUtilP(input["RealCurrencyPrices"], RealCurrencyPrices); + FromJsonUtilS(input["Tags"], Tags); + FromJsonUtilP(input["VirtualCurrencyPrices"], VirtualCurrencyPrices); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Bundle; ToJsonUtilO(Bundle, each_Bundle); output["Bundle"] = each_Bundle; + Json::Value each_CanBecomeCharacter; ToJsonUtilP(CanBecomeCharacter, each_CanBecomeCharacter); output["CanBecomeCharacter"] = each_CanBecomeCharacter; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_Consumable; ToJsonUtilO(Consumable, each_Consumable); output["Consumable"] = each_Consumable; + Json::Value each_Container; ToJsonUtilO(Container, each_Container); output["Container"] = each_Container; + Json::Value each_CustomData; ToJsonUtilS(CustomData, each_CustomData); output["CustomData"] = each_CustomData; + Json::Value each_Description; ToJsonUtilS(Description, each_Description); output["Description"] = each_Description; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_InitialLimitedEditionCount; ToJsonUtilP(InitialLimitedEditionCount, each_InitialLimitedEditionCount); output["InitialLimitedEditionCount"] = each_InitialLimitedEditionCount; + Json::Value each_IsLimitedEdition; ToJsonUtilP(IsLimitedEdition, each_IsLimitedEdition); output["IsLimitedEdition"] = each_IsLimitedEdition; + Json::Value each_IsStackable; ToJsonUtilP(IsStackable, each_IsStackable); output["IsStackable"] = each_IsStackable; + Json::Value each_IsTradable; ToJsonUtilP(IsTradable, each_IsTradable); output["IsTradable"] = each_IsTradable; + Json::Value each_ItemClass; ToJsonUtilS(ItemClass, each_ItemClass); output["ItemClass"] = each_ItemClass; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + Json::Value each_ItemImageUrl; ToJsonUtilS(ItemImageUrl, each_ItemImageUrl); output["ItemImageUrl"] = each_ItemImageUrl; + Json::Value each_RealCurrencyPrices; ToJsonUtilP(RealCurrencyPrices, each_RealCurrencyPrices); output["RealCurrencyPrices"] = each_RealCurrencyPrices; + Json::Value each_Tags; ToJsonUtilS(Tags, each_Tags); output["Tags"] = each_Tags; + Json::Value each_VirtualCurrencyPrices; ToJsonUtilP(VirtualCurrencyPrices, each_VirtualCurrencyPrices); output["VirtualCurrencyPrices"] = each_VirtualCurrencyPrices; + return output; + } + }; + + struct ItemInstance : public PlayFabBaseModel + { + std::string Annotation; + std::list BundleContents; + std::string BundleParent; + std::string CatalogVersion; + std::map CustomData; + std::string DisplayName; + Boxed Expiration; + std::string ItemClass; + std::string ItemId; + std::string ItemInstanceId; + Boxed PurchaseDate; + Boxed RemainingUses; + std::string UnitCurrency; + Uint32 UnitPrice; + Boxed UsesIncrementedBy; + + ItemInstance() : + PlayFabBaseModel(), + Annotation(), + BundleContents(), + BundleParent(), + CatalogVersion(), + CustomData(), + DisplayName(), + Expiration(), + ItemClass(), + ItemId(), + ItemInstanceId(), + PurchaseDate(), + RemainingUses(), + UnitCurrency(), + UnitPrice(), + UsesIncrementedBy() + {} + + ItemInstance(const ItemInstance& src) : + PlayFabBaseModel(), + Annotation(src.Annotation), + BundleContents(src.BundleContents), + BundleParent(src.BundleParent), + CatalogVersion(src.CatalogVersion), + CustomData(src.CustomData), + DisplayName(src.DisplayName), + Expiration(src.Expiration), + ItemClass(src.ItemClass), + ItemId(src.ItemId), + ItemInstanceId(src.ItemInstanceId), + PurchaseDate(src.PurchaseDate), + RemainingUses(src.RemainingUses), + UnitCurrency(src.UnitCurrency), + UnitPrice(src.UnitPrice), + UsesIncrementedBy(src.UsesIncrementedBy) + {} + + ~ItemInstance() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Annotation"], Annotation); + FromJsonUtilS(input["BundleContents"], BundleContents); + FromJsonUtilS(input["BundleParent"], BundleParent); + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CustomData"], CustomData); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilT(input["Expiration"], Expiration); + FromJsonUtilS(input["ItemClass"], ItemClass); + FromJsonUtilS(input["ItemId"], ItemId); + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilT(input["PurchaseDate"], PurchaseDate); + FromJsonUtilP(input["RemainingUses"], RemainingUses); + FromJsonUtilS(input["UnitCurrency"], UnitCurrency); + FromJsonUtilP(input["UnitPrice"], UnitPrice); + FromJsonUtilP(input["UsesIncrementedBy"], UsesIncrementedBy); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Annotation; ToJsonUtilS(Annotation, each_Annotation); output["Annotation"] = each_Annotation; + Json::Value each_BundleContents; ToJsonUtilS(BundleContents, each_BundleContents); output["BundleContents"] = each_BundleContents; + Json::Value each_BundleParent; ToJsonUtilS(BundleParent, each_BundleParent); output["BundleParent"] = each_BundleParent; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CustomData; ToJsonUtilS(CustomData, each_CustomData); output["CustomData"] = each_CustomData; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_Expiration; ToJsonUtilT(Expiration, each_Expiration); output["Expiration"] = each_Expiration; + Json::Value each_ItemClass; ToJsonUtilS(ItemClass, each_ItemClass); output["ItemClass"] = each_ItemClass; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_PurchaseDate; ToJsonUtilT(PurchaseDate, each_PurchaseDate); output["PurchaseDate"] = each_PurchaseDate; + Json::Value each_RemainingUses; ToJsonUtilP(RemainingUses, each_RemainingUses); output["RemainingUses"] = each_RemainingUses; + Json::Value each_UnitCurrency; ToJsonUtilS(UnitCurrency, each_UnitCurrency); output["UnitCurrency"] = each_UnitCurrency; + Json::Value each_UnitPrice; ToJsonUtilP(UnitPrice, each_UnitPrice); output["UnitPrice"] = each_UnitPrice; + Json::Value each_UsesIncrementedBy; ToJsonUtilP(UsesIncrementedBy, each_UsesIncrementedBy); output["UsesIncrementedBy"] = each_UsesIncrementedBy; + return output; + } + }; + + struct CharacterInventory : public PlayFabBaseModel + { + std::string CharacterId; + std::list Inventory; + + CharacterInventory() : + PlayFabBaseModel(), + CharacterId(), + Inventory() + {} + + CharacterInventory(const CharacterInventory& src) : + PlayFabBaseModel(), + CharacterId(src.CharacterId), + Inventory(src.Inventory) + {} + + ~CharacterInventory() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilO(input["Inventory"], Inventory); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_Inventory; ToJsonUtilO(Inventory, each_Inventory); output["Inventory"] = each_Inventory; + return output; + } + }; + + struct CharacterLeaderboardEntry : public PlayFabBaseModel + { + std::string CharacterId; + std::string CharacterName; + std::string CharacterType; + std::string DisplayName; + std::string PlayFabId; + Int32 Position; + Int32 StatValue; + + CharacterLeaderboardEntry() : + PlayFabBaseModel(), + CharacterId(), + CharacterName(), + CharacterType(), + DisplayName(), + PlayFabId(), + Position(), + StatValue() + {} + + CharacterLeaderboardEntry(const CharacterLeaderboardEntry& src) : + PlayFabBaseModel(), + CharacterId(src.CharacterId), + CharacterName(src.CharacterName), + CharacterType(src.CharacterType), + DisplayName(src.DisplayName), + PlayFabId(src.PlayFabId), + Position(src.Position), + StatValue(src.StatValue) + {} + + ~CharacterLeaderboardEntry() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["CharacterName"], CharacterName); + FromJsonUtilS(input["CharacterType"], CharacterType); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilP(input["Position"], Position); + FromJsonUtilP(input["StatValue"], StatValue); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_CharacterName; ToJsonUtilS(CharacterName, each_CharacterName); output["CharacterName"] = each_CharacterName; + Json::Value each_CharacterType; ToJsonUtilS(CharacterType, each_CharacterType); output["CharacterType"] = each_CharacterType; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Position; ToJsonUtilP(Position, each_Position); output["Position"] = each_Position; + Json::Value each_StatValue; ToJsonUtilP(StatValue, each_StatValue); output["StatValue"] = each_StatValue; + return output; + } + }; + + struct CharacterResult : public PlayFabResultCommon + { + std::string CharacterId; + std::string CharacterName; + std::string CharacterType; + + CharacterResult() : + PlayFabResultCommon(), + CharacterId(), + CharacterName(), + CharacterType() + {} + + CharacterResult(const CharacterResult& src) : + PlayFabResultCommon(), + CharacterId(src.CharacterId), + CharacterName(src.CharacterName), + CharacterType(src.CharacterType) + {} + + ~CharacterResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["CharacterName"], CharacterName); + FromJsonUtilS(input["CharacterType"], CharacterType); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_CharacterName; ToJsonUtilS(CharacterName, each_CharacterName); output["CharacterName"] = each_CharacterName; + Json::Value each_CharacterType; ToJsonUtilS(CharacterType, each_CharacterType); output["CharacterType"] = each_CharacterType; + return output; + } + }; + + struct ConsumeItemRequest : public PlayFabRequestCommon + { + std::string CharacterId; + Int32 ConsumeCount; + std::string ItemInstanceId; + std::string PlayFabId; + + ConsumeItemRequest() : + PlayFabRequestCommon(), + CharacterId(), + ConsumeCount(), + ItemInstanceId(), + PlayFabId() + {} + + ConsumeItemRequest(const ConsumeItemRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + ConsumeCount(src.ConsumeCount), + ItemInstanceId(src.ItemInstanceId), + PlayFabId(src.PlayFabId) + {} + + ~ConsumeItemRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilP(input["ConsumeCount"], ConsumeCount); + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_ConsumeCount; ToJsonUtilP(ConsumeCount, each_ConsumeCount); output["ConsumeCount"] = each_ConsumeCount; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct ConsumeItemResult : public PlayFabResultCommon + { + std::string ItemInstanceId; + Int32 RemainingUses; + + ConsumeItemResult() : + PlayFabResultCommon(), + ItemInstanceId(), + RemainingUses() + {} + + ConsumeItemResult(const ConsumeItemResult& src) : + PlayFabResultCommon(), + ItemInstanceId(src.ItemInstanceId), + RemainingUses(src.RemainingUses) + {} + + ~ConsumeItemResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilP(input["RemainingUses"], RemainingUses); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_RemainingUses; ToJsonUtilP(RemainingUses, each_RemainingUses); output["RemainingUses"] = each_RemainingUses; + return output; + } + }; + + struct ContactEmailInfo : public PlayFabBaseModel + { + std::string EmailAddress; + std::string Name; + Boxed VerificationStatus; + + ContactEmailInfo() : + PlayFabBaseModel(), + EmailAddress(), + Name(), + VerificationStatus() + {} + + ContactEmailInfo(const ContactEmailInfo& src) : + PlayFabBaseModel(), + EmailAddress(src.EmailAddress), + Name(src.Name), + VerificationStatus(src.VerificationStatus) + {} + + ~ContactEmailInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["EmailAddress"], EmailAddress); + FromJsonUtilS(input["Name"], Name); + FromJsonUtilE(input["VerificationStatus"], VerificationStatus); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_EmailAddress; ToJsonUtilS(EmailAddress, each_EmailAddress); output["EmailAddress"] = each_EmailAddress; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + Json::Value each_VerificationStatus; ToJsonUtilE(VerificationStatus, each_VerificationStatus); output["VerificationStatus"] = each_VerificationStatus; + return output; + } + }; + + struct ContactEmailInfoModel : public PlayFabBaseModel + { + std::string EmailAddress; + std::string Name; + Boxed VerificationStatus; + + ContactEmailInfoModel() : + PlayFabBaseModel(), + EmailAddress(), + Name(), + VerificationStatus() + {} + + ContactEmailInfoModel(const ContactEmailInfoModel& src) : + PlayFabBaseModel(), + EmailAddress(src.EmailAddress), + Name(src.Name), + VerificationStatus(src.VerificationStatus) + {} + + ~ContactEmailInfoModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["EmailAddress"], EmailAddress); + FromJsonUtilS(input["Name"], Name); + FromJsonUtilE(input["VerificationStatus"], VerificationStatus); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_EmailAddress; ToJsonUtilS(EmailAddress, each_EmailAddress); output["EmailAddress"] = each_EmailAddress; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + Json::Value each_VerificationStatus; ToJsonUtilE(VerificationStatus, each_VerificationStatus); output["VerificationStatus"] = each_VerificationStatus; + return output; + } + }; + + struct CreateSharedGroupRequest : public PlayFabRequestCommon + { + std::string SharedGroupId; + + CreateSharedGroupRequest() : + PlayFabRequestCommon(), + SharedGroupId() + {} + + CreateSharedGroupRequest(const CreateSharedGroupRequest& src) : + PlayFabRequestCommon(), + SharedGroupId(src.SharedGroupId) + {} + + ~CreateSharedGroupRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["SharedGroupId"], SharedGroupId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_SharedGroupId; ToJsonUtilS(SharedGroupId, each_SharedGroupId); output["SharedGroupId"] = each_SharedGroupId; + return output; + } + }; + + struct CreateSharedGroupResult : public PlayFabResultCommon + { + std::string SharedGroupId; + + CreateSharedGroupResult() : + PlayFabResultCommon(), + SharedGroupId() + {} + + CreateSharedGroupResult(const CreateSharedGroupResult& src) : + PlayFabResultCommon(), + SharedGroupId(src.SharedGroupId) + {} + + ~CreateSharedGroupResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["SharedGroupId"], SharedGroupId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_SharedGroupId; ToJsonUtilS(SharedGroupId, each_SharedGroupId); output["SharedGroupId"] = each_SharedGroupId; + return output; + } + }; + + struct DeleteCharacterFromUserRequest : public PlayFabRequestCommon + { + std::string CharacterId; + std::string PlayFabId; + bool SaveCharacterInventory; + + DeleteCharacterFromUserRequest() : + PlayFabRequestCommon(), + CharacterId(), + PlayFabId(), + SaveCharacterInventory() + {} + + DeleteCharacterFromUserRequest(const DeleteCharacterFromUserRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + PlayFabId(src.PlayFabId), + SaveCharacterInventory(src.SaveCharacterInventory) + {} + + ~DeleteCharacterFromUserRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilP(input["SaveCharacterInventory"], SaveCharacterInventory); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_SaveCharacterInventory; ToJsonUtilP(SaveCharacterInventory, each_SaveCharacterInventory); output["SaveCharacterInventory"] = each_SaveCharacterInventory; + return output; + } + }; + + struct DeleteCharacterFromUserResult : public PlayFabResultCommon + { + + DeleteCharacterFromUserResult() : + PlayFabResultCommon() + {} + + DeleteCharacterFromUserResult(const DeleteCharacterFromUserResult&) : + PlayFabResultCommon() + {} + + ~DeleteCharacterFromUserResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct DeleteSharedGroupRequest : public PlayFabRequestCommon + { + std::string SharedGroupId; + + DeleteSharedGroupRequest() : + PlayFabRequestCommon(), + SharedGroupId() + {} + + DeleteSharedGroupRequest(const DeleteSharedGroupRequest& src) : + PlayFabRequestCommon(), + SharedGroupId(src.SharedGroupId) + {} + + ~DeleteSharedGroupRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["SharedGroupId"], SharedGroupId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_SharedGroupId; ToJsonUtilS(SharedGroupId, each_SharedGroupId); output["SharedGroupId"] = each_SharedGroupId; + return output; + } + }; + + struct DeleteUsersRequest : public PlayFabRequestCommon + { + std::list PlayFabIds; + std::string TitleId; + + DeleteUsersRequest() : + PlayFabRequestCommon(), + PlayFabIds(), + TitleId() + {} + + DeleteUsersRequest(const DeleteUsersRequest& src) : + PlayFabRequestCommon(), + PlayFabIds(src.PlayFabIds), + TitleId(src.TitleId) + {} + + ~DeleteUsersRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabIds"], PlayFabIds); + FromJsonUtilS(input["TitleId"], TitleId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabIds; ToJsonUtilS(PlayFabIds, each_PlayFabIds); output["PlayFabIds"] = each_PlayFabIds; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + return output; + } + }; + + struct DeleteUsersResult : public PlayFabResultCommon + { + + DeleteUsersResult() : + PlayFabResultCommon() + {} + + DeleteUsersResult(const DeleteUsersResult&) : + PlayFabResultCommon() + {} + + ~DeleteUsersResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct DeregisterGameRequest : public PlayFabRequestCommon + { + std::string LobbyId; + + DeregisterGameRequest() : + PlayFabRequestCommon(), + LobbyId() + {} + + DeregisterGameRequest(const DeregisterGameRequest& src) : + PlayFabRequestCommon(), + LobbyId(src.LobbyId) + {} + + ~DeregisterGameRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["LobbyId"], LobbyId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LobbyId; ToJsonUtilS(LobbyId, each_LobbyId); output["LobbyId"] = each_LobbyId; + return output; + } + }; + + struct DeregisterGameResponse : public PlayFabResultCommon + { + + DeregisterGameResponse() : + PlayFabResultCommon() + {} + + DeregisterGameResponse(const DeregisterGameResponse&) : + PlayFabResultCommon() + {} + + ~DeregisterGameResponse() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct EmptyResult : public PlayFabResultCommon + { + + EmptyResult() : + PlayFabResultCommon() + {} + + EmptyResult(const EmptyResult&) : + PlayFabResultCommon() + {} + + ~EmptyResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct EvaluateRandomResultTableRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::string TableId; + + EvaluateRandomResultTableRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + TableId() + {} + + EvaluateRandomResultTableRequest(const EvaluateRandomResultTableRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + TableId(src.TableId) + {} + + ~EvaluateRandomResultTableRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["TableId"], TableId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_TableId; ToJsonUtilS(TableId, each_TableId); output["TableId"] = each_TableId; + return output; + } + }; + + struct EvaluateRandomResultTableResult : public PlayFabResultCommon + { + std::string ResultItemId; + + EvaluateRandomResultTableResult() : + PlayFabResultCommon(), + ResultItemId() + {} + + EvaluateRandomResultTableResult(const EvaluateRandomResultTableResult& src) : + PlayFabResultCommon(), + ResultItemId(src.ResultItemId) + {} + + ~EvaluateRandomResultTableResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ResultItemId"], ResultItemId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ResultItemId; ToJsonUtilS(ResultItemId, each_ResultItemId); output["ResultItemId"] = each_ResultItemId; + return output; + } + }; + + struct ScriptExecutionError : public PlayFabBaseModel + { + std::string Error; + std::string Message; + std::string StackTrace; + + ScriptExecutionError() : + PlayFabBaseModel(), + Error(), + Message(), + StackTrace() + {} + + ScriptExecutionError(const ScriptExecutionError& src) : + PlayFabBaseModel(), + Error(src.Error), + Message(src.Message), + StackTrace(src.StackTrace) + {} + + ~ScriptExecutionError() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Error"], Error); + FromJsonUtilS(input["Message"], Message); + FromJsonUtilS(input["StackTrace"], StackTrace); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Error; ToJsonUtilS(Error, each_Error); output["Error"] = each_Error; + Json::Value each_Message; ToJsonUtilS(Message, each_Message); output["Message"] = each_Message; + Json::Value each_StackTrace; ToJsonUtilS(StackTrace, each_StackTrace); output["StackTrace"] = each_StackTrace; + return output; + } + }; + + struct LogStatement : public PlayFabBaseModel + { + Json::Value Data; + std::string Level; + std::string Message; + + LogStatement() : + PlayFabBaseModel(), + Data(), + Level(), + Message() + {} + + LogStatement(const LogStatement& src) : + PlayFabBaseModel(), + Data(src.Data), + Level(src.Level), + Message(src.Message) + {} + + ~LogStatement() { } + + void FromJson(Json::Value& input) override + { + Data = input["Data"]; + FromJsonUtilS(input["Level"], Level); + FromJsonUtilS(input["Message"], Message); + } + + Json::Value ToJson() const override + { + Json::Value output; + output["Data"] = Data; + Json::Value each_Level; ToJsonUtilS(Level, each_Level); output["Level"] = each_Level; + Json::Value each_Message; ToJsonUtilS(Message, each_Message); output["Message"] = each_Message; + return output; + } + }; + + struct ExecuteCloudScriptResult : public PlayFabResultCommon + { + Int32 APIRequestsIssued; + Boxed Error; + double ExecutionTimeSeconds; + std::string FunctionName; + Json::Value FunctionResult; + Boxed FunctionResultTooLarge; + Int32 HttpRequestsIssued; + std::list Logs; + Boxed LogsTooLarge; + Uint32 MemoryConsumedBytes; + double ProcessorTimeSeconds; + Int32 Revision; + + ExecuteCloudScriptResult() : + PlayFabResultCommon(), + APIRequestsIssued(), + Error(), + ExecutionTimeSeconds(), + FunctionName(), + FunctionResult(), + FunctionResultTooLarge(), + HttpRequestsIssued(), + Logs(), + LogsTooLarge(), + MemoryConsumedBytes(), + ProcessorTimeSeconds(), + Revision() + {} + + ExecuteCloudScriptResult(const ExecuteCloudScriptResult& src) : + PlayFabResultCommon(), + APIRequestsIssued(src.APIRequestsIssued), + Error(src.Error), + ExecutionTimeSeconds(src.ExecutionTimeSeconds), + FunctionName(src.FunctionName), + FunctionResult(src.FunctionResult), + FunctionResultTooLarge(src.FunctionResultTooLarge), + HttpRequestsIssued(src.HttpRequestsIssued), + Logs(src.Logs), + LogsTooLarge(src.LogsTooLarge), + MemoryConsumedBytes(src.MemoryConsumedBytes), + ProcessorTimeSeconds(src.ProcessorTimeSeconds), + Revision(src.Revision) + {} + + ~ExecuteCloudScriptResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["APIRequestsIssued"], APIRequestsIssued); + FromJsonUtilO(input["Error"], Error); + FromJsonUtilP(input["ExecutionTimeSeconds"], ExecutionTimeSeconds); + FromJsonUtilS(input["FunctionName"], FunctionName); + FunctionResult = input["FunctionResult"]; + FromJsonUtilP(input["FunctionResultTooLarge"], FunctionResultTooLarge); + FromJsonUtilP(input["HttpRequestsIssued"], HttpRequestsIssued); + FromJsonUtilO(input["Logs"], Logs); + FromJsonUtilP(input["LogsTooLarge"], LogsTooLarge); + FromJsonUtilP(input["MemoryConsumedBytes"], MemoryConsumedBytes); + FromJsonUtilP(input["ProcessorTimeSeconds"], ProcessorTimeSeconds); + FromJsonUtilP(input["Revision"], Revision); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_APIRequestsIssued; ToJsonUtilP(APIRequestsIssued, each_APIRequestsIssued); output["APIRequestsIssued"] = each_APIRequestsIssued; + Json::Value each_Error; ToJsonUtilO(Error, each_Error); output["Error"] = each_Error; + Json::Value each_ExecutionTimeSeconds; ToJsonUtilP(ExecutionTimeSeconds, each_ExecutionTimeSeconds); output["ExecutionTimeSeconds"] = each_ExecutionTimeSeconds; + Json::Value each_FunctionName; ToJsonUtilS(FunctionName, each_FunctionName); output["FunctionName"] = each_FunctionName; + output["FunctionResult"] = FunctionResult; + Json::Value each_FunctionResultTooLarge; ToJsonUtilP(FunctionResultTooLarge, each_FunctionResultTooLarge); output["FunctionResultTooLarge"] = each_FunctionResultTooLarge; + Json::Value each_HttpRequestsIssued; ToJsonUtilP(HttpRequestsIssued, each_HttpRequestsIssued); output["HttpRequestsIssued"] = each_HttpRequestsIssued; + Json::Value each_Logs; ToJsonUtilO(Logs, each_Logs); output["Logs"] = each_Logs; + Json::Value each_LogsTooLarge; ToJsonUtilP(LogsTooLarge, each_LogsTooLarge); output["LogsTooLarge"] = each_LogsTooLarge; + Json::Value each_MemoryConsumedBytes; ToJsonUtilP(MemoryConsumedBytes, each_MemoryConsumedBytes); output["MemoryConsumedBytes"] = each_MemoryConsumedBytes; + Json::Value each_ProcessorTimeSeconds; ToJsonUtilP(ProcessorTimeSeconds, each_ProcessorTimeSeconds); output["ProcessorTimeSeconds"] = each_ProcessorTimeSeconds; + Json::Value each_Revision; ToJsonUtilP(Revision, each_Revision); output["Revision"] = each_Revision; + return output; + } + }; + + struct ExecuteCloudScriptServerRequest : public PlayFabRequestCommon + { + std::string FunctionName; + Json::Value FunctionParameter; + Boxed GeneratePlayStreamEvent; + std::string PlayFabId; + Boxed RevisionSelection; + Boxed SpecificRevision; + + ExecuteCloudScriptServerRequest() : + PlayFabRequestCommon(), + FunctionName(), + FunctionParameter(), + GeneratePlayStreamEvent(), + PlayFabId(), + RevisionSelection(), + SpecificRevision() + {} + + ExecuteCloudScriptServerRequest(const ExecuteCloudScriptServerRequest& src) : + PlayFabRequestCommon(), + FunctionName(src.FunctionName), + FunctionParameter(src.FunctionParameter), + GeneratePlayStreamEvent(src.GeneratePlayStreamEvent), + PlayFabId(src.PlayFabId), + RevisionSelection(src.RevisionSelection), + SpecificRevision(src.SpecificRevision) + {} + + ~ExecuteCloudScriptServerRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FunctionName"], FunctionName); + FunctionParameter = input["FunctionParameter"]; + FromJsonUtilP(input["GeneratePlayStreamEvent"], GeneratePlayStreamEvent); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilE(input["RevisionSelection"], RevisionSelection); + FromJsonUtilP(input["SpecificRevision"], SpecificRevision); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FunctionName; ToJsonUtilS(FunctionName, each_FunctionName); output["FunctionName"] = each_FunctionName; + output["FunctionParameter"] = FunctionParameter; + Json::Value each_GeneratePlayStreamEvent; ToJsonUtilP(GeneratePlayStreamEvent, each_GeneratePlayStreamEvent); output["GeneratePlayStreamEvent"] = each_GeneratePlayStreamEvent; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_RevisionSelection; ToJsonUtilE(RevisionSelection, each_RevisionSelection); output["RevisionSelection"] = each_RevisionSelection; + Json::Value each_SpecificRevision; ToJsonUtilP(SpecificRevision, each_SpecificRevision); output["SpecificRevision"] = each_SpecificRevision; + return output; + } + }; + + struct FacebookPlayFabIdPair : public PlayFabBaseModel + { + std::string FacebookId; + std::string PlayFabId; + + FacebookPlayFabIdPair() : + PlayFabBaseModel(), + FacebookId(), + PlayFabId() + {} + + FacebookPlayFabIdPair(const FacebookPlayFabIdPair& src) : + PlayFabBaseModel(), + FacebookId(src.FacebookId), + PlayFabId(src.PlayFabId) + {} + + ~FacebookPlayFabIdPair() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FacebookId"], FacebookId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FacebookId; ToJsonUtilS(FacebookId, each_FacebookId); output["FacebookId"] = each_FacebookId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct LinkedPlatformAccountModel : public PlayFabBaseModel + { + std::string Email; + Boxed Platform; + std::string PlatformUserId; + std::string Username; + + LinkedPlatformAccountModel() : + PlayFabBaseModel(), + Email(), + Platform(), + PlatformUserId(), + Username() + {} + + LinkedPlatformAccountModel(const LinkedPlatformAccountModel& src) : + PlayFabBaseModel(), + Email(src.Email), + Platform(src.Platform), + PlatformUserId(src.PlatformUserId), + Username(src.Username) + {} + + ~LinkedPlatformAccountModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Email"], Email); + FromJsonUtilE(input["Platform"], Platform); + FromJsonUtilS(input["PlatformUserId"], PlatformUserId); + FromJsonUtilS(input["Username"], Username); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Email; ToJsonUtilS(Email, each_Email); output["Email"] = each_Email; + Json::Value each_Platform; ToJsonUtilE(Platform, each_Platform); output["Platform"] = each_Platform; + Json::Value each_PlatformUserId; ToJsonUtilS(PlatformUserId, each_PlatformUserId); output["PlatformUserId"] = each_PlatformUserId; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + return output; + } + }; + + struct LocationModel : public PlayFabBaseModel + { + std::string City; + Boxed pfContinentCode; + Boxed pfCountryCode; + Boxed Latitude; + Boxed Longitude; + + LocationModel() : + PlayFabBaseModel(), + City(), + pfContinentCode(), + pfCountryCode(), + Latitude(), + Longitude() + {} + + LocationModel(const LocationModel& src) : + PlayFabBaseModel(), + City(src.City), + pfContinentCode(src.pfContinentCode), + pfCountryCode(src.pfCountryCode), + Latitude(src.Latitude), + Longitude(src.Longitude) + {} + + ~LocationModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["City"], City); + FromJsonUtilE(input["pfContinentCode"], pfContinentCode); + FromJsonUtilE(input["pfCountryCode"], pfCountryCode); + FromJsonUtilP(input["Latitude"], Latitude); + FromJsonUtilP(input["Longitude"], Longitude); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_City; ToJsonUtilS(City, each_City); output["City"] = each_City; + Json::Value each_pfContinentCode; ToJsonUtilE(pfContinentCode, each_pfContinentCode); output["ContinentCode"] = each_pfContinentCode; + Json::Value each_pfCountryCode; ToJsonUtilE(pfCountryCode, each_pfCountryCode); output["CountryCode"] = each_pfCountryCode; + Json::Value each_Latitude; ToJsonUtilP(Latitude, each_Latitude); output["Latitude"] = each_Latitude; + Json::Value each_Longitude; ToJsonUtilP(Longitude, each_Longitude); output["Longitude"] = each_Longitude; + return output; + } + }; + + struct SubscriptionModel : public PlayFabBaseModel + { + time_t Expiration; + time_t InitialSubscriptionTime; + bool IsActive; + Boxed Status; + std::string SubscriptionId; + std::string SubscriptionItemId; + std::string SubscriptionProvider; + + SubscriptionModel() : + PlayFabBaseModel(), + Expiration(), + InitialSubscriptionTime(), + IsActive(), + Status(), + SubscriptionId(), + SubscriptionItemId(), + SubscriptionProvider() + {} + + SubscriptionModel(const SubscriptionModel& src) : + PlayFabBaseModel(), + Expiration(src.Expiration), + InitialSubscriptionTime(src.InitialSubscriptionTime), + IsActive(src.IsActive), + Status(src.Status), + SubscriptionId(src.SubscriptionId), + SubscriptionItemId(src.SubscriptionItemId), + SubscriptionProvider(src.SubscriptionProvider) + {} + + ~SubscriptionModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["Expiration"], Expiration); + FromJsonUtilT(input["InitialSubscriptionTime"], InitialSubscriptionTime); + FromJsonUtilP(input["IsActive"], IsActive); + FromJsonUtilE(input["Status"], Status); + FromJsonUtilS(input["SubscriptionId"], SubscriptionId); + FromJsonUtilS(input["SubscriptionItemId"], SubscriptionItemId); + FromJsonUtilS(input["SubscriptionProvider"], SubscriptionProvider); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Expiration; ToJsonUtilT(Expiration, each_Expiration); output["Expiration"] = each_Expiration; + Json::Value each_InitialSubscriptionTime; ToJsonUtilT(InitialSubscriptionTime, each_InitialSubscriptionTime); output["InitialSubscriptionTime"] = each_InitialSubscriptionTime; + Json::Value each_IsActive; ToJsonUtilP(IsActive, each_IsActive); output["IsActive"] = each_IsActive; + Json::Value each_Status; ToJsonUtilE(Status, each_Status); output["Status"] = each_Status; + Json::Value each_SubscriptionId; ToJsonUtilS(SubscriptionId, each_SubscriptionId); output["SubscriptionId"] = each_SubscriptionId; + Json::Value each_SubscriptionItemId; ToJsonUtilS(SubscriptionItemId, each_SubscriptionItemId); output["SubscriptionItemId"] = each_SubscriptionItemId; + Json::Value each_SubscriptionProvider; ToJsonUtilS(SubscriptionProvider, each_SubscriptionProvider); output["SubscriptionProvider"] = each_SubscriptionProvider; + return output; + } + }; + + struct MembershipModel : public PlayFabBaseModel + { + bool IsActive; + time_t MembershipExpiration; + std::string MembershipId; + Boxed OverrideExpiration; + std::list Subscriptions; + + MembershipModel() : + PlayFabBaseModel(), + IsActive(), + MembershipExpiration(), + MembershipId(), + OverrideExpiration(), + Subscriptions() + {} + + MembershipModel(const MembershipModel& src) : + PlayFabBaseModel(), + IsActive(src.IsActive), + MembershipExpiration(src.MembershipExpiration), + MembershipId(src.MembershipId), + OverrideExpiration(src.OverrideExpiration), + Subscriptions(src.Subscriptions) + {} + + ~MembershipModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["IsActive"], IsActive); + FromJsonUtilT(input["MembershipExpiration"], MembershipExpiration); + FromJsonUtilS(input["MembershipId"], MembershipId); + FromJsonUtilT(input["OverrideExpiration"], OverrideExpiration); + FromJsonUtilO(input["Subscriptions"], Subscriptions); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_IsActive; ToJsonUtilP(IsActive, each_IsActive); output["IsActive"] = each_IsActive; + Json::Value each_MembershipExpiration; ToJsonUtilT(MembershipExpiration, each_MembershipExpiration); output["MembershipExpiration"] = each_MembershipExpiration; + Json::Value each_MembershipId; ToJsonUtilS(MembershipId, each_MembershipId); output["MembershipId"] = each_MembershipId; + Json::Value each_OverrideExpiration; ToJsonUtilT(OverrideExpiration, each_OverrideExpiration); output["OverrideExpiration"] = each_OverrideExpiration; + Json::Value each_Subscriptions; ToJsonUtilO(Subscriptions, each_Subscriptions); output["Subscriptions"] = each_Subscriptions; + return output; + } + }; + + struct PushNotificationRegistrationModel : public PlayFabBaseModel + { + std::string NotificationEndpointARN; + Boxed Platform; + + PushNotificationRegistrationModel() : + PlayFabBaseModel(), + NotificationEndpointARN(), + Platform() + {} + + PushNotificationRegistrationModel(const PushNotificationRegistrationModel& src) : + PlayFabBaseModel(), + NotificationEndpointARN(src.NotificationEndpointARN), + Platform(src.Platform) + {} + + ~PushNotificationRegistrationModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["NotificationEndpointARN"], NotificationEndpointARN); + FromJsonUtilE(input["Platform"], Platform); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_NotificationEndpointARN; ToJsonUtilS(NotificationEndpointARN, each_NotificationEndpointARN); output["NotificationEndpointARN"] = each_NotificationEndpointARN; + Json::Value each_Platform; ToJsonUtilE(Platform, each_Platform); output["Platform"] = each_Platform; + return output; + } + }; + + struct StatisticModel : public PlayFabBaseModel + { + std::string Name; + Int32 Value; + Int32 Version; + + StatisticModel() : + PlayFabBaseModel(), + Name(), + Value(), + Version() + {} + + StatisticModel(const StatisticModel& src) : + PlayFabBaseModel(), + Name(src.Name), + Value(src.Value), + Version(src.Version) + {} + + ~StatisticModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Name"], Name); + FromJsonUtilP(input["Value"], Value); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + Json::Value each_Value; ToJsonUtilP(Value, each_Value); output["Value"] = each_Value; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct TagModel : public PlayFabBaseModel + { + std::string TagValue; + + TagModel() : + PlayFabBaseModel(), + TagValue() + {} + + TagModel(const TagModel& src) : + PlayFabBaseModel(), + TagValue(src.TagValue) + {} + + ~TagModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["TagValue"], TagValue); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_TagValue; ToJsonUtilS(TagValue, each_TagValue); output["TagValue"] = each_TagValue; + return output; + } + }; + + struct ValueToDateModel : public PlayFabBaseModel + { + std::string Currency; + Uint32 TotalValue; + std::string TotalValueAsDecimal; + + ValueToDateModel() : + PlayFabBaseModel(), + Currency(), + TotalValue(), + TotalValueAsDecimal() + {} + + ValueToDateModel(const ValueToDateModel& src) : + PlayFabBaseModel(), + Currency(src.Currency), + TotalValue(src.TotalValue), + TotalValueAsDecimal(src.TotalValueAsDecimal) + {} + + ~ValueToDateModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Currency"], Currency); + FromJsonUtilP(input["TotalValue"], TotalValue); + FromJsonUtilS(input["TotalValueAsDecimal"], TotalValueAsDecimal); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Currency; ToJsonUtilS(Currency, each_Currency); output["Currency"] = each_Currency; + Json::Value each_TotalValue; ToJsonUtilP(TotalValue, each_TotalValue); output["TotalValue"] = each_TotalValue; + Json::Value each_TotalValueAsDecimal; ToJsonUtilS(TotalValueAsDecimal, each_TotalValueAsDecimal); output["TotalValueAsDecimal"] = each_TotalValueAsDecimal; + return output; + } + }; + + struct PlayerProfileModel : public PlayFabBaseModel + { + std::list AdCampaignAttributions; + std::string AvatarUrl; + Boxed BannedUntil; + std::list ContactEmailAddresses; + Boxed Created; + std::string DisplayName; + Boxed LastLogin; + std::list LinkedAccounts; + std::list Locations; + std::list Memberships; + Boxed Origination; + std::string PlayerId; + std::string PublisherId; + std::list PushNotificationRegistrations; + std::list Statistics; + std::list Tags; + std::string TitleId; + Boxed TotalValueToDateInUSD; + std::list ValuesToDate; + + PlayerProfileModel() : + PlayFabBaseModel(), + AdCampaignAttributions(), + AvatarUrl(), + BannedUntil(), + ContactEmailAddresses(), + Created(), + DisplayName(), + LastLogin(), + LinkedAccounts(), + Locations(), + Memberships(), + Origination(), + PlayerId(), + PublisherId(), + PushNotificationRegistrations(), + Statistics(), + Tags(), + TitleId(), + TotalValueToDateInUSD(), + ValuesToDate() + {} + + PlayerProfileModel(const PlayerProfileModel& src) : + PlayFabBaseModel(), + AdCampaignAttributions(src.AdCampaignAttributions), + AvatarUrl(src.AvatarUrl), + BannedUntil(src.BannedUntil), + ContactEmailAddresses(src.ContactEmailAddresses), + Created(src.Created), + DisplayName(src.DisplayName), + LastLogin(src.LastLogin), + LinkedAccounts(src.LinkedAccounts), + Locations(src.Locations), + Memberships(src.Memberships), + Origination(src.Origination), + PlayerId(src.PlayerId), + PublisherId(src.PublisherId), + PushNotificationRegistrations(src.PushNotificationRegistrations), + Statistics(src.Statistics), + Tags(src.Tags), + TitleId(src.TitleId), + TotalValueToDateInUSD(src.TotalValueToDateInUSD), + ValuesToDate(src.ValuesToDate) + {} + + ~PlayerProfileModel() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["AdCampaignAttributions"], AdCampaignAttributions); + FromJsonUtilS(input["AvatarUrl"], AvatarUrl); + FromJsonUtilT(input["BannedUntil"], BannedUntil); + FromJsonUtilO(input["ContactEmailAddresses"], ContactEmailAddresses); + FromJsonUtilT(input["Created"], Created); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilT(input["LastLogin"], LastLogin); + FromJsonUtilO(input["LinkedAccounts"], LinkedAccounts); + FromJsonUtilO(input["Locations"], Locations); + FromJsonUtilO(input["Memberships"], Memberships); + FromJsonUtilE(input["Origination"], Origination); + FromJsonUtilS(input["PlayerId"], PlayerId); + FromJsonUtilS(input["PublisherId"], PublisherId); + FromJsonUtilO(input["PushNotificationRegistrations"], PushNotificationRegistrations); + FromJsonUtilO(input["Statistics"], Statistics); + FromJsonUtilO(input["Tags"], Tags); + FromJsonUtilS(input["TitleId"], TitleId); + FromJsonUtilP(input["TotalValueToDateInUSD"], TotalValueToDateInUSD); + FromJsonUtilO(input["ValuesToDate"], ValuesToDate); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AdCampaignAttributions; ToJsonUtilO(AdCampaignAttributions, each_AdCampaignAttributions); output["AdCampaignAttributions"] = each_AdCampaignAttributions; + Json::Value each_AvatarUrl; ToJsonUtilS(AvatarUrl, each_AvatarUrl); output["AvatarUrl"] = each_AvatarUrl; + Json::Value each_BannedUntil; ToJsonUtilT(BannedUntil, each_BannedUntil); output["BannedUntil"] = each_BannedUntil; + Json::Value each_ContactEmailAddresses; ToJsonUtilO(ContactEmailAddresses, each_ContactEmailAddresses); output["ContactEmailAddresses"] = each_ContactEmailAddresses; + Json::Value each_Created; ToJsonUtilT(Created, each_Created); output["Created"] = each_Created; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_LastLogin; ToJsonUtilT(LastLogin, each_LastLogin); output["LastLogin"] = each_LastLogin; + Json::Value each_LinkedAccounts; ToJsonUtilO(LinkedAccounts, each_LinkedAccounts); output["LinkedAccounts"] = each_LinkedAccounts; + Json::Value each_Locations; ToJsonUtilO(Locations, each_Locations); output["Locations"] = each_Locations; + Json::Value each_Memberships; ToJsonUtilO(Memberships, each_Memberships); output["Memberships"] = each_Memberships; + Json::Value each_Origination; ToJsonUtilE(Origination, each_Origination); output["Origination"] = each_Origination; + Json::Value each_PlayerId; ToJsonUtilS(PlayerId, each_PlayerId); output["PlayerId"] = each_PlayerId; + Json::Value each_PublisherId; ToJsonUtilS(PublisherId, each_PublisherId); output["PublisherId"] = each_PublisherId; + Json::Value each_PushNotificationRegistrations; ToJsonUtilO(PushNotificationRegistrations, each_PushNotificationRegistrations); output["PushNotificationRegistrations"] = each_PushNotificationRegistrations; + Json::Value each_Statistics; ToJsonUtilO(Statistics, each_Statistics); output["Statistics"] = each_Statistics; + Json::Value each_Tags; ToJsonUtilO(Tags, each_Tags); output["Tags"] = each_Tags; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + Json::Value each_TotalValueToDateInUSD; ToJsonUtilP(TotalValueToDateInUSD, each_TotalValueToDateInUSD); output["TotalValueToDateInUSD"] = each_TotalValueToDateInUSD; + Json::Value each_ValuesToDate; ToJsonUtilO(ValuesToDate, each_ValuesToDate); output["ValuesToDate"] = each_ValuesToDate; + return output; + } + }; + + struct FriendInfo : public PlayFabBaseModel + { + std::string CurrentMatchmakerLobbyId; + Boxed FacebookInfo; + std::string FriendPlayFabId; + Boxed GameCenterInfo; + Boxed Profile; + Boxed SteamInfo; + std::list Tags; + std::string TitleDisplayName; + std::string Username; + + FriendInfo() : + PlayFabBaseModel(), + CurrentMatchmakerLobbyId(), + FacebookInfo(), + FriendPlayFabId(), + GameCenterInfo(), + Profile(), + SteamInfo(), + Tags(), + TitleDisplayName(), + Username() + {} + + FriendInfo(const FriendInfo& src) : + PlayFabBaseModel(), + CurrentMatchmakerLobbyId(src.CurrentMatchmakerLobbyId), + FacebookInfo(src.FacebookInfo), + FriendPlayFabId(src.FriendPlayFabId), + GameCenterInfo(src.GameCenterInfo), + Profile(src.Profile), + SteamInfo(src.SteamInfo), + Tags(src.Tags), + TitleDisplayName(src.TitleDisplayName), + Username(src.Username) + {} + + ~FriendInfo() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CurrentMatchmakerLobbyId"], CurrentMatchmakerLobbyId); + FromJsonUtilO(input["FacebookInfo"], FacebookInfo); + FromJsonUtilS(input["FriendPlayFabId"], FriendPlayFabId); + FromJsonUtilO(input["GameCenterInfo"], GameCenterInfo); + FromJsonUtilO(input["Profile"], Profile); + FromJsonUtilO(input["SteamInfo"], SteamInfo); + FromJsonUtilS(input["Tags"], Tags); + FromJsonUtilS(input["TitleDisplayName"], TitleDisplayName); + FromJsonUtilS(input["Username"], Username); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CurrentMatchmakerLobbyId; ToJsonUtilS(CurrentMatchmakerLobbyId, each_CurrentMatchmakerLobbyId); output["CurrentMatchmakerLobbyId"] = each_CurrentMatchmakerLobbyId; + Json::Value each_FacebookInfo; ToJsonUtilO(FacebookInfo, each_FacebookInfo); output["FacebookInfo"] = each_FacebookInfo; + Json::Value each_FriendPlayFabId; ToJsonUtilS(FriendPlayFabId, each_FriendPlayFabId); output["FriendPlayFabId"] = each_FriendPlayFabId; + Json::Value each_GameCenterInfo; ToJsonUtilO(GameCenterInfo, each_GameCenterInfo); output["GameCenterInfo"] = each_GameCenterInfo; + Json::Value each_Profile; ToJsonUtilO(Profile, each_Profile); output["Profile"] = each_Profile; + Json::Value each_SteamInfo; ToJsonUtilO(SteamInfo, each_SteamInfo); output["SteamInfo"] = each_SteamInfo; + Json::Value each_Tags; ToJsonUtilS(Tags, each_Tags); output["Tags"] = each_Tags; + Json::Value each_TitleDisplayName; ToJsonUtilS(TitleDisplayName, each_TitleDisplayName); output["TitleDisplayName"] = each_TitleDisplayName; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + return output; + } + }; + + struct GetAllSegmentsRequest : public PlayFabRequestCommon + { + + GetAllSegmentsRequest() : + PlayFabRequestCommon() + {} + + GetAllSegmentsRequest(const GetAllSegmentsRequest&) : + PlayFabRequestCommon() + {} + + ~GetAllSegmentsRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct GetSegmentResult : public PlayFabResultCommon + { + std::string ABTestParent; + std::string Id; + std::string Name; + + GetSegmentResult() : + PlayFabResultCommon(), + ABTestParent(), + Id(), + Name() + {} + + GetSegmentResult(const GetSegmentResult& src) : + PlayFabResultCommon(), + ABTestParent(src.ABTestParent), + Id(src.Id), + Name(src.Name) + {} + + ~GetSegmentResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ABTestParent"], ABTestParent); + FromJsonUtilS(input["Id"], Id); + FromJsonUtilS(input["Name"], Name); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ABTestParent; ToJsonUtilS(ABTestParent, each_ABTestParent); output["ABTestParent"] = each_ABTestParent; + Json::Value each_Id; ToJsonUtilS(Id, each_Id); output["Id"] = each_Id; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + return output; + } + }; + + struct GetAllSegmentsResult : public PlayFabResultCommon + { + std::list Segments; + + GetAllSegmentsResult() : + PlayFabResultCommon(), + Segments() + {} + + GetAllSegmentsResult(const GetAllSegmentsResult& src) : + PlayFabResultCommon(), + Segments(src.Segments) + {} + + ~GetAllSegmentsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Segments"], Segments); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Segments; ToJsonUtilO(Segments, each_Segments); output["Segments"] = each_Segments; + return output; + } + }; + + struct GetCatalogItemsRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + + GetCatalogItemsRequest() : + PlayFabRequestCommon(), + CatalogVersion() + {} + + GetCatalogItemsRequest(const GetCatalogItemsRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion) + {} + + ~GetCatalogItemsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + return output; + } + }; + + struct GetCatalogItemsResult : public PlayFabResultCommon + { + std::list Catalog; + + GetCatalogItemsResult() : + PlayFabResultCommon(), + Catalog() + {} + + GetCatalogItemsResult(const GetCatalogItemsResult& src) : + PlayFabResultCommon(), + Catalog(src.Catalog) + {} + + ~GetCatalogItemsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Catalog"], Catalog); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Catalog; ToJsonUtilO(Catalog, each_Catalog); output["Catalog"] = each_Catalog; + return output; + } + }; + + struct GetCharacterDataRequest : public PlayFabRequestCommon + { + std::string CharacterId; + Boxed IfChangedFromDataVersion; + std::list Keys; + std::string PlayFabId; + + GetCharacterDataRequest() : + PlayFabRequestCommon(), + CharacterId(), + IfChangedFromDataVersion(), + Keys(), + PlayFabId() + {} + + GetCharacterDataRequest(const GetCharacterDataRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + IfChangedFromDataVersion(src.IfChangedFromDataVersion), + Keys(src.Keys), + PlayFabId(src.PlayFabId) + {} + + ~GetCharacterDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilP(input["IfChangedFromDataVersion"], IfChangedFromDataVersion); + FromJsonUtilS(input["Keys"], Keys); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_IfChangedFromDataVersion; ToJsonUtilP(IfChangedFromDataVersion, each_IfChangedFromDataVersion); output["IfChangedFromDataVersion"] = each_IfChangedFromDataVersion; + Json::Value each_Keys; ToJsonUtilS(Keys, each_Keys); output["Keys"] = each_Keys; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct UserDataRecord : public PlayFabBaseModel + { + time_t LastUpdated; + Boxed Permission; + std::string Value; + + UserDataRecord() : + PlayFabBaseModel(), + LastUpdated(), + Permission(), + Value() + {} + + UserDataRecord(const UserDataRecord& src) : + PlayFabBaseModel(), + LastUpdated(src.LastUpdated), + Permission(src.Permission), + Value(src.Value) + {} + + ~UserDataRecord() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["LastUpdated"], LastUpdated); + FromJsonUtilE(input["Permission"], Permission); + FromJsonUtilS(input["Value"], Value); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LastUpdated; ToJsonUtilT(LastUpdated, each_LastUpdated); output["LastUpdated"] = each_LastUpdated; + Json::Value each_Permission; ToJsonUtilE(Permission, each_Permission); output["Permission"] = each_Permission; + Json::Value each_Value; ToJsonUtilS(Value, each_Value); output["Value"] = each_Value; + return output; + } + }; + + struct GetCharacterDataResult : public PlayFabResultCommon + { + std::string CharacterId; + std::map Data; + Uint32 DataVersion; + std::string PlayFabId; + + GetCharacterDataResult() : + PlayFabResultCommon(), + CharacterId(), + Data(), + DataVersion(), + PlayFabId() + {} + + GetCharacterDataResult(const GetCharacterDataResult& src) : + PlayFabResultCommon(), + CharacterId(src.CharacterId), + Data(src.Data), + DataVersion(src.DataVersion), + PlayFabId(src.PlayFabId) + {} + + ~GetCharacterDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilO(input["Data"], Data); + FromJsonUtilP(input["DataVersion"], DataVersion); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_Data; ToJsonUtilO(Data, each_Data); output["Data"] = each_Data; + Json::Value each_DataVersion; ToJsonUtilP(DataVersion, each_DataVersion); output["DataVersion"] = each_DataVersion; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetCharacterInventoryRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::string CharacterId; + std::string PlayFabId; + + GetCharacterInventoryRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + CharacterId(), + PlayFabId() + {} + + GetCharacterInventoryRequest(const GetCharacterInventoryRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + CharacterId(src.CharacterId), + PlayFabId(src.PlayFabId) + {} + + ~GetCharacterInventoryRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct VirtualCurrencyRechargeTime : public PlayFabBaseModel + { + Int32 RechargeMax; + time_t RechargeTime; + Int32 SecondsToRecharge; + + VirtualCurrencyRechargeTime() : + PlayFabBaseModel(), + RechargeMax(), + RechargeTime(), + SecondsToRecharge() + {} + + VirtualCurrencyRechargeTime(const VirtualCurrencyRechargeTime& src) : + PlayFabBaseModel(), + RechargeMax(src.RechargeMax), + RechargeTime(src.RechargeTime), + SecondsToRecharge(src.SecondsToRecharge) + {} + + ~VirtualCurrencyRechargeTime() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["RechargeMax"], RechargeMax); + FromJsonUtilT(input["RechargeTime"], RechargeTime); + FromJsonUtilP(input["SecondsToRecharge"], SecondsToRecharge); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_RechargeMax; ToJsonUtilP(RechargeMax, each_RechargeMax); output["RechargeMax"] = each_RechargeMax; + Json::Value each_RechargeTime; ToJsonUtilT(RechargeTime, each_RechargeTime); output["RechargeTime"] = each_RechargeTime; + Json::Value each_SecondsToRecharge; ToJsonUtilP(SecondsToRecharge, each_SecondsToRecharge); output["SecondsToRecharge"] = each_SecondsToRecharge; + return output; + } + }; + + struct GetCharacterInventoryResult : public PlayFabResultCommon + { + std::string CharacterId; + std::list Inventory; + std::string PlayFabId; + std::map VirtualCurrency; + std::map VirtualCurrencyRechargeTimes; + + GetCharacterInventoryResult() : + PlayFabResultCommon(), + CharacterId(), + Inventory(), + PlayFabId(), + VirtualCurrency(), + VirtualCurrencyRechargeTimes() + {} + + GetCharacterInventoryResult(const GetCharacterInventoryResult& src) : + PlayFabResultCommon(), + CharacterId(src.CharacterId), + Inventory(src.Inventory), + PlayFabId(src.PlayFabId), + VirtualCurrency(src.VirtualCurrency), + VirtualCurrencyRechargeTimes(src.VirtualCurrencyRechargeTimes) + {} + + ~GetCharacterInventoryResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilO(input["Inventory"], Inventory); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilP(input["VirtualCurrency"], VirtualCurrency); + FromJsonUtilO(input["VirtualCurrencyRechargeTimes"], VirtualCurrencyRechargeTimes); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_Inventory; ToJsonUtilO(Inventory, each_Inventory); output["Inventory"] = each_Inventory; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_VirtualCurrency; ToJsonUtilP(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + Json::Value each_VirtualCurrencyRechargeTimes; ToJsonUtilO(VirtualCurrencyRechargeTimes, each_VirtualCurrencyRechargeTimes); output["VirtualCurrencyRechargeTimes"] = each_VirtualCurrencyRechargeTimes; + return output; + } + }; + + struct GetCharacterLeaderboardRequest : public PlayFabRequestCommon + { + std::string CharacterId; + std::string CharacterType; + Int32 MaxResultsCount; + Int32 StartPosition; + std::string StatisticName; + + GetCharacterLeaderboardRequest() : + PlayFabRequestCommon(), + CharacterId(), + CharacterType(), + MaxResultsCount(), + StartPosition(), + StatisticName() + {} + + GetCharacterLeaderboardRequest(const GetCharacterLeaderboardRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + CharacterType(src.CharacterType), + MaxResultsCount(src.MaxResultsCount), + StartPosition(src.StartPosition), + StatisticName(src.StatisticName) + {} + + ~GetCharacterLeaderboardRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["CharacterType"], CharacterType); + FromJsonUtilP(input["MaxResultsCount"], MaxResultsCount); + FromJsonUtilP(input["StartPosition"], StartPosition); + FromJsonUtilS(input["StatisticName"], StatisticName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_CharacterType; ToJsonUtilS(CharacterType, each_CharacterType); output["CharacterType"] = each_CharacterType; + Json::Value each_MaxResultsCount; ToJsonUtilP(MaxResultsCount, each_MaxResultsCount); output["MaxResultsCount"] = each_MaxResultsCount; + Json::Value each_StartPosition; ToJsonUtilP(StartPosition, each_StartPosition); output["StartPosition"] = each_StartPosition; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + return output; + } + }; + + struct GetCharacterLeaderboardResult : public PlayFabResultCommon + { + std::list Leaderboard; + + GetCharacterLeaderboardResult() : + PlayFabResultCommon(), + Leaderboard() + {} + + GetCharacterLeaderboardResult(const GetCharacterLeaderboardResult& src) : + PlayFabResultCommon(), + Leaderboard(src.Leaderboard) + {} + + ~GetCharacterLeaderboardResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Leaderboard"], Leaderboard); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Leaderboard; ToJsonUtilO(Leaderboard, each_Leaderboard); output["Leaderboard"] = each_Leaderboard; + return output; + } + }; + + struct GetCharacterStatisticsRequest : public PlayFabRequestCommon + { + std::string CharacterId; + std::string PlayFabId; + + GetCharacterStatisticsRequest() : + PlayFabRequestCommon(), + CharacterId(), + PlayFabId() + {} + + GetCharacterStatisticsRequest(const GetCharacterStatisticsRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + PlayFabId(src.PlayFabId) + {} + + ~GetCharacterStatisticsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetCharacterStatisticsResult : public PlayFabResultCommon + { + std::string CharacterId; + std::map CharacterStatistics; + std::string PlayFabId; + + GetCharacterStatisticsResult() : + PlayFabResultCommon(), + CharacterId(), + CharacterStatistics(), + PlayFabId() + {} + + GetCharacterStatisticsResult(const GetCharacterStatisticsResult& src) : + PlayFabResultCommon(), + CharacterId(src.CharacterId), + CharacterStatistics(src.CharacterStatistics), + PlayFabId(src.PlayFabId) + {} + + ~GetCharacterStatisticsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilP(input["CharacterStatistics"], CharacterStatistics); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_CharacterStatistics; ToJsonUtilP(CharacterStatistics, each_CharacterStatistics); output["CharacterStatistics"] = each_CharacterStatistics; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetContentDownloadUrlRequest : public PlayFabRequestCommon + { + std::string HttpMethod; + std::string Key; + Boxed ThruCDN; + + GetContentDownloadUrlRequest() : + PlayFabRequestCommon(), + HttpMethod(), + Key(), + ThruCDN() + {} + + GetContentDownloadUrlRequest(const GetContentDownloadUrlRequest& src) : + PlayFabRequestCommon(), + HttpMethod(src.HttpMethod), + Key(src.Key), + ThruCDN(src.ThruCDN) + {} + + ~GetContentDownloadUrlRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["HttpMethod"], HttpMethod); + FromJsonUtilS(input["Key"], Key); + FromJsonUtilP(input["ThruCDN"], ThruCDN); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_HttpMethod; ToJsonUtilS(HttpMethod, each_HttpMethod); output["HttpMethod"] = each_HttpMethod; + Json::Value each_Key; ToJsonUtilS(Key, each_Key); output["Key"] = each_Key; + Json::Value each_ThruCDN; ToJsonUtilP(ThruCDN, each_ThruCDN); output["ThruCDN"] = each_ThruCDN; + return output; + } + }; + + struct GetContentDownloadUrlResult : public PlayFabResultCommon + { + std::string URL; + + GetContentDownloadUrlResult() : + PlayFabResultCommon(), + URL() + {} + + GetContentDownloadUrlResult(const GetContentDownloadUrlResult& src) : + PlayFabResultCommon(), + URL(src.URL) + {} + + ~GetContentDownloadUrlResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["URL"], URL); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_URL; ToJsonUtilS(URL, each_URL); output["URL"] = each_URL; + return output; + } + }; + + struct PlayerProfileViewConstraints : public PlayFabBaseModel + { + bool ShowAvatarUrl; + bool ShowBannedUntil; + bool ShowCampaignAttributions; + bool ShowContactEmailAddresses; + bool ShowCreated; + bool ShowDisplayName; + bool ShowLastLogin; + bool ShowLinkedAccounts; + bool ShowLocations; + bool ShowMemberships; + bool ShowOrigination; + bool ShowPushNotificationRegistrations; + bool ShowStatistics; + bool ShowTags; + bool ShowTotalValueToDateInUsd; + bool ShowValuesToDate; + + PlayerProfileViewConstraints() : + PlayFabBaseModel(), + ShowAvatarUrl(), + ShowBannedUntil(), + ShowCampaignAttributions(), + ShowContactEmailAddresses(), + ShowCreated(), + ShowDisplayName(), + ShowLastLogin(), + ShowLinkedAccounts(), + ShowLocations(), + ShowMemberships(), + ShowOrigination(), + ShowPushNotificationRegistrations(), + ShowStatistics(), + ShowTags(), + ShowTotalValueToDateInUsd(), + ShowValuesToDate() + {} + + PlayerProfileViewConstraints(const PlayerProfileViewConstraints& src) : + PlayFabBaseModel(), + ShowAvatarUrl(src.ShowAvatarUrl), + ShowBannedUntil(src.ShowBannedUntil), + ShowCampaignAttributions(src.ShowCampaignAttributions), + ShowContactEmailAddresses(src.ShowContactEmailAddresses), + ShowCreated(src.ShowCreated), + ShowDisplayName(src.ShowDisplayName), + ShowLastLogin(src.ShowLastLogin), + ShowLinkedAccounts(src.ShowLinkedAccounts), + ShowLocations(src.ShowLocations), + ShowMemberships(src.ShowMemberships), + ShowOrigination(src.ShowOrigination), + ShowPushNotificationRegistrations(src.ShowPushNotificationRegistrations), + ShowStatistics(src.ShowStatistics), + ShowTags(src.ShowTags), + ShowTotalValueToDateInUsd(src.ShowTotalValueToDateInUsd), + ShowValuesToDate(src.ShowValuesToDate) + {} + + ~PlayerProfileViewConstraints() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["ShowAvatarUrl"], ShowAvatarUrl); + FromJsonUtilP(input["ShowBannedUntil"], ShowBannedUntil); + FromJsonUtilP(input["ShowCampaignAttributions"], ShowCampaignAttributions); + FromJsonUtilP(input["ShowContactEmailAddresses"], ShowContactEmailAddresses); + FromJsonUtilP(input["ShowCreated"], ShowCreated); + FromJsonUtilP(input["ShowDisplayName"], ShowDisplayName); + FromJsonUtilP(input["ShowLastLogin"], ShowLastLogin); + FromJsonUtilP(input["ShowLinkedAccounts"], ShowLinkedAccounts); + FromJsonUtilP(input["ShowLocations"], ShowLocations); + FromJsonUtilP(input["ShowMemberships"], ShowMemberships); + FromJsonUtilP(input["ShowOrigination"], ShowOrigination); + FromJsonUtilP(input["ShowPushNotificationRegistrations"], ShowPushNotificationRegistrations); + FromJsonUtilP(input["ShowStatistics"], ShowStatistics); + FromJsonUtilP(input["ShowTags"], ShowTags); + FromJsonUtilP(input["ShowTotalValueToDateInUsd"], ShowTotalValueToDateInUsd); + FromJsonUtilP(input["ShowValuesToDate"], ShowValuesToDate); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ShowAvatarUrl; ToJsonUtilP(ShowAvatarUrl, each_ShowAvatarUrl); output["ShowAvatarUrl"] = each_ShowAvatarUrl; + Json::Value each_ShowBannedUntil; ToJsonUtilP(ShowBannedUntil, each_ShowBannedUntil); output["ShowBannedUntil"] = each_ShowBannedUntil; + Json::Value each_ShowCampaignAttributions; ToJsonUtilP(ShowCampaignAttributions, each_ShowCampaignAttributions); output["ShowCampaignAttributions"] = each_ShowCampaignAttributions; + Json::Value each_ShowContactEmailAddresses; ToJsonUtilP(ShowContactEmailAddresses, each_ShowContactEmailAddresses); output["ShowContactEmailAddresses"] = each_ShowContactEmailAddresses; + Json::Value each_ShowCreated; ToJsonUtilP(ShowCreated, each_ShowCreated); output["ShowCreated"] = each_ShowCreated; + Json::Value each_ShowDisplayName; ToJsonUtilP(ShowDisplayName, each_ShowDisplayName); output["ShowDisplayName"] = each_ShowDisplayName; + Json::Value each_ShowLastLogin; ToJsonUtilP(ShowLastLogin, each_ShowLastLogin); output["ShowLastLogin"] = each_ShowLastLogin; + Json::Value each_ShowLinkedAccounts; ToJsonUtilP(ShowLinkedAccounts, each_ShowLinkedAccounts); output["ShowLinkedAccounts"] = each_ShowLinkedAccounts; + Json::Value each_ShowLocations; ToJsonUtilP(ShowLocations, each_ShowLocations); output["ShowLocations"] = each_ShowLocations; + Json::Value each_ShowMemberships; ToJsonUtilP(ShowMemberships, each_ShowMemberships); output["ShowMemberships"] = each_ShowMemberships; + Json::Value each_ShowOrigination; ToJsonUtilP(ShowOrigination, each_ShowOrigination); output["ShowOrigination"] = each_ShowOrigination; + Json::Value each_ShowPushNotificationRegistrations; ToJsonUtilP(ShowPushNotificationRegistrations, each_ShowPushNotificationRegistrations); output["ShowPushNotificationRegistrations"] = each_ShowPushNotificationRegistrations; + Json::Value each_ShowStatistics; ToJsonUtilP(ShowStatistics, each_ShowStatistics); output["ShowStatistics"] = each_ShowStatistics; + Json::Value each_ShowTags; ToJsonUtilP(ShowTags, each_ShowTags); output["ShowTags"] = each_ShowTags; + Json::Value each_ShowTotalValueToDateInUsd; ToJsonUtilP(ShowTotalValueToDateInUsd, each_ShowTotalValueToDateInUsd); output["ShowTotalValueToDateInUsd"] = each_ShowTotalValueToDateInUsd; + Json::Value each_ShowValuesToDate; ToJsonUtilP(ShowValuesToDate, each_ShowValuesToDate); output["ShowValuesToDate"] = each_ShowValuesToDate; + return output; + } + }; + + struct GetFriendLeaderboardRequest : public PlayFabRequestCommon + { + Boxed IncludeFacebookFriends; + Boxed IncludeSteamFriends; + Int32 MaxResultsCount; + std::string PlayFabId; + Boxed ProfileConstraints; + Int32 StartPosition; + std::string StatisticName; + Boxed Version; + + GetFriendLeaderboardRequest() : + PlayFabRequestCommon(), + IncludeFacebookFriends(), + IncludeSteamFriends(), + MaxResultsCount(), + PlayFabId(), + ProfileConstraints(), + StartPosition(), + StatisticName(), + Version() + {} + + GetFriendLeaderboardRequest(const GetFriendLeaderboardRequest& src) : + PlayFabRequestCommon(), + IncludeFacebookFriends(src.IncludeFacebookFriends), + IncludeSteamFriends(src.IncludeSteamFriends), + MaxResultsCount(src.MaxResultsCount), + PlayFabId(src.PlayFabId), + ProfileConstraints(src.ProfileConstraints), + StartPosition(src.StartPosition), + StatisticName(src.StatisticName), + Version(src.Version) + {} + + ~GetFriendLeaderboardRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["IncludeFacebookFriends"], IncludeFacebookFriends); + FromJsonUtilP(input["IncludeSteamFriends"], IncludeSteamFriends); + FromJsonUtilP(input["MaxResultsCount"], MaxResultsCount); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilO(input["ProfileConstraints"], ProfileConstraints); + FromJsonUtilP(input["StartPosition"], StartPosition); + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_IncludeFacebookFriends; ToJsonUtilP(IncludeFacebookFriends, each_IncludeFacebookFriends); output["IncludeFacebookFriends"] = each_IncludeFacebookFriends; + Json::Value each_IncludeSteamFriends; ToJsonUtilP(IncludeSteamFriends, each_IncludeSteamFriends); output["IncludeSteamFriends"] = each_IncludeSteamFriends; + Json::Value each_MaxResultsCount; ToJsonUtilP(MaxResultsCount, each_MaxResultsCount); output["MaxResultsCount"] = each_MaxResultsCount; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_ProfileConstraints; ToJsonUtilO(ProfileConstraints, each_ProfileConstraints); output["ProfileConstraints"] = each_ProfileConstraints; + Json::Value each_StartPosition; ToJsonUtilP(StartPosition, each_StartPosition); output["StartPosition"] = each_StartPosition; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetFriendsListRequest : public PlayFabRequestCommon + { + Boxed IncludeFacebookFriends; + Boxed IncludeSteamFriends; + std::string PlayFabId; + Boxed ProfileConstraints; + + GetFriendsListRequest() : + PlayFabRequestCommon(), + IncludeFacebookFriends(), + IncludeSteamFriends(), + PlayFabId(), + ProfileConstraints() + {} + + GetFriendsListRequest(const GetFriendsListRequest& src) : + PlayFabRequestCommon(), + IncludeFacebookFriends(src.IncludeFacebookFriends), + IncludeSteamFriends(src.IncludeSteamFriends), + PlayFabId(src.PlayFabId), + ProfileConstraints(src.ProfileConstraints) + {} + + ~GetFriendsListRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["IncludeFacebookFriends"], IncludeFacebookFriends); + FromJsonUtilP(input["IncludeSteamFriends"], IncludeSteamFriends); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilO(input["ProfileConstraints"], ProfileConstraints); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_IncludeFacebookFriends; ToJsonUtilP(IncludeFacebookFriends, each_IncludeFacebookFriends); output["IncludeFacebookFriends"] = each_IncludeFacebookFriends; + Json::Value each_IncludeSteamFriends; ToJsonUtilP(IncludeSteamFriends, each_IncludeSteamFriends); output["IncludeSteamFriends"] = each_IncludeSteamFriends; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_ProfileConstraints; ToJsonUtilO(ProfileConstraints, each_ProfileConstraints); output["ProfileConstraints"] = each_ProfileConstraints; + return output; + } + }; + + struct GetFriendsListResult : public PlayFabResultCommon + { + std::list Friends; + + GetFriendsListResult() : + PlayFabResultCommon(), + Friends() + {} + + GetFriendsListResult(const GetFriendsListResult& src) : + PlayFabResultCommon(), + Friends(src.Friends) + {} + + ~GetFriendsListResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Friends"], Friends); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Friends; ToJsonUtilO(Friends, each_Friends); output["Friends"] = each_Friends; + return output; + } + }; + + struct GetLeaderboardAroundCharacterRequest : public PlayFabRequestCommon + { + std::string CharacterId; + std::string CharacterType; + Int32 MaxResultsCount; + std::string PlayFabId; + std::string StatisticName; + + GetLeaderboardAroundCharacterRequest() : + PlayFabRequestCommon(), + CharacterId(), + CharacterType(), + MaxResultsCount(), + PlayFabId(), + StatisticName() + {} + + GetLeaderboardAroundCharacterRequest(const GetLeaderboardAroundCharacterRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + CharacterType(src.CharacterType), + MaxResultsCount(src.MaxResultsCount), + PlayFabId(src.PlayFabId), + StatisticName(src.StatisticName) + {} + + ~GetLeaderboardAroundCharacterRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["CharacterType"], CharacterType); + FromJsonUtilP(input["MaxResultsCount"], MaxResultsCount); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["StatisticName"], StatisticName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_CharacterType; ToJsonUtilS(CharacterType, each_CharacterType); output["CharacterType"] = each_CharacterType; + Json::Value each_MaxResultsCount; ToJsonUtilP(MaxResultsCount, each_MaxResultsCount); output["MaxResultsCount"] = each_MaxResultsCount; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + return output; + } + }; + + struct GetLeaderboardAroundCharacterResult : public PlayFabResultCommon + { + std::list Leaderboard; + + GetLeaderboardAroundCharacterResult() : + PlayFabResultCommon(), + Leaderboard() + {} + + GetLeaderboardAroundCharacterResult(const GetLeaderboardAroundCharacterResult& src) : + PlayFabResultCommon(), + Leaderboard(src.Leaderboard) + {} + + ~GetLeaderboardAroundCharacterResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Leaderboard"], Leaderboard); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Leaderboard; ToJsonUtilO(Leaderboard, each_Leaderboard); output["Leaderboard"] = each_Leaderboard; + return output; + } + }; + + struct GetLeaderboardAroundUserRequest : public PlayFabRequestCommon + { + Int32 MaxResultsCount; + std::string PlayFabId; + Boxed ProfileConstraints; + std::string StatisticName; + Boxed Version; + + GetLeaderboardAroundUserRequest() : + PlayFabRequestCommon(), + MaxResultsCount(), + PlayFabId(), + ProfileConstraints(), + StatisticName(), + Version() + {} + + GetLeaderboardAroundUserRequest(const GetLeaderboardAroundUserRequest& src) : + PlayFabRequestCommon(), + MaxResultsCount(src.MaxResultsCount), + PlayFabId(src.PlayFabId), + ProfileConstraints(src.ProfileConstraints), + StatisticName(src.StatisticName), + Version(src.Version) + {} + + ~GetLeaderboardAroundUserRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["MaxResultsCount"], MaxResultsCount); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilO(input["ProfileConstraints"], ProfileConstraints); + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_MaxResultsCount; ToJsonUtilP(MaxResultsCount, each_MaxResultsCount); output["MaxResultsCount"] = each_MaxResultsCount; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_ProfileConstraints; ToJsonUtilO(ProfileConstraints, each_ProfileConstraints); output["ProfileConstraints"] = each_ProfileConstraints; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct PlayerLeaderboardEntry : public PlayFabBaseModel + { + std::string DisplayName; + std::string PlayFabId; + Int32 Position; + Boxed Profile; + Int32 StatValue; + + PlayerLeaderboardEntry() : + PlayFabBaseModel(), + DisplayName(), + PlayFabId(), + Position(), + Profile(), + StatValue() + {} + + PlayerLeaderboardEntry(const PlayerLeaderboardEntry& src) : + PlayFabBaseModel(), + DisplayName(src.DisplayName), + PlayFabId(src.PlayFabId), + Position(src.Position), + Profile(src.Profile), + StatValue(src.StatValue) + {} + + ~PlayerLeaderboardEntry() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilP(input["Position"], Position); + FromJsonUtilO(input["Profile"], Profile); + FromJsonUtilP(input["StatValue"], StatValue); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Position; ToJsonUtilP(Position, each_Position); output["Position"] = each_Position; + Json::Value each_Profile; ToJsonUtilO(Profile, each_Profile); output["Profile"] = each_Profile; + Json::Value each_StatValue; ToJsonUtilP(StatValue, each_StatValue); output["StatValue"] = each_StatValue; + return output; + } + }; + + struct GetLeaderboardAroundUserResult : public PlayFabResultCommon + { + std::list Leaderboard; + Boxed NextReset; + Int32 Version; + + GetLeaderboardAroundUserResult() : + PlayFabResultCommon(), + Leaderboard(), + NextReset(), + Version() + {} + + GetLeaderboardAroundUserResult(const GetLeaderboardAroundUserResult& src) : + PlayFabResultCommon(), + Leaderboard(src.Leaderboard), + NextReset(src.NextReset), + Version(src.Version) + {} + + ~GetLeaderboardAroundUserResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Leaderboard"], Leaderboard); + FromJsonUtilT(input["NextReset"], NextReset); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Leaderboard; ToJsonUtilO(Leaderboard, each_Leaderboard); output["Leaderboard"] = each_Leaderboard; + Json::Value each_NextReset; ToJsonUtilT(NextReset, each_NextReset); output["NextReset"] = each_NextReset; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetLeaderboardForUsersCharactersRequest : public PlayFabRequestCommon + { + Int32 MaxResultsCount; + std::string PlayFabId; + std::string StatisticName; + + GetLeaderboardForUsersCharactersRequest() : + PlayFabRequestCommon(), + MaxResultsCount(), + PlayFabId(), + StatisticName() + {} + + GetLeaderboardForUsersCharactersRequest(const GetLeaderboardForUsersCharactersRequest& src) : + PlayFabRequestCommon(), + MaxResultsCount(src.MaxResultsCount), + PlayFabId(src.PlayFabId), + StatisticName(src.StatisticName) + {} + + ~GetLeaderboardForUsersCharactersRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["MaxResultsCount"], MaxResultsCount); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["StatisticName"], StatisticName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_MaxResultsCount; ToJsonUtilP(MaxResultsCount, each_MaxResultsCount); output["MaxResultsCount"] = each_MaxResultsCount; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + return output; + } + }; + + struct GetLeaderboardForUsersCharactersResult : public PlayFabResultCommon + { + std::list Leaderboard; + + GetLeaderboardForUsersCharactersResult() : + PlayFabResultCommon(), + Leaderboard() + {} + + GetLeaderboardForUsersCharactersResult(const GetLeaderboardForUsersCharactersResult& src) : + PlayFabResultCommon(), + Leaderboard(src.Leaderboard) + {} + + ~GetLeaderboardForUsersCharactersResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Leaderboard"], Leaderboard); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Leaderboard; ToJsonUtilO(Leaderboard, each_Leaderboard); output["Leaderboard"] = each_Leaderboard; + return output; + } + }; + + struct GetLeaderboardRequest : public PlayFabRequestCommon + { + Int32 MaxResultsCount; + Boxed ProfileConstraints; + Int32 StartPosition; + std::string StatisticName; + Boxed Version; + + GetLeaderboardRequest() : + PlayFabRequestCommon(), + MaxResultsCount(), + ProfileConstraints(), + StartPosition(), + StatisticName(), + Version() + {} + + GetLeaderboardRequest(const GetLeaderboardRequest& src) : + PlayFabRequestCommon(), + MaxResultsCount(src.MaxResultsCount), + ProfileConstraints(src.ProfileConstraints), + StartPosition(src.StartPosition), + StatisticName(src.StatisticName), + Version(src.Version) + {} + + ~GetLeaderboardRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["MaxResultsCount"], MaxResultsCount); + FromJsonUtilO(input["ProfileConstraints"], ProfileConstraints); + FromJsonUtilP(input["StartPosition"], StartPosition); + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_MaxResultsCount; ToJsonUtilP(MaxResultsCount, each_MaxResultsCount); output["MaxResultsCount"] = each_MaxResultsCount; + Json::Value each_ProfileConstraints; ToJsonUtilO(ProfileConstraints, each_ProfileConstraints); output["ProfileConstraints"] = each_ProfileConstraints; + Json::Value each_StartPosition; ToJsonUtilP(StartPosition, each_StartPosition); output["StartPosition"] = each_StartPosition; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetLeaderboardResult : public PlayFabResultCommon + { + std::list Leaderboard; + Boxed NextReset; + Int32 Version; + + GetLeaderboardResult() : + PlayFabResultCommon(), + Leaderboard(), + NextReset(), + Version() + {} + + GetLeaderboardResult(const GetLeaderboardResult& src) : + PlayFabResultCommon(), + Leaderboard(src.Leaderboard), + NextReset(src.NextReset), + Version(src.Version) + {} + + ~GetLeaderboardResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Leaderboard"], Leaderboard); + FromJsonUtilT(input["NextReset"], NextReset); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Leaderboard; ToJsonUtilO(Leaderboard, each_Leaderboard); output["Leaderboard"] = each_Leaderboard; + Json::Value each_NextReset; ToJsonUtilT(NextReset, each_NextReset); output["NextReset"] = each_NextReset; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetPlayerCombinedInfoRequestParams : public PlayFabBaseModel + { + bool GetCharacterInventories; + bool GetCharacterList; + bool GetPlayerProfile; + bool GetPlayerStatistics; + bool GetTitleData; + bool GetUserAccountInfo; + bool GetUserData; + bool GetUserInventory; + bool GetUserReadOnlyData; + bool GetUserVirtualCurrency; + std::list PlayerStatisticNames; + Boxed ProfileConstraints; + std::list TitleDataKeys; + std::list UserDataKeys; + std::list UserReadOnlyDataKeys; + + GetPlayerCombinedInfoRequestParams() : + PlayFabBaseModel(), + GetCharacterInventories(), + GetCharacterList(), + GetPlayerProfile(), + GetPlayerStatistics(), + GetTitleData(), + GetUserAccountInfo(), + GetUserData(), + GetUserInventory(), + GetUserReadOnlyData(), + GetUserVirtualCurrency(), + PlayerStatisticNames(), + ProfileConstraints(), + TitleDataKeys(), + UserDataKeys(), + UserReadOnlyDataKeys() + {} + + GetPlayerCombinedInfoRequestParams(const GetPlayerCombinedInfoRequestParams& src) : + PlayFabBaseModel(), + GetCharacterInventories(src.GetCharacterInventories), + GetCharacterList(src.GetCharacterList), + GetPlayerProfile(src.GetPlayerProfile), + GetPlayerStatistics(src.GetPlayerStatistics), + GetTitleData(src.GetTitleData), + GetUserAccountInfo(src.GetUserAccountInfo), + GetUserData(src.GetUserData), + GetUserInventory(src.GetUserInventory), + GetUserReadOnlyData(src.GetUserReadOnlyData), + GetUserVirtualCurrency(src.GetUserVirtualCurrency), + PlayerStatisticNames(src.PlayerStatisticNames), + ProfileConstraints(src.ProfileConstraints), + TitleDataKeys(src.TitleDataKeys), + UserDataKeys(src.UserDataKeys), + UserReadOnlyDataKeys(src.UserReadOnlyDataKeys) + {} + + ~GetPlayerCombinedInfoRequestParams() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["GetCharacterInventories"], GetCharacterInventories); + FromJsonUtilP(input["GetCharacterList"], GetCharacterList); + FromJsonUtilP(input["GetPlayerProfile"], GetPlayerProfile); + FromJsonUtilP(input["GetPlayerStatistics"], GetPlayerStatistics); + FromJsonUtilP(input["GetTitleData"], GetTitleData); + FromJsonUtilP(input["GetUserAccountInfo"], GetUserAccountInfo); + FromJsonUtilP(input["GetUserData"], GetUserData); + FromJsonUtilP(input["GetUserInventory"], GetUserInventory); + FromJsonUtilP(input["GetUserReadOnlyData"], GetUserReadOnlyData); + FromJsonUtilP(input["GetUserVirtualCurrency"], GetUserVirtualCurrency); + FromJsonUtilS(input["PlayerStatisticNames"], PlayerStatisticNames); + FromJsonUtilO(input["ProfileConstraints"], ProfileConstraints); + FromJsonUtilS(input["TitleDataKeys"], TitleDataKeys); + FromJsonUtilS(input["UserDataKeys"], UserDataKeys); + FromJsonUtilS(input["UserReadOnlyDataKeys"], UserReadOnlyDataKeys); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GetCharacterInventories; ToJsonUtilP(GetCharacterInventories, each_GetCharacterInventories); output["GetCharacterInventories"] = each_GetCharacterInventories; + Json::Value each_GetCharacterList; ToJsonUtilP(GetCharacterList, each_GetCharacterList); output["GetCharacterList"] = each_GetCharacterList; + Json::Value each_GetPlayerProfile; ToJsonUtilP(GetPlayerProfile, each_GetPlayerProfile); output["GetPlayerProfile"] = each_GetPlayerProfile; + Json::Value each_GetPlayerStatistics; ToJsonUtilP(GetPlayerStatistics, each_GetPlayerStatistics); output["GetPlayerStatistics"] = each_GetPlayerStatistics; + Json::Value each_GetTitleData; ToJsonUtilP(GetTitleData, each_GetTitleData); output["GetTitleData"] = each_GetTitleData; + Json::Value each_GetUserAccountInfo; ToJsonUtilP(GetUserAccountInfo, each_GetUserAccountInfo); output["GetUserAccountInfo"] = each_GetUserAccountInfo; + Json::Value each_GetUserData; ToJsonUtilP(GetUserData, each_GetUserData); output["GetUserData"] = each_GetUserData; + Json::Value each_GetUserInventory; ToJsonUtilP(GetUserInventory, each_GetUserInventory); output["GetUserInventory"] = each_GetUserInventory; + Json::Value each_GetUserReadOnlyData; ToJsonUtilP(GetUserReadOnlyData, each_GetUserReadOnlyData); output["GetUserReadOnlyData"] = each_GetUserReadOnlyData; + Json::Value each_GetUserVirtualCurrency; ToJsonUtilP(GetUserVirtualCurrency, each_GetUserVirtualCurrency); output["GetUserVirtualCurrency"] = each_GetUserVirtualCurrency; + Json::Value each_PlayerStatisticNames; ToJsonUtilS(PlayerStatisticNames, each_PlayerStatisticNames); output["PlayerStatisticNames"] = each_PlayerStatisticNames; + Json::Value each_ProfileConstraints; ToJsonUtilO(ProfileConstraints, each_ProfileConstraints); output["ProfileConstraints"] = each_ProfileConstraints; + Json::Value each_TitleDataKeys; ToJsonUtilS(TitleDataKeys, each_TitleDataKeys); output["TitleDataKeys"] = each_TitleDataKeys; + Json::Value each_UserDataKeys; ToJsonUtilS(UserDataKeys, each_UserDataKeys); output["UserDataKeys"] = each_UserDataKeys; + Json::Value each_UserReadOnlyDataKeys; ToJsonUtilS(UserReadOnlyDataKeys, each_UserReadOnlyDataKeys); output["UserReadOnlyDataKeys"] = each_UserReadOnlyDataKeys; + return output; + } + }; + + struct GetPlayerCombinedInfoRequest : public PlayFabRequestCommon + { + GetPlayerCombinedInfoRequestParams InfoRequestParameters; + std::string PlayFabId; + + GetPlayerCombinedInfoRequest() : + PlayFabRequestCommon(), + InfoRequestParameters(), + PlayFabId() + {} + + GetPlayerCombinedInfoRequest(const GetPlayerCombinedInfoRequest& src) : + PlayFabRequestCommon(), + InfoRequestParameters(src.InfoRequestParameters), + PlayFabId(src.PlayFabId) + {} + + ~GetPlayerCombinedInfoRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["InfoRequestParameters"], InfoRequestParameters); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_InfoRequestParameters; ToJsonUtilO(InfoRequestParameters, each_InfoRequestParameters); output["InfoRequestParameters"] = each_InfoRequestParameters; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct StatisticValue : public PlayFabBaseModel + { + std::string StatisticName; + Int32 Value; + Uint32 Version; + + StatisticValue() : + PlayFabBaseModel(), + StatisticName(), + Value(), + Version() + {} + + StatisticValue(const StatisticValue& src) : + PlayFabBaseModel(), + StatisticName(src.StatisticName), + Value(src.Value), + Version(src.Version) + {} + + ~StatisticValue() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilP(input["Value"], Value); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_Value; ToJsonUtilP(Value, each_Value); output["Value"] = each_Value; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetPlayerCombinedInfoResultPayload : public PlayFabBaseModel + { + Boxed AccountInfo; + std::list CharacterInventories; + std::list CharacterList; + Boxed PlayerProfile; + std::list PlayerStatistics; + std::map TitleData; + std::map UserData; + Uint32 UserDataVersion; + std::list UserInventory; + std::map UserReadOnlyData; + Uint32 UserReadOnlyDataVersion; + std::map UserVirtualCurrency; + std::map UserVirtualCurrencyRechargeTimes; + + GetPlayerCombinedInfoResultPayload() : + PlayFabBaseModel(), + AccountInfo(), + CharacterInventories(), + CharacterList(), + PlayerProfile(), + PlayerStatistics(), + TitleData(), + UserData(), + UserDataVersion(), + UserInventory(), + UserReadOnlyData(), + UserReadOnlyDataVersion(), + UserVirtualCurrency(), + UserVirtualCurrencyRechargeTimes() + {} + + GetPlayerCombinedInfoResultPayload(const GetPlayerCombinedInfoResultPayload& src) : + PlayFabBaseModel(), + AccountInfo(src.AccountInfo), + CharacterInventories(src.CharacterInventories), + CharacterList(src.CharacterList), + PlayerProfile(src.PlayerProfile), + PlayerStatistics(src.PlayerStatistics), + TitleData(src.TitleData), + UserData(src.UserData), + UserDataVersion(src.UserDataVersion), + UserInventory(src.UserInventory), + UserReadOnlyData(src.UserReadOnlyData), + UserReadOnlyDataVersion(src.UserReadOnlyDataVersion), + UserVirtualCurrency(src.UserVirtualCurrency), + UserVirtualCurrencyRechargeTimes(src.UserVirtualCurrencyRechargeTimes) + {} + + ~GetPlayerCombinedInfoResultPayload() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["AccountInfo"], AccountInfo); + FromJsonUtilO(input["CharacterInventories"], CharacterInventories); + FromJsonUtilO(input["CharacterList"], CharacterList); + FromJsonUtilO(input["PlayerProfile"], PlayerProfile); + FromJsonUtilO(input["PlayerStatistics"], PlayerStatistics); + FromJsonUtilS(input["TitleData"], TitleData); + FromJsonUtilO(input["UserData"], UserData); + FromJsonUtilP(input["UserDataVersion"], UserDataVersion); + FromJsonUtilO(input["UserInventory"], UserInventory); + FromJsonUtilO(input["UserReadOnlyData"], UserReadOnlyData); + FromJsonUtilP(input["UserReadOnlyDataVersion"], UserReadOnlyDataVersion); + FromJsonUtilP(input["UserVirtualCurrency"], UserVirtualCurrency); + FromJsonUtilO(input["UserVirtualCurrencyRechargeTimes"], UserVirtualCurrencyRechargeTimes); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AccountInfo; ToJsonUtilO(AccountInfo, each_AccountInfo); output["AccountInfo"] = each_AccountInfo; + Json::Value each_CharacterInventories; ToJsonUtilO(CharacterInventories, each_CharacterInventories); output["CharacterInventories"] = each_CharacterInventories; + Json::Value each_CharacterList; ToJsonUtilO(CharacterList, each_CharacterList); output["CharacterList"] = each_CharacterList; + Json::Value each_PlayerProfile; ToJsonUtilO(PlayerProfile, each_PlayerProfile); output["PlayerProfile"] = each_PlayerProfile; + Json::Value each_PlayerStatistics; ToJsonUtilO(PlayerStatistics, each_PlayerStatistics); output["PlayerStatistics"] = each_PlayerStatistics; + Json::Value each_TitleData; ToJsonUtilS(TitleData, each_TitleData); output["TitleData"] = each_TitleData; + Json::Value each_UserData; ToJsonUtilO(UserData, each_UserData); output["UserData"] = each_UserData; + Json::Value each_UserDataVersion; ToJsonUtilP(UserDataVersion, each_UserDataVersion); output["UserDataVersion"] = each_UserDataVersion; + Json::Value each_UserInventory; ToJsonUtilO(UserInventory, each_UserInventory); output["UserInventory"] = each_UserInventory; + Json::Value each_UserReadOnlyData; ToJsonUtilO(UserReadOnlyData, each_UserReadOnlyData); output["UserReadOnlyData"] = each_UserReadOnlyData; + Json::Value each_UserReadOnlyDataVersion; ToJsonUtilP(UserReadOnlyDataVersion, each_UserReadOnlyDataVersion); output["UserReadOnlyDataVersion"] = each_UserReadOnlyDataVersion; + Json::Value each_UserVirtualCurrency; ToJsonUtilP(UserVirtualCurrency, each_UserVirtualCurrency); output["UserVirtualCurrency"] = each_UserVirtualCurrency; + Json::Value each_UserVirtualCurrencyRechargeTimes; ToJsonUtilO(UserVirtualCurrencyRechargeTimes, each_UserVirtualCurrencyRechargeTimes); output["UserVirtualCurrencyRechargeTimes"] = each_UserVirtualCurrencyRechargeTimes; + return output; + } + }; + + struct GetPlayerCombinedInfoResult : public PlayFabResultCommon + { + Boxed InfoResultPayload; + std::string PlayFabId; + + GetPlayerCombinedInfoResult() : + PlayFabResultCommon(), + InfoResultPayload(), + PlayFabId() + {} + + GetPlayerCombinedInfoResult(const GetPlayerCombinedInfoResult& src) : + PlayFabResultCommon(), + InfoResultPayload(src.InfoResultPayload), + PlayFabId(src.PlayFabId) + {} + + ~GetPlayerCombinedInfoResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["InfoResultPayload"], InfoResultPayload); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_InfoResultPayload; ToJsonUtilO(InfoResultPayload, each_InfoResultPayload); output["InfoResultPayload"] = each_InfoResultPayload; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetPlayerProfileRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + Boxed ProfileConstraints; + + GetPlayerProfileRequest() : + PlayFabRequestCommon(), + PlayFabId(), + ProfileConstraints() + {} + + GetPlayerProfileRequest(const GetPlayerProfileRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId), + ProfileConstraints(src.ProfileConstraints) + {} + + ~GetPlayerProfileRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilO(input["ProfileConstraints"], ProfileConstraints); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_ProfileConstraints; ToJsonUtilO(ProfileConstraints, each_ProfileConstraints); output["ProfileConstraints"] = each_ProfileConstraints; + return output; + } + }; + + struct GetPlayerProfileResult : public PlayFabResultCommon + { + Boxed PlayerProfile; + + GetPlayerProfileResult() : + PlayFabResultCommon(), + PlayerProfile() + {} + + GetPlayerProfileResult(const GetPlayerProfileResult& src) : + PlayFabResultCommon(), + PlayerProfile(src.PlayerProfile) + {} + + ~GetPlayerProfileResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["PlayerProfile"], PlayerProfile); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayerProfile; ToJsonUtilO(PlayerProfile, each_PlayerProfile); output["PlayerProfile"] = each_PlayerProfile; + return output; + } + }; + + struct GetPlayerSegmentsResult : public PlayFabResultCommon + { + std::list Segments; + + GetPlayerSegmentsResult() : + PlayFabResultCommon(), + Segments() + {} + + GetPlayerSegmentsResult(const GetPlayerSegmentsResult& src) : + PlayFabResultCommon(), + Segments(src.Segments) + {} + + ~GetPlayerSegmentsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Segments"], Segments); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Segments; ToJsonUtilO(Segments, each_Segments); output["Segments"] = each_Segments; + return output; + } + }; + + struct GetPlayersInSegmentRequest : public PlayFabRequestCommon + { + std::string ContinuationToken; + Boxed MaxBatchSize; + Boxed SecondsToLive; + std::string SegmentId; + + GetPlayersInSegmentRequest() : + PlayFabRequestCommon(), + ContinuationToken(), + MaxBatchSize(), + SecondsToLive(), + SegmentId() + {} + + GetPlayersInSegmentRequest(const GetPlayersInSegmentRequest& src) : + PlayFabRequestCommon(), + ContinuationToken(src.ContinuationToken), + MaxBatchSize(src.MaxBatchSize), + SecondsToLive(src.SecondsToLive), + SegmentId(src.SegmentId) + {} + + ~GetPlayersInSegmentRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ContinuationToken"], ContinuationToken); + FromJsonUtilP(input["MaxBatchSize"], MaxBatchSize); + FromJsonUtilP(input["SecondsToLive"], SecondsToLive); + FromJsonUtilS(input["SegmentId"], SegmentId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ContinuationToken; ToJsonUtilS(ContinuationToken, each_ContinuationToken); output["ContinuationToken"] = each_ContinuationToken; + Json::Value each_MaxBatchSize; ToJsonUtilP(MaxBatchSize, each_MaxBatchSize); output["MaxBatchSize"] = each_MaxBatchSize; + Json::Value each_SecondsToLive; ToJsonUtilP(SecondsToLive, each_SecondsToLive); output["SecondsToLive"] = each_SecondsToLive; + Json::Value each_SegmentId; ToJsonUtilS(SegmentId, each_SegmentId); output["SegmentId"] = each_SegmentId; + return output; + } + }; + + struct PlayerLinkedAccount : public PlayFabBaseModel + { + std::string Email; + Boxed Platform; + std::string PlatformUserId; + std::string Username; + + PlayerLinkedAccount() : + PlayFabBaseModel(), + Email(), + Platform(), + PlatformUserId(), + Username() + {} + + PlayerLinkedAccount(const PlayerLinkedAccount& src) : + PlayFabBaseModel(), + Email(src.Email), + Platform(src.Platform), + PlatformUserId(src.PlatformUserId), + Username(src.Username) + {} + + ~PlayerLinkedAccount() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Email"], Email); + FromJsonUtilE(input["Platform"], Platform); + FromJsonUtilS(input["PlatformUserId"], PlatformUserId); + FromJsonUtilS(input["Username"], Username); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Email; ToJsonUtilS(Email, each_Email); output["Email"] = each_Email; + Json::Value each_Platform; ToJsonUtilE(Platform, each_Platform); output["Platform"] = each_Platform; + Json::Value each_PlatformUserId; ToJsonUtilS(PlatformUserId, each_PlatformUserId); output["PlatformUserId"] = each_PlatformUserId; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + return output; + } + }; + + struct PlayerLocation : public PlayFabBaseModel + { + std::string City; + ContinentCode pfContinentCode; + CountryCode pfCountryCode; + Boxed Latitude; + Boxed Longitude; + + PlayerLocation() : + PlayFabBaseModel(), + City(), + pfContinentCode(), + pfCountryCode(), + Latitude(), + Longitude() + {} + + PlayerLocation(const PlayerLocation& src) : + PlayFabBaseModel(), + City(src.City), + pfContinentCode(src.pfContinentCode), + pfCountryCode(src.pfCountryCode), + Latitude(src.Latitude), + Longitude(src.Longitude) + {} + + ~PlayerLocation() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["City"], City); + FromJsonEnum(input["pfContinentCode"], pfContinentCode); + FromJsonEnum(input["pfCountryCode"], pfCountryCode); + FromJsonUtilP(input["Latitude"], Latitude); + FromJsonUtilP(input["Longitude"], Longitude); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_City; ToJsonUtilS(City, each_City); output["City"] = each_City; + Json::Value each_pfContinentCode; ToJsonEnum(pfContinentCode, each_pfContinentCode); output["ContinentCode"] = each_pfContinentCode; + Json::Value each_pfCountryCode; ToJsonEnum(pfCountryCode, each_pfCountryCode); output["CountryCode"] = each_pfCountryCode; + Json::Value each_Latitude; ToJsonUtilP(Latitude, each_Latitude); output["Latitude"] = each_Latitude; + Json::Value each_Longitude; ToJsonUtilP(Longitude, each_Longitude); output["Longitude"] = each_Longitude; + return output; + } + }; + + struct PlayerStatistic : public PlayFabBaseModel + { + std::string Id; + std::string Name; + Int32 StatisticValue; + Int32 StatisticVersion; + + PlayerStatistic() : + PlayFabBaseModel(), + Id(), + Name(), + StatisticValue(), + StatisticVersion() + {} + + PlayerStatistic(const PlayerStatistic& src) : + PlayFabBaseModel(), + Id(src.Id), + Name(src.Name), + StatisticValue(src.StatisticValue), + StatisticVersion(src.StatisticVersion) + {} + + ~PlayerStatistic() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Id"], Id); + FromJsonUtilS(input["Name"], Name); + FromJsonUtilP(input["StatisticValue"], StatisticValue); + FromJsonUtilP(input["StatisticVersion"], StatisticVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Id; ToJsonUtilS(Id, each_Id); output["Id"] = each_Id; + Json::Value each_Name; ToJsonUtilS(Name, each_Name); output["Name"] = each_Name; + Json::Value each_StatisticValue; ToJsonUtilP(StatisticValue, each_StatisticValue); output["StatisticValue"] = each_StatisticValue; + Json::Value each_StatisticVersion; ToJsonUtilP(StatisticVersion, each_StatisticVersion); output["StatisticVersion"] = each_StatisticVersion; + return output; + } + }; + + struct PushNotificationRegistration : public PlayFabBaseModel + { + std::string NotificationEndpointARN; + Boxed Platform; + + PushNotificationRegistration() : + PlayFabBaseModel(), + NotificationEndpointARN(), + Platform() + {} + + PushNotificationRegistration(const PushNotificationRegistration& src) : + PlayFabBaseModel(), + NotificationEndpointARN(src.NotificationEndpointARN), + Platform(src.Platform) + {} + + ~PushNotificationRegistration() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["NotificationEndpointARN"], NotificationEndpointARN); + FromJsonUtilE(input["Platform"], Platform); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_NotificationEndpointARN; ToJsonUtilS(NotificationEndpointARN, each_NotificationEndpointARN); output["NotificationEndpointARN"] = each_NotificationEndpointARN; + Json::Value each_Platform; ToJsonUtilE(Platform, each_Platform); output["Platform"] = each_Platform; + return output; + } + }; + + struct PlayerProfile : public PlayFabBaseModel + { + std::list AdCampaignAttributions; + std::string AvatarUrl; + Boxed BannedUntil; + std::list ContactEmailAddresses; + Boxed Created; + std::string DisplayName; + Boxed LastLogin; + std::list LinkedAccounts; + std::map Locations; + Boxed Origination; + std::string PlayerId; + std::list PlayerStatistics; + std::string PublisherId; + std::list PushNotificationRegistrations; + std::map Statistics; + std::list Tags; + std::string TitleId; + Boxed TotalValueToDateInUSD; + std::map ValuesToDate; + std::map VirtualCurrencyBalances; + + PlayerProfile() : + PlayFabBaseModel(), + AdCampaignAttributions(), + AvatarUrl(), + BannedUntil(), + ContactEmailAddresses(), + Created(), + DisplayName(), + LastLogin(), + LinkedAccounts(), + Locations(), + Origination(), + PlayerId(), + PlayerStatistics(), + PublisherId(), + PushNotificationRegistrations(), + Statistics(), + Tags(), + TitleId(), + TotalValueToDateInUSD(), + ValuesToDate(), + VirtualCurrencyBalances() + {} + + PlayerProfile(const PlayerProfile& src) : + PlayFabBaseModel(), + AdCampaignAttributions(src.AdCampaignAttributions), + AvatarUrl(src.AvatarUrl), + BannedUntil(src.BannedUntil), + ContactEmailAddresses(src.ContactEmailAddresses), + Created(src.Created), + DisplayName(src.DisplayName), + LastLogin(src.LastLogin), + LinkedAccounts(src.LinkedAccounts), + Locations(src.Locations), + Origination(src.Origination), + PlayerId(src.PlayerId), + PlayerStatistics(src.PlayerStatistics), + PublisherId(src.PublisherId), + PushNotificationRegistrations(src.PushNotificationRegistrations), + Statistics(src.Statistics), + Tags(src.Tags), + TitleId(src.TitleId), + TotalValueToDateInUSD(src.TotalValueToDateInUSD), + ValuesToDate(src.ValuesToDate), + VirtualCurrencyBalances(src.VirtualCurrencyBalances) + {} + + ~PlayerProfile() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["AdCampaignAttributions"], AdCampaignAttributions); + FromJsonUtilS(input["AvatarUrl"], AvatarUrl); + FromJsonUtilT(input["BannedUntil"], BannedUntil); + FromJsonUtilO(input["ContactEmailAddresses"], ContactEmailAddresses); + FromJsonUtilT(input["Created"], Created); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilT(input["LastLogin"], LastLogin); + FromJsonUtilO(input["LinkedAccounts"], LinkedAccounts); + FromJsonUtilO(input["Locations"], Locations); + FromJsonUtilE(input["Origination"], Origination); + FromJsonUtilS(input["PlayerId"], PlayerId); + FromJsonUtilO(input["PlayerStatistics"], PlayerStatistics); + FromJsonUtilS(input["PublisherId"], PublisherId); + FromJsonUtilO(input["PushNotificationRegistrations"], PushNotificationRegistrations); + FromJsonUtilP(input["Statistics"], Statistics); + FromJsonUtilS(input["Tags"], Tags); + FromJsonUtilS(input["TitleId"], TitleId); + FromJsonUtilP(input["TotalValueToDateInUSD"], TotalValueToDateInUSD); + FromJsonUtilP(input["ValuesToDate"], ValuesToDate); + FromJsonUtilP(input["VirtualCurrencyBalances"], VirtualCurrencyBalances); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AdCampaignAttributions; ToJsonUtilO(AdCampaignAttributions, each_AdCampaignAttributions); output["AdCampaignAttributions"] = each_AdCampaignAttributions; + Json::Value each_AvatarUrl; ToJsonUtilS(AvatarUrl, each_AvatarUrl); output["AvatarUrl"] = each_AvatarUrl; + Json::Value each_BannedUntil; ToJsonUtilT(BannedUntil, each_BannedUntil); output["BannedUntil"] = each_BannedUntil; + Json::Value each_ContactEmailAddresses; ToJsonUtilO(ContactEmailAddresses, each_ContactEmailAddresses); output["ContactEmailAddresses"] = each_ContactEmailAddresses; + Json::Value each_Created; ToJsonUtilT(Created, each_Created); output["Created"] = each_Created; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_LastLogin; ToJsonUtilT(LastLogin, each_LastLogin); output["LastLogin"] = each_LastLogin; + Json::Value each_LinkedAccounts; ToJsonUtilO(LinkedAccounts, each_LinkedAccounts); output["LinkedAccounts"] = each_LinkedAccounts; + Json::Value each_Locations; ToJsonUtilO(Locations, each_Locations); output["Locations"] = each_Locations; + Json::Value each_Origination; ToJsonUtilE(Origination, each_Origination); output["Origination"] = each_Origination; + Json::Value each_PlayerId; ToJsonUtilS(PlayerId, each_PlayerId); output["PlayerId"] = each_PlayerId; + Json::Value each_PlayerStatistics; ToJsonUtilO(PlayerStatistics, each_PlayerStatistics); output["PlayerStatistics"] = each_PlayerStatistics; + Json::Value each_PublisherId; ToJsonUtilS(PublisherId, each_PublisherId); output["PublisherId"] = each_PublisherId; + Json::Value each_PushNotificationRegistrations; ToJsonUtilO(PushNotificationRegistrations, each_PushNotificationRegistrations); output["PushNotificationRegistrations"] = each_PushNotificationRegistrations; + Json::Value each_Statistics; ToJsonUtilP(Statistics, each_Statistics); output["Statistics"] = each_Statistics; + Json::Value each_Tags; ToJsonUtilS(Tags, each_Tags); output["Tags"] = each_Tags; + Json::Value each_TitleId; ToJsonUtilS(TitleId, each_TitleId); output["TitleId"] = each_TitleId; + Json::Value each_TotalValueToDateInUSD; ToJsonUtilP(TotalValueToDateInUSD, each_TotalValueToDateInUSD); output["TotalValueToDateInUSD"] = each_TotalValueToDateInUSD; + Json::Value each_ValuesToDate; ToJsonUtilP(ValuesToDate, each_ValuesToDate); output["ValuesToDate"] = each_ValuesToDate; + Json::Value each_VirtualCurrencyBalances; ToJsonUtilP(VirtualCurrencyBalances, each_VirtualCurrencyBalances); output["VirtualCurrencyBalances"] = each_VirtualCurrencyBalances; + return output; + } + }; + + struct GetPlayersInSegmentResult : public PlayFabResultCommon + { + std::string ContinuationToken; + std::list PlayerProfiles; + Int32 ProfilesInSegment; + + GetPlayersInSegmentResult() : + PlayFabResultCommon(), + ContinuationToken(), + PlayerProfiles(), + ProfilesInSegment() + {} + + GetPlayersInSegmentResult(const GetPlayersInSegmentResult& src) : + PlayFabResultCommon(), + ContinuationToken(src.ContinuationToken), + PlayerProfiles(src.PlayerProfiles), + ProfilesInSegment(src.ProfilesInSegment) + {} + + ~GetPlayersInSegmentResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ContinuationToken"], ContinuationToken); + FromJsonUtilO(input["PlayerProfiles"], PlayerProfiles); + FromJsonUtilP(input["ProfilesInSegment"], ProfilesInSegment); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ContinuationToken; ToJsonUtilS(ContinuationToken, each_ContinuationToken); output["ContinuationToken"] = each_ContinuationToken; + Json::Value each_PlayerProfiles; ToJsonUtilO(PlayerProfiles, each_PlayerProfiles); output["PlayerProfiles"] = each_PlayerProfiles; + Json::Value each_ProfilesInSegment; ToJsonUtilP(ProfilesInSegment, each_ProfilesInSegment); output["ProfilesInSegment"] = each_ProfilesInSegment; + return output; + } + }; + + struct GetPlayersSegmentsRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + + GetPlayersSegmentsRequest() : + PlayFabRequestCommon(), + PlayFabId() + {} + + GetPlayersSegmentsRequest(const GetPlayersSegmentsRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId) + {} + + ~GetPlayersSegmentsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct StatisticNameVersion : public PlayFabBaseModel + { + std::string StatisticName; + Uint32 Version; + + StatisticNameVersion() : + PlayFabBaseModel(), + StatisticName(), + Version() + {} + + StatisticNameVersion(const StatisticNameVersion& src) : + PlayFabBaseModel(), + StatisticName(src.StatisticName), + Version(src.Version) + {} + + ~StatisticNameVersion() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetPlayerStatisticsRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + std::list StatisticNames; + std::list StatisticNameVersions; + + GetPlayerStatisticsRequest() : + PlayFabRequestCommon(), + PlayFabId(), + StatisticNames(), + StatisticNameVersions() + {} + + GetPlayerStatisticsRequest(const GetPlayerStatisticsRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId), + StatisticNames(src.StatisticNames), + StatisticNameVersions(src.StatisticNameVersions) + {} + + ~GetPlayerStatisticsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["StatisticNames"], StatisticNames); + FromJsonUtilO(input["StatisticNameVersions"], StatisticNameVersions); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_StatisticNames; ToJsonUtilS(StatisticNames, each_StatisticNames); output["StatisticNames"] = each_StatisticNames; + Json::Value each_StatisticNameVersions; ToJsonUtilO(StatisticNameVersions, each_StatisticNameVersions); output["StatisticNameVersions"] = each_StatisticNameVersions; + return output; + } + }; + + struct GetPlayerStatisticsResult : public PlayFabResultCommon + { + std::string PlayFabId; + std::list Statistics; + + GetPlayerStatisticsResult() : + PlayFabResultCommon(), + PlayFabId(), + Statistics() + {} + + GetPlayerStatisticsResult(const GetPlayerStatisticsResult& src) : + PlayFabResultCommon(), + PlayFabId(src.PlayFabId), + Statistics(src.Statistics) + {} + + ~GetPlayerStatisticsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilO(input["Statistics"], Statistics); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Statistics; ToJsonUtilO(Statistics, each_Statistics); output["Statistics"] = each_Statistics; + return output; + } + }; + + struct GetPlayerStatisticVersionsRequest : public PlayFabRequestCommon + { + std::string StatisticName; + + GetPlayerStatisticVersionsRequest() : + PlayFabRequestCommon(), + StatisticName() + {} + + GetPlayerStatisticVersionsRequest(const GetPlayerStatisticVersionsRequest& src) : + PlayFabRequestCommon(), + StatisticName(src.StatisticName) + {} + + ~GetPlayerStatisticVersionsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["StatisticName"], StatisticName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + return output; + } + }; + + struct PlayerStatisticVersion : public PlayFabBaseModel + { + time_t ActivationTime; + Boxed DeactivationTime; + Boxed ScheduledActivationTime; + Boxed ScheduledDeactivationTime; + std::string StatisticName; + Uint32 Version; + + PlayerStatisticVersion() : + PlayFabBaseModel(), + ActivationTime(), + DeactivationTime(), + ScheduledActivationTime(), + ScheduledDeactivationTime(), + StatisticName(), + Version() + {} + + PlayerStatisticVersion(const PlayerStatisticVersion& src) : + PlayFabBaseModel(), + ActivationTime(src.ActivationTime), + DeactivationTime(src.DeactivationTime), + ScheduledActivationTime(src.ScheduledActivationTime), + ScheduledDeactivationTime(src.ScheduledDeactivationTime), + StatisticName(src.StatisticName), + Version(src.Version) + {} + + ~PlayerStatisticVersion() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["ActivationTime"], ActivationTime); + FromJsonUtilT(input["DeactivationTime"], DeactivationTime); + FromJsonUtilT(input["ScheduledActivationTime"], ScheduledActivationTime); + FromJsonUtilT(input["ScheduledDeactivationTime"], ScheduledDeactivationTime); + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ActivationTime; ToJsonUtilT(ActivationTime, each_ActivationTime); output["ActivationTime"] = each_ActivationTime; + Json::Value each_DeactivationTime; ToJsonUtilT(DeactivationTime, each_DeactivationTime); output["DeactivationTime"] = each_DeactivationTime; + Json::Value each_ScheduledActivationTime; ToJsonUtilT(ScheduledActivationTime, each_ScheduledActivationTime); output["ScheduledActivationTime"] = each_ScheduledActivationTime; + Json::Value each_ScheduledDeactivationTime; ToJsonUtilT(ScheduledDeactivationTime, each_ScheduledDeactivationTime); output["ScheduledDeactivationTime"] = each_ScheduledDeactivationTime; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct GetPlayerStatisticVersionsResult : public PlayFabResultCommon + { + std::list StatisticVersions; + + GetPlayerStatisticVersionsResult() : + PlayFabResultCommon(), + StatisticVersions() + {} + + GetPlayerStatisticVersionsResult(const GetPlayerStatisticVersionsResult& src) : + PlayFabResultCommon(), + StatisticVersions(src.StatisticVersions) + {} + + ~GetPlayerStatisticVersionsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["StatisticVersions"], StatisticVersions); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_StatisticVersions; ToJsonUtilO(StatisticVersions, each_StatisticVersions); output["StatisticVersions"] = each_StatisticVersions; + return output; + } + }; + + struct GetPlayerTagsRequest : public PlayFabRequestCommon + { + std::string Namespace; + std::string PlayFabId; + + GetPlayerTagsRequest() : + PlayFabRequestCommon(), + Namespace(), + PlayFabId() + {} + + GetPlayerTagsRequest(const GetPlayerTagsRequest& src) : + PlayFabRequestCommon(), + Namespace(src.Namespace), + PlayFabId(src.PlayFabId) + {} + + ~GetPlayerTagsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Namespace"], Namespace); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Namespace; ToJsonUtilS(Namespace, each_Namespace); output["Namespace"] = each_Namespace; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetPlayerTagsResult : public PlayFabResultCommon + { + std::string PlayFabId; + std::list Tags; + + GetPlayerTagsResult() : + PlayFabResultCommon(), + PlayFabId(), + Tags() + {} + + GetPlayerTagsResult(const GetPlayerTagsResult& src) : + PlayFabResultCommon(), + PlayFabId(src.PlayFabId), + Tags(src.Tags) + {} + + ~GetPlayerTagsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["Tags"], Tags); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Tags; ToJsonUtilS(Tags, each_Tags); output["Tags"] = each_Tags; + return output; + } + }; + + struct GetPlayFabIDsFromFacebookIDsRequest : public PlayFabRequestCommon + { + std::list FacebookIDs; + + GetPlayFabIDsFromFacebookIDsRequest() : + PlayFabRequestCommon(), + FacebookIDs() + {} + + GetPlayFabIDsFromFacebookIDsRequest(const GetPlayFabIDsFromFacebookIDsRequest& src) : + PlayFabRequestCommon(), + FacebookIDs(src.FacebookIDs) + {} + + ~GetPlayFabIDsFromFacebookIDsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FacebookIDs"], FacebookIDs); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FacebookIDs; ToJsonUtilS(FacebookIDs, each_FacebookIDs); output["FacebookIDs"] = each_FacebookIDs; + return output; + } + }; + + struct GetPlayFabIDsFromFacebookIDsResult : public PlayFabResultCommon + { + std::list Data; + + GetPlayFabIDsFromFacebookIDsResult() : + PlayFabResultCommon(), + Data() + {} + + GetPlayFabIDsFromFacebookIDsResult(const GetPlayFabIDsFromFacebookIDsResult& src) : + PlayFabResultCommon(), + Data(src.Data) + {} + + ~GetPlayFabIDsFromFacebookIDsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Data"], Data); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilO(Data, each_Data); output["Data"] = each_Data; + return output; + } + }; + + struct GetPlayFabIDsFromSteamIDsRequest : public PlayFabRequestCommon + { + std::list SteamStringIDs; + + GetPlayFabIDsFromSteamIDsRequest() : + PlayFabRequestCommon(), + SteamStringIDs() + {} + + GetPlayFabIDsFromSteamIDsRequest(const GetPlayFabIDsFromSteamIDsRequest& src) : + PlayFabRequestCommon(), + SteamStringIDs(src.SteamStringIDs) + {} + + ~GetPlayFabIDsFromSteamIDsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["SteamStringIDs"], SteamStringIDs); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_SteamStringIDs; ToJsonUtilS(SteamStringIDs, each_SteamStringIDs); output["SteamStringIDs"] = each_SteamStringIDs; + return output; + } + }; + + struct SteamPlayFabIdPair : public PlayFabBaseModel + { + std::string PlayFabId; + std::string SteamStringId; + + SteamPlayFabIdPair() : + PlayFabBaseModel(), + PlayFabId(), + SteamStringId() + {} + + SteamPlayFabIdPair(const SteamPlayFabIdPair& src) : + PlayFabBaseModel(), + PlayFabId(src.PlayFabId), + SteamStringId(src.SteamStringId) + {} + + ~SteamPlayFabIdPair() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["SteamStringId"], SteamStringId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_SteamStringId; ToJsonUtilS(SteamStringId, each_SteamStringId); output["SteamStringId"] = each_SteamStringId; + return output; + } + }; + + struct GetPlayFabIDsFromSteamIDsResult : public PlayFabResultCommon + { + std::list Data; + + GetPlayFabIDsFromSteamIDsResult() : + PlayFabResultCommon(), + Data() + {} + + GetPlayFabIDsFromSteamIDsResult(const GetPlayFabIDsFromSteamIDsResult& src) : + PlayFabResultCommon(), + Data(src.Data) + {} + + ~GetPlayFabIDsFromSteamIDsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Data"], Data); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilO(Data, each_Data); output["Data"] = each_Data; + return output; + } + }; + + struct GetPublisherDataRequest : public PlayFabRequestCommon + { + std::list Keys; + + GetPublisherDataRequest() : + PlayFabRequestCommon(), + Keys() + {} + + GetPublisherDataRequest(const GetPublisherDataRequest& src) : + PlayFabRequestCommon(), + Keys(src.Keys) + {} + + ~GetPublisherDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Keys"], Keys); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Keys; ToJsonUtilS(Keys, each_Keys); output["Keys"] = each_Keys; + return output; + } + }; + + struct GetPublisherDataResult : public PlayFabResultCommon + { + std::map Data; + + GetPublisherDataResult() : + PlayFabResultCommon(), + Data() + {} + + GetPublisherDataResult(const GetPublisherDataResult& src) : + PlayFabResultCommon(), + Data(src.Data) + {} + + ~GetPublisherDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Data"], Data); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + return output; + } + }; + + struct GetRandomResultTablesRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::list TableIDs; + + GetRandomResultTablesRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + TableIDs() + {} + + GetRandomResultTablesRequest(const GetRandomResultTablesRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + TableIDs(src.TableIDs) + {} + + ~GetRandomResultTablesRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["TableIDs"], TableIDs); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_TableIDs; ToJsonUtilS(TableIDs, each_TableIDs); output["TableIDs"] = each_TableIDs; + return output; + } + }; + + struct ResultTableNode : public PlayFabBaseModel + { + std::string ResultItem; + ResultTableNodeType ResultItemType; + Int32 Weight; + + ResultTableNode() : + PlayFabBaseModel(), + ResultItem(), + ResultItemType(), + Weight() + {} + + ResultTableNode(const ResultTableNode& src) : + PlayFabBaseModel(), + ResultItem(src.ResultItem), + ResultItemType(src.ResultItemType), + Weight(src.Weight) + {} + + ~ResultTableNode() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ResultItem"], ResultItem); + FromJsonEnum(input["ResultItemType"], ResultItemType); + FromJsonUtilP(input["Weight"], Weight); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ResultItem; ToJsonUtilS(ResultItem, each_ResultItem); output["ResultItem"] = each_ResultItem; + Json::Value each_ResultItemType; ToJsonEnum(ResultItemType, each_ResultItemType); output["ResultItemType"] = each_ResultItemType; + Json::Value each_Weight; ToJsonUtilP(Weight, each_Weight); output["Weight"] = each_Weight; + return output; + } + }; + + struct RandomResultTableListing : public PlayFabBaseModel + { + std::string CatalogVersion; + std::list Nodes; + std::string TableId; + + RandomResultTableListing() : + PlayFabBaseModel(), + CatalogVersion(), + Nodes(), + TableId() + {} + + RandomResultTableListing(const RandomResultTableListing& src) : + PlayFabBaseModel(), + CatalogVersion(src.CatalogVersion), + Nodes(src.Nodes), + TableId(src.TableId) + {} + + ~RandomResultTableListing() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilO(input["Nodes"], Nodes); + FromJsonUtilS(input["TableId"], TableId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_Nodes; ToJsonUtilO(Nodes, each_Nodes); output["Nodes"] = each_Nodes; + Json::Value each_TableId; ToJsonUtilS(TableId, each_TableId); output["TableId"] = each_TableId; + return output; + } + }; + + struct GetRandomResultTablesResult : public PlayFabResultCommon + { + std::map Tables; + + GetRandomResultTablesResult() : + PlayFabResultCommon(), + Tables() + {} + + GetRandomResultTablesResult(const GetRandomResultTablesResult& src) : + PlayFabResultCommon(), + Tables(src.Tables) + {} + + ~GetRandomResultTablesResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Tables"], Tables); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Tables; ToJsonUtilO(Tables, each_Tables); output["Tables"] = each_Tables; + return output; + } + }; + + struct GetSharedGroupDataRequest : public PlayFabRequestCommon + { + Boxed GetMembers; + std::list Keys; + std::string SharedGroupId; + + GetSharedGroupDataRequest() : + PlayFabRequestCommon(), + GetMembers(), + Keys(), + SharedGroupId() + {} + + GetSharedGroupDataRequest(const GetSharedGroupDataRequest& src) : + PlayFabRequestCommon(), + GetMembers(src.GetMembers), + Keys(src.Keys), + SharedGroupId(src.SharedGroupId) + {} + + ~GetSharedGroupDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["GetMembers"], GetMembers); + FromJsonUtilS(input["Keys"], Keys); + FromJsonUtilS(input["SharedGroupId"], SharedGroupId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GetMembers; ToJsonUtilP(GetMembers, each_GetMembers); output["GetMembers"] = each_GetMembers; + Json::Value each_Keys; ToJsonUtilS(Keys, each_Keys); output["Keys"] = each_Keys; + Json::Value each_SharedGroupId; ToJsonUtilS(SharedGroupId, each_SharedGroupId); output["SharedGroupId"] = each_SharedGroupId; + return output; + } + }; + + struct SharedGroupDataRecord : public PlayFabBaseModel + { + time_t LastUpdated; + std::string LastUpdatedBy; + Boxed Permission; + std::string Value; + + SharedGroupDataRecord() : + PlayFabBaseModel(), + LastUpdated(), + LastUpdatedBy(), + Permission(), + Value() + {} + + SharedGroupDataRecord(const SharedGroupDataRecord& src) : + PlayFabBaseModel(), + LastUpdated(src.LastUpdated), + LastUpdatedBy(src.LastUpdatedBy), + Permission(src.Permission), + Value(src.Value) + {} + + ~SharedGroupDataRecord() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["LastUpdated"], LastUpdated); + FromJsonUtilS(input["LastUpdatedBy"], LastUpdatedBy); + FromJsonUtilE(input["Permission"], Permission); + FromJsonUtilS(input["Value"], Value); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LastUpdated; ToJsonUtilT(LastUpdated, each_LastUpdated); output["LastUpdated"] = each_LastUpdated; + Json::Value each_LastUpdatedBy; ToJsonUtilS(LastUpdatedBy, each_LastUpdatedBy); output["LastUpdatedBy"] = each_LastUpdatedBy; + Json::Value each_Permission; ToJsonUtilE(Permission, each_Permission); output["Permission"] = each_Permission; + Json::Value each_Value; ToJsonUtilS(Value, each_Value); output["Value"] = each_Value; + return output; + } + }; + + struct GetSharedGroupDataResult : public PlayFabResultCommon + { + std::map Data; + std::list Members; + + GetSharedGroupDataResult() : + PlayFabResultCommon(), + Data(), + Members() + {} + + GetSharedGroupDataResult(const GetSharedGroupDataResult& src) : + PlayFabResultCommon(), + Data(src.Data), + Members(src.Members) + {} + + ~GetSharedGroupDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Data"], Data); + FromJsonUtilS(input["Members"], Members); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilO(Data, each_Data); output["Data"] = each_Data; + Json::Value each_Members; ToJsonUtilS(Members, each_Members); output["Members"] = each_Members; + return output; + } + }; + + struct GetTimeRequest : public PlayFabRequestCommon + { + + GetTimeRequest() : + PlayFabRequestCommon() + {} + + GetTimeRequest(const GetTimeRequest&) : + PlayFabRequestCommon() + {} + + ~GetTimeRequest() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct GetTimeResult : public PlayFabResultCommon + { + time_t Time; + + GetTimeResult() : + PlayFabResultCommon(), + Time() + {} + + GetTimeResult(const GetTimeResult& src) : + PlayFabResultCommon(), + Time(src.Time) + {} + + ~GetTimeResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilT(input["Time"], Time); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Time; ToJsonUtilT(Time, each_Time); output["Time"] = each_Time; + return output; + } + }; + + struct GetTitleDataRequest : public PlayFabRequestCommon + { + std::list Keys; + + GetTitleDataRequest() : + PlayFabRequestCommon(), + Keys() + {} + + GetTitleDataRequest(const GetTitleDataRequest& src) : + PlayFabRequestCommon(), + Keys(src.Keys) + {} + + ~GetTitleDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Keys"], Keys); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Keys; ToJsonUtilS(Keys, each_Keys); output["Keys"] = each_Keys; + return output; + } + }; + + struct GetTitleDataResult : public PlayFabResultCommon + { + std::map Data; + + GetTitleDataResult() : + PlayFabResultCommon(), + Data() + {} + + GetTitleDataResult(const GetTitleDataResult& src) : + PlayFabResultCommon(), + Data(src.Data) + {} + + ~GetTitleDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Data"], Data); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + return output; + } + }; + + struct GetTitleNewsRequest : public PlayFabRequestCommon + { + Boxed Count; + + GetTitleNewsRequest() : + PlayFabRequestCommon(), + Count() + {} + + GetTitleNewsRequest(const GetTitleNewsRequest& src) : + PlayFabRequestCommon(), + Count(src.Count) + {} + + ~GetTitleNewsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Count"], Count); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Count; ToJsonUtilP(Count, each_Count); output["Count"] = each_Count; + return output; + } + }; + + struct TitleNewsItem : public PlayFabBaseModel + { + std::string Body; + std::string NewsId; + time_t Timestamp; + std::string Title; + + TitleNewsItem() : + PlayFabBaseModel(), + Body(), + NewsId(), + Timestamp(), + Title() + {} + + TitleNewsItem(const TitleNewsItem& src) : + PlayFabBaseModel(), + Body(src.Body), + NewsId(src.NewsId), + Timestamp(src.Timestamp), + Title(src.Title) + {} + + ~TitleNewsItem() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Body"], Body); + FromJsonUtilS(input["NewsId"], NewsId); + FromJsonUtilT(input["Timestamp"], Timestamp); + FromJsonUtilS(input["Title"], Title); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Body; ToJsonUtilS(Body, each_Body); output["Body"] = each_Body; + Json::Value each_NewsId; ToJsonUtilS(NewsId, each_NewsId); output["NewsId"] = each_NewsId; + Json::Value each_Timestamp; ToJsonUtilT(Timestamp, each_Timestamp); output["Timestamp"] = each_Timestamp; + Json::Value each_Title; ToJsonUtilS(Title, each_Title); output["Title"] = each_Title; + return output; + } + }; + + struct GetTitleNewsResult : public PlayFabResultCommon + { + std::list News; + + GetTitleNewsResult() : + PlayFabResultCommon(), + News() + {} + + GetTitleNewsResult(const GetTitleNewsResult& src) : + PlayFabResultCommon(), + News(src.News) + {} + + ~GetTitleNewsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["News"], News); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_News; ToJsonUtilO(News, each_News); output["News"] = each_News; + return output; + } + }; + + struct GetUserAccountInfoRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + + GetUserAccountInfoRequest() : + PlayFabRequestCommon(), + PlayFabId() + {} + + GetUserAccountInfoRequest(const GetUserAccountInfoRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId) + {} + + ~GetUserAccountInfoRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetUserAccountInfoResult : public PlayFabResultCommon + { + Boxed UserInfo; + + GetUserAccountInfoResult() : + PlayFabResultCommon(), + UserInfo() + {} + + GetUserAccountInfoResult(const GetUserAccountInfoResult& src) : + PlayFabResultCommon(), + UserInfo(src.UserInfo) + {} + + ~GetUserAccountInfoResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["UserInfo"], UserInfo); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_UserInfo; ToJsonUtilO(UserInfo, each_UserInfo); output["UserInfo"] = each_UserInfo; + return output; + } + }; + + struct GetUserBansRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + + GetUserBansRequest() : + PlayFabRequestCommon(), + PlayFabId() + {} + + GetUserBansRequest(const GetUserBansRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId) + {} + + ~GetUserBansRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetUserBansResult : public PlayFabResultCommon + { + std::list BanData; + + GetUserBansResult() : + PlayFabResultCommon(), + BanData() + {} + + GetUserBansResult(const GetUserBansResult& src) : + PlayFabResultCommon(), + BanData(src.BanData) + {} + + ~GetUserBansResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["BanData"], BanData); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BanData; ToJsonUtilO(BanData, each_BanData); output["BanData"] = each_BanData; + return output; + } + }; + + struct GetUserDataRequest : public PlayFabRequestCommon + { + Boxed IfChangedFromDataVersion; + std::list Keys; + std::string PlayFabId; + + GetUserDataRequest() : + PlayFabRequestCommon(), + IfChangedFromDataVersion(), + Keys(), + PlayFabId() + {} + + GetUserDataRequest(const GetUserDataRequest& src) : + PlayFabRequestCommon(), + IfChangedFromDataVersion(src.IfChangedFromDataVersion), + Keys(src.Keys), + PlayFabId(src.PlayFabId) + {} + + ~GetUserDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["IfChangedFromDataVersion"], IfChangedFromDataVersion); + FromJsonUtilS(input["Keys"], Keys); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_IfChangedFromDataVersion; ToJsonUtilP(IfChangedFromDataVersion, each_IfChangedFromDataVersion); output["IfChangedFromDataVersion"] = each_IfChangedFromDataVersion; + Json::Value each_Keys; ToJsonUtilS(Keys, each_Keys); output["Keys"] = each_Keys; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetUserDataResult : public PlayFabResultCommon + { + std::map Data; + Uint32 DataVersion; + std::string PlayFabId; + + GetUserDataResult() : + PlayFabResultCommon(), + Data(), + DataVersion(), + PlayFabId() + {} + + GetUserDataResult(const GetUserDataResult& src) : + PlayFabResultCommon(), + Data(src.Data), + DataVersion(src.DataVersion), + PlayFabId(src.PlayFabId) + {} + + ~GetUserDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Data"], Data); + FromJsonUtilP(input["DataVersion"], DataVersion); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilO(Data, each_Data); output["Data"] = each_Data; + Json::Value each_DataVersion; ToJsonUtilP(DataVersion, each_DataVersion); output["DataVersion"] = each_DataVersion; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetUserInventoryRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + + GetUserInventoryRequest() : + PlayFabRequestCommon(), + PlayFabId() + {} + + GetUserInventoryRequest(const GetUserInventoryRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId) + {} + + ~GetUserInventoryRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GetUserInventoryResult : public PlayFabResultCommon + { + std::list Inventory; + std::string PlayFabId; + std::map VirtualCurrency; + std::map VirtualCurrencyRechargeTimes; + + GetUserInventoryResult() : + PlayFabResultCommon(), + Inventory(), + PlayFabId(), + VirtualCurrency(), + VirtualCurrencyRechargeTimes() + {} + + GetUserInventoryResult(const GetUserInventoryResult& src) : + PlayFabResultCommon(), + Inventory(src.Inventory), + PlayFabId(src.PlayFabId), + VirtualCurrency(src.VirtualCurrency), + VirtualCurrencyRechargeTimes(src.VirtualCurrencyRechargeTimes) + {} + + ~GetUserInventoryResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Inventory"], Inventory); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilP(input["VirtualCurrency"], VirtualCurrency); + FromJsonUtilO(input["VirtualCurrencyRechargeTimes"], VirtualCurrencyRechargeTimes); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Inventory; ToJsonUtilO(Inventory, each_Inventory); output["Inventory"] = each_Inventory; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_VirtualCurrency; ToJsonUtilP(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + Json::Value each_VirtualCurrencyRechargeTimes; ToJsonUtilO(VirtualCurrencyRechargeTimes, each_VirtualCurrencyRechargeTimes); output["VirtualCurrencyRechargeTimes"] = each_VirtualCurrencyRechargeTimes; + return output; + } + }; + + struct GrantCharacterToUserRequest : public PlayFabRequestCommon + { + std::string CharacterName; + std::string CharacterType; + std::string PlayFabId; + + GrantCharacterToUserRequest() : + PlayFabRequestCommon(), + CharacterName(), + CharacterType(), + PlayFabId() + {} + + GrantCharacterToUserRequest(const GrantCharacterToUserRequest& src) : + PlayFabRequestCommon(), + CharacterName(src.CharacterName), + CharacterType(src.CharacterType), + PlayFabId(src.PlayFabId) + {} + + ~GrantCharacterToUserRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterName"], CharacterName); + FromJsonUtilS(input["CharacterType"], CharacterType); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterName; ToJsonUtilS(CharacterName, each_CharacterName); output["CharacterName"] = each_CharacterName; + Json::Value each_CharacterType; ToJsonUtilS(CharacterType, each_CharacterType); output["CharacterType"] = each_CharacterType; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GrantCharacterToUserResult : public PlayFabResultCommon + { + std::string CharacterId; + + GrantCharacterToUserResult() : + PlayFabResultCommon(), + CharacterId() + {} + + GrantCharacterToUserResult(const GrantCharacterToUserResult& src) : + PlayFabResultCommon(), + CharacterId(src.CharacterId) + {} + + ~GrantCharacterToUserResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + return output; + } + }; + + struct GrantedItemInstance : public PlayFabBaseModel + { + std::string Annotation; + std::list BundleContents; + std::string BundleParent; + std::string CatalogVersion; + std::string CharacterId; + std::map CustomData; + std::string DisplayName; + Boxed Expiration; + std::string ItemClass; + std::string ItemId; + std::string ItemInstanceId; + std::string PlayFabId; + Boxed PurchaseDate; + Boxed RemainingUses; + bool Result; + std::string UnitCurrency; + Uint32 UnitPrice; + Boxed UsesIncrementedBy; + + GrantedItemInstance() : + PlayFabBaseModel(), + Annotation(), + BundleContents(), + BundleParent(), + CatalogVersion(), + CharacterId(), + CustomData(), + DisplayName(), + Expiration(), + ItemClass(), + ItemId(), + ItemInstanceId(), + PlayFabId(), + PurchaseDate(), + RemainingUses(), + Result(), + UnitCurrency(), + UnitPrice(), + UsesIncrementedBy() + {} + + GrantedItemInstance(const GrantedItemInstance& src) : + PlayFabBaseModel(), + Annotation(src.Annotation), + BundleContents(src.BundleContents), + BundleParent(src.BundleParent), + CatalogVersion(src.CatalogVersion), + CharacterId(src.CharacterId), + CustomData(src.CustomData), + DisplayName(src.DisplayName), + Expiration(src.Expiration), + ItemClass(src.ItemClass), + ItemId(src.ItemId), + ItemInstanceId(src.ItemInstanceId), + PlayFabId(src.PlayFabId), + PurchaseDate(src.PurchaseDate), + RemainingUses(src.RemainingUses), + Result(src.Result), + UnitCurrency(src.UnitCurrency), + UnitPrice(src.UnitPrice), + UsesIncrementedBy(src.UsesIncrementedBy) + {} + + ~GrantedItemInstance() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Annotation"], Annotation); + FromJsonUtilS(input["BundleContents"], BundleContents); + FromJsonUtilS(input["BundleParent"], BundleParent); + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["CustomData"], CustomData); + FromJsonUtilS(input["DisplayName"], DisplayName); + FromJsonUtilT(input["Expiration"], Expiration); + FromJsonUtilS(input["ItemClass"], ItemClass); + FromJsonUtilS(input["ItemId"], ItemId); + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilT(input["PurchaseDate"], PurchaseDate); + FromJsonUtilP(input["RemainingUses"], RemainingUses); + FromJsonUtilP(input["Result"], Result); + FromJsonUtilS(input["UnitCurrency"], UnitCurrency); + FromJsonUtilP(input["UnitPrice"], UnitPrice); + FromJsonUtilP(input["UsesIncrementedBy"], UsesIncrementedBy); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Annotation; ToJsonUtilS(Annotation, each_Annotation); output["Annotation"] = each_Annotation; + Json::Value each_BundleContents; ToJsonUtilS(BundleContents, each_BundleContents); output["BundleContents"] = each_BundleContents; + Json::Value each_BundleParent; ToJsonUtilS(BundleParent, each_BundleParent); output["BundleParent"] = each_BundleParent; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_CustomData; ToJsonUtilS(CustomData, each_CustomData); output["CustomData"] = each_CustomData; + Json::Value each_DisplayName; ToJsonUtilS(DisplayName, each_DisplayName); output["DisplayName"] = each_DisplayName; + Json::Value each_Expiration; ToJsonUtilT(Expiration, each_Expiration); output["Expiration"] = each_Expiration; + Json::Value each_ItemClass; ToJsonUtilS(ItemClass, each_ItemClass); output["ItemClass"] = each_ItemClass; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_PurchaseDate; ToJsonUtilT(PurchaseDate, each_PurchaseDate); output["PurchaseDate"] = each_PurchaseDate; + Json::Value each_RemainingUses; ToJsonUtilP(RemainingUses, each_RemainingUses); output["RemainingUses"] = each_RemainingUses; + Json::Value each_Result; ToJsonUtilP(Result, each_Result); output["Result"] = each_Result; + Json::Value each_UnitCurrency; ToJsonUtilS(UnitCurrency, each_UnitCurrency); output["UnitCurrency"] = each_UnitCurrency; + Json::Value each_UnitPrice; ToJsonUtilP(UnitPrice, each_UnitPrice); output["UnitPrice"] = each_UnitPrice; + Json::Value each_UsesIncrementedBy; ToJsonUtilP(UsesIncrementedBy, each_UsesIncrementedBy); output["UsesIncrementedBy"] = each_UsesIncrementedBy; + return output; + } + }; + + struct GrantItemsToCharacterRequest : public PlayFabRequestCommon + { + std::string Annotation; + std::string CatalogVersion; + std::string CharacterId; + std::list ItemIds; + std::string PlayFabId; + + GrantItemsToCharacterRequest() : + PlayFabRequestCommon(), + Annotation(), + CatalogVersion(), + CharacterId(), + ItemIds(), + PlayFabId() + {} + + GrantItemsToCharacterRequest(const GrantItemsToCharacterRequest& src) : + PlayFabRequestCommon(), + Annotation(src.Annotation), + CatalogVersion(src.CatalogVersion), + CharacterId(src.CharacterId), + ItemIds(src.ItemIds), + PlayFabId(src.PlayFabId) + {} + + ~GrantItemsToCharacterRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Annotation"], Annotation); + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["ItemIds"], ItemIds); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Annotation; ToJsonUtilS(Annotation, each_Annotation); output["Annotation"] = each_Annotation; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_ItemIds; ToJsonUtilS(ItemIds, each_ItemIds); output["ItemIds"] = each_ItemIds; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GrantItemsToCharacterResult : public PlayFabResultCommon + { + std::list ItemGrantResults; + + GrantItemsToCharacterResult() : + PlayFabResultCommon(), + ItemGrantResults() + {} + + GrantItemsToCharacterResult(const GrantItemsToCharacterResult& src) : + PlayFabResultCommon(), + ItemGrantResults(src.ItemGrantResults) + {} + + ~GrantItemsToCharacterResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["ItemGrantResults"], ItemGrantResults); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ItemGrantResults; ToJsonUtilO(ItemGrantResults, each_ItemGrantResults); output["ItemGrantResults"] = each_ItemGrantResults; + return output; + } + }; + + struct GrantItemsToUserRequest : public PlayFabRequestCommon + { + std::string Annotation; + std::string CatalogVersion; + std::list ItemIds; + std::string PlayFabId; + + GrantItemsToUserRequest() : + PlayFabRequestCommon(), + Annotation(), + CatalogVersion(), + ItemIds(), + PlayFabId() + {} + + GrantItemsToUserRequest(const GrantItemsToUserRequest& src) : + PlayFabRequestCommon(), + Annotation(src.Annotation), + CatalogVersion(src.CatalogVersion), + ItemIds(src.ItemIds), + PlayFabId(src.PlayFabId) + {} + + ~GrantItemsToUserRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Annotation"], Annotation); + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["ItemIds"], ItemIds); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Annotation; ToJsonUtilS(Annotation, each_Annotation); output["Annotation"] = each_Annotation; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_ItemIds; ToJsonUtilS(ItemIds, each_ItemIds); output["ItemIds"] = each_ItemIds; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GrantItemsToUserResult : public PlayFabResultCommon + { + std::list ItemGrantResults; + + GrantItemsToUserResult() : + PlayFabResultCommon(), + ItemGrantResults() + {} + + GrantItemsToUserResult(const GrantItemsToUserResult& src) : + PlayFabResultCommon(), + ItemGrantResults(src.ItemGrantResults) + {} + + ~GrantItemsToUserResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["ItemGrantResults"], ItemGrantResults); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ItemGrantResults; ToJsonUtilO(ItemGrantResults, each_ItemGrantResults); output["ItemGrantResults"] = each_ItemGrantResults; + return output; + } + }; + + struct ItemGrant : public PlayFabBaseModel + { + std::string Annotation; + std::string CharacterId; + std::map Data; + std::string ItemId; + std::list KeysToRemove; + std::string PlayFabId; + + ItemGrant() : + PlayFabBaseModel(), + Annotation(), + CharacterId(), + Data(), + ItemId(), + KeysToRemove(), + PlayFabId() + {} + + ItemGrant(const ItemGrant& src) : + PlayFabBaseModel(), + Annotation(src.Annotation), + CharacterId(src.CharacterId), + Data(src.Data), + ItemId(src.ItemId), + KeysToRemove(src.KeysToRemove), + PlayFabId(src.PlayFabId) + {} + + ~ItemGrant() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Annotation"], Annotation); + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["Data"], Data); + FromJsonUtilS(input["ItemId"], ItemId); + FromJsonUtilS(input["KeysToRemove"], KeysToRemove); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Annotation; ToJsonUtilS(Annotation, each_Annotation); output["Annotation"] = each_Annotation; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + Json::Value each_ItemId; ToJsonUtilS(ItemId, each_ItemId); output["ItemId"] = each_ItemId; + Json::Value each_KeysToRemove; ToJsonUtilS(KeysToRemove, each_KeysToRemove); output["KeysToRemove"] = each_KeysToRemove; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct GrantItemsToUsersRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::list ItemGrants; + + GrantItemsToUsersRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + ItemGrants() + {} + + GrantItemsToUsersRequest(const GrantItemsToUsersRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + ItemGrants(src.ItemGrants) + {} + + ~GrantItemsToUsersRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilO(input["ItemGrants"], ItemGrants); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_ItemGrants; ToJsonUtilO(ItemGrants, each_ItemGrants); output["ItemGrants"] = each_ItemGrants; + return output; + } + }; + + struct GrantItemsToUsersResult : public PlayFabResultCommon + { + std::list ItemGrantResults; + + GrantItemsToUsersResult() : + PlayFabResultCommon(), + ItemGrantResults() + {} + + GrantItemsToUsersResult(const GrantItemsToUsersResult& src) : + PlayFabResultCommon(), + ItemGrantResults(src.ItemGrantResults) + {} + + ~GrantItemsToUsersResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["ItemGrantResults"], ItemGrantResults); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ItemGrantResults; ToJsonUtilO(ItemGrantResults, each_ItemGrantResults); output["ItemGrantResults"] = each_ItemGrantResults; + return output; + } + }; + + struct ListUsersCharactersRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + + ListUsersCharactersRequest() : + PlayFabRequestCommon(), + PlayFabId() + {} + + ListUsersCharactersRequest(const ListUsersCharactersRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId) + {} + + ~ListUsersCharactersRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct ListUsersCharactersResult : public PlayFabResultCommon + { + std::list Characters; + + ListUsersCharactersResult() : + PlayFabResultCommon(), + Characters() + {} + + ListUsersCharactersResult(const ListUsersCharactersResult& src) : + PlayFabResultCommon(), + Characters(src.Characters) + {} + + ~ListUsersCharactersResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Characters"], Characters); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Characters; ToJsonUtilO(Characters, each_Characters); output["Characters"] = each_Characters; + return output; + } + }; + + struct ModifyCharacterVirtualCurrencyResult : public PlayFabResultCommon + { + Int32 Balance; + std::string VirtualCurrency; + + ModifyCharacterVirtualCurrencyResult() : + PlayFabResultCommon(), + Balance(), + VirtualCurrency() + {} + + ModifyCharacterVirtualCurrencyResult(const ModifyCharacterVirtualCurrencyResult& src) : + PlayFabResultCommon(), + Balance(src.Balance), + VirtualCurrency(src.VirtualCurrency) + {} + + ~ModifyCharacterVirtualCurrencyResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Balance"], Balance); + FromJsonUtilS(input["VirtualCurrency"], VirtualCurrency); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Balance; ToJsonUtilP(Balance, each_Balance); output["Balance"] = each_Balance; + Json::Value each_VirtualCurrency; ToJsonUtilS(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + return output; + } + }; + + struct ModifyItemUsesRequest : public PlayFabRequestCommon + { + std::string ItemInstanceId; + std::string PlayFabId; + Int32 UsesToAdd; + + ModifyItemUsesRequest() : + PlayFabRequestCommon(), + ItemInstanceId(), + PlayFabId(), + UsesToAdd() + {} + + ModifyItemUsesRequest(const ModifyItemUsesRequest& src) : + PlayFabRequestCommon(), + ItemInstanceId(src.ItemInstanceId), + PlayFabId(src.PlayFabId), + UsesToAdd(src.UsesToAdd) + {} + + ~ModifyItemUsesRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilP(input["UsesToAdd"], UsesToAdd); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_UsesToAdd; ToJsonUtilP(UsesToAdd, each_UsesToAdd); output["UsesToAdd"] = each_UsesToAdd; + return output; + } + }; + + struct ModifyItemUsesResult : public PlayFabResultCommon + { + std::string ItemInstanceId; + Int32 RemainingUses; + + ModifyItemUsesResult() : + PlayFabResultCommon(), + ItemInstanceId(), + RemainingUses() + {} + + ModifyItemUsesResult(const ModifyItemUsesResult& src) : + PlayFabResultCommon(), + ItemInstanceId(src.ItemInstanceId), + RemainingUses(src.RemainingUses) + {} + + ~ModifyItemUsesResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilP(input["RemainingUses"], RemainingUses); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_RemainingUses; ToJsonUtilP(RemainingUses, each_RemainingUses); output["RemainingUses"] = each_RemainingUses; + return output; + } + }; + + struct ModifyUserVirtualCurrencyResult : public PlayFabResultCommon + { + Int32 Balance; + Int32 BalanceChange; + std::string PlayFabId; + std::string VirtualCurrency; + + ModifyUserVirtualCurrencyResult() : + PlayFabResultCommon(), + Balance(), + BalanceChange(), + PlayFabId(), + VirtualCurrency() + {} + + ModifyUserVirtualCurrencyResult(const ModifyUserVirtualCurrencyResult& src) : + PlayFabResultCommon(), + Balance(src.Balance), + BalanceChange(src.BalanceChange), + PlayFabId(src.PlayFabId), + VirtualCurrency(src.VirtualCurrency) + {} + + ~ModifyUserVirtualCurrencyResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Balance"], Balance); + FromJsonUtilP(input["BalanceChange"], BalanceChange); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["VirtualCurrency"], VirtualCurrency); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Balance; ToJsonUtilP(Balance, each_Balance); output["Balance"] = each_Balance; + Json::Value each_BalanceChange; ToJsonUtilP(BalanceChange, each_BalanceChange); output["BalanceChange"] = each_BalanceChange; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_VirtualCurrency; ToJsonUtilS(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + return output; + } + }; + + struct MoveItemToCharacterFromCharacterRequest : public PlayFabRequestCommon + { + std::string GivingCharacterId; + std::string ItemInstanceId; + std::string PlayFabId; + std::string ReceivingCharacterId; + + MoveItemToCharacterFromCharacterRequest() : + PlayFabRequestCommon(), + GivingCharacterId(), + ItemInstanceId(), + PlayFabId(), + ReceivingCharacterId() + {} + + MoveItemToCharacterFromCharacterRequest(const MoveItemToCharacterFromCharacterRequest& src) : + PlayFabRequestCommon(), + GivingCharacterId(src.GivingCharacterId), + ItemInstanceId(src.ItemInstanceId), + PlayFabId(src.PlayFabId), + ReceivingCharacterId(src.ReceivingCharacterId) + {} + + ~MoveItemToCharacterFromCharacterRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["GivingCharacterId"], GivingCharacterId); + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["ReceivingCharacterId"], ReceivingCharacterId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GivingCharacterId; ToJsonUtilS(GivingCharacterId, each_GivingCharacterId); output["GivingCharacterId"] = each_GivingCharacterId; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_ReceivingCharacterId; ToJsonUtilS(ReceivingCharacterId, each_ReceivingCharacterId); output["ReceivingCharacterId"] = each_ReceivingCharacterId; + return output; + } + }; + + struct MoveItemToCharacterFromCharacterResult : public PlayFabResultCommon + { + + MoveItemToCharacterFromCharacterResult() : + PlayFabResultCommon() + {} + + MoveItemToCharacterFromCharacterResult(const MoveItemToCharacterFromCharacterResult&) : + PlayFabResultCommon() + {} + + ~MoveItemToCharacterFromCharacterResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct MoveItemToCharacterFromUserRequest : public PlayFabRequestCommon + { + std::string CharacterId; + std::string ItemInstanceId; + std::string PlayFabId; + + MoveItemToCharacterFromUserRequest() : + PlayFabRequestCommon(), + CharacterId(), + ItemInstanceId(), + PlayFabId() + {} + + MoveItemToCharacterFromUserRequest(const MoveItemToCharacterFromUserRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + ItemInstanceId(src.ItemInstanceId), + PlayFabId(src.PlayFabId) + {} + + ~MoveItemToCharacterFromUserRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct MoveItemToCharacterFromUserResult : public PlayFabResultCommon + { + + MoveItemToCharacterFromUserResult() : + PlayFabResultCommon() + {} + + MoveItemToCharacterFromUserResult(const MoveItemToCharacterFromUserResult&) : + PlayFabResultCommon() + {} + + ~MoveItemToCharacterFromUserResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct MoveItemToUserFromCharacterRequest : public PlayFabRequestCommon + { + std::string CharacterId; + std::string ItemInstanceId; + std::string PlayFabId; + + MoveItemToUserFromCharacterRequest() : + PlayFabRequestCommon(), + CharacterId(), + ItemInstanceId(), + PlayFabId() + {} + + MoveItemToUserFromCharacterRequest(const MoveItemToUserFromCharacterRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + ItemInstanceId(src.ItemInstanceId), + PlayFabId(src.PlayFabId) + {} + + ~MoveItemToUserFromCharacterRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct MoveItemToUserFromCharacterResult : public PlayFabResultCommon + { + + MoveItemToUserFromCharacterResult() : + PlayFabResultCommon() + {} + + MoveItemToUserFromCharacterResult(const MoveItemToUserFromCharacterResult&) : + PlayFabResultCommon() + {} + + ~MoveItemToUserFromCharacterResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct NotifyMatchmakerPlayerLeftRequest : public PlayFabRequestCommon + { + std::string LobbyId; + std::string PlayFabId; + + NotifyMatchmakerPlayerLeftRequest() : + PlayFabRequestCommon(), + LobbyId(), + PlayFabId() + {} + + NotifyMatchmakerPlayerLeftRequest(const NotifyMatchmakerPlayerLeftRequest& src) : + PlayFabRequestCommon(), + LobbyId(src.LobbyId), + PlayFabId(src.PlayFabId) + {} + + ~NotifyMatchmakerPlayerLeftRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["LobbyId"], LobbyId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LobbyId; ToJsonUtilS(LobbyId, each_LobbyId); output["LobbyId"] = each_LobbyId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct NotifyMatchmakerPlayerLeftResult : public PlayFabResultCommon + { + Boxed PlayerState; + + NotifyMatchmakerPlayerLeftResult() : + PlayFabResultCommon(), + PlayerState() + {} + + NotifyMatchmakerPlayerLeftResult(const NotifyMatchmakerPlayerLeftResult& src) : + PlayFabResultCommon(), + PlayerState(src.PlayerState) + {} + + ~NotifyMatchmakerPlayerLeftResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilE(input["PlayerState"], PlayerState); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayerState; ToJsonUtilE(PlayerState, each_PlayerState); output["PlayerState"] = each_PlayerState; + return output; + } + }; + + struct PushNotificationPackage : public PlayFabBaseModel + { + Int32 Badge; + std::string CustomData; + std::string Icon; + std::string Message; + std::string Sound; + std::string Title; + + PushNotificationPackage() : + PlayFabBaseModel(), + Badge(), + CustomData(), + Icon(), + Message(), + Sound(), + Title() + {} + + PushNotificationPackage(const PushNotificationPackage& src) : + PlayFabBaseModel(), + Badge(src.Badge), + CustomData(src.CustomData), + Icon(src.Icon), + Message(src.Message), + Sound(src.Sound), + Title(src.Title) + {} + + ~PushNotificationPackage() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Badge"], Badge); + FromJsonUtilS(input["CustomData"], CustomData); + FromJsonUtilS(input["Icon"], Icon); + FromJsonUtilS(input["Message"], Message); + FromJsonUtilS(input["Sound"], Sound); + FromJsonUtilS(input["Title"], Title); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Badge; ToJsonUtilP(Badge, each_Badge); output["Badge"] = each_Badge; + Json::Value each_CustomData; ToJsonUtilS(CustomData, each_CustomData); output["CustomData"] = each_CustomData; + Json::Value each_Icon; ToJsonUtilS(Icon, each_Icon); output["Icon"] = each_Icon; + Json::Value each_Message; ToJsonUtilS(Message, each_Message); output["Message"] = each_Message; + Json::Value each_Sound; ToJsonUtilS(Sound, each_Sound); output["Sound"] = each_Sound; + Json::Value each_Title; ToJsonUtilS(Title, each_Title); output["Title"] = each_Title; + return output; + } + }; + + struct RedeemCouponRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::string CharacterId; + std::string CouponCode; + std::string PlayFabId; + + RedeemCouponRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + CharacterId(), + CouponCode(), + PlayFabId() + {} + + RedeemCouponRequest(const RedeemCouponRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + CharacterId(src.CharacterId), + CouponCode(src.CouponCode), + PlayFabId(src.PlayFabId) + {} + + ~RedeemCouponRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["CouponCode"], CouponCode); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_CouponCode; ToJsonUtilS(CouponCode, each_CouponCode); output["CouponCode"] = each_CouponCode; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct RedeemCouponResult : public PlayFabResultCommon + { + std::list GrantedItems; + + RedeemCouponResult() : + PlayFabResultCommon(), + GrantedItems() + {} + + RedeemCouponResult(const RedeemCouponResult& src) : + PlayFabResultCommon(), + GrantedItems(src.GrantedItems) + {} + + ~RedeemCouponResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["GrantedItems"], GrantedItems); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GrantedItems; ToJsonUtilO(GrantedItems, each_GrantedItems); output["GrantedItems"] = each_GrantedItems; + return output; + } + }; + + struct RedeemMatchmakerTicketRequest : public PlayFabRequestCommon + { + std::string LobbyId; + std::string Ticket; + + RedeemMatchmakerTicketRequest() : + PlayFabRequestCommon(), + LobbyId(), + Ticket() + {} + + RedeemMatchmakerTicketRequest(const RedeemMatchmakerTicketRequest& src) : + PlayFabRequestCommon(), + LobbyId(src.LobbyId), + Ticket(src.Ticket) + {} + + ~RedeemMatchmakerTicketRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["LobbyId"], LobbyId); + FromJsonUtilS(input["Ticket"], Ticket); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LobbyId; ToJsonUtilS(LobbyId, each_LobbyId); output["LobbyId"] = each_LobbyId; + Json::Value each_Ticket; ToJsonUtilS(Ticket, each_Ticket); output["Ticket"] = each_Ticket; + return output; + } + }; + + struct RedeemMatchmakerTicketResult : public PlayFabResultCommon + { + std::string Error; + bool TicketIsValid; + Boxed UserInfo; + + RedeemMatchmakerTicketResult() : + PlayFabResultCommon(), + Error(), + TicketIsValid(), + UserInfo() + {} + + RedeemMatchmakerTicketResult(const RedeemMatchmakerTicketResult& src) : + PlayFabResultCommon(), + Error(src.Error), + TicketIsValid(src.TicketIsValid), + UserInfo(src.UserInfo) + {} + + ~RedeemMatchmakerTicketResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Error"], Error); + FromJsonUtilP(input["TicketIsValid"], TicketIsValid); + FromJsonUtilO(input["UserInfo"], UserInfo); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Error; ToJsonUtilS(Error, each_Error); output["Error"] = each_Error; + Json::Value each_TicketIsValid; ToJsonUtilP(TicketIsValid, each_TicketIsValid); output["TicketIsValid"] = each_TicketIsValid; + Json::Value each_UserInfo; ToJsonUtilO(UserInfo, each_UserInfo); output["UserInfo"] = each_UserInfo; + return output; + } + }; + + struct RefreshGameServerInstanceHeartbeatRequest : public PlayFabRequestCommon + { + std::string LobbyId; + + RefreshGameServerInstanceHeartbeatRequest() : + PlayFabRequestCommon(), + LobbyId() + {} + + RefreshGameServerInstanceHeartbeatRequest(const RefreshGameServerInstanceHeartbeatRequest& src) : + PlayFabRequestCommon(), + LobbyId(src.LobbyId) + {} + + ~RefreshGameServerInstanceHeartbeatRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["LobbyId"], LobbyId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LobbyId; ToJsonUtilS(LobbyId, each_LobbyId); output["LobbyId"] = each_LobbyId; + return output; + } + }; + + struct RefreshGameServerInstanceHeartbeatResult : public PlayFabResultCommon + { + + RefreshGameServerInstanceHeartbeatResult() : + PlayFabResultCommon() + {} + + RefreshGameServerInstanceHeartbeatResult(const RefreshGameServerInstanceHeartbeatResult&) : + PlayFabResultCommon() + {} + + ~RefreshGameServerInstanceHeartbeatResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct RegisterGameRequest : public PlayFabRequestCommon + { + std::string Build; + std::string GameMode; + std::string LobbyId; + Region pfRegion; + std::string ServerHost; + std::string ServerIPV6Address; + std::string ServerPort; + std::map Tags; + + RegisterGameRequest() : + PlayFabRequestCommon(), + Build(), + GameMode(), + LobbyId(), + pfRegion(), + ServerHost(), + ServerIPV6Address(), + ServerPort(), + Tags() + {} + + RegisterGameRequest(const RegisterGameRequest& src) : + PlayFabRequestCommon(), + Build(src.Build), + GameMode(src.GameMode), + LobbyId(src.LobbyId), + pfRegion(src.pfRegion), + ServerHost(src.ServerHost), + ServerIPV6Address(src.ServerIPV6Address), + ServerPort(src.ServerPort), + Tags(src.Tags) + {} + + ~RegisterGameRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Build"], Build); + FromJsonUtilS(input["GameMode"], GameMode); + FromJsonUtilS(input["LobbyId"], LobbyId); + FromJsonEnum(input["pfRegion"], pfRegion); + FromJsonUtilS(input["ServerHost"], ServerHost); + FromJsonUtilS(input["ServerIPV6Address"], ServerIPV6Address); + FromJsonUtilS(input["ServerPort"], ServerPort); + FromJsonUtilS(input["Tags"], Tags); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Build; ToJsonUtilS(Build, each_Build); output["Build"] = each_Build; + Json::Value each_GameMode; ToJsonUtilS(GameMode, each_GameMode); output["GameMode"] = each_GameMode; + Json::Value each_LobbyId; ToJsonUtilS(LobbyId, each_LobbyId); output["LobbyId"] = each_LobbyId; + Json::Value each_pfRegion; ToJsonEnum(pfRegion, each_pfRegion); output["Region"] = each_pfRegion; + Json::Value each_ServerHost; ToJsonUtilS(ServerHost, each_ServerHost); output["ServerHost"] = each_ServerHost; + Json::Value each_ServerIPV6Address; ToJsonUtilS(ServerIPV6Address, each_ServerIPV6Address); output["ServerIPV6Address"] = each_ServerIPV6Address; + Json::Value each_ServerPort; ToJsonUtilS(ServerPort, each_ServerPort); output["ServerPort"] = each_ServerPort; + Json::Value each_Tags; ToJsonUtilS(Tags, each_Tags); output["Tags"] = each_Tags; + return output; + } + }; + + struct RegisterGameResponse : public PlayFabResultCommon + { + std::string LobbyId; + + RegisterGameResponse() : + PlayFabResultCommon(), + LobbyId() + {} + + RegisterGameResponse(const RegisterGameResponse& src) : + PlayFabResultCommon(), + LobbyId(src.LobbyId) + {} + + ~RegisterGameResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["LobbyId"], LobbyId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LobbyId; ToJsonUtilS(LobbyId, each_LobbyId); output["LobbyId"] = each_LobbyId; + return output; + } + }; + + struct RemoveFriendRequest : public PlayFabRequestCommon + { + std::string FriendPlayFabId; + std::string PlayFabId; + + RemoveFriendRequest() : + PlayFabRequestCommon(), + FriendPlayFabId(), + PlayFabId() + {} + + RemoveFriendRequest(const RemoveFriendRequest& src) : + PlayFabRequestCommon(), + FriendPlayFabId(src.FriendPlayFabId), + PlayFabId(src.PlayFabId) + {} + + ~RemoveFriendRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FriendPlayFabId"], FriendPlayFabId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FriendPlayFabId; ToJsonUtilS(FriendPlayFabId, each_FriendPlayFabId); output["FriendPlayFabId"] = each_FriendPlayFabId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct RemovePlayerTagRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + std::string TagName; + + RemovePlayerTagRequest() : + PlayFabRequestCommon(), + PlayFabId(), + TagName() + {} + + RemovePlayerTagRequest(const RemovePlayerTagRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId), + TagName(src.TagName) + {} + + ~RemovePlayerTagRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["TagName"], TagName); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_TagName; ToJsonUtilS(TagName, each_TagName); output["TagName"] = each_TagName; + return output; + } + }; + + struct RemovePlayerTagResult : public PlayFabResultCommon + { + + RemovePlayerTagResult() : + PlayFabResultCommon() + {} + + RemovePlayerTagResult(const RemovePlayerTagResult&) : + PlayFabResultCommon() + {} + + ~RemovePlayerTagResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct RemoveSharedGroupMembersRequest : public PlayFabRequestCommon + { + std::list PlayFabIds; + std::string SharedGroupId; + + RemoveSharedGroupMembersRequest() : + PlayFabRequestCommon(), + PlayFabIds(), + SharedGroupId() + {} + + RemoveSharedGroupMembersRequest(const RemoveSharedGroupMembersRequest& src) : + PlayFabRequestCommon(), + PlayFabIds(src.PlayFabIds), + SharedGroupId(src.SharedGroupId) + {} + + ~RemoveSharedGroupMembersRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabIds"], PlayFabIds); + FromJsonUtilS(input["SharedGroupId"], SharedGroupId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabIds; ToJsonUtilS(PlayFabIds, each_PlayFabIds); output["PlayFabIds"] = each_PlayFabIds; + Json::Value each_SharedGroupId; ToJsonUtilS(SharedGroupId, each_SharedGroupId); output["SharedGroupId"] = each_SharedGroupId; + return output; + } + }; + + struct RemoveSharedGroupMembersResult : public PlayFabResultCommon + { + + RemoveSharedGroupMembersResult() : + PlayFabResultCommon() + {} + + RemoveSharedGroupMembersResult(const RemoveSharedGroupMembersResult&) : + PlayFabResultCommon() + {} + + ~RemoveSharedGroupMembersResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct ReportPlayerServerRequest : public PlayFabRequestCommon + { + std::string Comment; + std::string ReporteeId; + std::string ReporterId; + + ReportPlayerServerRequest() : + PlayFabRequestCommon(), + Comment(), + ReporteeId(), + ReporterId() + {} + + ReportPlayerServerRequest(const ReportPlayerServerRequest& src) : + PlayFabRequestCommon(), + Comment(src.Comment), + ReporteeId(src.ReporteeId), + ReporterId(src.ReporterId) + {} + + ~ReportPlayerServerRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Comment"], Comment); + FromJsonUtilS(input["ReporteeId"], ReporteeId); + FromJsonUtilS(input["ReporterId"], ReporterId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Comment; ToJsonUtilS(Comment, each_Comment); output["Comment"] = each_Comment; + Json::Value each_ReporteeId; ToJsonUtilS(ReporteeId, each_ReporteeId); output["ReporteeId"] = each_ReporteeId; + Json::Value each_ReporterId; ToJsonUtilS(ReporterId, each_ReporterId); output["ReporterId"] = each_ReporterId; + return output; + } + }; + + struct ReportPlayerServerResult : public PlayFabResultCommon + { + Int32 SubmissionsRemaining; + + ReportPlayerServerResult() : + PlayFabResultCommon(), + SubmissionsRemaining() + {} + + ReportPlayerServerResult(const ReportPlayerServerResult& src) : + PlayFabResultCommon(), + SubmissionsRemaining(src.SubmissionsRemaining) + {} + + ~ReportPlayerServerResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["SubmissionsRemaining"], SubmissionsRemaining); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_SubmissionsRemaining; ToJsonUtilP(SubmissionsRemaining, each_SubmissionsRemaining); output["SubmissionsRemaining"] = each_SubmissionsRemaining; + return output; + } + }; + + struct RevokeAllBansForUserRequest : public PlayFabRequestCommon + { + std::string PlayFabId; + + RevokeAllBansForUserRequest() : + PlayFabRequestCommon(), + PlayFabId() + {} + + RevokeAllBansForUserRequest(const RevokeAllBansForUserRequest& src) : + PlayFabRequestCommon(), + PlayFabId(src.PlayFabId) + {} + + ~RevokeAllBansForUserRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct RevokeAllBansForUserResult : public PlayFabResultCommon + { + std::list BanData; + + RevokeAllBansForUserResult() : + PlayFabResultCommon(), + BanData() + {} + + RevokeAllBansForUserResult(const RevokeAllBansForUserResult& src) : + PlayFabResultCommon(), + BanData(src.BanData) + {} + + ~RevokeAllBansForUserResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["BanData"], BanData); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BanData; ToJsonUtilO(BanData, each_BanData); output["BanData"] = each_BanData; + return output; + } + }; + + struct RevokeBansRequest : public PlayFabRequestCommon + { + std::list BanIds; + + RevokeBansRequest() : + PlayFabRequestCommon(), + BanIds() + {} + + RevokeBansRequest(const RevokeBansRequest& src) : + PlayFabRequestCommon(), + BanIds(src.BanIds) + {} + + ~RevokeBansRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["BanIds"], BanIds); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BanIds; ToJsonUtilS(BanIds, each_BanIds); output["BanIds"] = each_BanIds; + return output; + } + }; + + struct RevokeBansResult : public PlayFabResultCommon + { + std::list BanData; + + RevokeBansResult() : + PlayFabResultCommon(), + BanData() + {} + + RevokeBansResult(const RevokeBansResult& src) : + PlayFabResultCommon(), + BanData(src.BanData) + {} + + ~RevokeBansResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["BanData"], BanData); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BanData; ToJsonUtilO(BanData, each_BanData); output["BanData"] = each_BanData; + return output; + } + }; + + struct RevokeInventoryItem : public PlayFabBaseModel + { + std::string CharacterId; + std::string ItemInstanceId; + std::string PlayFabId; + + RevokeInventoryItem() : + PlayFabBaseModel(), + CharacterId(), + ItemInstanceId(), + PlayFabId() + {} + + RevokeInventoryItem(const RevokeInventoryItem& src) : + PlayFabBaseModel(), + CharacterId(src.CharacterId), + ItemInstanceId(src.ItemInstanceId), + PlayFabId(src.PlayFabId) + {} + + ~RevokeInventoryItem() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct RevokeInventoryItemRequest : public PlayFabRequestCommon + { + std::string CharacterId; + std::string ItemInstanceId; + std::string PlayFabId; + + RevokeInventoryItemRequest() : + PlayFabRequestCommon(), + CharacterId(), + ItemInstanceId(), + PlayFabId() + {} + + RevokeInventoryItemRequest(const RevokeInventoryItemRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + ItemInstanceId(src.ItemInstanceId), + PlayFabId(src.PlayFabId) + {} + + ~RevokeInventoryItemRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct RevokeInventoryItemsRequest : public PlayFabRequestCommon + { + std::list Items; + + RevokeInventoryItemsRequest() : + PlayFabRequestCommon(), + Items() + {} + + RevokeInventoryItemsRequest(const RevokeInventoryItemsRequest& src) : + PlayFabRequestCommon(), + Items(src.Items) + {} + + ~RevokeInventoryItemsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Items"], Items); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Items; ToJsonUtilO(Items, each_Items); output["Items"] = each_Items; + return output; + } + }; + + struct RevokeItemError : public PlayFabBaseModel + { + Boxed Error; + Boxed Item; + + RevokeItemError() : + PlayFabBaseModel(), + Error(), + Item() + {} + + RevokeItemError(const RevokeItemError& src) : + PlayFabBaseModel(), + Error(src.Error), + Item(src.Item) + {} + + ~RevokeItemError() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilE(input["Error"], Error); + FromJsonUtilO(input["Item"], Item); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Error; ToJsonUtilE(Error, each_Error); output["Error"] = each_Error; + Json::Value each_Item; ToJsonUtilO(Item, each_Item); output["Item"] = each_Item; + return output; + } + }; + + struct RevokeInventoryItemsResult : public PlayFabResultCommon + { + std::list Errors; + + RevokeInventoryItemsResult() : + PlayFabResultCommon(), + Errors() + {} + + RevokeInventoryItemsResult(const RevokeInventoryItemsResult& src) : + PlayFabResultCommon(), + Errors(src.Errors) + {} + + ~RevokeInventoryItemsResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Errors"], Errors); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Errors; ToJsonUtilO(Errors, each_Errors); output["Errors"] = each_Errors; + return output; + } + }; + + struct RevokeInventoryResult : public PlayFabResultCommon + { + + RevokeInventoryResult() : + PlayFabResultCommon() + {} + + RevokeInventoryResult(const RevokeInventoryResult&) : + PlayFabResultCommon() + {} + + ~RevokeInventoryResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SendCustomAccountRecoveryEmailRequest : public PlayFabRequestCommon + { + std::string Email; + std::string EmailTemplateId; + std::string Username; + + SendCustomAccountRecoveryEmailRequest() : + PlayFabRequestCommon(), + Email(), + EmailTemplateId(), + Username() + {} + + SendCustomAccountRecoveryEmailRequest(const SendCustomAccountRecoveryEmailRequest& src) : + PlayFabRequestCommon(), + Email(src.Email), + EmailTemplateId(src.EmailTemplateId), + Username(src.Username) + {} + + ~SendCustomAccountRecoveryEmailRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Email"], Email); + FromJsonUtilS(input["EmailTemplateId"], EmailTemplateId); + FromJsonUtilS(input["Username"], Username); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Email; ToJsonUtilS(Email, each_Email); output["Email"] = each_Email; + Json::Value each_EmailTemplateId; ToJsonUtilS(EmailTemplateId, each_EmailTemplateId); output["EmailTemplateId"] = each_EmailTemplateId; + Json::Value each_Username; ToJsonUtilS(Username, each_Username); output["Username"] = each_Username; + return output; + } + }; + + struct SendCustomAccountRecoveryEmailResult : public PlayFabResultCommon + { + + SendCustomAccountRecoveryEmailResult() : + PlayFabResultCommon() + {} + + SendCustomAccountRecoveryEmailResult(const SendCustomAccountRecoveryEmailResult&) : + PlayFabResultCommon() + {} + + ~SendCustomAccountRecoveryEmailResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SendEmailFromTemplateRequest : public PlayFabRequestCommon + { + std::string EmailTemplateId; + std::string PlayFabId; + + SendEmailFromTemplateRequest() : + PlayFabRequestCommon(), + EmailTemplateId(), + PlayFabId() + {} + + SendEmailFromTemplateRequest(const SendEmailFromTemplateRequest& src) : + PlayFabRequestCommon(), + EmailTemplateId(src.EmailTemplateId), + PlayFabId(src.PlayFabId) + {} + + ~SendEmailFromTemplateRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["EmailTemplateId"], EmailTemplateId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_EmailTemplateId; ToJsonUtilS(EmailTemplateId, each_EmailTemplateId); output["EmailTemplateId"] = each_EmailTemplateId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct SendEmailFromTemplateResult : public PlayFabResultCommon + { + + SendEmailFromTemplateResult() : + PlayFabResultCommon() + {} + + SendEmailFromTemplateResult(const SendEmailFromTemplateResult&) : + PlayFabResultCommon() + {} + + ~SendEmailFromTemplateResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SendPushNotificationRequest : public PlayFabRequestCommon + { + std::list AdvancedPlatformDelivery; + std::string Message; + Boxed Package; + std::string Recipient; + std::string Subject; + std::list TargetPlatforms; + + SendPushNotificationRequest() : + PlayFabRequestCommon(), + AdvancedPlatformDelivery(), + Message(), + Package(), + Recipient(), + Subject(), + TargetPlatforms() + {} + + SendPushNotificationRequest(const SendPushNotificationRequest& src) : + PlayFabRequestCommon(), + AdvancedPlatformDelivery(src.AdvancedPlatformDelivery), + Message(src.Message), + Package(src.Package), + Recipient(src.Recipient), + Subject(src.Subject), + TargetPlatforms(src.TargetPlatforms) + {} + + ~SendPushNotificationRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["AdvancedPlatformDelivery"], AdvancedPlatformDelivery); + FromJsonUtilS(input["Message"], Message); + FromJsonUtilO(input["Package"], Package); + FromJsonUtilS(input["Recipient"], Recipient); + FromJsonUtilS(input["Subject"], Subject); + FromJsonUtilE(input["TargetPlatforms"], TargetPlatforms); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_AdvancedPlatformDelivery; ToJsonUtilO(AdvancedPlatformDelivery, each_AdvancedPlatformDelivery); output["AdvancedPlatformDelivery"] = each_AdvancedPlatformDelivery; + Json::Value each_Message; ToJsonUtilS(Message, each_Message); output["Message"] = each_Message; + Json::Value each_Package; ToJsonUtilO(Package, each_Package); output["Package"] = each_Package; + Json::Value each_Recipient; ToJsonUtilS(Recipient, each_Recipient); output["Recipient"] = each_Recipient; + Json::Value each_Subject; ToJsonUtilS(Subject, each_Subject); output["Subject"] = each_Subject; + Json::Value each_TargetPlatforms; ToJsonUtilE(TargetPlatforms, each_TargetPlatforms); output["TargetPlatforms"] = each_TargetPlatforms; + return output; + } + }; + + struct SendPushNotificationResult : public PlayFabResultCommon + { + + SendPushNotificationResult() : + PlayFabResultCommon() + {} + + SendPushNotificationResult(const SendPushNotificationResult&) : + PlayFabResultCommon() + {} + + ~SendPushNotificationResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SetFriendTagsRequest : public PlayFabRequestCommon + { + std::string FriendPlayFabId; + std::string PlayFabId; + std::list Tags; + + SetFriendTagsRequest() : + PlayFabRequestCommon(), + FriendPlayFabId(), + PlayFabId(), + Tags() + {} + + SetFriendTagsRequest(const SetFriendTagsRequest& src) : + PlayFabRequestCommon(), + FriendPlayFabId(src.FriendPlayFabId), + PlayFabId(src.PlayFabId), + Tags(src.Tags) + {} + + ~SetFriendTagsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["FriendPlayFabId"], FriendPlayFabId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["Tags"], Tags); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_FriendPlayFabId; ToJsonUtilS(FriendPlayFabId, each_FriendPlayFabId); output["FriendPlayFabId"] = each_FriendPlayFabId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Tags; ToJsonUtilS(Tags, each_Tags); output["Tags"] = each_Tags; + return output; + } + }; + + struct SetGameServerInstanceDataRequest : public PlayFabRequestCommon + { + std::string GameServerData; + std::string LobbyId; + + SetGameServerInstanceDataRequest() : + PlayFabRequestCommon(), + GameServerData(), + LobbyId() + {} + + SetGameServerInstanceDataRequest(const SetGameServerInstanceDataRequest& src) : + PlayFabRequestCommon(), + GameServerData(src.GameServerData), + LobbyId(src.LobbyId) + {} + + ~SetGameServerInstanceDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["GameServerData"], GameServerData); + FromJsonUtilS(input["LobbyId"], LobbyId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GameServerData; ToJsonUtilS(GameServerData, each_GameServerData); output["GameServerData"] = each_GameServerData; + Json::Value each_LobbyId; ToJsonUtilS(LobbyId, each_LobbyId); output["LobbyId"] = each_LobbyId; + return output; + } + }; + + struct SetGameServerInstanceDataResult : public PlayFabResultCommon + { + + SetGameServerInstanceDataResult() : + PlayFabResultCommon() + {} + + SetGameServerInstanceDataResult(const SetGameServerInstanceDataResult&) : + PlayFabResultCommon() + {} + + ~SetGameServerInstanceDataResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SetGameServerInstanceStateRequest : public PlayFabRequestCommon + { + std::string LobbyId; + GameInstanceState State; + + SetGameServerInstanceStateRequest() : + PlayFabRequestCommon(), + LobbyId(), + State() + {} + + SetGameServerInstanceStateRequest(const SetGameServerInstanceStateRequest& src) : + PlayFabRequestCommon(), + LobbyId(src.LobbyId), + State(src.State) + {} + + ~SetGameServerInstanceStateRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["LobbyId"], LobbyId); + FromJsonEnum(input["State"], State); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LobbyId; ToJsonUtilS(LobbyId, each_LobbyId); output["LobbyId"] = each_LobbyId; + Json::Value each_State; ToJsonEnum(State, each_State); output["State"] = each_State; + return output; + } + }; + + struct SetGameServerInstanceStateResult : public PlayFabResultCommon + { + + SetGameServerInstanceStateResult() : + PlayFabResultCommon() + {} + + SetGameServerInstanceStateResult(const SetGameServerInstanceStateResult&) : + PlayFabResultCommon() + {} + + ~SetGameServerInstanceStateResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SetGameServerInstanceTagsRequest : public PlayFabRequestCommon + { + std::string LobbyId; + std::map Tags; + + SetGameServerInstanceTagsRequest() : + PlayFabRequestCommon(), + LobbyId(), + Tags() + {} + + SetGameServerInstanceTagsRequest(const SetGameServerInstanceTagsRequest& src) : + PlayFabRequestCommon(), + LobbyId(src.LobbyId), + Tags(src.Tags) + {} + + ~SetGameServerInstanceTagsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["LobbyId"], LobbyId); + FromJsonUtilS(input["Tags"], Tags); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_LobbyId; ToJsonUtilS(LobbyId, each_LobbyId); output["LobbyId"] = each_LobbyId; + Json::Value each_Tags; ToJsonUtilS(Tags, each_Tags); output["Tags"] = each_Tags; + return output; + } + }; + + struct SetGameServerInstanceTagsResult : public PlayFabResultCommon + { + + SetGameServerInstanceTagsResult() : + PlayFabResultCommon() + {} + + SetGameServerInstanceTagsResult(const SetGameServerInstanceTagsResult&) : + PlayFabResultCommon() + {} + + ~SetGameServerInstanceTagsResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SetPlayerSecretRequest : public PlayFabRequestCommon + { + std::string PlayerSecret; + std::string PlayFabId; + + SetPlayerSecretRequest() : + PlayFabRequestCommon(), + PlayerSecret(), + PlayFabId() + {} + + SetPlayerSecretRequest(const SetPlayerSecretRequest& src) : + PlayFabRequestCommon(), + PlayerSecret(src.PlayerSecret), + PlayFabId(src.PlayFabId) + {} + + ~SetPlayerSecretRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["PlayerSecret"], PlayerSecret); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_PlayerSecret; ToJsonUtilS(PlayerSecret, each_PlayerSecret); output["PlayerSecret"] = each_PlayerSecret; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct SetPlayerSecretResult : public PlayFabResultCommon + { + + SetPlayerSecretResult() : + PlayFabResultCommon() + {} + + SetPlayerSecretResult(const SetPlayerSecretResult&) : + PlayFabResultCommon() + {} + + ~SetPlayerSecretResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SetPublisherDataRequest : public PlayFabRequestCommon + { + std::string Key; + std::string Value; + + SetPublisherDataRequest() : + PlayFabRequestCommon(), + Key(), + Value() + {} + + SetPublisherDataRequest(const SetPublisherDataRequest& src) : + PlayFabRequestCommon(), + Key(src.Key), + Value(src.Value) + {} + + ~SetPublisherDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Key"], Key); + FromJsonUtilS(input["Value"], Value); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Key; ToJsonUtilS(Key, each_Key); output["Key"] = each_Key; + Json::Value each_Value; ToJsonUtilS(Value, each_Value); output["Value"] = each_Value; + return output; + } + }; + + struct SetPublisherDataResult : public PlayFabResultCommon + { + + SetPublisherDataResult() : + PlayFabResultCommon() + {} + + SetPublisherDataResult(const SetPublisherDataResult&) : + PlayFabResultCommon() + {} + + ~SetPublisherDataResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct SetTitleDataRequest : public PlayFabRequestCommon + { + std::string Key; + std::string Value; + + SetTitleDataRequest() : + PlayFabRequestCommon(), + Key(), + Value() + {} + + SetTitleDataRequest(const SetTitleDataRequest& src) : + PlayFabRequestCommon(), + Key(src.Key), + Value(src.Value) + {} + + ~SetTitleDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Key"], Key); + FromJsonUtilS(input["Value"], Value); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Key; ToJsonUtilS(Key, each_Key); output["Key"] = each_Key; + Json::Value each_Value; ToJsonUtilS(Value, each_Value); output["Value"] = each_Value; + return output; + } + }; + + struct SetTitleDataResult : public PlayFabResultCommon + { + + SetTitleDataResult() : + PlayFabResultCommon() + {} + + SetTitleDataResult(const SetTitleDataResult&) : + PlayFabResultCommon() + {} + + ~SetTitleDataResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct StatisticUpdate : public PlayFabBaseModel + { + std::string StatisticName; + Int32 Value; + Boxed Version; + + StatisticUpdate() : + PlayFabBaseModel(), + StatisticName(), + Value(), + Version() + {} + + StatisticUpdate(const StatisticUpdate& src) : + PlayFabBaseModel(), + StatisticName(src.StatisticName), + Value(src.Value), + Version(src.Version) + {} + + ~StatisticUpdate() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["StatisticName"], StatisticName); + FromJsonUtilP(input["Value"], Value); + FromJsonUtilP(input["Version"], Version); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_StatisticName; ToJsonUtilS(StatisticName, each_StatisticName); output["StatisticName"] = each_StatisticName; + Json::Value each_Value; ToJsonUtilP(Value, each_Value); output["Value"] = each_Value; + Json::Value each_Version; ToJsonUtilP(Version, each_Version); output["Version"] = each_Version; + return output; + } + }; + + struct SubtractCharacterVirtualCurrencyRequest : public PlayFabRequestCommon + { + Int32 Amount; + std::string CharacterId; + std::string PlayFabId; + std::string VirtualCurrency; + + SubtractCharacterVirtualCurrencyRequest() : + PlayFabRequestCommon(), + Amount(), + CharacterId(), + PlayFabId(), + VirtualCurrency() + {} + + SubtractCharacterVirtualCurrencyRequest(const SubtractCharacterVirtualCurrencyRequest& src) : + PlayFabRequestCommon(), + Amount(src.Amount), + CharacterId(src.CharacterId), + PlayFabId(src.PlayFabId), + VirtualCurrency(src.VirtualCurrency) + {} + + ~SubtractCharacterVirtualCurrencyRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Amount"], Amount); + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["VirtualCurrency"], VirtualCurrency); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Amount; ToJsonUtilP(Amount, each_Amount); output["Amount"] = each_Amount; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_VirtualCurrency; ToJsonUtilS(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + return output; + } + }; + + struct SubtractUserVirtualCurrencyRequest : public PlayFabRequestCommon + { + Int32 Amount; + std::string PlayFabId; + std::string VirtualCurrency; + + SubtractUserVirtualCurrencyRequest() : + PlayFabRequestCommon(), + Amount(), + PlayFabId(), + VirtualCurrency() + {} + + SubtractUserVirtualCurrencyRequest(const SubtractUserVirtualCurrencyRequest& src) : + PlayFabRequestCommon(), + Amount(src.Amount), + PlayFabId(src.PlayFabId), + VirtualCurrency(src.VirtualCurrency) + {} + + ~SubtractUserVirtualCurrencyRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Amount"], Amount); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilS(input["VirtualCurrency"], VirtualCurrency); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Amount; ToJsonUtilP(Amount, each_Amount); output["Amount"] = each_Amount; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_VirtualCurrency; ToJsonUtilS(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + return output; + } + }; + + struct UnlockContainerInstanceRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::string CharacterId; + std::string ContainerItemInstanceId; + std::string KeyItemInstanceId; + std::string PlayFabId; + + UnlockContainerInstanceRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + CharacterId(), + ContainerItemInstanceId(), + KeyItemInstanceId(), + PlayFabId() + {} + + UnlockContainerInstanceRequest(const UnlockContainerInstanceRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + CharacterId(src.CharacterId), + ContainerItemInstanceId(src.ContainerItemInstanceId), + KeyItemInstanceId(src.KeyItemInstanceId), + PlayFabId(src.PlayFabId) + {} + + ~UnlockContainerInstanceRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["ContainerItemInstanceId"], ContainerItemInstanceId); + FromJsonUtilS(input["KeyItemInstanceId"], KeyItemInstanceId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_ContainerItemInstanceId; ToJsonUtilS(ContainerItemInstanceId, each_ContainerItemInstanceId); output["ContainerItemInstanceId"] = each_ContainerItemInstanceId; + Json::Value each_KeyItemInstanceId; ToJsonUtilS(KeyItemInstanceId, each_KeyItemInstanceId); output["KeyItemInstanceId"] = each_KeyItemInstanceId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct UnlockContainerItemRequest : public PlayFabRequestCommon + { + std::string CatalogVersion; + std::string CharacterId; + std::string ContainerItemId; + std::string PlayFabId; + + UnlockContainerItemRequest() : + PlayFabRequestCommon(), + CatalogVersion(), + CharacterId(), + ContainerItemId(), + PlayFabId() + {} + + UnlockContainerItemRequest(const UnlockContainerItemRequest& src) : + PlayFabRequestCommon(), + CatalogVersion(src.CatalogVersion), + CharacterId(src.CharacterId), + ContainerItemId(src.ContainerItemId), + PlayFabId(src.PlayFabId) + {} + + ~UnlockContainerItemRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CatalogVersion"], CatalogVersion); + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["ContainerItemId"], ContainerItemId); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CatalogVersion; ToJsonUtilS(CatalogVersion, each_CatalogVersion); output["CatalogVersion"] = each_CatalogVersion; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_ContainerItemId; ToJsonUtilS(ContainerItemId, each_ContainerItemId); output["ContainerItemId"] = each_ContainerItemId; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct UnlockContainerItemResult : public PlayFabResultCommon + { + std::list GrantedItems; + std::string UnlockedItemInstanceId; + std::string UnlockedWithItemInstanceId; + std::map VirtualCurrency; + + UnlockContainerItemResult() : + PlayFabResultCommon(), + GrantedItems(), + UnlockedItemInstanceId(), + UnlockedWithItemInstanceId(), + VirtualCurrency() + {} + + UnlockContainerItemResult(const UnlockContainerItemResult& src) : + PlayFabResultCommon(), + GrantedItems(src.GrantedItems), + UnlockedItemInstanceId(src.UnlockedItemInstanceId), + UnlockedWithItemInstanceId(src.UnlockedWithItemInstanceId), + VirtualCurrency(src.VirtualCurrency) + {} + + ~UnlockContainerItemResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["GrantedItems"], GrantedItems); + FromJsonUtilS(input["UnlockedItemInstanceId"], UnlockedItemInstanceId); + FromJsonUtilS(input["UnlockedWithItemInstanceId"], UnlockedWithItemInstanceId); + FromJsonUtilP(input["VirtualCurrency"], VirtualCurrency); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_GrantedItems; ToJsonUtilO(GrantedItems, each_GrantedItems); output["GrantedItems"] = each_GrantedItems; + Json::Value each_UnlockedItemInstanceId; ToJsonUtilS(UnlockedItemInstanceId, each_UnlockedItemInstanceId); output["UnlockedItemInstanceId"] = each_UnlockedItemInstanceId; + Json::Value each_UnlockedWithItemInstanceId; ToJsonUtilS(UnlockedWithItemInstanceId, each_UnlockedWithItemInstanceId); output["UnlockedWithItemInstanceId"] = each_UnlockedWithItemInstanceId; + Json::Value each_VirtualCurrency; ToJsonUtilP(VirtualCurrency, each_VirtualCurrency); output["VirtualCurrency"] = each_VirtualCurrency; + return output; + } + }; + + struct UpdateAvatarUrlRequest : public PlayFabRequestCommon + { + std::string ImageUrl; + std::string PlayFabId; + + UpdateAvatarUrlRequest() : + PlayFabRequestCommon(), + ImageUrl(), + PlayFabId() + {} + + UpdateAvatarUrlRequest(const UpdateAvatarUrlRequest& src) : + PlayFabRequestCommon(), + ImageUrl(src.ImageUrl), + PlayFabId(src.PlayFabId) + {} + + ~UpdateAvatarUrlRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["ImageUrl"], ImageUrl); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ImageUrl; ToJsonUtilS(ImageUrl, each_ImageUrl); output["ImageUrl"] = each_ImageUrl; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct UpdateBanRequest : public PlayFabRequestCommon + { + Boxed Active; + std::string BanId; + Boxed Expires; + std::string IPAddress; + std::string MACAddress; + Boxed Permanent; + std::string Reason; + + UpdateBanRequest() : + PlayFabRequestCommon(), + Active(), + BanId(), + Expires(), + IPAddress(), + MACAddress(), + Permanent(), + Reason() + {} + + UpdateBanRequest(const UpdateBanRequest& src) : + PlayFabRequestCommon(), + Active(src.Active), + BanId(src.BanId), + Expires(src.Expires), + IPAddress(src.IPAddress), + MACAddress(src.MACAddress), + Permanent(src.Permanent), + Reason(src.Reason) + {} + + ~UpdateBanRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["Active"], Active); + FromJsonUtilS(input["BanId"], BanId); + FromJsonUtilT(input["Expires"], Expires); + FromJsonUtilS(input["IPAddress"], IPAddress); + FromJsonUtilS(input["MACAddress"], MACAddress); + FromJsonUtilP(input["Permanent"], Permanent); + FromJsonUtilS(input["Reason"], Reason); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Active; ToJsonUtilP(Active, each_Active); output["Active"] = each_Active; + Json::Value each_BanId; ToJsonUtilS(BanId, each_BanId); output["BanId"] = each_BanId; + Json::Value each_Expires; ToJsonUtilT(Expires, each_Expires); output["Expires"] = each_Expires; + Json::Value each_IPAddress; ToJsonUtilS(IPAddress, each_IPAddress); output["IPAddress"] = each_IPAddress; + Json::Value each_MACAddress; ToJsonUtilS(MACAddress, each_MACAddress); output["MACAddress"] = each_MACAddress; + Json::Value each_Permanent; ToJsonUtilP(Permanent, each_Permanent); output["Permanent"] = each_Permanent; + Json::Value each_Reason; ToJsonUtilS(Reason, each_Reason); output["Reason"] = each_Reason; + return output; + } + }; + + struct UpdateBansRequest : public PlayFabRequestCommon + { + std::list Bans; + + UpdateBansRequest() : + PlayFabRequestCommon(), + Bans() + {} + + UpdateBansRequest(const UpdateBansRequest& src) : + PlayFabRequestCommon(), + Bans(src.Bans) + {} + + ~UpdateBansRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["Bans"], Bans); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Bans; ToJsonUtilO(Bans, each_Bans); output["Bans"] = each_Bans; + return output; + } + }; + + struct UpdateBansResult : public PlayFabResultCommon + { + std::list BanData; + + UpdateBansResult() : + PlayFabResultCommon(), + BanData() + {} + + UpdateBansResult(const UpdateBansResult& src) : + PlayFabResultCommon(), + BanData(src.BanData) + {} + + ~UpdateBansResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilO(input["BanData"], BanData); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_BanData; ToJsonUtilO(BanData, each_BanData); output["BanData"] = each_BanData; + return output; + } + }; + + struct UpdateCharacterDataRequest : public PlayFabRequestCommon + { + std::string CharacterId; + std::map Data; + std::list KeysToRemove; + Boxed Permission; + std::string PlayFabId; + + UpdateCharacterDataRequest() : + PlayFabRequestCommon(), + CharacterId(), + Data(), + KeysToRemove(), + Permission(), + PlayFabId() + {} + + UpdateCharacterDataRequest(const UpdateCharacterDataRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + Data(src.Data), + KeysToRemove(src.KeysToRemove), + Permission(src.Permission), + PlayFabId(src.PlayFabId) + {} + + ~UpdateCharacterDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["Data"], Data); + FromJsonUtilS(input["KeysToRemove"], KeysToRemove); + FromJsonUtilE(input["Permission"], Permission); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + Json::Value each_KeysToRemove; ToJsonUtilS(KeysToRemove, each_KeysToRemove); output["KeysToRemove"] = each_KeysToRemove; + Json::Value each_Permission; ToJsonUtilE(Permission, each_Permission); output["Permission"] = each_Permission; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct UpdateCharacterDataResult : public PlayFabResultCommon + { + Uint32 DataVersion; + + UpdateCharacterDataResult() : + PlayFabResultCommon(), + DataVersion() + {} + + UpdateCharacterDataResult(const UpdateCharacterDataResult& src) : + PlayFabResultCommon(), + DataVersion(src.DataVersion) + {} + + ~UpdateCharacterDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["DataVersion"], DataVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DataVersion; ToJsonUtilP(DataVersion, each_DataVersion); output["DataVersion"] = each_DataVersion; + return output; + } + }; + + struct UpdateCharacterStatisticsRequest : public PlayFabRequestCommon + { + std::string CharacterId; + std::map CharacterStatistics; + std::string PlayFabId; + + UpdateCharacterStatisticsRequest() : + PlayFabRequestCommon(), + CharacterId(), + CharacterStatistics(), + PlayFabId() + {} + + UpdateCharacterStatisticsRequest(const UpdateCharacterStatisticsRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + CharacterStatistics(src.CharacterStatistics), + PlayFabId(src.PlayFabId) + {} + + ~UpdateCharacterStatisticsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilP(input["CharacterStatistics"], CharacterStatistics); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_CharacterStatistics; ToJsonUtilP(CharacterStatistics, each_CharacterStatistics); output["CharacterStatistics"] = each_CharacterStatistics; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct UpdateCharacterStatisticsResult : public PlayFabResultCommon + { + + UpdateCharacterStatisticsResult() : + PlayFabResultCommon() + {} + + UpdateCharacterStatisticsResult(const UpdateCharacterStatisticsResult&) : + PlayFabResultCommon() + {} + + ~UpdateCharacterStatisticsResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UpdatePlayerStatisticsRequest : public PlayFabRequestCommon + { + Boxed ForceUpdate; + std::string PlayFabId; + std::list Statistics; + + UpdatePlayerStatisticsRequest() : + PlayFabRequestCommon(), + ForceUpdate(), + PlayFabId(), + Statistics() + {} + + UpdatePlayerStatisticsRequest(const UpdatePlayerStatisticsRequest& src) : + PlayFabRequestCommon(), + ForceUpdate(src.ForceUpdate), + PlayFabId(src.PlayFabId), + Statistics(src.Statistics) + {} + + ~UpdatePlayerStatisticsRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["ForceUpdate"], ForceUpdate); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilO(input["Statistics"], Statistics); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_ForceUpdate; ToJsonUtilP(ForceUpdate, each_ForceUpdate); output["ForceUpdate"] = each_ForceUpdate; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Statistics; ToJsonUtilO(Statistics, each_Statistics); output["Statistics"] = each_Statistics; + return output; + } + }; + + struct UpdatePlayerStatisticsResult : public PlayFabResultCommon + { + + UpdatePlayerStatisticsResult() : + PlayFabResultCommon() + {} + + UpdatePlayerStatisticsResult(const UpdatePlayerStatisticsResult&) : + PlayFabResultCommon() + {} + + ~UpdatePlayerStatisticsResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UpdateSharedGroupDataRequest : public PlayFabRequestCommon + { + std::map Data; + std::list KeysToRemove; + Boxed Permission; + std::string SharedGroupId; + + UpdateSharedGroupDataRequest() : + PlayFabRequestCommon(), + Data(), + KeysToRemove(), + Permission(), + SharedGroupId() + {} + + UpdateSharedGroupDataRequest(const UpdateSharedGroupDataRequest& src) : + PlayFabRequestCommon(), + Data(src.Data), + KeysToRemove(src.KeysToRemove), + Permission(src.Permission), + SharedGroupId(src.SharedGroupId) + {} + + ~UpdateSharedGroupDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Data"], Data); + FromJsonUtilS(input["KeysToRemove"], KeysToRemove); + FromJsonUtilE(input["Permission"], Permission); + FromJsonUtilS(input["SharedGroupId"], SharedGroupId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + Json::Value each_KeysToRemove; ToJsonUtilS(KeysToRemove, each_KeysToRemove); output["KeysToRemove"] = each_KeysToRemove; + Json::Value each_Permission; ToJsonUtilE(Permission, each_Permission); output["Permission"] = each_Permission; + Json::Value each_SharedGroupId; ToJsonUtilS(SharedGroupId, each_SharedGroupId); output["SharedGroupId"] = each_SharedGroupId; + return output; + } + }; + + struct UpdateSharedGroupDataResult : public PlayFabResultCommon + { + + UpdateSharedGroupDataResult() : + PlayFabResultCommon() + {} + + UpdateSharedGroupDataResult(const UpdateSharedGroupDataResult&) : + PlayFabResultCommon() + {} + + ~UpdateSharedGroupDataResult() { } + + void FromJson(Json::Value&) override + { + } + + Json::Value ToJson() const override + { + Json::Value output; + return output; + } + }; + + struct UpdateUserDataRequest : public PlayFabRequestCommon + { + std::map Data; + std::list KeysToRemove; + Boxed Permission; + std::string PlayFabId; + + UpdateUserDataRequest() : + PlayFabRequestCommon(), + Data(), + KeysToRemove(), + Permission(), + PlayFabId() + {} + + UpdateUserDataRequest(const UpdateUserDataRequest& src) : + PlayFabRequestCommon(), + Data(src.Data), + KeysToRemove(src.KeysToRemove), + Permission(src.Permission), + PlayFabId(src.PlayFabId) + {} + + ~UpdateUserDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Data"], Data); + FromJsonUtilS(input["KeysToRemove"], KeysToRemove); + FromJsonUtilE(input["Permission"], Permission); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + Json::Value each_KeysToRemove; ToJsonUtilS(KeysToRemove, each_KeysToRemove); output["KeysToRemove"] = each_KeysToRemove; + Json::Value each_Permission; ToJsonUtilE(Permission, each_Permission); output["Permission"] = each_Permission; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct UpdateUserDataResult : public PlayFabResultCommon + { + Uint32 DataVersion; + + UpdateUserDataResult() : + PlayFabResultCommon(), + DataVersion() + {} + + UpdateUserDataResult(const UpdateUserDataResult& src) : + PlayFabResultCommon(), + DataVersion(src.DataVersion) + {} + + ~UpdateUserDataResult() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilP(input["DataVersion"], DataVersion); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_DataVersion; ToJsonUtilP(DataVersion, each_DataVersion); output["DataVersion"] = each_DataVersion; + return output; + } + }; + + struct UpdateUserInternalDataRequest : public PlayFabRequestCommon + { + std::map Data; + std::list KeysToRemove; + std::string PlayFabId; + + UpdateUserInternalDataRequest() : + PlayFabRequestCommon(), + Data(), + KeysToRemove(), + PlayFabId() + {} + + UpdateUserInternalDataRequest(const UpdateUserInternalDataRequest& src) : + PlayFabRequestCommon(), + Data(src.Data), + KeysToRemove(src.KeysToRemove), + PlayFabId(src.PlayFabId) + {} + + ~UpdateUserInternalDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["Data"], Data); + FromJsonUtilS(input["KeysToRemove"], KeysToRemove); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + Json::Value each_KeysToRemove; ToJsonUtilS(KeysToRemove, each_KeysToRemove); output["KeysToRemove"] = each_KeysToRemove; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct UpdateUserInventoryItemDataRequest : public PlayFabRequestCommon + { + std::string CharacterId; + std::map Data; + std::string ItemInstanceId; + std::list KeysToRemove; + std::string PlayFabId; + + UpdateUserInventoryItemDataRequest() : + PlayFabRequestCommon(), + CharacterId(), + Data(), + ItemInstanceId(), + KeysToRemove(), + PlayFabId() + {} + + UpdateUserInventoryItemDataRequest(const UpdateUserInventoryItemDataRequest& src) : + PlayFabRequestCommon(), + CharacterId(src.CharacterId), + Data(src.Data), + ItemInstanceId(src.ItemInstanceId), + KeysToRemove(src.KeysToRemove), + PlayFabId(src.PlayFabId) + {} + + ~UpdateUserInventoryItemDataRequest() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["Data"], Data); + FromJsonUtilS(input["ItemInstanceId"], ItemInstanceId); + FromJsonUtilS(input["KeysToRemove"], KeysToRemove); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_Data; ToJsonUtilS(Data, each_Data); output["Data"] = each_Data; + Json::Value each_ItemInstanceId; ToJsonUtilS(ItemInstanceId, each_ItemInstanceId); output["ItemInstanceId"] = each_ItemInstanceId; + Json::Value each_KeysToRemove; ToJsonUtilS(KeysToRemove, each_KeysToRemove); output["KeysToRemove"] = each_KeysToRemove; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + return output; + } + }; + + struct WriteEventResponse : public PlayFabResultCommon + { + std::string EventId; + + WriteEventResponse() : + PlayFabResultCommon(), + EventId() + {} + + WriteEventResponse(const WriteEventResponse& src) : + PlayFabResultCommon(), + EventId(src.EventId) + {} + + ~WriteEventResponse() { } + + void FromJson(Json::Value& input) override + { + FromJsonUtilS(input["EventId"], EventId); + } + + Json::Value ToJson() const override + { + Json::Value output; + Json::Value each_EventId; ToJsonUtilS(EventId, each_EventId); output["EventId"] = each_EventId; + return output; + } + }; + + struct WriteServerCharacterEventRequest : public PlayFabRequestCommon + { + Json::Value Body; // Not truly arbitrary. See documentation for restrictions on format + std::string CharacterId; + std::string EventName; + std::string PlayFabId; + Boxed Timestamp; + + WriteServerCharacterEventRequest() : + PlayFabRequestCommon(), + Body(), + CharacterId(), + EventName(), + PlayFabId(), + Timestamp() + {} + + WriteServerCharacterEventRequest(const WriteServerCharacterEventRequest& src) : + PlayFabRequestCommon(), + Body(src.Body), + CharacterId(src.CharacterId), + EventName(src.EventName), + PlayFabId(src.PlayFabId), + Timestamp(src.Timestamp) + {} + + ~WriteServerCharacterEventRequest() { } + + void FromJson(Json::Value& input) override + { + Body = input["Body"]; + FromJsonUtilS(input["CharacterId"], CharacterId); + FromJsonUtilS(input["EventName"], EventName); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilT(input["Timestamp"], Timestamp); + } + + Json::Value ToJson() const override + { + Json::Value output; + output["Body"] = Body; + Json::Value each_CharacterId; ToJsonUtilS(CharacterId, each_CharacterId); output["CharacterId"] = each_CharacterId; + Json::Value each_EventName; ToJsonUtilS(EventName, each_EventName); output["EventName"] = each_EventName; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Timestamp; ToJsonUtilT(Timestamp, each_Timestamp); output["Timestamp"] = each_Timestamp; + return output; + } + }; + + struct WriteServerPlayerEventRequest : public PlayFabRequestCommon + { + Json::Value Body; // Not truly arbitrary. See documentation for restrictions on format + std::string EventName; + std::string PlayFabId; + Boxed Timestamp; + + WriteServerPlayerEventRequest() : + PlayFabRequestCommon(), + Body(), + EventName(), + PlayFabId(), + Timestamp() + {} + + WriteServerPlayerEventRequest(const WriteServerPlayerEventRequest& src) : + PlayFabRequestCommon(), + Body(src.Body), + EventName(src.EventName), + PlayFabId(src.PlayFabId), + Timestamp(src.Timestamp) + {} + + ~WriteServerPlayerEventRequest() { } + + void FromJson(Json::Value& input) override + { + Body = input["Body"]; + FromJsonUtilS(input["EventName"], EventName); + FromJsonUtilS(input["PlayFabId"], PlayFabId); + FromJsonUtilT(input["Timestamp"], Timestamp); + } + + Json::Value ToJson() const override + { + Json::Value output; + output["Body"] = Body; + Json::Value each_EventName; ToJsonUtilS(EventName, each_EventName); output["EventName"] = each_EventName; + Json::Value each_PlayFabId; ToJsonUtilS(PlayFabId, each_PlayFabId); output["PlayFabId"] = each_PlayFabId; + Json::Value each_Timestamp; ToJsonUtilT(Timestamp, each_Timestamp); output["Timestamp"] = each_Timestamp; + return output; + } + }; + + struct WriteTitleEventRequest : public PlayFabRequestCommon + { + Json::Value Body; // Not truly arbitrary. See documentation for restrictions on format + std::string EventName; + Boxed Timestamp; + + WriteTitleEventRequest() : + PlayFabRequestCommon(), + Body(), + EventName(), + Timestamp() + {} + + WriteTitleEventRequest(const WriteTitleEventRequest& src) : + PlayFabRequestCommon(), + Body(src.Body), + EventName(src.EventName), + Timestamp(src.Timestamp) + {} + + ~WriteTitleEventRequest() { } + + void FromJson(Json::Value& input) override + { + Body = input["Body"]; + FromJsonUtilS(input["EventName"], EventName); + FromJsonUtilT(input["Timestamp"], Timestamp); + } + + Json::Value ToJson() const override + { + Json::Value output; + output["Body"] = Body; + Json::Value each_EventName; ToJsonUtilS(EventName, each_EventName); output["EventName"] = each_EventName; + Json::Value each_Timestamp; ToJsonUtilT(Timestamp, each_Timestamp); output["Timestamp"] = each_Timestamp; + return output; + } + }; + + } +} + +#endif diff --git a/cppsdk/include/playfab/PlayFabSettings.h b/cppsdk/include/playfab/PlayFabSettings.h new file mode 100644 index 00000000..40c43538 --- /dev/null +++ b/cppsdk/include/playfab/PlayFabSettings.h @@ -0,0 +1,52 @@ +#pragma once + +#include + +namespace PlayFab +{ + /// + /// All settings and global variables for PlayFab + /// + class PlayFabSettings + { + public: + static const std::string sdkVersion; + static const std::string buildIdentifier; + static const std::string versionString; + + static bool useDevelopmentEnvironment; + static std::string developmentEnvironmentURL; + static std::string productionEnvironmentURL; + static std::string titleId; // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) + static ErrorCallback globalErrorHandler; + + // Control whether all callbacks are threaded or whether the user manually controlls callback timing from their main-thread + static bool threadedCallbacks; + + static std::string entityToken; // This is set by entity GetEntityToken method, and is required by all other Entity API methods +#if defined(ENABLE_PLAYFABSERVER_API) || defined(ENABLE_PLAYFABADMIN_API) + static std::string developerSecretKey; // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) +#endif +#ifndef DISABLE_PLAYFABCLIENT_API + static std::string clientSessionTicket; // This is set by any Client Login method, and is required for all other Client API methods + static std::string advertisingIdType; // Set this to the appropriate AD_TYPE_X constant below + static std::string advertisingIdValue; // Set this to corresponding device value + + // DisableAdvertising is provided for completeness, but changing it is not suggested + // Disabling this may prevent your advertising-related PlayFab marketplace partners from working correctly + static bool disableAdvertising; + static const std::string AD_TYPE_IDFA; + static const std::string AD_TYPE_ANDROID_ID; + + static void ForgetAllCredentials(); +#endif + private: + PlayFabSettings(); // Private constructor, static class should never have an instance + PlayFabSettings(const PlayFabSettings& other); // Private copy-constructor, static class should never have an instance + + friend PlayFabHttp; + static std::string GetUrl(const std::string& urlPath); + + static std::string serverURL; + }; +} diff --git a/cppsdk/packages.config b/cppsdk/packages.config new file mode 100644 index 00000000..a7e6f076 --- /dev/null +++ b/cppsdk/packages.config @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/cppsdk/source/playfab/PlayFabAdminApi.cpp b/cppsdk/source/playfab/PlayFabAdminApi.cpp new file mode 100644 index 00000000..b5c030f3 --- /dev/null +++ b/cppsdk/source/playfab/PlayFabAdminApi.cpp @@ -0,0 +1,2780 @@ +#include + +#ifdef ENABLE_PLAYFABADMIN_API + +#include +#include +#include + +namespace PlayFab +{ + using namespace AdminModels; + + size_t PlayFabAdminAPI::Update() + { + return PlayFabHttp::Get().Update(); + } + + void PlayFabAdminAPI::ForgetAllCredentials() + { + return PlayFabSettings::ForgetAllCredentials(); + } + + // PlayFabAdmin APIs + + void PlayFabAdminAPI::AbortTaskInstance( + AbortTaskInstanceRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/AbortTaskInstance", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnAbortTaskInstanceResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnAbortTaskInstanceResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::AddNews( + AddNewsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/AddNews", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnAddNewsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnAddNewsResult(CallRequestContainer& request) + { + AddNewsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::AddPlayerTag( + AddPlayerTagRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/AddPlayerTag", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnAddPlayerTagResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnAddPlayerTagResult(CallRequestContainer& request) + { + AddPlayerTagResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::AddServerBuild( + AddServerBuildRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/AddServerBuild", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnAddServerBuildResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnAddServerBuildResult(CallRequestContainer& request) + { + AddServerBuildResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::AddUserVirtualCurrency( + AddUserVirtualCurrencyRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/AddUserVirtualCurrency", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnAddUserVirtualCurrencyResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnAddUserVirtualCurrencyResult(CallRequestContainer& request) + { + ModifyUserVirtualCurrencyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::AddVirtualCurrencyTypes( + AddVirtualCurrencyTypesRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/AddVirtualCurrencyTypes", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnAddVirtualCurrencyTypesResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnAddVirtualCurrencyTypesResult(CallRequestContainer& request) + { + BlankResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::BanUsers( + BanUsersRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/BanUsers", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnBanUsersResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnBanUsersResult(CallRequestContainer& request) + { + BanUsersResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::CheckLimitedEditionItemAvailability( + CheckLimitedEditionItemAvailabilityRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/CheckLimitedEditionItemAvailability", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnCheckLimitedEditionItemAvailabilityResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnCheckLimitedEditionItemAvailabilityResult(CallRequestContainer& request) + { + CheckLimitedEditionItemAvailabilityResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::CreateActionsOnPlayersInSegmentTask( + CreateActionsOnPlayerSegmentTaskRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/CreateActionsOnPlayersInSegmentTask", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnCreateActionsOnPlayersInSegmentTaskResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnCreateActionsOnPlayersInSegmentTaskResult(CallRequestContainer& request) + { + CreateTaskResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::CreateCloudScriptTask( + CreateCloudScriptTaskRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/CreateCloudScriptTask", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnCreateCloudScriptTaskResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnCreateCloudScriptTaskResult(CallRequestContainer& request) + { + CreateTaskResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::CreatePlayerSharedSecret( + CreatePlayerSharedSecretRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/CreatePlayerSharedSecret", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnCreatePlayerSharedSecretResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnCreatePlayerSharedSecretResult(CallRequestContainer& request) + { + CreatePlayerSharedSecretResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::CreatePlayerStatisticDefinition( + CreatePlayerStatisticDefinitionRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/CreatePlayerStatisticDefinition", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnCreatePlayerStatisticDefinitionResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnCreatePlayerStatisticDefinitionResult(CallRequestContainer& request) + { + CreatePlayerStatisticDefinitionResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::DeleteContent( + DeleteContentRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/DeleteContent", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnDeleteContentResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnDeleteContentResult(CallRequestContainer& request) + { + BlankResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::DeletePlayer( + DeletePlayerRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/DeletePlayer", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnDeletePlayerResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnDeletePlayerResult(CallRequestContainer& request) + { + DeletePlayerResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::DeletePlayerSharedSecret( + DeletePlayerSharedSecretRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/DeletePlayerSharedSecret", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnDeletePlayerSharedSecretResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnDeletePlayerSharedSecretResult(CallRequestContainer& request) + { + DeletePlayerSharedSecretResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::DeleteStore( + DeleteStoreRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/DeleteStore", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnDeleteStoreResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnDeleteStoreResult(CallRequestContainer& request) + { + DeleteStoreResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::DeleteTask( + DeleteTaskRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/DeleteTask", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnDeleteTaskResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnDeleteTaskResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::DeleteTitle( + DeleteTitleRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/DeleteTitle", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnDeleteTitleResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnDeleteTitleResult(CallRequestContainer& request) + { + DeleteTitleResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetActionsOnPlayersInSegmentTaskInstance( + GetTaskInstanceRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetActionsOnPlayersInSegmentTaskInstance", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetActionsOnPlayersInSegmentTaskInstanceResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetActionsOnPlayersInSegmentTaskInstanceResult(CallRequestContainer& request) + { + GetActionsOnPlayersInSegmentTaskInstanceResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetAllSegments( + GetAllSegmentsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetAllSegments", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetAllSegmentsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetAllSegmentsResult(CallRequestContainer& request) + { + GetAllSegmentsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetCatalogItems( + GetCatalogItemsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetCatalogItems", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetCatalogItemsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetCatalogItemsResult(CallRequestContainer& request) + { + GetCatalogItemsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetCloudScriptRevision( + GetCloudScriptRevisionRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetCloudScriptRevision", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetCloudScriptRevisionResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetCloudScriptRevisionResult(CallRequestContainer& request) + { + GetCloudScriptRevisionResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetCloudScriptTaskInstance( + GetTaskInstanceRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetCloudScriptTaskInstance", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetCloudScriptTaskInstanceResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetCloudScriptTaskInstanceResult(CallRequestContainer& request) + { + GetCloudScriptTaskInstanceResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetCloudScriptVersions( + GetCloudScriptVersionsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetCloudScriptVersions", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetCloudScriptVersionsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetCloudScriptVersionsResult(CallRequestContainer& request) + { + GetCloudScriptVersionsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetContentList( + GetContentListRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetContentList", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetContentListResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetContentListResult(CallRequestContainer& request) + { + GetContentListResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetContentUploadUrl( + GetContentUploadUrlRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetContentUploadUrl", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetContentUploadUrlResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetContentUploadUrlResult(CallRequestContainer& request) + { + GetContentUploadUrlResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetDataReport( + GetDataReportRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetDataReport", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetDataReportResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetDataReportResult(CallRequestContainer& request) + { + GetDataReportResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetMatchmakerGameInfo( + GetMatchmakerGameInfoRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetMatchmakerGameInfo", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetMatchmakerGameInfoResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetMatchmakerGameInfoResult(CallRequestContainer& request) + { + GetMatchmakerGameInfoResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetMatchmakerGameModes( + GetMatchmakerGameModesRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetMatchmakerGameModes", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetMatchmakerGameModesResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetMatchmakerGameModesResult(CallRequestContainer& request) + { + GetMatchmakerGameModesResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetPlayerIdFromAuthToken( + GetPlayerIdFromAuthTokenRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetPlayerIdFromAuthToken", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPlayerIdFromAuthTokenResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetPlayerIdFromAuthTokenResult(CallRequestContainer& request) + { + GetPlayerIdFromAuthTokenResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetPlayerProfile( + GetPlayerProfileRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetPlayerProfile", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPlayerProfileResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetPlayerProfileResult(CallRequestContainer& request) + { + GetPlayerProfileResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetPlayerSegments( + GetPlayersSegmentsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetPlayerSegments", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPlayerSegmentsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetPlayerSegmentsResult(CallRequestContainer& request) + { + GetPlayerSegmentsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetPlayerSharedSecrets( + GetPlayerSharedSecretsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetPlayerSharedSecrets", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPlayerSharedSecretsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetPlayerSharedSecretsResult(CallRequestContainer& request) + { + GetPlayerSharedSecretsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetPlayersInSegment( + GetPlayersInSegmentRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetPlayersInSegment", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPlayersInSegmentResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetPlayersInSegmentResult(CallRequestContainer& request) + { + GetPlayersInSegmentResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetPlayerStatisticDefinitions( + GetPlayerStatisticDefinitionsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetPlayerStatisticDefinitions", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPlayerStatisticDefinitionsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetPlayerStatisticDefinitionsResult(CallRequestContainer& request) + { + GetPlayerStatisticDefinitionsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetPlayerStatisticVersions( + GetPlayerStatisticVersionsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetPlayerStatisticVersions", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPlayerStatisticVersionsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetPlayerStatisticVersionsResult(CallRequestContainer& request) + { + GetPlayerStatisticVersionsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetPlayerTags( + GetPlayerTagsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetPlayerTags", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPlayerTagsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetPlayerTagsResult(CallRequestContainer& request) + { + GetPlayerTagsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetPolicy( + GetPolicyRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetPolicy", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPolicyResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetPolicyResult(CallRequestContainer& request) + { + GetPolicyResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetPublisherData( + GetPublisherDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetPublisherData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPublisherDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetPublisherDataResult(CallRequestContainer& request) + { + GetPublisherDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetRandomResultTables( + GetRandomResultTablesRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetRandomResultTables", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetRandomResultTablesResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetRandomResultTablesResult(CallRequestContainer& request) + { + GetRandomResultTablesResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetServerBuildInfo( + GetServerBuildInfoRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetServerBuildInfo", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetServerBuildInfoResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetServerBuildInfoResult(CallRequestContainer& request) + { + GetServerBuildInfoResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetServerBuildUploadUrl( + GetServerBuildUploadURLRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetServerBuildUploadUrl", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetServerBuildUploadUrlResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetServerBuildUploadUrlResult(CallRequestContainer& request) + { + GetServerBuildUploadURLResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetStoreItems( + GetStoreItemsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetStoreItems", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetStoreItemsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetStoreItemsResult(CallRequestContainer& request) + { + GetStoreItemsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetTaskInstances( + GetTaskInstancesRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetTaskInstances", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetTaskInstancesResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetTaskInstancesResult(CallRequestContainer& request) + { + GetTaskInstancesResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetTasks( + GetTasksRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetTasks", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetTasksResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetTasksResult(CallRequestContainer& request) + { + GetTasksResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetTitleData( + GetTitleDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetTitleData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetTitleDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetTitleDataResult(CallRequestContainer& request) + { + GetTitleDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetTitleInternalData( + GetTitleDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetTitleInternalData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetTitleInternalDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetTitleInternalDataResult(CallRequestContainer& request) + { + GetTitleDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetUserAccountInfo( + LookupUserAccountInfoRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetUserAccountInfo", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserAccountInfoResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetUserAccountInfoResult(CallRequestContainer& request) + { + LookupUserAccountInfoResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetUserBans( + GetUserBansRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetUserBans", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserBansResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetUserBansResult(CallRequestContainer& request) + { + GetUserBansResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetUserData( + GetUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetUserData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetUserDataResult(CallRequestContainer& request) + { + GetUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetUserInternalData( + GetUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetUserInternalData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserInternalDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetUserInternalDataResult(CallRequestContainer& request) + { + GetUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetUserInventory( + GetUserInventoryRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetUserInventory", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserInventoryResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetUserInventoryResult(CallRequestContainer& request) + { + GetUserInventoryResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetUserPublisherData( + GetUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetUserPublisherData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserPublisherDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetUserPublisherDataResult(CallRequestContainer& request) + { + GetUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetUserPublisherInternalData( + GetUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetUserPublisherInternalData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserPublisherInternalDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetUserPublisherInternalDataResult(CallRequestContainer& request) + { + GetUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetUserPublisherReadOnlyData( + GetUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetUserPublisherReadOnlyData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserPublisherReadOnlyDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetUserPublisherReadOnlyDataResult(CallRequestContainer& request) + { + GetUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GetUserReadOnlyData( + GetUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GetUserReadOnlyData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserReadOnlyDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGetUserReadOnlyDataResult(CallRequestContainer& request) + { + GetUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::GrantItemsToUsers( + GrantItemsToUsersRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/GrantItemsToUsers", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGrantItemsToUsersResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnGrantItemsToUsersResult(CallRequestContainer& request) + { + GrantItemsToUsersResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::IncrementLimitedEditionItemAvailability( + IncrementLimitedEditionItemAvailabilityRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/IncrementLimitedEditionItemAvailability", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnIncrementLimitedEditionItemAvailabilityResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnIncrementLimitedEditionItemAvailabilityResult(CallRequestContainer& request) + { + IncrementLimitedEditionItemAvailabilityResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::IncrementPlayerStatisticVersion( + IncrementPlayerStatisticVersionRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/IncrementPlayerStatisticVersion", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnIncrementPlayerStatisticVersionResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnIncrementPlayerStatisticVersionResult(CallRequestContainer& request) + { + IncrementPlayerStatisticVersionResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::ListServerBuilds( + ListBuildsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/ListServerBuilds", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnListServerBuildsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnListServerBuildsResult(CallRequestContainer& request) + { + ListBuildsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::ListVirtualCurrencyTypes( + ListVirtualCurrencyTypesRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/ListVirtualCurrencyTypes", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnListVirtualCurrencyTypesResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnListVirtualCurrencyTypesResult(CallRequestContainer& request) + { + ListVirtualCurrencyTypesResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::ModifyMatchmakerGameModes( + ModifyMatchmakerGameModesRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/ModifyMatchmakerGameModes", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnModifyMatchmakerGameModesResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnModifyMatchmakerGameModesResult(CallRequestContainer& request) + { + ModifyMatchmakerGameModesResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::ModifyServerBuild( + ModifyServerBuildRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/ModifyServerBuild", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnModifyServerBuildResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnModifyServerBuildResult(CallRequestContainer& request) + { + ModifyServerBuildResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::RefundPurchase( + RefundPurchaseRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/RefundPurchase", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRefundPurchaseResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnRefundPurchaseResult(CallRequestContainer& request) + { + RefundPurchaseResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::RemovePlayerTag( + RemovePlayerTagRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/RemovePlayerTag", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRemovePlayerTagResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnRemovePlayerTagResult(CallRequestContainer& request) + { + RemovePlayerTagResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::RemoveServerBuild( + RemoveServerBuildRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/RemoveServerBuild", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRemoveServerBuildResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnRemoveServerBuildResult(CallRequestContainer& request) + { + RemoveServerBuildResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::RemoveVirtualCurrencyTypes( + RemoveVirtualCurrencyTypesRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/RemoveVirtualCurrencyTypes", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRemoveVirtualCurrencyTypesResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnRemoveVirtualCurrencyTypesResult(CallRequestContainer& request) + { + BlankResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::ResetCharacterStatistics( + ResetCharacterStatisticsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/ResetCharacterStatistics", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnResetCharacterStatisticsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnResetCharacterStatisticsResult(CallRequestContainer& request) + { + ResetCharacterStatisticsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::ResetPassword( + ResetPasswordRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/ResetPassword", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnResetPasswordResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnResetPasswordResult(CallRequestContainer& request) + { + ResetPasswordResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::ResetUserStatistics( + ResetUserStatisticsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/ResetUserStatistics", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnResetUserStatisticsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnResetUserStatisticsResult(CallRequestContainer& request) + { + ResetUserStatisticsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::ResolvePurchaseDispute( + ResolvePurchaseDisputeRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/ResolvePurchaseDispute", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnResolvePurchaseDisputeResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnResolvePurchaseDisputeResult(CallRequestContainer& request) + { + ResolvePurchaseDisputeResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::RevokeAllBansForUser( + RevokeAllBansForUserRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/RevokeAllBansForUser", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRevokeAllBansForUserResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnRevokeAllBansForUserResult(CallRequestContainer& request) + { + RevokeAllBansForUserResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::RevokeBans( + RevokeBansRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/RevokeBans", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRevokeBansResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnRevokeBansResult(CallRequestContainer& request) + { + RevokeBansResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::RevokeInventoryItem( + RevokeInventoryItemRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/RevokeInventoryItem", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRevokeInventoryItemResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnRevokeInventoryItemResult(CallRequestContainer& request) + { + RevokeInventoryResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::RevokeInventoryItems( + RevokeInventoryItemsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/RevokeInventoryItems", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRevokeInventoryItemsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnRevokeInventoryItemsResult(CallRequestContainer& request) + { + RevokeInventoryItemsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::RunTask( + RunTaskRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/RunTask", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRunTaskResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnRunTaskResult(CallRequestContainer& request) + { + RunTaskResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::SendAccountRecoveryEmail( + SendAccountRecoveryEmailRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/SendAccountRecoveryEmail", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSendAccountRecoveryEmailResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnSendAccountRecoveryEmailResult(CallRequestContainer& request) + { + SendAccountRecoveryEmailResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::SetCatalogItems( + UpdateCatalogItemsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/SetCatalogItems", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSetCatalogItemsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnSetCatalogItemsResult(CallRequestContainer& request) + { + UpdateCatalogItemsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::SetPlayerSecret( + SetPlayerSecretRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/SetPlayerSecret", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSetPlayerSecretResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnSetPlayerSecretResult(CallRequestContainer& request) + { + SetPlayerSecretResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::SetPublishedRevision( + SetPublishedRevisionRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/SetPublishedRevision", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSetPublishedRevisionResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnSetPublishedRevisionResult(CallRequestContainer& request) + { + SetPublishedRevisionResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::SetPublisherData( + SetPublisherDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/SetPublisherData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSetPublisherDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnSetPublisherDataResult(CallRequestContainer& request) + { + SetPublisherDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::SetStoreItems( + UpdateStoreItemsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/SetStoreItems", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSetStoreItemsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnSetStoreItemsResult(CallRequestContainer& request) + { + UpdateStoreItemsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::SetTitleData( + SetTitleDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/SetTitleData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSetTitleDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnSetTitleDataResult(CallRequestContainer& request) + { + SetTitleDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::SetTitleInternalData( + SetTitleDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/SetTitleInternalData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSetTitleInternalDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnSetTitleInternalDataResult(CallRequestContainer& request) + { + SetTitleDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::SetupPushNotification( + SetupPushNotificationRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/SetupPushNotification", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSetupPushNotificationResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnSetupPushNotificationResult(CallRequestContainer& request) + { + SetupPushNotificationResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::SubtractUserVirtualCurrency( + SubtractUserVirtualCurrencyRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/SubtractUserVirtualCurrency", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSubtractUserVirtualCurrencyResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnSubtractUserVirtualCurrencyResult(CallRequestContainer& request) + { + ModifyUserVirtualCurrencyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::UpdateBans( + UpdateBansRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/UpdateBans", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateBansResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnUpdateBansResult(CallRequestContainer& request) + { + UpdateBansResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::UpdateCatalogItems( + UpdateCatalogItemsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/UpdateCatalogItems", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateCatalogItemsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnUpdateCatalogItemsResult(CallRequestContainer& request) + { + UpdateCatalogItemsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::UpdateCloudScript( + UpdateCloudScriptRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/UpdateCloudScript", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateCloudScriptResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnUpdateCloudScriptResult(CallRequestContainer& request) + { + UpdateCloudScriptResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::UpdatePlayerSharedSecret( + UpdatePlayerSharedSecretRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/UpdatePlayerSharedSecret", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdatePlayerSharedSecretResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnUpdatePlayerSharedSecretResult(CallRequestContainer& request) + { + UpdatePlayerSharedSecretResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::UpdatePlayerStatisticDefinition( + UpdatePlayerStatisticDefinitionRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/UpdatePlayerStatisticDefinition", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdatePlayerStatisticDefinitionResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnUpdatePlayerStatisticDefinitionResult(CallRequestContainer& request) + { + UpdatePlayerStatisticDefinitionResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::UpdatePolicy( + UpdatePolicyRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/UpdatePolicy", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdatePolicyResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnUpdatePolicyResult(CallRequestContainer& request) + { + UpdatePolicyResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::UpdateRandomResultTables( + UpdateRandomResultTablesRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/UpdateRandomResultTables", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateRandomResultTablesResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnUpdateRandomResultTablesResult(CallRequestContainer& request) + { + UpdateRandomResultTablesResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::UpdateStoreItems( + UpdateStoreItemsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/UpdateStoreItems", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateStoreItemsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnUpdateStoreItemsResult(CallRequestContainer& request) + { + UpdateStoreItemsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::UpdateTask( + UpdateTaskRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/UpdateTask", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateTaskResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnUpdateTaskResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::UpdateUserData( + UpdateUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/UpdateUserData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateUserDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnUpdateUserDataResult(CallRequestContainer& request) + { + UpdateUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::UpdateUserInternalData( + UpdateUserInternalDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/UpdateUserInternalData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateUserInternalDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnUpdateUserInternalDataResult(CallRequestContainer& request) + { + UpdateUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::UpdateUserPublisherData( + UpdateUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/UpdateUserPublisherData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateUserPublisherDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnUpdateUserPublisherDataResult(CallRequestContainer& request) + { + UpdateUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::UpdateUserPublisherInternalData( + UpdateUserInternalDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/UpdateUserPublisherInternalData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateUserPublisherInternalDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnUpdateUserPublisherInternalDataResult(CallRequestContainer& request) + { + UpdateUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::UpdateUserPublisherReadOnlyData( + UpdateUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/UpdateUserPublisherReadOnlyData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateUserPublisherReadOnlyDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnUpdateUserPublisherReadOnlyDataResult(CallRequestContainer& request) + { + UpdateUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::UpdateUserReadOnlyData( + UpdateUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/UpdateUserReadOnlyData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateUserReadOnlyDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnUpdateUserReadOnlyDataResult(CallRequestContainer& request) + { + UpdateUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabAdminAPI::UpdateUserTitleDisplayName( + UpdateUserTitleDisplayNameRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Admin/UpdateUserTitleDisplayName", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateUserTitleDisplayNameResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabAdminAPI::OnUpdateUserTitleDisplayNameResult(CallRequestContainer& request) + { + UpdateUserTitleDisplayNameResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } +} + +#endif diff --git a/cppsdk/source/playfab/PlayFabClientApi.cpp b/cppsdk/source/playfab/PlayFabClientApi.cpp new file mode 100644 index 00000000..81b15e95 --- /dev/null +++ b/cppsdk/source/playfab/PlayFabClientApi.cpp @@ -0,0 +1,3763 @@ +#include + +#ifndef DISABLE_PLAYFABCLIENT_API + +#include +#include +#include + +namespace PlayFab +{ + using namespace ClientModels; + + size_t PlayFabClientAPI::Update() + { + return PlayFabHttp::Get().Update(); + } + + void PlayFabClientAPI::ForgetAllCredentials() + { + return PlayFabSettings::ForgetAllCredentials(); + } + + // PlayFabClient APIs + + void PlayFabClientAPI::AcceptTrade( + AcceptTradeRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/AcceptTrade", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnAcceptTradeResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnAcceptTradeResult(CallRequestContainer& request) + { + AcceptTradeResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::AddFriend( + AddFriendRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/AddFriend", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnAddFriendResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnAddFriendResult(CallRequestContainer& request) + { + AddFriendResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::AddGenericID( + AddGenericIDRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/AddGenericID", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnAddGenericIDResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnAddGenericIDResult(CallRequestContainer& request) + { + AddGenericIDResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::AddOrUpdateContactEmail( + AddOrUpdateContactEmailRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/AddOrUpdateContactEmail", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnAddOrUpdateContactEmailResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnAddOrUpdateContactEmailResult(CallRequestContainer& request) + { + AddOrUpdateContactEmailResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::AddSharedGroupMembers( + AddSharedGroupMembersRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/AddSharedGroupMembers", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnAddSharedGroupMembersResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnAddSharedGroupMembersResult(CallRequestContainer& request) + { + AddSharedGroupMembersResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::AddUsernamePassword( + AddUsernamePasswordRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/AddUsernamePassword", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnAddUsernamePasswordResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnAddUsernamePasswordResult(CallRequestContainer& request) + { + AddUsernamePasswordResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::AddUserVirtualCurrency( + AddUserVirtualCurrencyRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/AddUserVirtualCurrency", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnAddUserVirtualCurrencyResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnAddUserVirtualCurrencyResult(CallRequestContainer& request) + { + ModifyUserVirtualCurrencyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::AndroidDevicePushNotificationRegistration( + AndroidDevicePushNotificationRegistrationRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/AndroidDevicePushNotificationRegistration", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnAndroidDevicePushNotificationRegistrationResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnAndroidDevicePushNotificationRegistrationResult(CallRequestContainer& request) + { + AndroidDevicePushNotificationRegistrationResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::AttributeInstall( + AttributeInstallRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/AttributeInstall", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnAttributeInstallResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnAttributeInstallResult(CallRequestContainer& request) + { + AttributeInstallResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + PlayFabSettings::advertisingIdType += "_Successful"; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::CancelTrade( + CancelTradeRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/CancelTrade", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnCancelTradeResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnCancelTradeResult(CallRequestContainer& request) + { + CancelTradeResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::ConfirmPurchase( + ConfirmPurchaseRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/ConfirmPurchase", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnConfirmPurchaseResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnConfirmPurchaseResult(CallRequestContainer& request) + { + ConfirmPurchaseResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::ConsumeItem( + ConsumeItemRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/ConsumeItem", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnConsumeItemResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnConsumeItemResult(CallRequestContainer& request) + { + ConsumeItemResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::CreateSharedGroup( + CreateSharedGroupRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/CreateSharedGroup", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnCreateSharedGroupResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnCreateSharedGroupResult(CallRequestContainer& request) + { + CreateSharedGroupResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::ExecuteCloudScript( + ExecuteCloudScriptRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/ExecuteCloudScript", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnExecuteCloudScriptResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnExecuteCloudScriptResult(CallRequestContainer& request) + { + ExecuteCloudScriptResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetAccountInfo( + GetAccountInfoRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetAccountInfo", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetAccountInfoResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetAccountInfoResult(CallRequestContainer& request) + { + GetAccountInfoResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetAllUsersCharacters( + ListUsersCharactersRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetAllUsersCharacters", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetAllUsersCharactersResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetAllUsersCharactersResult(CallRequestContainer& request) + { + ListUsersCharactersResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetCatalogItems( + GetCatalogItemsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetCatalogItems", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetCatalogItemsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetCatalogItemsResult(CallRequestContainer& request) + { + GetCatalogItemsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetCharacterData( + GetCharacterDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetCharacterData", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetCharacterDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetCharacterDataResult(CallRequestContainer& request) + { + GetCharacterDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetCharacterInventory( + GetCharacterInventoryRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetCharacterInventory", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetCharacterInventoryResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetCharacterInventoryResult(CallRequestContainer& request) + { + GetCharacterInventoryResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetCharacterLeaderboard( + GetCharacterLeaderboardRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetCharacterLeaderboard", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetCharacterLeaderboardResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetCharacterLeaderboardResult(CallRequestContainer& request) + { + GetCharacterLeaderboardResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetCharacterReadOnlyData( + GetCharacterDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetCharacterReadOnlyData", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetCharacterReadOnlyDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetCharacterReadOnlyDataResult(CallRequestContainer& request) + { + GetCharacterDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetCharacterStatistics( + GetCharacterStatisticsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetCharacterStatistics", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetCharacterStatisticsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetCharacterStatisticsResult(CallRequestContainer& request) + { + GetCharacterStatisticsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetContentDownloadUrl( + GetContentDownloadUrlRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetContentDownloadUrl", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetContentDownloadUrlResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetContentDownloadUrlResult(CallRequestContainer& request) + { + GetContentDownloadUrlResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetCurrentGames( + CurrentGamesRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetCurrentGames", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetCurrentGamesResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetCurrentGamesResult(CallRequestContainer& request) + { + CurrentGamesResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetFriendLeaderboard( + GetFriendLeaderboardRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetFriendLeaderboard", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetFriendLeaderboardResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetFriendLeaderboardResult(CallRequestContainer& request) + { + GetLeaderboardResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetFriendLeaderboardAroundPlayer( + GetFriendLeaderboardAroundPlayerRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetFriendLeaderboardAroundPlayer", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetFriendLeaderboardAroundPlayerResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetFriendLeaderboardAroundPlayerResult(CallRequestContainer& request) + { + GetFriendLeaderboardAroundPlayerResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetFriendsList( + GetFriendsListRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetFriendsList", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetFriendsListResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetFriendsListResult(CallRequestContainer& request) + { + GetFriendsListResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetGameServerRegions( + GameServerRegionsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetGameServerRegions", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetGameServerRegionsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetGameServerRegionsResult(CallRequestContainer& request) + { + GameServerRegionsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetLeaderboard( + GetLeaderboardRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetLeaderboard", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetLeaderboardResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetLeaderboardResult(CallRequestContainer& request) + { + GetLeaderboardResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetLeaderboardAroundCharacter( + GetLeaderboardAroundCharacterRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetLeaderboardAroundCharacter", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetLeaderboardAroundCharacterResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetLeaderboardAroundCharacterResult(CallRequestContainer& request) + { + GetLeaderboardAroundCharacterResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetLeaderboardAroundPlayer( + GetLeaderboardAroundPlayerRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetLeaderboardAroundPlayer", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetLeaderboardAroundPlayerResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetLeaderboardAroundPlayerResult(CallRequestContainer& request) + { + GetLeaderboardAroundPlayerResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetLeaderboardForUserCharacters( + GetLeaderboardForUsersCharactersRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetLeaderboardForUserCharacters", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetLeaderboardForUserCharactersResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetLeaderboardForUserCharactersResult(CallRequestContainer& request) + { + GetLeaderboardForUsersCharactersResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPaymentToken( + GetPaymentTokenRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPaymentToken", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPaymentTokenResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPaymentTokenResult(CallRequestContainer& request) + { + GetPaymentTokenResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPhotonAuthenticationToken( + GetPhotonAuthenticationTokenRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPhotonAuthenticationToken", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPhotonAuthenticationTokenResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPhotonAuthenticationTokenResult(CallRequestContainer& request) + { + GetPhotonAuthenticationTokenResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPlayerCombinedInfo( + GetPlayerCombinedInfoRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPlayerCombinedInfo", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPlayerCombinedInfoResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPlayerCombinedInfoResult(CallRequestContainer& request) + { + GetPlayerCombinedInfoResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPlayerProfile( + GetPlayerProfileRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPlayerProfile", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPlayerProfileResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPlayerProfileResult(CallRequestContainer& request) + { + GetPlayerProfileResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPlayerSegments( + GetPlayerSegmentsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPlayerSegments", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPlayerSegmentsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPlayerSegmentsResult(CallRequestContainer& request) + { + GetPlayerSegmentsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPlayerStatistics( + GetPlayerStatisticsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPlayerStatistics", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPlayerStatisticsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPlayerStatisticsResult(CallRequestContainer& request) + { + GetPlayerStatisticsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPlayerStatisticVersions( + GetPlayerStatisticVersionsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPlayerStatisticVersions", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPlayerStatisticVersionsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPlayerStatisticVersionsResult(CallRequestContainer& request) + { + GetPlayerStatisticVersionsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPlayerTags( + GetPlayerTagsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPlayerTags", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPlayerTagsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPlayerTagsResult(CallRequestContainer& request) + { + GetPlayerTagsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPlayerTrades( + GetPlayerTradesRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPlayerTrades", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPlayerTradesResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPlayerTradesResult(CallRequestContainer& request) + { + GetPlayerTradesResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPlayFabIDsFromFacebookIDs( + GetPlayFabIDsFromFacebookIDsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPlayFabIDsFromFacebookIDs", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPlayFabIDsFromFacebookIDsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPlayFabIDsFromFacebookIDsResult(CallRequestContainer& request) + { + GetPlayFabIDsFromFacebookIDsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPlayFabIDsFromGameCenterIDs( + GetPlayFabIDsFromGameCenterIDsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPlayFabIDsFromGameCenterIDs", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPlayFabIDsFromGameCenterIDsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPlayFabIDsFromGameCenterIDsResult(CallRequestContainer& request) + { + GetPlayFabIDsFromGameCenterIDsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPlayFabIDsFromGenericIDs( + GetPlayFabIDsFromGenericIDsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPlayFabIDsFromGenericIDs", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPlayFabIDsFromGenericIDsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPlayFabIDsFromGenericIDsResult(CallRequestContainer& request) + { + GetPlayFabIDsFromGenericIDsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPlayFabIDsFromGoogleIDs( + GetPlayFabIDsFromGoogleIDsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPlayFabIDsFromGoogleIDs", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPlayFabIDsFromGoogleIDsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPlayFabIDsFromGoogleIDsResult(CallRequestContainer& request) + { + GetPlayFabIDsFromGoogleIDsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPlayFabIDsFromKongregateIDs( + GetPlayFabIDsFromKongregateIDsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPlayFabIDsFromKongregateIDs", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPlayFabIDsFromKongregateIDsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPlayFabIDsFromKongregateIDsResult(CallRequestContainer& request) + { + GetPlayFabIDsFromKongregateIDsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPlayFabIDsFromSteamIDs( + GetPlayFabIDsFromSteamIDsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPlayFabIDsFromSteamIDs", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPlayFabIDsFromSteamIDsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPlayFabIDsFromSteamIDsResult(CallRequestContainer& request) + { + GetPlayFabIDsFromSteamIDsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPlayFabIDsFromTwitchIDs( + GetPlayFabIDsFromTwitchIDsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPlayFabIDsFromTwitchIDs", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPlayFabIDsFromTwitchIDsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPlayFabIDsFromTwitchIDsResult(CallRequestContainer& request) + { + GetPlayFabIDsFromTwitchIDsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPublisherData( + GetPublisherDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPublisherData", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPublisherDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPublisherDataResult(CallRequestContainer& request) + { + GetPublisherDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetPurchase( + GetPurchaseRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetPurchase", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetPurchaseResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetPurchaseResult(CallRequestContainer& request) + { + GetPurchaseResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetSharedGroupData( + GetSharedGroupDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetSharedGroupData", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetSharedGroupDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetSharedGroupDataResult(CallRequestContainer& request) + { + GetSharedGroupDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetStoreItems( + GetStoreItemsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetStoreItems", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetStoreItemsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetStoreItemsResult(CallRequestContainer& request) + { + GetStoreItemsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetTime( + GetTimeRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetTime", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetTimeResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetTimeResult(CallRequestContainer& request) + { + GetTimeResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetTitleData( + GetTitleDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetTitleData", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetTitleDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetTitleDataResult(CallRequestContainer& request) + { + GetTitleDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetTitleNews( + GetTitleNewsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetTitleNews", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetTitleNewsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetTitleNewsResult(CallRequestContainer& request) + { + GetTitleNewsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetTitlePublicKey( + GetTitlePublicKeyRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetTitlePublicKey", "", "", requestJson, OnGetTitlePublicKeyResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetTitlePublicKeyResult(CallRequestContainer& request) + { + GetTitlePublicKeyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetTradeStatus( + GetTradeStatusRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetTradeStatus", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetTradeStatusResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetTradeStatusResult(CallRequestContainer& request) + { + GetTradeStatusResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetUserData( + GetUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetUserData", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetUserDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetUserDataResult(CallRequestContainer& request) + { + GetUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetUserInventory( + GetUserInventoryRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetUserInventory", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetUserInventoryResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetUserInventoryResult(CallRequestContainer& request) + { + GetUserInventoryResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetUserPublisherData( + GetUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetUserPublisherData", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetUserPublisherDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetUserPublisherDataResult(CallRequestContainer& request) + { + GetUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetUserPublisherReadOnlyData( + GetUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetUserPublisherReadOnlyData", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetUserPublisherReadOnlyDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetUserPublisherReadOnlyDataResult(CallRequestContainer& request) + { + GetUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetUserReadOnlyData( + GetUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetUserReadOnlyData", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGetUserReadOnlyDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetUserReadOnlyDataResult(CallRequestContainer& request) + { + GetUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GetWindowsHelloChallenge( + GetWindowsHelloChallengeRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GetWindowsHelloChallenge", "", "", requestJson, OnGetWindowsHelloChallengeResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGetWindowsHelloChallengeResult(CallRequestContainer& request) + { + GetWindowsHelloChallengeResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::GrantCharacterToUser( + GrantCharacterToUserRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/GrantCharacterToUser", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnGrantCharacterToUserResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnGrantCharacterToUserResult(CallRequestContainer& request) + { + GrantCharacterToUserResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LinkAndroidDeviceID( + LinkAndroidDeviceIDRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LinkAndroidDeviceID", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnLinkAndroidDeviceIDResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLinkAndroidDeviceIDResult(CallRequestContainer& request) + { + LinkAndroidDeviceIDResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LinkCustomID( + LinkCustomIDRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LinkCustomID", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnLinkCustomIDResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLinkCustomIDResult(CallRequestContainer& request) + { + LinkCustomIDResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LinkFacebookAccount( + LinkFacebookAccountRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LinkFacebookAccount", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnLinkFacebookAccountResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLinkFacebookAccountResult(CallRequestContainer& request) + { + LinkFacebookAccountResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LinkGameCenterAccount( + LinkGameCenterAccountRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LinkGameCenterAccount", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnLinkGameCenterAccountResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLinkGameCenterAccountResult(CallRequestContainer& request) + { + LinkGameCenterAccountResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LinkGoogleAccount( + LinkGoogleAccountRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LinkGoogleAccount", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnLinkGoogleAccountResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLinkGoogleAccountResult(CallRequestContainer& request) + { + LinkGoogleAccountResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LinkIOSDeviceID( + LinkIOSDeviceIDRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LinkIOSDeviceID", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnLinkIOSDeviceIDResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLinkIOSDeviceIDResult(CallRequestContainer& request) + { + LinkIOSDeviceIDResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LinkKongregate( + LinkKongregateAccountRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LinkKongregate", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnLinkKongregateResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLinkKongregateResult(CallRequestContainer& request) + { + LinkKongregateAccountResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LinkSteamAccount( + LinkSteamAccountRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LinkSteamAccount", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnLinkSteamAccountResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLinkSteamAccountResult(CallRequestContainer& request) + { + LinkSteamAccountResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LinkTwitch( + LinkTwitchAccountRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LinkTwitch", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnLinkTwitchResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLinkTwitchResult(CallRequestContainer& request) + { + LinkTwitchAccountResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LinkWindowsHello( + LinkWindowsHelloAccountRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LinkWindowsHello", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnLinkWindowsHelloResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLinkWindowsHelloResult(CallRequestContainer& request) + { + LinkWindowsHelloAccountResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LoginWithAndroidDeviceID( + LoginWithAndroidDeviceIDRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + if (PlayFabSettings::titleId.length() > 0) request.TitleId = PlayFabSettings::titleId; + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LoginWithAndroidDeviceID", "", "", requestJson, OnLoginWithAndroidDeviceIDResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLoginWithAndroidDeviceIDResult(CallRequestContainer& request) + { + LoginResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + if (outResult.SessionTicket.length() > 0) + { + PlayFabSettings::clientSessionTicket = outResult.SessionTicket; + if (outResult.EntityToken.notNull()) PlayFabSettings::entityToken = outResult.EntityToken->EntityToken; + MultiStepClientLogin(outResult.SettingsForUser->NeedsAttribution); + } + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LoginWithCustomID( + LoginWithCustomIDRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + if (PlayFabSettings::titleId.length() > 0) request.TitleId = PlayFabSettings::titleId; + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LoginWithCustomID", "", "", requestJson, OnLoginWithCustomIDResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLoginWithCustomIDResult(CallRequestContainer& request) + { + LoginResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + if (outResult.SessionTicket.length() > 0) + { + PlayFabSettings::clientSessionTicket = outResult.SessionTicket; + if (outResult.EntityToken.notNull()) PlayFabSettings::entityToken = outResult.EntityToken->EntityToken; + MultiStepClientLogin(outResult.SettingsForUser->NeedsAttribution); + } + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LoginWithEmailAddress( + LoginWithEmailAddressRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + if (PlayFabSettings::titleId.length() > 0) request.TitleId = PlayFabSettings::titleId; + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LoginWithEmailAddress", "", "", requestJson, OnLoginWithEmailAddressResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLoginWithEmailAddressResult(CallRequestContainer& request) + { + LoginResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + if (outResult.SessionTicket.length() > 0) + { + PlayFabSettings::clientSessionTicket = outResult.SessionTicket; + if (outResult.EntityToken.notNull()) PlayFabSettings::entityToken = outResult.EntityToken->EntityToken; + MultiStepClientLogin(outResult.SettingsForUser->NeedsAttribution); + } + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LoginWithFacebook( + LoginWithFacebookRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + if (PlayFabSettings::titleId.length() > 0) request.TitleId = PlayFabSettings::titleId; + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LoginWithFacebook", "", "", requestJson, OnLoginWithFacebookResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLoginWithFacebookResult(CallRequestContainer& request) + { + LoginResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + if (outResult.SessionTicket.length() > 0) + { + PlayFabSettings::clientSessionTicket = outResult.SessionTicket; + if (outResult.EntityToken.notNull()) PlayFabSettings::entityToken = outResult.EntityToken->EntityToken; + MultiStepClientLogin(outResult.SettingsForUser->NeedsAttribution); + } + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LoginWithGameCenter( + LoginWithGameCenterRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + if (PlayFabSettings::titleId.length() > 0) request.TitleId = PlayFabSettings::titleId; + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LoginWithGameCenter", "", "", requestJson, OnLoginWithGameCenterResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLoginWithGameCenterResult(CallRequestContainer& request) + { + LoginResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + if (outResult.SessionTicket.length() > 0) + { + PlayFabSettings::clientSessionTicket = outResult.SessionTicket; + if (outResult.EntityToken.notNull()) PlayFabSettings::entityToken = outResult.EntityToken->EntityToken; + MultiStepClientLogin(outResult.SettingsForUser->NeedsAttribution); + } + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LoginWithGoogleAccount( + LoginWithGoogleAccountRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + if (PlayFabSettings::titleId.length() > 0) request.TitleId = PlayFabSettings::titleId; + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LoginWithGoogleAccount", "", "", requestJson, OnLoginWithGoogleAccountResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLoginWithGoogleAccountResult(CallRequestContainer& request) + { + LoginResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + if (outResult.SessionTicket.length() > 0) + { + PlayFabSettings::clientSessionTicket = outResult.SessionTicket; + if (outResult.EntityToken.notNull()) PlayFabSettings::entityToken = outResult.EntityToken->EntityToken; + MultiStepClientLogin(outResult.SettingsForUser->NeedsAttribution); + } + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LoginWithIOSDeviceID( + LoginWithIOSDeviceIDRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + if (PlayFabSettings::titleId.length() > 0) request.TitleId = PlayFabSettings::titleId; + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LoginWithIOSDeviceID", "", "", requestJson, OnLoginWithIOSDeviceIDResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLoginWithIOSDeviceIDResult(CallRequestContainer& request) + { + LoginResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + if (outResult.SessionTicket.length() > 0) + { + PlayFabSettings::clientSessionTicket = outResult.SessionTicket; + if (outResult.EntityToken.notNull()) PlayFabSettings::entityToken = outResult.EntityToken->EntityToken; + MultiStepClientLogin(outResult.SettingsForUser->NeedsAttribution); + } + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LoginWithKongregate( + LoginWithKongregateRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + if (PlayFabSettings::titleId.length() > 0) request.TitleId = PlayFabSettings::titleId; + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LoginWithKongregate", "", "", requestJson, OnLoginWithKongregateResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLoginWithKongregateResult(CallRequestContainer& request) + { + LoginResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + if (outResult.SessionTicket.length() > 0) + { + PlayFabSettings::clientSessionTicket = outResult.SessionTicket; + if (outResult.EntityToken.notNull()) PlayFabSettings::entityToken = outResult.EntityToken->EntityToken; + MultiStepClientLogin(outResult.SettingsForUser->NeedsAttribution); + } + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LoginWithPlayFab( + LoginWithPlayFabRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + if (PlayFabSettings::titleId.length() > 0) request.TitleId = PlayFabSettings::titleId; + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LoginWithPlayFab", "", "", requestJson, OnLoginWithPlayFabResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLoginWithPlayFabResult(CallRequestContainer& request) + { + LoginResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + if (outResult.SessionTicket.length() > 0) + { + PlayFabSettings::clientSessionTicket = outResult.SessionTicket; + if (outResult.EntityToken.notNull()) PlayFabSettings::entityToken = outResult.EntityToken->EntityToken; + MultiStepClientLogin(outResult.SettingsForUser->NeedsAttribution); + } + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LoginWithSteam( + LoginWithSteamRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + if (PlayFabSettings::titleId.length() > 0) request.TitleId = PlayFabSettings::titleId; + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LoginWithSteam", "", "", requestJson, OnLoginWithSteamResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLoginWithSteamResult(CallRequestContainer& request) + { + LoginResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + if (outResult.SessionTicket.length() > 0) + { + PlayFabSettings::clientSessionTicket = outResult.SessionTicket; + if (outResult.EntityToken.notNull()) PlayFabSettings::entityToken = outResult.EntityToken->EntityToken; + MultiStepClientLogin(outResult.SettingsForUser->NeedsAttribution); + } + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LoginWithTwitch( + LoginWithTwitchRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + if (PlayFabSettings::titleId.length() > 0) request.TitleId = PlayFabSettings::titleId; + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LoginWithTwitch", "", "", requestJson, OnLoginWithTwitchResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLoginWithTwitchResult(CallRequestContainer& request) + { + LoginResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + if (outResult.SessionTicket.length() > 0) + { + PlayFabSettings::clientSessionTicket = outResult.SessionTicket; + if (outResult.EntityToken.notNull()) PlayFabSettings::entityToken = outResult.EntityToken->EntityToken; + MultiStepClientLogin(outResult.SettingsForUser->NeedsAttribution); + } + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::LoginWithWindowsHello( + LoginWithWindowsHelloRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + if (PlayFabSettings::titleId.length() > 0) request.TitleId = PlayFabSettings::titleId; + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/LoginWithWindowsHello", "", "", requestJson, OnLoginWithWindowsHelloResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnLoginWithWindowsHelloResult(CallRequestContainer& request) + { + LoginResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + if (outResult.SessionTicket.length() > 0) + { + PlayFabSettings::clientSessionTicket = outResult.SessionTicket; + if (outResult.EntityToken.notNull()) PlayFabSettings::entityToken = outResult.EntityToken->EntityToken; + MultiStepClientLogin(outResult.SettingsForUser->NeedsAttribution); + } + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::Matchmake( + MatchmakeRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/Matchmake", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnMatchmakeResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnMatchmakeResult(CallRequestContainer& request) + { + MatchmakeResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::OpenTrade( + OpenTradeRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/OpenTrade", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnOpenTradeResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnOpenTradeResult(CallRequestContainer& request) + { + OpenTradeResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::PayForPurchase( + PayForPurchaseRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/PayForPurchase", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnPayForPurchaseResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnPayForPurchaseResult(CallRequestContainer& request) + { + PayForPurchaseResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::PurchaseItem( + PurchaseItemRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/PurchaseItem", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnPurchaseItemResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnPurchaseItemResult(CallRequestContainer& request) + { + PurchaseItemResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::RedeemCoupon( + RedeemCouponRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/RedeemCoupon", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnRedeemCouponResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnRedeemCouponResult(CallRequestContainer& request) + { + RedeemCouponResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::RegisterForIOSPushNotification( + RegisterForIOSPushNotificationRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/RegisterForIOSPushNotification", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnRegisterForIOSPushNotificationResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnRegisterForIOSPushNotificationResult(CallRequestContainer& request) + { + RegisterForIOSPushNotificationResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::RegisterPlayFabUser( + RegisterPlayFabUserRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + if (PlayFabSettings::titleId.length() > 0) request.TitleId = PlayFabSettings::titleId; + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/RegisterPlayFabUser", "", "", requestJson, OnRegisterPlayFabUserResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnRegisterPlayFabUserResult(CallRequestContainer& request) + { + RegisterPlayFabUserResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + if (outResult.SessionTicket.length() > 0) + { + PlayFabSettings::clientSessionTicket = outResult.SessionTicket; + MultiStepClientLogin(outResult.SettingsForUser->NeedsAttribution); + } + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::RegisterWithWindowsHello( + RegisterWithWindowsHelloRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + if (PlayFabSettings::titleId.length() > 0) request.TitleId = PlayFabSettings::titleId; + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/RegisterWithWindowsHello", "", "", requestJson, OnRegisterWithWindowsHelloResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnRegisterWithWindowsHelloResult(CallRequestContainer& request) + { + LoginResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + if (outResult.SessionTicket.length() > 0) + { + PlayFabSettings::clientSessionTicket = outResult.SessionTicket; + if (outResult.EntityToken.notNull()) PlayFabSettings::entityToken = outResult.EntityToken->EntityToken; + MultiStepClientLogin(outResult.SettingsForUser->NeedsAttribution); + } + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::RemoveContactEmail( + RemoveContactEmailRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/RemoveContactEmail", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnRemoveContactEmailResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnRemoveContactEmailResult(CallRequestContainer& request) + { + RemoveContactEmailResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::RemoveFriend( + RemoveFriendRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/RemoveFriend", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnRemoveFriendResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnRemoveFriendResult(CallRequestContainer& request) + { + RemoveFriendResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::RemoveGenericID( + RemoveGenericIDRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/RemoveGenericID", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnRemoveGenericIDResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnRemoveGenericIDResult(CallRequestContainer& request) + { + RemoveGenericIDResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::RemoveSharedGroupMembers( + RemoveSharedGroupMembersRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/RemoveSharedGroupMembers", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnRemoveSharedGroupMembersResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnRemoveSharedGroupMembersResult(CallRequestContainer& request) + { + RemoveSharedGroupMembersResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::ReportDeviceInfo( + DeviceInfoRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/ReportDeviceInfo", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnReportDeviceInfoResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnReportDeviceInfoResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::ReportPlayer( + ReportPlayerClientRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/ReportPlayer", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnReportPlayerResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnReportPlayerResult(CallRequestContainer& request) + { + ReportPlayerClientResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::RestoreIOSPurchases( + RestoreIOSPurchasesRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/RestoreIOSPurchases", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnRestoreIOSPurchasesResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnRestoreIOSPurchasesResult(CallRequestContainer& request) + { + RestoreIOSPurchasesResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::SendAccountRecoveryEmail( + SendAccountRecoveryEmailRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/SendAccountRecoveryEmail", "", "", requestJson, OnSendAccountRecoveryEmailResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnSendAccountRecoveryEmailResult(CallRequestContainer& request) + { + SendAccountRecoveryEmailResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::SetFriendTags( + SetFriendTagsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/SetFriendTags", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnSetFriendTagsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnSetFriendTagsResult(CallRequestContainer& request) + { + SetFriendTagsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::SetPlayerSecret( + SetPlayerSecretRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/SetPlayerSecret", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnSetPlayerSecretResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnSetPlayerSecretResult(CallRequestContainer& request) + { + SetPlayerSecretResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::StartGame( + StartGameRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/StartGame", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnStartGameResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnStartGameResult(CallRequestContainer& request) + { + StartGameResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::StartPurchase( + StartPurchaseRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/StartPurchase", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnStartPurchaseResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnStartPurchaseResult(CallRequestContainer& request) + { + StartPurchaseResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::SubtractUserVirtualCurrency( + SubtractUserVirtualCurrencyRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/SubtractUserVirtualCurrency", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnSubtractUserVirtualCurrencyResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnSubtractUserVirtualCurrencyResult(CallRequestContainer& request) + { + ModifyUserVirtualCurrencyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UnlinkAndroidDeviceID( + UnlinkAndroidDeviceIDRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UnlinkAndroidDeviceID", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUnlinkAndroidDeviceIDResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUnlinkAndroidDeviceIDResult(CallRequestContainer& request) + { + UnlinkAndroidDeviceIDResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UnlinkCustomID( + UnlinkCustomIDRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UnlinkCustomID", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUnlinkCustomIDResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUnlinkCustomIDResult(CallRequestContainer& request) + { + UnlinkCustomIDResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UnlinkFacebookAccount( + UnlinkFacebookAccountRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UnlinkFacebookAccount", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUnlinkFacebookAccountResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUnlinkFacebookAccountResult(CallRequestContainer& request) + { + UnlinkFacebookAccountResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UnlinkGameCenterAccount( + UnlinkGameCenterAccountRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UnlinkGameCenterAccount", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUnlinkGameCenterAccountResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUnlinkGameCenterAccountResult(CallRequestContainer& request) + { + UnlinkGameCenterAccountResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UnlinkGoogleAccount( + UnlinkGoogleAccountRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UnlinkGoogleAccount", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUnlinkGoogleAccountResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUnlinkGoogleAccountResult(CallRequestContainer& request) + { + UnlinkGoogleAccountResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UnlinkIOSDeviceID( + UnlinkIOSDeviceIDRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UnlinkIOSDeviceID", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUnlinkIOSDeviceIDResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUnlinkIOSDeviceIDResult(CallRequestContainer& request) + { + UnlinkIOSDeviceIDResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UnlinkKongregate( + UnlinkKongregateAccountRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UnlinkKongregate", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUnlinkKongregateResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUnlinkKongregateResult(CallRequestContainer& request) + { + UnlinkKongregateAccountResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UnlinkSteamAccount( + UnlinkSteamAccountRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UnlinkSteamAccount", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUnlinkSteamAccountResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUnlinkSteamAccountResult(CallRequestContainer& request) + { + UnlinkSteamAccountResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UnlinkTwitch( + UnlinkTwitchAccountRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UnlinkTwitch", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUnlinkTwitchResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUnlinkTwitchResult(CallRequestContainer& request) + { + UnlinkTwitchAccountResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UnlinkWindowsHello( + UnlinkWindowsHelloAccountRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UnlinkWindowsHello", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUnlinkWindowsHelloResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUnlinkWindowsHelloResult(CallRequestContainer& request) + { + UnlinkWindowsHelloAccountResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UnlockContainerInstance( + UnlockContainerInstanceRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UnlockContainerInstance", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUnlockContainerInstanceResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUnlockContainerInstanceResult(CallRequestContainer& request) + { + UnlockContainerItemResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UnlockContainerItem( + UnlockContainerItemRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UnlockContainerItem", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUnlockContainerItemResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUnlockContainerItemResult(CallRequestContainer& request) + { + UnlockContainerItemResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UpdateAvatarUrl( + UpdateAvatarUrlRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UpdateAvatarUrl", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUpdateAvatarUrlResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUpdateAvatarUrlResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UpdateCharacterData( + UpdateCharacterDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UpdateCharacterData", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUpdateCharacterDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUpdateCharacterDataResult(CallRequestContainer& request) + { + UpdateCharacterDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UpdateCharacterStatistics( + UpdateCharacterStatisticsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UpdateCharacterStatistics", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUpdateCharacterStatisticsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUpdateCharacterStatisticsResult(CallRequestContainer& request) + { + UpdateCharacterStatisticsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UpdatePlayerStatistics( + UpdatePlayerStatisticsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UpdatePlayerStatistics", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUpdatePlayerStatisticsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUpdatePlayerStatisticsResult(CallRequestContainer& request) + { + UpdatePlayerStatisticsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UpdateSharedGroupData( + UpdateSharedGroupDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UpdateSharedGroupData", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUpdateSharedGroupDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUpdateSharedGroupDataResult(CallRequestContainer& request) + { + UpdateSharedGroupDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UpdateUserData( + UpdateUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UpdateUserData", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUpdateUserDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUpdateUserDataResult(CallRequestContainer& request) + { + UpdateUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UpdateUserPublisherData( + UpdateUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UpdateUserPublisherData", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUpdateUserPublisherDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUpdateUserPublisherDataResult(CallRequestContainer& request) + { + UpdateUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::UpdateUserTitleDisplayName( + UpdateUserTitleDisplayNameRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/UpdateUserTitleDisplayName", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnUpdateUserTitleDisplayNameResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnUpdateUserTitleDisplayNameResult(CallRequestContainer& request) + { + UpdateUserTitleDisplayNameResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::ValidateAmazonIAPReceipt( + ValidateAmazonReceiptRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/ValidateAmazonIAPReceipt", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnValidateAmazonIAPReceiptResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnValidateAmazonIAPReceiptResult(CallRequestContainer& request) + { + ValidateAmazonReceiptResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::ValidateGooglePlayPurchase( + ValidateGooglePlayPurchaseRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/ValidateGooglePlayPurchase", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnValidateGooglePlayPurchaseResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnValidateGooglePlayPurchaseResult(CallRequestContainer& request) + { + ValidateGooglePlayPurchaseResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::ValidateIOSReceipt( + ValidateIOSReceiptRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/ValidateIOSReceipt", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnValidateIOSReceiptResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnValidateIOSReceiptResult(CallRequestContainer& request) + { + ValidateIOSReceiptResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::ValidateWindowsStoreReceipt( + ValidateWindowsReceiptRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/ValidateWindowsStoreReceipt", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnValidateWindowsStoreReceiptResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnValidateWindowsStoreReceiptResult(CallRequestContainer& request) + { + ValidateWindowsReceiptResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::WriteCharacterEvent( + WriteClientCharacterEventRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/WriteCharacterEvent", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnWriteCharacterEventResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnWriteCharacterEventResult(CallRequestContainer& request) + { + WriteEventResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::WritePlayerEvent( + WriteClientPlayerEventRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/WritePlayerEvent", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnWritePlayerEventResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnWritePlayerEventResult(CallRequestContainer& request) + { + WriteEventResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabClientAPI::WriteTitleEvent( + WriteTitleEventRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Client/WriteTitleEvent", "X-Authorization", PlayFabSettings::clientSessionTicket, requestJson, OnWriteTitleEventResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabClientAPI::OnWriteTitleEventResult(CallRequestContainer& request) + { + WriteEventResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + // Private PlayFabClientAPI specific + bool PlayFabClientAPI::IsClientLoggedIn() + { + return !PlayFabSettings::clientSessionTicket.empty(); + } + + void PlayFabClientAPI::MultiStepClientLogin(bool needsAttribution) + { + if (needsAttribution && !PlayFabSettings::disableAdvertising && PlayFabSettings::advertisingIdType.length() > 0 && PlayFabSettings::advertisingIdValue.length() > 0) + { + AttributeInstallRequest request; + if (PlayFabSettings::advertisingIdType == PlayFabSettings::AD_TYPE_IDFA) + request.Idfa = PlayFabSettings::advertisingIdValue; + else if (PlayFabSettings::advertisingIdType == PlayFabSettings::AD_TYPE_ANDROID_ID) + request.Adid = PlayFabSettings::advertisingIdValue; + else + return; + AttributeInstall(request, nullptr, nullptr); + } + } +} + +#endif diff --git a/cppsdk/source/playfab/PlayFabEntityApi.cpp b/cppsdk/source/playfab/PlayFabEntityApi.cpp new file mode 100644 index 00000000..49636236 --- /dev/null +++ b/cppsdk/source/playfab/PlayFabEntityApi.cpp @@ -0,0 +1,1034 @@ +#include + +#ifdef ENABLE_PLAYFABENTITY_API + +#include +#include +#include + +namespace PlayFab +{ + using namespace EntityModels; + + size_t PlayFabEntityAPI::Update() + { + return PlayFabHttp::Get().Update(); + } + + void PlayFabEntityAPI::ForgetAllCredentials() + { + return PlayFabSettings::ForgetAllCredentials(); + } + + // PlayFabEntity APIs + + void PlayFabEntityAPI::AbortFileUploads( + AbortFileUploadsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/File/AbortFileUploads", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnAbortFileUploadsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnAbortFileUploadsResult(CallRequestContainer& request) + { + AbortFileUploadsResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::AcceptGroupApplication( + AcceptGroupApplicationRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/AcceptGroupApplication", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnAcceptGroupApplicationResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnAcceptGroupApplicationResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::AcceptGroupInvitation( + AcceptGroupInvitationRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/AcceptGroupInvitation", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnAcceptGroupInvitationResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnAcceptGroupInvitationResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::AddMembers( + AddMembersRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/AddMembers", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnAddMembersResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnAddMembersResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::ApplyToGroup( + ApplyToGroupRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/ApplyToGroup", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnApplyToGroupResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnApplyToGroupResult(CallRequestContainer& request) + { + ApplyToGroupResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::BlockEntity( + BlockEntityRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/BlockEntity", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnBlockEntityResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnBlockEntityResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::ChangeMemberRole( + ChangeMemberRoleRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/ChangeMemberRole", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnChangeMemberRoleResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnChangeMemberRoleResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::CreateGroup( + CreateGroupRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/CreateGroup", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnCreateGroupResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnCreateGroupResult(CallRequestContainer& request) + { + CreateGroupResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::CreateRole( + CreateGroupRoleRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/CreateRole", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnCreateRoleResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnCreateRoleResult(CallRequestContainer& request) + { + CreateGroupRoleResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::DeleteFiles( + DeleteFilesRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/File/DeleteFiles", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnDeleteFilesResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnDeleteFilesResult(CallRequestContainer& request) + { + DeleteFilesResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::DeleteGroup( + DeleteGroupRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/DeleteGroup", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnDeleteGroupResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnDeleteGroupResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::DeleteRole( + DeleteRoleRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/DeleteRole", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnDeleteRoleResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnDeleteRoleResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::FinalizeFileUploads( + FinalizeFileUploadsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/File/FinalizeFileUploads", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnFinalizeFileUploadsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnFinalizeFileUploadsResult(CallRequestContainer& request) + { + FinalizeFileUploadsResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::GetEntityToken( + GetEntityTokenRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + std::string authKey, authValue; + if (PlayFabSettings::entityToken.length() > 0) { + authKey = "X-EntityToken"; authValue = PlayFabSettings::entityToken; + } else if (PlayFabSettings::clientSessionTicket.length() > 0) { + authKey = "X-Authorization"; authValue = PlayFabSettings::clientSessionTicket; + } else if (PlayFabSettings::developerSecretKey.length() > 0) { + authKey = "X-SecretKey"; authValue = PlayFabSettings::developerSecretKey; + } + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Authentication/GetEntityToken", authKey, authValue, requestJson, OnGetEntityTokenResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnGetEntityTokenResult(CallRequestContainer& request) + { + GetEntityTokenResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + if (outResult.EntityToken.length() > 0) PlayFabSettings::entityToken = outResult.EntityToken; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::GetFiles( + GetFilesRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/File/GetFiles", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnGetFilesResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnGetFilesResult(CallRequestContainer& request) + { + GetFilesResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::GetGlobalPolicy( + GetGlobalPolicyRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Profile/GetGlobalPolicy", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnGetGlobalPolicyResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnGetGlobalPolicyResult(CallRequestContainer& request) + { + GetGlobalPolicyResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::GetGroup( + GetGroupRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/GetGroup", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnGetGroupResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnGetGroupResult(CallRequestContainer& request) + { + GetGroupResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::GetObjects( + GetObjectsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Object/GetObjects", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnGetObjectsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnGetObjectsResult(CallRequestContainer& request) + { + GetObjectsResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::GetProfile( + GetEntityProfileRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Profile/GetProfile", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnGetProfileResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnGetProfileResult(CallRequestContainer& request) + { + GetEntityProfileResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::InitiateFileUploads( + InitiateFileUploadsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/File/InitiateFileUploads", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnInitiateFileUploadsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnInitiateFileUploadsResult(CallRequestContainer& request) + { + InitiateFileUploadsResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::InviteToGroup( + InviteToGroupRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/InviteToGroup", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnInviteToGroupResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnInviteToGroupResult(CallRequestContainer& request) + { + InviteToGroupResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::IsMember( + IsMemberRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/IsMember", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnIsMemberResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnIsMemberResult(CallRequestContainer& request) + { + IsMemberResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::ListGroupApplications( + ListGroupApplicationsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/ListGroupApplications", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnListGroupApplicationsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnListGroupApplicationsResult(CallRequestContainer& request) + { + ListGroupApplicationsResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::ListGroupBlocks( + ListGroupBlocksRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/ListGroupBlocks", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnListGroupBlocksResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnListGroupBlocksResult(CallRequestContainer& request) + { + ListGroupBlocksResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::ListGroupInvitations( + ListGroupInvitationsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/ListGroupInvitations", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnListGroupInvitationsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnListGroupInvitationsResult(CallRequestContainer& request) + { + ListGroupInvitationsResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::ListGroupMembers( + ListGroupMembersRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/ListGroupMembers", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnListGroupMembersResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnListGroupMembersResult(CallRequestContainer& request) + { + ListGroupMembersResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::ListMembership( + ListMembershipRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/ListMembership", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnListMembershipResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnListMembershipResult(CallRequestContainer& request) + { + ListMembershipResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::ListMembershipOpportunities( + ListMembershipOpportunitiesRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/ListMembershipOpportunities", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnListMembershipOpportunitiesResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnListMembershipOpportunitiesResult(CallRequestContainer& request) + { + ListMembershipOpportunitiesResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::RemoveGroupApplication( + RemoveGroupApplicationRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/RemoveGroupApplication", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnRemoveGroupApplicationResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnRemoveGroupApplicationResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::RemoveGroupInvitation( + RemoveGroupInvitationRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/RemoveGroupInvitation", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnRemoveGroupInvitationResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnRemoveGroupInvitationResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::RemoveMembers( + RemoveMembersRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/RemoveMembers", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnRemoveMembersResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnRemoveMembersResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::SetGlobalPolicy( + SetGlobalPolicyRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Profile/SetGlobalPolicy", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnSetGlobalPolicyResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnSetGlobalPolicyResult(CallRequestContainer& request) + { + SetGlobalPolicyResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::SetObjects( + SetObjectsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Object/SetObjects", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnSetObjectsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnSetObjectsResult(CallRequestContainer& request) + { + SetObjectsResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::SetProfilePolicy( + SetEntityProfilePolicyRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Profile/SetProfilePolicy", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnSetProfilePolicyResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnSetProfilePolicyResult(CallRequestContainer& request) + { + SetEntityProfilePolicyResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::UnblockEntity( + UnblockEntityRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/UnblockEntity", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnUnblockEntityResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnUnblockEntityResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::UpdateGroup( + UpdateGroupRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/UpdateGroup", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnUpdateGroupResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnUpdateGroupResult(CallRequestContainer& request) + { + UpdateGroupResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabEntityAPI::UpdateRole( + UpdateGroupRoleRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Group/UpdateRole", "X-EntityToken", PlayFabSettings::entityToken, requestJson, OnUpdateRoleResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabEntityAPI::OnUpdateRoleResult(CallRequestContainer& request) + { + UpdateGroupRoleResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } +} + +#endif diff --git a/cppsdk/source/playfab/PlayFabError.cpp b/cppsdk/source/playfab/PlayFabError.cpp new file mode 100644 index 00000000..3a37fc29 --- /dev/null +++ b/cppsdk/source/playfab/PlayFabError.cpp @@ -0,0 +1,63 @@ +#include + +#include + +namespace PlayFab +{ + void PlayFabError::FromJson(Json::Value& input) + { + const Json::Value HttpCode_member = input["code"]; + if (HttpCode_member != Json::Value::null) HttpCode = HttpCode_member.asInt(); + const Json::Value ErrorCode_member = input["errorCode"]; + if (ErrorCode_member != Json::Value::null) ErrorCode = PlayFabErrorCode(ErrorCode_member.asInt()); + const Json::Value HttpStatus_member = input["status"]; + if (HttpStatus_member != Json::Value::null) HttpStatus = HttpStatus_member.asString(); + const Json::Value ErrorName_member = input["error"]; + if (ErrorName_member != Json::Value::null) ErrorName = ErrorName_member.asString(); + const Json::Value ErrorMessage_member = input["errorMessage"]; + if (ErrorMessage_member != Json::Value::null) ErrorMessage = ErrorMessage_member.asString(); + ErrorDetails = input["errorDetails"]; + Data = input["data"]; + } + + Json::Value PlayFabError::ToJson() const + { + // This is not expected to be used, but implemented for completeness + Json::Value output; + output["code"] = Json::Value(HttpCode); + output["errorCode"] = Json::Value(ErrorCode); + output["status"] = Json::Value(HttpStatus); + output["error"] = Json::Value(ErrorName); + output["errorMessage"] = Json::Value(ErrorMessage); + output["errorDetails"] = ErrorDetails; + output["data"] = Data; + return output; + } + + std::string PlayFabError::GenerateReport() const + { + std::string output; + output.reserve(1024); + output += ErrorMessage; + if (ErrorDetails != Json::Value::null && ErrorDetails.isObject()) + { + for (auto detailIter = ErrorDetails.begin(); detailIter != ErrorDetails.end(); ++detailIter) + { + if (!detailIter->isArray()) continue; + + output += "\n"; + output += detailIter.key().asString(); + output += ": "; + int valueIndex = 0; + for (auto valueIter = detailIter->begin(); valueIter != detailIter->end(); ++valueIter) + { + if (!valueIter->isString()) continue; + if (valueIndex != 0) output += ", "; + output += valueIter->asString(); + valueIndex++; + } + } + } + return output; + } +} diff --git a/cppsdk/source/playfab/PlayFabHttp.cpp b/cppsdk/source/playfab/PlayFabHttp.cpp new file mode 100644 index 00000000..76e154f6 --- /dev/null +++ b/cppsdk/source/playfab/PlayFabHttp.cpp @@ -0,0 +1,243 @@ +#include + +#include +#include +#include + +namespace PlayFab +{ + CallRequestContainer::CallRequestContainer() : + curlHandle(nullptr), + curlHttpHeaders(nullptr), + customData(nullptr), + finished(false), + responseString(""), + responseJson(Json::Value::null), + errorWrapper(), + internalCallback(nullptr), + successCallback(nullptr), + errorCallback(nullptr) + { + } + + CallRequestContainer::~CallRequestContainer() + { + curl_easy_reset(curlHandle); + curlHttpHeaders = nullptr; + } + + std::unique_ptr IPlayFabHttp::httpInstance = nullptr; + IPlayFabHttp::~IPlayFabHttp() = default; + IPlayFabHttp& IPlayFabHttp::Get() + { + // In the future we could make it easier to override this instance with a sub-type, for now it defaults to the only one we have + if (httpInstance == nullptr) + PlayFabHttp::MakeInstance(); + return *httpInstance.get(); + } + + PlayFabHttp::PlayFabHttp() + { + threadRunning = true; + pfHttpWorkerThread = std::thread(&PlayFabHttp::WorkerThread, this); + }; + + PlayFabHttp::~PlayFabHttp() + { + threadRunning = false; + pfHttpWorkerThread.join(); + for (size_t i = 0; i < pendingRequests.size(); ++i) + delete pendingRequests[i]; + pendingRequests.clear(); + for (size_t i = 0; i < pendingResults.size(); ++i) + delete pendingResults[i]; + pendingResults.clear(); + } + + void PlayFabHttp::MakeInstance() + { + class _PlayFabHttp : public PlayFabHttp {}; // Hack to bypass private constructor on PlayFabHttp + + if (httpInstance == nullptr) + { + httpInstance = std::make_unique<_PlayFabHttp>(); + } + } + + void PlayFabHttp::WorkerThread() + { + size_t queueSize; + + while (this->threadRunning) + { + CallRequestContainer* reqContainer = nullptr; + + { // LOCK httpRequestMutex + std::unique_lock lock(this->httpRequestMutex); + + queueSize = this->pendingRequests.size(); + if (queueSize != 0) + { + reqContainer = this->pendingRequests[this->pendingRequests.size() - 1]; + this->pendingRequests.pop_back(); + } + } // UNLOCK httpRequestMutex + + if (queueSize == 0) + { + std::this_thread::sleep_for(std::chrono::milliseconds(10)); + continue; + } + + if (reqContainer != nullptr) + ExecuteRequest(*reqContainer); + } + } + + void PlayFabHttp::HandleCallback(CallRequestContainer& reqContainer) + { + reqContainer.finished = true; + if (PlayFabSettings::threadedCallbacks) + HandleResults(reqContainer); + + PlayFabHttp& instance = reinterpret_cast(Get()); + if (!PlayFabSettings::threadedCallbacks) + { + { // LOCK httpRequestMutex + std::unique_lock lock(instance.httpRequestMutex); + instance.pendingResults.push_back(&reqContainer); + } // UNLOCK httpRequestMutex + } + } + + size_t PlayFabHttp::CurlReceiveData(char* buffer, size_t blockSize, size_t blockCount, void* userData) + { + CallRequestContainer* reqContainer = reinterpret_cast(userData); + reqContainer->responseString.assign(buffer, blockSize * blockCount); + + Json::CharReaderBuilder jsonReaderFactory; + Json::CharReader* jsonReader(jsonReaderFactory.newCharReader()); + JSONCPP_STRING jsonParseErrors; + const bool parsedSuccessfully = jsonReader->parse(reqContainer->responseString.c_str(), reqContainer->responseString.c_str() + reqContainer->responseString.length(), &reqContainer->responseJson, &jsonParseErrors); + + if (parsedSuccessfully) + { + reqContainer->errorWrapper.HttpCode = reqContainer->responseJson.get("code", Json::Value::null).asInt(); + reqContainer->errorWrapper.HttpStatus = reqContainer->responseJson.get("status", Json::Value::null).asString(); + reqContainer->errorWrapper.Data = reqContainer->responseJson.get("data", Json::Value::null); + reqContainer->errorWrapper.ErrorName = reqContainer->responseJson.get("error", Json::Value::null).asString(); + reqContainer->errorWrapper.ErrorMessage = reqContainer->responseJson.get("errorMessage", Json::Value::null).asString(); + reqContainer->errorWrapper.ErrorDetails = reqContainer->responseJson.get("errorDetails", Json::Value::null); + } + else + { + reqContainer->errorWrapper.HttpCode = 408; + reqContainer->errorWrapper.HttpStatus = reqContainer->responseString; + reqContainer->errorWrapper.ErrorCode = PlayFabErrorConnectionTimeout; + reqContainer->errorWrapper.ErrorName = "Failed to parse PlayFab response"; + reqContainer->errorWrapper.ErrorMessage = jsonParseErrors; + } + + HandleCallback(*reqContainer); + return (blockSize * blockCount); + } + + void PlayFabHttp::AddRequest(const std::string& urlPath, const std::string& authKey, const std::string& authValue, const Json::Value& requestBody, RequestCompleteCallback internalCallback, SharedVoidPointer successCallback, ErrorCallback errorCallback, void* customData) + { + CallRequestContainer* reqContainer = new CallRequestContainer(); + reqContainer->errorWrapper.UrlPath = urlPath; + reqContainer->authKey = authKey; + reqContainer->authValue = authValue; + reqContainer->errorWrapper.Request = requestBody; + reqContainer->internalCallback = internalCallback; + reqContainer->successCallback = successCallback; + reqContainer->errorCallback = errorCallback; + reqContainer->customData = customData; + + { // LOCK httpRequestMutex + std::unique_lock lock(httpRequestMutex); + pendingRequests.push_back(reqContainer); + } // UNLOCK httpRequestMutex + } + + void PlayFabHttp::ExecuteRequest(CallRequestContainer& reqContainer) + { + // Set up curl handle + reqContainer.curlHandle = curl_easy_init(); + curl_easy_reset(reqContainer.curlHandle); + curl_easy_setopt(reqContainer.curlHandle, CURLOPT_URL, PlayFabSettings::GetUrl(reqContainer.errorWrapper.UrlPath).c_str()); + + // Set up headers + reqContainer.curlHttpHeaders = nullptr; + reqContainer.curlHttpHeaders = curl_slist_append(reqContainer.curlHttpHeaders, "Accept: application/json"); + reqContainer.curlHttpHeaders = curl_slist_append(reqContainer.curlHttpHeaders, "Content-Type: application/json; charset=utf-8"); + reqContainer.curlHttpHeaders = curl_slist_append(reqContainer.curlHttpHeaders, ("X-PlayFabSDK: " + PlayFabSettings::versionString).c_str()); + reqContainer.curlHttpHeaders = curl_slist_append(reqContainer.curlHttpHeaders, "X-ReportErrorAsSuccess: true"); + if (reqContainer.authKey.length() != 0 && reqContainer.authValue.length() != 0) + reqContainer.curlHttpHeaders = curl_slist_append(reqContainer.curlHttpHeaders, (reqContainer.authKey + ": " + reqContainer.authValue).c_str()); + curl_easy_setopt(reqContainer.curlHandle, CURLOPT_HTTPHEADER, reqContainer.curlHttpHeaders); + + // Set up post & payload + std::string payload = reqContainer.errorWrapper.Request.toStyledString(); + curl_easy_setopt(reqContainer.curlHandle, CURLOPT_POST, nullptr); + curl_easy_setopt(reqContainer.curlHandle, CURLOPT_POSTFIELDS, payload.c_str()); + + // Process result + // TODO: CURLOPT_ERRORBUFFER ? + curl_easy_setopt(reqContainer.curlHandle, CURLOPT_TIMEOUT_MS, 10000L); + curl_easy_setopt(reqContainer.curlHandle, CURLOPT_WRITEDATA, &reqContainer); + curl_easy_setopt(reqContainer.curlHandle, CURLOPT_WRITEFUNCTION, CurlReceiveData); + + // Send + curl_easy_setopt(reqContainer.curlHandle, CURLOPT_SSL_VERIFYPEER, false); // TODO: Replace this with a ca-bundle ref??? + const auto res = curl_easy_perform(reqContainer.curlHandle); + if (res != CURLE_OK) + { + reqContainer.errorWrapper.HttpCode = 408; + reqContainer.errorWrapper.HttpStatus = "Failed to contact server"; + reqContainer.errorWrapper.ErrorCode = PlayFabErrorConnectionTimeout; + reqContainer.errorWrapper.ErrorName = "Failed to contact server"; + reqContainer.errorWrapper.ErrorMessage = "Failed to contact server, curl error: " + std::to_string(res); + HandleCallback(reqContainer); + } + } + + void PlayFabHttp::HandleResults(CallRequestContainer& reqContainer) + { + // The success case must be handled by a function which is aware of the ResultType + if (reqContainer.errorWrapper.HttpCode == 200) + { + reqContainer.internalCallback(reqContainer); // Unpacks the result as ResultType and invokes successCallback according to that type + } + else // Process the error case + { + if (PlayFabSettings::globalErrorHandler != nullptr) + PlayFabSettings::globalErrorHandler(reqContainer.errorWrapper, reqContainer.customData); + if (reqContainer.errorCallback != nullptr) + reqContainer.errorCallback(reqContainer.errorWrapper, reqContainer.customData); + } + } + + size_t PlayFabHttp::Update() + { + //if (PlayFabSettings::threadedCallbacks) + // throw std::exception("You should not call Update() when PlayFabSettings::threadedCallbacks == true"); + + CallRequestContainer* reqContainer; + size_t resultCount; + + { // LOCK httpRequestMutex + std::unique_lock lock(httpRequestMutex); + resultCount = pendingResults.size(); + if (resultCount == 0) + return resultCount; + + reqContainer = pendingResults[pendingResults.size() - 1]; + pendingResults.pop_back(); + } // UNLOCK httpRequestMutex + + HandleResults(*reqContainer); + delete reqContainer; + return resultCount; + } +} diff --git a/cppsdk/source/playfab/PlayFabMatchmakerApi.cpp b/cppsdk/source/playfab/PlayFabMatchmakerApi.cpp new file mode 100644 index 00000000..c76090d0 --- /dev/null +++ b/cppsdk/source/playfab/PlayFabMatchmakerApi.cpp @@ -0,0 +1,161 @@ +#include + +#ifdef ENABLE_PLAYFABSERVER_API + +#include +#include +#include + +namespace PlayFab +{ + using namespace MatchmakerModels; + + size_t PlayFabMatchmakerAPI::Update() + { + return PlayFabHttp::Get().Update(); + } + + void PlayFabMatchmakerAPI::ForgetAllCredentials() + { + return PlayFabSettings::ForgetAllCredentials(); + } + + // PlayFabMatchmaker APIs + + void PlayFabMatchmakerAPI::AuthUser( + AuthUserRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Matchmaker/AuthUser", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnAuthUserResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabMatchmakerAPI::OnAuthUserResult(CallRequestContainer& request) + { + AuthUserResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabMatchmakerAPI::PlayerJoined( + PlayerJoinedRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Matchmaker/PlayerJoined", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnPlayerJoinedResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabMatchmakerAPI::OnPlayerJoinedResult(CallRequestContainer& request) + { + PlayerJoinedResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabMatchmakerAPI::PlayerLeft( + PlayerLeftRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Matchmaker/PlayerLeft", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnPlayerLeftResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabMatchmakerAPI::OnPlayerLeftResult(CallRequestContainer& request) + { + PlayerLeftResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabMatchmakerAPI::StartGame( + StartGameRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Matchmaker/StartGame", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnStartGameResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabMatchmakerAPI::OnStartGameResult(CallRequestContainer& request) + { + StartGameResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabMatchmakerAPI::UserInfo( + UserInfoRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Matchmaker/UserInfo", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUserInfoResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabMatchmakerAPI::OnUserInfoResult(CallRequestContainer& request) + { + UserInfoResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } +} + +#endif diff --git a/cppsdk/source/playfab/PlayFabServerApi.cpp b/cppsdk/source/playfab/PlayFabServerApi.cpp new file mode 100644 index 00000000..1727e3d3 --- /dev/null +++ b/cppsdk/source/playfab/PlayFabServerApi.cpp @@ -0,0 +1,3023 @@ +#include + +#ifdef ENABLE_PLAYFABSERVER_API + +#include +#include +#include + +namespace PlayFab +{ + using namespace ServerModels; + + size_t PlayFabServerAPI::Update() + { + return PlayFabHttp::Get().Update(); + } + + void PlayFabServerAPI::ForgetAllCredentials() + { + return PlayFabSettings::ForgetAllCredentials(); + } + + // PlayFabServer APIs + + void PlayFabServerAPI::AddCharacterVirtualCurrency( + AddCharacterVirtualCurrencyRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/AddCharacterVirtualCurrency", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnAddCharacterVirtualCurrencyResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnAddCharacterVirtualCurrencyResult(CallRequestContainer& request) + { + ModifyCharacterVirtualCurrencyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::AddFriend( + AddFriendRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/AddFriend", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnAddFriendResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnAddFriendResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::AddPlayerTag( + AddPlayerTagRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/AddPlayerTag", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnAddPlayerTagResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnAddPlayerTagResult(CallRequestContainer& request) + { + AddPlayerTagResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::AddSharedGroupMembers( + AddSharedGroupMembersRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/AddSharedGroupMembers", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnAddSharedGroupMembersResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnAddSharedGroupMembersResult(CallRequestContainer& request) + { + AddSharedGroupMembersResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::AddUserVirtualCurrency( + AddUserVirtualCurrencyRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/AddUserVirtualCurrency", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnAddUserVirtualCurrencyResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnAddUserVirtualCurrencyResult(CallRequestContainer& request) + { + ModifyUserVirtualCurrencyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::AuthenticateSessionTicket( + AuthenticateSessionTicketRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/AuthenticateSessionTicket", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnAuthenticateSessionTicketResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnAuthenticateSessionTicketResult(CallRequestContainer& request) + { + AuthenticateSessionTicketResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::AwardSteamAchievement( + AwardSteamAchievementRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/AwardSteamAchievement", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnAwardSteamAchievementResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnAwardSteamAchievementResult(CallRequestContainer& request) + { + AwardSteamAchievementResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::BanUsers( + BanUsersRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/BanUsers", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnBanUsersResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnBanUsersResult(CallRequestContainer& request) + { + BanUsersResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::ConsumeItem( + ConsumeItemRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/ConsumeItem", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnConsumeItemResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnConsumeItemResult(CallRequestContainer& request) + { + ConsumeItemResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::CreateSharedGroup( + CreateSharedGroupRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/CreateSharedGroup", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnCreateSharedGroupResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnCreateSharedGroupResult(CallRequestContainer& request) + { + CreateSharedGroupResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::DeleteCharacterFromUser( + DeleteCharacterFromUserRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/DeleteCharacterFromUser", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnDeleteCharacterFromUserResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnDeleteCharacterFromUserResult(CallRequestContainer& request) + { + DeleteCharacterFromUserResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::DeleteSharedGroup( + DeleteSharedGroupRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/DeleteSharedGroup", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnDeleteSharedGroupResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnDeleteSharedGroupResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::DeleteUsers( + DeleteUsersRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/DeleteUsers", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnDeleteUsersResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnDeleteUsersResult(CallRequestContainer& request) + { + DeleteUsersResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::DeregisterGame( + DeregisterGameRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/DeregisterGame", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnDeregisterGameResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnDeregisterGameResult(CallRequestContainer& request) + { + DeregisterGameResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::EvaluateRandomResultTable( + EvaluateRandomResultTableRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/EvaluateRandomResultTable", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnEvaluateRandomResultTableResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnEvaluateRandomResultTableResult(CallRequestContainer& request) + { + EvaluateRandomResultTableResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::ExecuteCloudScript( + ExecuteCloudScriptServerRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/ExecuteCloudScript", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnExecuteCloudScriptResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnExecuteCloudScriptResult(CallRequestContainer& request) + { + ExecuteCloudScriptResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetAllSegments( + GetAllSegmentsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetAllSegments", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetAllSegmentsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetAllSegmentsResult(CallRequestContainer& request) + { + GetAllSegmentsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetAllUsersCharacters( + ListUsersCharactersRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetAllUsersCharacters", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetAllUsersCharactersResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetAllUsersCharactersResult(CallRequestContainer& request) + { + ListUsersCharactersResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetCatalogItems( + GetCatalogItemsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetCatalogItems", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetCatalogItemsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetCatalogItemsResult(CallRequestContainer& request) + { + GetCatalogItemsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetCharacterData( + GetCharacterDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetCharacterData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetCharacterDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetCharacterDataResult(CallRequestContainer& request) + { + GetCharacterDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetCharacterInternalData( + GetCharacterDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetCharacterInternalData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetCharacterInternalDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetCharacterInternalDataResult(CallRequestContainer& request) + { + GetCharacterDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetCharacterInventory( + GetCharacterInventoryRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetCharacterInventory", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetCharacterInventoryResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetCharacterInventoryResult(CallRequestContainer& request) + { + GetCharacterInventoryResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetCharacterLeaderboard( + GetCharacterLeaderboardRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetCharacterLeaderboard", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetCharacterLeaderboardResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetCharacterLeaderboardResult(CallRequestContainer& request) + { + GetCharacterLeaderboardResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetCharacterReadOnlyData( + GetCharacterDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetCharacterReadOnlyData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetCharacterReadOnlyDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetCharacterReadOnlyDataResult(CallRequestContainer& request) + { + GetCharacterDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetCharacterStatistics( + GetCharacterStatisticsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetCharacterStatistics", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetCharacterStatisticsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetCharacterStatisticsResult(CallRequestContainer& request) + { + GetCharacterStatisticsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetContentDownloadUrl( + GetContentDownloadUrlRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetContentDownloadUrl", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetContentDownloadUrlResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetContentDownloadUrlResult(CallRequestContainer& request) + { + GetContentDownloadUrlResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetFriendLeaderboard( + GetFriendLeaderboardRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetFriendLeaderboard", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetFriendLeaderboardResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetFriendLeaderboardResult(CallRequestContainer& request) + { + GetLeaderboardResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetFriendsList( + GetFriendsListRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetFriendsList", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetFriendsListResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetFriendsListResult(CallRequestContainer& request) + { + GetFriendsListResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetLeaderboard( + GetLeaderboardRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetLeaderboard", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetLeaderboardResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetLeaderboardResult(CallRequestContainer& request) + { + GetLeaderboardResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetLeaderboardAroundCharacter( + GetLeaderboardAroundCharacterRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetLeaderboardAroundCharacter", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetLeaderboardAroundCharacterResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetLeaderboardAroundCharacterResult(CallRequestContainer& request) + { + GetLeaderboardAroundCharacterResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetLeaderboardAroundUser( + GetLeaderboardAroundUserRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetLeaderboardAroundUser", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetLeaderboardAroundUserResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetLeaderboardAroundUserResult(CallRequestContainer& request) + { + GetLeaderboardAroundUserResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetLeaderboardForUserCharacters( + GetLeaderboardForUsersCharactersRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetLeaderboardForUserCharacters", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetLeaderboardForUserCharactersResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetLeaderboardForUserCharactersResult(CallRequestContainer& request) + { + GetLeaderboardForUsersCharactersResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetPlayerCombinedInfo( + GetPlayerCombinedInfoRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetPlayerCombinedInfo", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPlayerCombinedInfoResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetPlayerCombinedInfoResult(CallRequestContainer& request) + { + GetPlayerCombinedInfoResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetPlayerProfile( + GetPlayerProfileRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetPlayerProfile", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPlayerProfileResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetPlayerProfileResult(CallRequestContainer& request) + { + GetPlayerProfileResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetPlayerSegments( + GetPlayersSegmentsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetPlayerSegments", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPlayerSegmentsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetPlayerSegmentsResult(CallRequestContainer& request) + { + GetPlayerSegmentsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetPlayersInSegment( + GetPlayersInSegmentRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetPlayersInSegment", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPlayersInSegmentResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetPlayersInSegmentResult(CallRequestContainer& request) + { + GetPlayersInSegmentResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetPlayerStatistics( + GetPlayerStatisticsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetPlayerStatistics", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPlayerStatisticsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetPlayerStatisticsResult(CallRequestContainer& request) + { + GetPlayerStatisticsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetPlayerStatisticVersions( + GetPlayerStatisticVersionsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetPlayerStatisticVersions", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPlayerStatisticVersionsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetPlayerStatisticVersionsResult(CallRequestContainer& request) + { + GetPlayerStatisticVersionsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetPlayerTags( + GetPlayerTagsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetPlayerTags", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPlayerTagsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetPlayerTagsResult(CallRequestContainer& request) + { + GetPlayerTagsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetPlayFabIDsFromFacebookIDs( + GetPlayFabIDsFromFacebookIDsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetPlayFabIDsFromFacebookIDs", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPlayFabIDsFromFacebookIDsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetPlayFabIDsFromFacebookIDsResult(CallRequestContainer& request) + { + GetPlayFabIDsFromFacebookIDsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetPlayFabIDsFromSteamIDs( + GetPlayFabIDsFromSteamIDsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetPlayFabIDsFromSteamIDs", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPlayFabIDsFromSteamIDsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetPlayFabIDsFromSteamIDsResult(CallRequestContainer& request) + { + GetPlayFabIDsFromSteamIDsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetPublisherData( + GetPublisherDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetPublisherData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetPublisherDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetPublisherDataResult(CallRequestContainer& request) + { + GetPublisherDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetRandomResultTables( + GetRandomResultTablesRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetRandomResultTables", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetRandomResultTablesResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetRandomResultTablesResult(CallRequestContainer& request) + { + GetRandomResultTablesResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetSharedGroupData( + GetSharedGroupDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetSharedGroupData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetSharedGroupDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetSharedGroupDataResult(CallRequestContainer& request) + { + GetSharedGroupDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetTime( + GetTimeRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetTime", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetTimeResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetTimeResult(CallRequestContainer& request) + { + GetTimeResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetTitleData( + GetTitleDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetTitleData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetTitleDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetTitleDataResult(CallRequestContainer& request) + { + GetTitleDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetTitleInternalData( + GetTitleDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetTitleInternalData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetTitleInternalDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetTitleInternalDataResult(CallRequestContainer& request) + { + GetTitleDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetTitleNews( + GetTitleNewsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetTitleNews", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetTitleNewsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetTitleNewsResult(CallRequestContainer& request) + { + GetTitleNewsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetUserAccountInfo( + GetUserAccountInfoRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetUserAccountInfo", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserAccountInfoResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetUserAccountInfoResult(CallRequestContainer& request) + { + GetUserAccountInfoResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetUserBans( + GetUserBansRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetUserBans", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserBansResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetUserBansResult(CallRequestContainer& request) + { + GetUserBansResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetUserData( + GetUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetUserData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetUserDataResult(CallRequestContainer& request) + { + GetUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetUserInternalData( + GetUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetUserInternalData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserInternalDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetUserInternalDataResult(CallRequestContainer& request) + { + GetUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetUserInventory( + GetUserInventoryRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetUserInventory", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserInventoryResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetUserInventoryResult(CallRequestContainer& request) + { + GetUserInventoryResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetUserPublisherData( + GetUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetUserPublisherData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserPublisherDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetUserPublisherDataResult(CallRequestContainer& request) + { + GetUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetUserPublisherInternalData( + GetUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetUserPublisherInternalData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserPublisherInternalDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetUserPublisherInternalDataResult(CallRequestContainer& request) + { + GetUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetUserPublisherReadOnlyData( + GetUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetUserPublisherReadOnlyData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserPublisherReadOnlyDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetUserPublisherReadOnlyDataResult(CallRequestContainer& request) + { + GetUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GetUserReadOnlyData( + GetUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GetUserReadOnlyData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGetUserReadOnlyDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGetUserReadOnlyDataResult(CallRequestContainer& request) + { + GetUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GrantCharacterToUser( + GrantCharacterToUserRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GrantCharacterToUser", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGrantCharacterToUserResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGrantCharacterToUserResult(CallRequestContainer& request) + { + GrantCharacterToUserResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GrantItemsToCharacter( + GrantItemsToCharacterRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GrantItemsToCharacter", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGrantItemsToCharacterResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGrantItemsToCharacterResult(CallRequestContainer& request) + { + GrantItemsToCharacterResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GrantItemsToUser( + GrantItemsToUserRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GrantItemsToUser", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGrantItemsToUserResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGrantItemsToUserResult(CallRequestContainer& request) + { + GrantItemsToUserResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::GrantItemsToUsers( + GrantItemsToUsersRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/GrantItemsToUsers", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnGrantItemsToUsersResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnGrantItemsToUsersResult(CallRequestContainer& request) + { + GrantItemsToUsersResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::ModifyItemUses( + ModifyItemUsesRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/ModifyItemUses", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnModifyItemUsesResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnModifyItemUsesResult(CallRequestContainer& request) + { + ModifyItemUsesResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::MoveItemToCharacterFromCharacter( + MoveItemToCharacterFromCharacterRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/MoveItemToCharacterFromCharacter", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnMoveItemToCharacterFromCharacterResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnMoveItemToCharacterFromCharacterResult(CallRequestContainer& request) + { + MoveItemToCharacterFromCharacterResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::MoveItemToCharacterFromUser( + MoveItemToCharacterFromUserRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/MoveItemToCharacterFromUser", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnMoveItemToCharacterFromUserResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnMoveItemToCharacterFromUserResult(CallRequestContainer& request) + { + MoveItemToCharacterFromUserResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::MoveItemToUserFromCharacter( + MoveItemToUserFromCharacterRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/MoveItemToUserFromCharacter", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnMoveItemToUserFromCharacterResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnMoveItemToUserFromCharacterResult(CallRequestContainer& request) + { + MoveItemToUserFromCharacterResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::NotifyMatchmakerPlayerLeft( + NotifyMatchmakerPlayerLeftRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/NotifyMatchmakerPlayerLeft", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnNotifyMatchmakerPlayerLeftResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnNotifyMatchmakerPlayerLeftResult(CallRequestContainer& request) + { + NotifyMatchmakerPlayerLeftResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::RedeemCoupon( + RedeemCouponRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/RedeemCoupon", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRedeemCouponResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnRedeemCouponResult(CallRequestContainer& request) + { + RedeemCouponResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::RedeemMatchmakerTicket( + RedeemMatchmakerTicketRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/RedeemMatchmakerTicket", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRedeemMatchmakerTicketResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnRedeemMatchmakerTicketResult(CallRequestContainer& request) + { + RedeemMatchmakerTicketResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::RefreshGameServerInstanceHeartbeat( + RefreshGameServerInstanceHeartbeatRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/RefreshGameServerInstanceHeartbeat", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRefreshGameServerInstanceHeartbeatResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnRefreshGameServerInstanceHeartbeatResult(CallRequestContainer& request) + { + RefreshGameServerInstanceHeartbeatResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::RegisterGame( + RegisterGameRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/RegisterGame", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRegisterGameResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnRegisterGameResult(CallRequestContainer& request) + { + RegisterGameResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::RemoveFriend( + RemoveFriendRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/RemoveFriend", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRemoveFriendResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnRemoveFriendResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::RemovePlayerTag( + RemovePlayerTagRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/RemovePlayerTag", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRemovePlayerTagResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnRemovePlayerTagResult(CallRequestContainer& request) + { + RemovePlayerTagResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::RemoveSharedGroupMembers( + RemoveSharedGroupMembersRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/RemoveSharedGroupMembers", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRemoveSharedGroupMembersResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnRemoveSharedGroupMembersResult(CallRequestContainer& request) + { + RemoveSharedGroupMembersResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::ReportPlayer( + ReportPlayerServerRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/ReportPlayer", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnReportPlayerResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnReportPlayerResult(CallRequestContainer& request) + { + ReportPlayerServerResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::RevokeAllBansForUser( + RevokeAllBansForUserRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/RevokeAllBansForUser", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRevokeAllBansForUserResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnRevokeAllBansForUserResult(CallRequestContainer& request) + { + RevokeAllBansForUserResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::RevokeBans( + RevokeBansRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/RevokeBans", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRevokeBansResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnRevokeBansResult(CallRequestContainer& request) + { + RevokeBansResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::RevokeInventoryItem( + RevokeInventoryItemRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/RevokeInventoryItem", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRevokeInventoryItemResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnRevokeInventoryItemResult(CallRequestContainer& request) + { + RevokeInventoryResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::RevokeInventoryItems( + RevokeInventoryItemsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/RevokeInventoryItems", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnRevokeInventoryItemsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnRevokeInventoryItemsResult(CallRequestContainer& request) + { + RevokeInventoryItemsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::SendCustomAccountRecoveryEmail( + SendCustomAccountRecoveryEmailRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/SendCustomAccountRecoveryEmail", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSendCustomAccountRecoveryEmailResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnSendCustomAccountRecoveryEmailResult(CallRequestContainer& request) + { + SendCustomAccountRecoveryEmailResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::SendEmailFromTemplate( + SendEmailFromTemplateRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/SendEmailFromTemplate", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSendEmailFromTemplateResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnSendEmailFromTemplateResult(CallRequestContainer& request) + { + SendEmailFromTemplateResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::SendPushNotification( + SendPushNotificationRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/SendPushNotification", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSendPushNotificationResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnSendPushNotificationResult(CallRequestContainer& request) + { + SendPushNotificationResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::SetFriendTags( + SetFriendTagsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/SetFriendTags", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSetFriendTagsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnSetFriendTagsResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::SetGameServerInstanceData( + SetGameServerInstanceDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/SetGameServerInstanceData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSetGameServerInstanceDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnSetGameServerInstanceDataResult(CallRequestContainer& request) + { + SetGameServerInstanceDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::SetGameServerInstanceState( + SetGameServerInstanceStateRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/SetGameServerInstanceState", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSetGameServerInstanceStateResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnSetGameServerInstanceStateResult(CallRequestContainer& request) + { + SetGameServerInstanceStateResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::SetGameServerInstanceTags( + SetGameServerInstanceTagsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/SetGameServerInstanceTags", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSetGameServerInstanceTagsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnSetGameServerInstanceTagsResult(CallRequestContainer& request) + { + SetGameServerInstanceTagsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::SetPlayerSecret( + SetPlayerSecretRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/SetPlayerSecret", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSetPlayerSecretResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnSetPlayerSecretResult(CallRequestContainer& request) + { + SetPlayerSecretResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::SetPublisherData( + SetPublisherDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/SetPublisherData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSetPublisherDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnSetPublisherDataResult(CallRequestContainer& request) + { + SetPublisherDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::SetTitleData( + SetTitleDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/SetTitleData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSetTitleDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnSetTitleDataResult(CallRequestContainer& request) + { + SetTitleDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::SetTitleInternalData( + SetTitleDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/SetTitleInternalData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSetTitleInternalDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnSetTitleInternalDataResult(CallRequestContainer& request) + { + SetTitleDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::SubtractCharacterVirtualCurrency( + SubtractCharacterVirtualCurrencyRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/SubtractCharacterVirtualCurrency", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSubtractCharacterVirtualCurrencyResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnSubtractCharacterVirtualCurrencyResult(CallRequestContainer& request) + { + ModifyCharacterVirtualCurrencyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::SubtractUserVirtualCurrency( + SubtractUserVirtualCurrencyRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/SubtractUserVirtualCurrency", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnSubtractUserVirtualCurrencyResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnSubtractUserVirtualCurrencyResult(CallRequestContainer& request) + { + ModifyUserVirtualCurrencyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::UnlockContainerInstance( + UnlockContainerInstanceRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/UnlockContainerInstance", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUnlockContainerInstanceResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnUnlockContainerInstanceResult(CallRequestContainer& request) + { + UnlockContainerItemResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::UnlockContainerItem( + UnlockContainerItemRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/UnlockContainerItem", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUnlockContainerItemResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnUnlockContainerItemResult(CallRequestContainer& request) + { + UnlockContainerItemResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::UpdateAvatarUrl( + UpdateAvatarUrlRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/UpdateAvatarUrl", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateAvatarUrlResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnUpdateAvatarUrlResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::UpdateBans( + UpdateBansRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/UpdateBans", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateBansResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnUpdateBansResult(CallRequestContainer& request) + { + UpdateBansResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::UpdateCharacterData( + UpdateCharacterDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/UpdateCharacterData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateCharacterDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnUpdateCharacterDataResult(CallRequestContainer& request) + { + UpdateCharacterDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::UpdateCharacterInternalData( + UpdateCharacterDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/UpdateCharacterInternalData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateCharacterInternalDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnUpdateCharacterInternalDataResult(CallRequestContainer& request) + { + UpdateCharacterDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::UpdateCharacterReadOnlyData( + UpdateCharacterDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/UpdateCharacterReadOnlyData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateCharacterReadOnlyDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnUpdateCharacterReadOnlyDataResult(CallRequestContainer& request) + { + UpdateCharacterDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::UpdateCharacterStatistics( + UpdateCharacterStatisticsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/UpdateCharacterStatistics", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateCharacterStatisticsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnUpdateCharacterStatisticsResult(CallRequestContainer& request) + { + UpdateCharacterStatisticsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::UpdatePlayerStatistics( + UpdatePlayerStatisticsRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/UpdatePlayerStatistics", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdatePlayerStatisticsResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnUpdatePlayerStatisticsResult(CallRequestContainer& request) + { + UpdatePlayerStatisticsResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::UpdateSharedGroupData( + UpdateSharedGroupDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/UpdateSharedGroupData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateSharedGroupDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnUpdateSharedGroupDataResult(CallRequestContainer& request) + { + UpdateSharedGroupDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::UpdateUserData( + UpdateUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/UpdateUserData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateUserDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnUpdateUserDataResult(CallRequestContainer& request) + { + UpdateUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::UpdateUserInternalData( + UpdateUserInternalDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/UpdateUserInternalData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateUserInternalDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnUpdateUserInternalDataResult(CallRequestContainer& request) + { + UpdateUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::UpdateUserInventoryItemCustomData( + UpdateUserInventoryItemDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/UpdateUserInventoryItemCustomData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateUserInventoryItemCustomDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnUpdateUserInventoryItemCustomDataResult(CallRequestContainer& request) + { + EmptyResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::UpdateUserPublisherData( + UpdateUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/UpdateUserPublisherData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateUserPublisherDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnUpdateUserPublisherDataResult(CallRequestContainer& request) + { + UpdateUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::UpdateUserPublisherInternalData( + UpdateUserInternalDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/UpdateUserPublisherInternalData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateUserPublisherInternalDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnUpdateUserPublisherInternalDataResult(CallRequestContainer& request) + { + UpdateUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::UpdateUserPublisherReadOnlyData( + UpdateUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/UpdateUserPublisherReadOnlyData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateUserPublisherReadOnlyDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnUpdateUserPublisherReadOnlyDataResult(CallRequestContainer& request) + { + UpdateUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::UpdateUserReadOnlyData( + UpdateUserDataRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/UpdateUserReadOnlyData", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnUpdateUserReadOnlyDataResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnUpdateUserReadOnlyDataResult(CallRequestContainer& request) + { + UpdateUserDataResult outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::WriteCharacterEvent( + WriteServerCharacterEventRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/WriteCharacterEvent", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnWriteCharacterEventResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnWriteCharacterEventResult(CallRequestContainer& request) + { + WriteEventResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::WritePlayerEvent( + WriteServerPlayerEventRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/WritePlayerEvent", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnWritePlayerEventResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnWritePlayerEventResult(CallRequestContainer& request) + { + WriteEventResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } + + void PlayFabServerAPI::WriteTitleEvent( + WriteTitleEventRequest& request, + ProcessApiCallback callback, + ErrorCallback errorCallback, + void* customData + ) + { + + IPlayFabHttp& http = IPlayFabHttp::Get(); + const auto requestJson = request.ToJson(); + http.AddRequest("/Server/WriteTitleEvent", "X-SecretKey", PlayFabSettings::developerSecretKey, requestJson, OnWriteTitleEventResult, SharedVoidPointer((callback == nullptr) ? nullptr : new ProcessApiCallback(callback)), errorCallback, customData); + } + + void PlayFabServerAPI::OnWriteTitleEventResult(CallRequestContainer& request) + { + WriteEventResponse outResult; + outResult.FromJson(request.errorWrapper.Data); + outResult.Request = request.errorWrapper.Request; + + const auto internalPtr = request.successCallback.get(); + if (internalPtr != nullptr) + { + const auto callback = (*static_cast *>(internalPtr)); + callback(outResult, request.customData); + } + } +} + +#endif diff --git a/cppsdk/source/playfab/PlayFabSettings.cpp b/cppsdk/source/playfab/PlayFabSettings.cpp new file mode 100644 index 00000000..38a3cef9 --- /dev/null +++ b/cppsdk/source/playfab/PlayFabSettings.cpp @@ -0,0 +1,48 @@ +#include + +#include + +namespace PlayFab +{ + const std::string PlayFabSettings::sdkVersion = "2.0.180420"; + const std::string PlayFabSettings::buildIdentifier = "xplatcppsdk_manual"; + const std::string PlayFabSettings::versionString = "XPlatCppSdk-2.0.180420"; + + bool PlayFabSettings::useDevelopmentEnvironment = false; + std::string PlayFabSettings::serverURL; + std::string PlayFabSettings::developmentEnvironmentURL = ".playfabsandbox.com"; + std::string PlayFabSettings::productionEnvironmentURL = ".playfabapi.com"; + std::string PlayFabSettings::titleId; // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) + ErrorCallback PlayFabSettings::globalErrorHandler = nullptr; + + // Control whether all callbacks are threaded or whether the user manually controlls callback timing from their main-thread + bool PlayFabSettings::threadedCallbacks = false; + + std::string PlayFabSettings::entityToken; // This is set by entity GetEntityToken method, and is required by all other Entity API methods +#if defined(ENABLE_PLAYFABSERVER_API) || defined(ENABLE_PLAYFABADMIN_API) + std::string PlayFabSettings::developerSecretKey; // You must set this value for PlayFabSdk to work properly (Found in the Game Manager for your title, at the PlayFab Website) +#endif + +#ifndef DISABLE_PLAYFABCLIENT_API + std::string PlayFabSettings::clientSessionTicket; // This is set by any Client Login method, and is required for all other Client API methods + std::string PlayFabSettings::advertisingIdType = ""; // Set this to the appropriate AD_TYPE_X constant below + std::string PlayFabSettings::advertisingIdValue = ""; // Set this to corresponding device value + + bool PlayFabSettings::disableAdvertising = false; + const std::string PlayFabSettings::AD_TYPE_IDFA = "Idfa"; + const std::string PlayFabSettings::AD_TYPE_ANDROID_ID = "Adid"; +#endif + + void PlayFabSettings::ForgetAllCredentials() + { + entityToken.clear(); + clientSessionTicket.clear(); + } + + std::string PlayFabSettings::GetUrl(const std::string& urlPath) + { + if (serverURL.length() == 0) + serverURL = "https://" + titleId + (useDevelopmentEnvironment ? developmentEnvironmentURL : productionEnvironmentURL); + return serverURL + urlPath; + } +} diff --git a/cppsdk/stdafx.cpp b/cppsdk/stdafx.cpp new file mode 100644 index 00000000..c666761b --- /dev/null +++ b/cppsdk/stdafx.cpp @@ -0,0 +1 @@ +#include diff --git a/cppsdk/stdafx.h b/cppsdk/stdafx.h new file mode 100644 index 00000000..9c0c4529 --- /dev/null +++ b/cppsdk/stdafx.h @@ -0,0 +1,39 @@ +// Copyright (C) Microsoft Corporation. All rights reserved. + +#pragma once + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include +#include +#include +#include + +#ifdef LINUX_BUILD +#include +#include +#include +#include +#include +#endif + +#ifdef WINDOWS_BUILD +#define WIN32_LEAN_AND_MEAN + +#include +#include +#include +#include +#endif diff --git a/cppsdk/utils.h b/cppsdk/utils.h new file mode 100644 index 00000000..d85a2cee --- /dev/null +++ b/cppsdk/utils.h @@ -0,0 +1,27 @@ +// Copyright (C) Microsoft Corporation. All rights reserved. + +#pragma once + +#include + +#ifdef GSDK_LINUX +typedef unsigned int HRESULT; +#define SUCCEEDED(hr) (((HRESULT)(hr)) >= 0) +#define FAILED(hr) (((HRESULT)(hr)) < 0) +#define S_OK ((HRESULT)0L) +#endif + +#define WIDE2(x) L##x +#define WIDECHAR(x) WIDE2(x) +#define __WFUNCTION__ WIDECHAR(__func__) + +inline std::string WSTR2STR(const std::wstring &wstr) { return std::string(wstr.begin(), wstr.end()); } +inline std::string WCHAR2STR(const wchar_t *wcharPtr) { std::wstring wstr(wcharPtr); return std::string(wstr.begin(), wstr.end()); } +inline std::wstring STR2WSTR(const std::string &str) { return std::wstring(str.begin(), str.end()); } +inline std::wstring CHAR2WSTR(const char *charPtr) { std::string str(charPtr); return std::wstring(str.begin(), str.end()); } +#define WSTR2CHAR( wstr ) WSTR2STR( wstr ).c_str() +#define WSTR2WCHAR( wstr ) wstr.c_str() +#define WCHAR2CHAR( wcharPtr ) WCHAR2STR( wcharPtr ).c_str() +#define STR2CHAR( str ) str.c_str() +#define STR2WCHAR( str ) STR2WSTR( str ).c_str() +#define CHAR2WCHAR( charPtr ) CHAR2WSTR( charPtr ).c_str() diff --git a/testapps/cppLinuxTestApp/cppLinuxTestApp.vcxproj b/testapps/cppLinuxTestApp/cppLinuxTestApp.vcxproj new file mode 100644 index 00000000..cd04a4d0 --- /dev/null +++ b/testapps/cppLinuxTestApp/cppLinuxTestApp.vcxproj @@ -0,0 +1,76 @@ + + + + + Debug + x64 + + + Release + x64 + + + + {521c0810-6512-47ee-9142-92445dc35912} + Linux + cppLinuxTestApp + 15.0 + Linux + 1.0 + Generic + {D51BCBC9-82E9-4017-911E-C93873C4EA2B} + XPlatCppLinuxTestApp + $(SolutionDir)$(Platform)\$(Configuration)\$(OutputSubDir)\ + + + + true + + + false + + + + + + + + + + + + + + + + + + + {f34f32a5-802c-4abf-9e17-dc009e02df97} + + + + + $(ProjectDir);$(ProjectDir)include;/usr/include;/home/pg/projects/XPlatCppLinux/;/home/pg/projects/XPlatCppLinux/include;%(AdditionalIncludeDirectories) + LINUX_BUILD;ENABLE_PLAYFABADMIN_API;ENABLE_PLAYFABENTITY_API;ENABLE_PLAYFABMATCHMAKER_API;ENABLE_PLAYFABSERVER_API;%(PreprocessorDefinitions) + + + curl;jsoncpp;pthread; + $(StlAdditionalDependencies);%(AdditionalDependencies);$(RemoteRootDir)/x64/Debug/XPlatCppLinux/libXPlatCppLinux.a; + %(AdditionalLibraryDirectories); + + + + + $(ProjectDir);$(ProjectDir)include;/usr/include;/home/pg/projects/XPlatCppLinux/;/home/pg/projects/XPlatCppLinux/include;%(AdditionalIncludeDirectories) + LINUX_BUILD;ENABLE_PLAYFABADMIN_API;ENABLE_PLAYFABENTITY_API;ENABLE_PLAYFABMATCHMAKER_API;ENABLE_PLAYFABSERVER_API;%(PreprocessorDefinitions) + + + curl;jsoncpp;pthread; + $(StlAdditionalDependencies);%(AdditionalDependencies);$(RemoteRootDir)/x64/Release/XPlatCppLinux/libXPlatCppLinux.a; + %(AdditionalLibraryDirectories); + + + + + diff --git a/testapps/cppLinuxTestApp/main.cpp b/testapps/cppLinuxTestApp/main.cpp new file mode 100644 index 00000000..ee516bb3 --- /dev/null +++ b/testapps/cppLinuxTestApp/main.cpp @@ -0,0 +1,43 @@ +// Copyright (C) Microsoft Corporation. All rights reserved. + +#include + +#include +#include +#include + +void OnPlayFabFail(const PlayFab::PlayFabError& error, void*) +{ + printf(("========== PlayFab call Failed: " + error.GenerateReport() + "\n").c_str()); +} + +void OnProfile(const PlayFab::ClientModels::GetPlayerProfileResult& result, void*) +{ + printf(("========== PlayFab Profile Success: " + result.PlayerProfile->DisplayName + "\n").c_str()); +} + +void OnLoginSuccess(const PlayFab::ClientModels::LoginResult& result, void*) +{ + printf(("========== PlayFab Login Success: " + result.PlayFabId + "\n").c_str()); + + printf("========== Starting PlayFab GetProfile API call.\n"); + PlayFab::ClientModels::GetPlayerProfileRequest request; + PlayFab::PlayFabClientAPI::GetPlayerProfile(request, OnProfile, OnPlayFabFail); +} + +int main() +{ + // Super hacky short-term functionality PlayFab Test - TODO: Put the regular set of tests into proper Unit Test project + printf("========== Starting PlayFab Login API call.\n"); + PlayFab::PlayFabSettings::titleId = "6195"; + PlayFab::PlayFabSettings::threadedCallbacks = true; + PlayFab::ClientModels::LoginWithCustomIDRequest request; + request.CustomId = "test_GSDK"; + request.CreateAccount = true; + PlayFab::PlayFabClientAPI::LoginWithCustomID(request, OnLoginSuccess, OnPlayFabFail); + + printf("Press enter to exit the program.\n"); + getchar(); + + return 0; +} diff --git a/testapps/cppWindowsTestApp/cppWindowsTestApp.cpp b/testapps/cppWindowsTestApp/cppWindowsTestApp.cpp new file mode 100644 index 00000000..a74f4ec9 Binary files /dev/null and b/testapps/cppWindowsTestApp/cppWindowsTestApp.cpp differ diff --git a/testapps/cppWindowsTestApp/cppWindowsTestApp.vcxproj b/testapps/cppWindowsTestApp/cppWindowsTestApp.vcxproj new file mode 100644 index 00000000..c0a04309 --- /dev/null +++ b/testapps/cppWindowsTestApp/cppWindowsTestApp.vcxproj @@ -0,0 +1,150 @@ + + + + + + Debug + x64 + + + Release + x64 + + + + 15.0 + {3E4DF9A7-08A4-4188-9C86-B60605F3710B} + Win32Proj + cppWindowsTestApp + cppWindowsTestApp + XPlatCppWindowsTestApp + $(SolutionDir)$(Platform)\$(Configuration)\$(OutputSubDir)\ + + + + Application + true + v141 + Unicode + + + Application + false + v141 + Unicode + + + + + + + + + + + + + + + false + + + false + + + + Use + Level4 + Disabled + true + _DEBUG;_CONSOLE;WIN32;WINDOWS_BUILD;ENABLE_PLAYFABADMIN_API;ENABLE_PLAYFABENTITY_API;ENABLE_PLAYFABMATCHMAKER_API;ENABLE_PLAYFABSERVER_API;%(PreprocessorDefinitions) + true + $(SolutionDir)cppsdk/include;$(SolutionDir)cppsdk + cppWindowsTestAppPch.h + ProgramDatabase + true + false + true + MultiThreadedDebug + + + Console + true + XPlatCppWindows.lib;jsoncpp.lib;libcurl.lib;%(AdditionalDependencies) + $(TFS_BinariesDirectory)\$(Configuration)\$(Platform)\XPlatCppWindows\;$(SolutionDir)$(Platform)\$(Configuration)\XPlatCppWindows;$(SolutionDir)packages\curl.7.30.0.2\build\native\lib\v110\x64\Debug\dynamic;$(SolutionDir)packages\jsoncpp-vc140-static-32_64.1.8.0\lib\native\libs\x64\static\Debug + + + + + Use + Level4 + true + _CONSOLE;WIN32;WINDOWS_BUILD;ENABLE_PLAYFABADMIN_API;ENABLE_PLAYFABENTITY_API;ENABLE_PLAYFABMATCHMAKER_API;ENABLE_PLAYFABSERVER_API;%(PreprocessorDefinitions) + true + $(SolutionDir)cppsdk/include;$(SolutionDir)cppsdk + cppWindowsTestAppPch.h + ProgramDatabase + true + false + true + MultiThreaded + + + Console + true + XPlatCppWindows.lib;jsoncpp.lib;libcurl.lib;%(AdditionalDependencies) + $(TFS_BinariesDirectory)\$(Configuration)\$(Platform)\XPlatCppWindows\;$(SolutionDir)$(Platform)\$(Configuration)\XPlatCppWindows;$(SolutionDir)packages\curl.7.30.0.2\build\native\lib\v110\x64\Release\dynamic;$(SolutionDir)packages\jsoncpp-vc140-static-32_64.1.8.0\lib\native\libs\x64\static\Release + + + + + + + + + Create + + + + + {92f6ec5f-b66c-4572-a74d-79329aff3129} + + + + + + + + + + + + + + + + + + + + + + + + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + + + + + + + + + + diff --git a/testapps/cppWindowsTestApp/cppWindowsTestApp.vcxproj.filters b/testapps/cppWindowsTestApp/cppWindowsTestApp.vcxproj.filters new file mode 100644 index 00000000..437cf855 --- /dev/null +++ b/testapps/cppWindowsTestApp/cppWindowsTestApp.vcxproj.filters @@ -0,0 +1,33 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Header Files + + + + + Source Files + + + Source Files + + + + + + \ No newline at end of file diff --git a/testapps/cppWindowsTestApp/cppWindowsTestAppPch.cpp b/testapps/cppWindowsTestApp/cppWindowsTestAppPch.cpp new file mode 100644 index 00000000..4bbf4833 Binary files /dev/null and b/testapps/cppWindowsTestApp/cppWindowsTestAppPch.cpp differ diff --git a/testapps/cppWindowsTestApp/cppWindowsTestAppPch.h b/testapps/cppWindowsTestApp/cppWindowsTestAppPch.h new file mode 100644 index 00000000..f3f3492d Binary files /dev/null and b/testapps/cppWindowsTestApp/cppWindowsTestAppPch.h differ diff --git a/testapps/cppWindowsTestApp/packages.config b/testapps/cppWindowsTestApp/packages.config new file mode 100644 index 00000000..a7e6f076 --- /dev/null +++ b/testapps/cppWindowsTestApp/packages.config @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file