/* * All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or * its licensors. * * For complete copyright and license terms please see the LICENSE at the root of this * distribution (the "License"). All use of this software is governed by the License, * or, if provided, by the license below or the license accompanying this file. Do not * remove or modify any license notices. This file is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * */ ///////////////////////////////////////////////////////// ///////////////////////////////////////////////////////// // THIS CODE IS AUTOGENERATED, DO NOT MODIFY ///////////////////////////////////////////////////////// ///////////////////////////////////////////////////////// #include "CloudGemLeaderboard_precompiled.h" #include "AWS/ServiceAPI/CloudGemLeaderboardClientComponent.h" namespace CloudGemLeaderboard { namespace ServiceAPI { const char* LmbrAWS_CodeGen_StatList_UUID= "{cbfa6f0e-abea-4688-ab88-b576cf8f07e7}"; const char* LmbrAWS_CodeGen_StatDefinition_UUID= "{b9dd7706-7ea4-40fd-a717-32ac5f3a03a8}"; const char* LmbrAWS_CodeGen_BannedPlayerList_UUID= "{828a9b54-7c05-4b85-a3e9-42412093fbb6}"; const char* LmbrAWS_CodeGen_Component_UUID= "{77cbb34f-d776-11e6-ab64-e4a7a07157ef}"; const char* LmbrAWS_CodeGen_ResponseHandler_UUID= "{9a9bc4f3-099a-419a-b905-de7ccf9edac9}"; const char* LmbrAWS_CodeGen_NotificationBus1_UUID= "{f6aba68a-53e3-4082-9ea5-aef3177f3f0a}"; const char* LmbrAWS_CodeGen_RequestBus1_UUID= "{c2d64746-7474-4af9-9f47-336a43e06241}"; const char* LmbrAWS_CodeGen_BanOutcome_UUID= "{f10a551c-afbc-4826-8fac-637ddad92bec}"; const char* LmbrAWS_CodeGen_SingleScore_UUID= "{0fbc5a42-f8cf-4e3b-8b06-8e065ceec002}"; const char* LmbrAWS_CodeGen_ServiceStatus_UUID= "{17be675c-d9a9-4f87-8de5-5a046f99768e}"; const char* LmbrAWS_CodeGen_ScoreData_UUID= "{93db6dc6-d758-4052-b516-f25afdb150fc}"; const char* LmbrAWS_CodeGen_AdditionalLeaderboardRequestData_UUID= "{c744a4f1-e155-451f-834c-66c2ae08d62a}"; void Configure() { // Insert any necessary CloudGemFramework configuration here } // redefs bool WriteJson(CloudGemFramework::JsonWriter& writer, const int& item) { return writer.Int(item); } bool WriteJson(CloudGemFramework::JsonWriter& writer, const AZStd::string& item) { return writer.String(item); } bool WriteJson(CloudGemFramework::JsonWriter& writer, const double& item) { return writer.Double(item); } bool WriteJson(CloudGemFramework::JsonWriter& writer, const StringList& list) { bool ok = true; ok = ok && writer.StartArray(); for (auto item : list) { ok = ok && WriteJson(writer, item); } ok = ok && writer.EndArray(); return ok; } bool WriteJson(CloudGemFramework::JsonWriter& writer, const BannedPlayerList& item) { bool ok = true; ok = ok && writer.StartObject(); ok = ok && writer.Key("players"); ok = ok && WriteJson(writer, item.players); ok = ok && writer.EndObject(); return ok; } bool WriteJson(CloudGemFramework::JsonWriter& writer, const SingleScore& item) { bool ok = true; ok = ok && writer.StartObject(); ok = ok && writer.Key("stat"); ok = ok && WriteJson(writer, item.stat); ok = ok && writer.Key("user"); ok = ok && WriteJson(writer, item.user); ok = ok && writer.Key("value"); ok = ok && WriteJson(writer, item.value); ok = ok && writer.Key("estimated_rank"); ok = ok && WriteJson(writer, item.estimated_rank); ok = ok && writer.EndObject(); return ok; } bool WriteJson(CloudGemFramework::JsonWriter& writer, const ServiceStatus& item) { bool ok = true; ok = ok && writer.StartObject(); ok = ok && writer.Key("status"); ok = ok && WriteJson(writer, item.status); ok = ok && writer.EndObject(); return ok; } bool WriteJson(CloudGemFramework::JsonWriter& writer, const AdditionalLeaderboardRequestData& item) { bool ok = true; ok = ok && writer.StartObject(); ok = ok && writer.Key("users"); ok = ok && WriteJson(writer, item.users); ok = ok && writer.Key("page_size"); ok = ok && WriteJson(writer, item.page_size); ok = ok && writer.Key("page"); ok = ok && WriteJson(writer, item.page); ok = ok && writer.EndObject(); return ok; } bool WriteJson(CloudGemFramework::JsonWriter& writer, const ScoreList& list) { bool ok = true; ok = ok && writer.StartArray(); for (auto item : list) { ok = ok && WriteJson(writer, item); } ok = ok && writer.EndArray(); return ok; } bool WriteJson(CloudGemFramework::JsonWriter& writer, const ScoreData& item) { bool ok = true; ok = ok && writer.StartObject(); ok = ok && writer.Key("current_page"); ok = ok && WriteJson(writer, item.current_page); ok = ok && writer.Key("total_pages"); ok = ok && WriteJson(writer, item.total_pages); ok = ok && writer.Key("scores"); ok = ok && WriteJson(writer, item.scores); ok = ok && writer.EndObject(); return ok; } bool WriteJson(CloudGemFramework::JsonWriter& writer, const StatDefinition& item) { bool ok = true; ok = ok && writer.StartObject(); ok = ok && writer.Key("max"); ok = ok && WriteJson(writer, item.max); ok = ok && writer.Key("min"); ok = ok && WriteJson(writer, item.min); ok = ok && writer.Key("name"); ok = ok && WriteJson(writer, item.name); ok = ok && writer.Key("sample_size"); ok = ok && WriteJson(writer, item.sample_size); ok = ok && writer.Key("mode"); ok = ok && WriteJson(writer, item.mode); ok = ok && writer.EndObject(); return ok; } bool WriteJson(CloudGemFramework::JsonWriter& writer, const StatDefList& list) { bool ok = true; ok = ok && writer.StartArray(); for (auto item : list) { ok = ok && WriteJson(writer, item); } ok = ok && writer.EndArray(); return ok; } bool WriteJson(CloudGemFramework::JsonWriter& writer, const StatList& item) { bool ok = true; ok = ok && writer.StartObject(); ok = ok && writer.Key("stats"); ok = ok && WriteJson(writer, item.stats); ok = ok && writer.EndObject(); return ok; } bool WriteJson(CloudGemFramework::JsonWriter& writer, const BanOutcome& item) { bool ok = true; ok = ok && writer.StartObject(); ok = ok && writer.Key("status"); ok = ok && WriteJson(writer, item.status); ok = ok && writer.EndObject(); return ok; } // Generated Function Parameters bool GetPlayerBan_listRequest::Parameters::BuildRequest(CloudGemFramework::RequestBuilder& request) { bool ok = true; ok = ok && request.WriteJsonBodyParameter(*this); return ok; } bool GetPlayerBan_listRequest::Parameters::WriteJson(CloudGemFramework::JsonWriter& writer) const { bool ok = true; return ok; } bool PostScoreDedicatedRequest::Parameters::BuildRequest(CloudGemFramework::RequestBuilder& request) { bool ok = true; ok = ok && request.WriteJsonBodyParameter(*this); return ok; } bool PostScoreDedicatedRequest::Parameters::WriteJson(CloudGemFramework::JsonWriter& writer) const { bool ok = true; ok = ok && CloudGemLeaderboard::ServiceAPI::WriteJson(writer, score_entry); return ok; } bool get_service_statusRequest::Parameters::BuildRequest(CloudGemFramework::RequestBuilder& request) { bool ok = true; ok = ok && request.WriteJsonBodyParameter(*this); return ok; } bool get_service_statusRequest::Parameters::WriteJson(CloudGemFramework::JsonWriter& writer) const { bool ok = true; return ok; } bool PostLeaderboardRequest::Parameters::BuildRequest(CloudGemFramework::RequestBuilder& request) { bool ok = true; ok = ok && request.SetPathParameter("{""stat""}", stat); ok = ok && request.WriteJsonBodyParameter(*this); return ok; } bool PostLeaderboardRequest::Parameters::WriteJson(CloudGemFramework::JsonWriter& writer) const { bool ok = true; ok = ok && CloudGemLeaderboard::ServiceAPI::WriteJson(writer, additional_data); return ok; } bool GetScoresRequest::Parameters::BuildRequest(CloudGemFramework::RequestBuilder& request) { bool ok = true; ok = ok && request.SetPathParameter("{""user""}", user); ok = ok && request.WriteJsonBodyParameter(*this); return ok; } bool GetScoresRequest::Parameters::WriteJson(CloudGemFramework::JsonWriter& writer) const { bool ok = true; return ok; } bool PostStatsRequest::Parameters::BuildRequest(CloudGemFramework::RequestBuilder& request) { bool ok = true; ok = ok && request.WriteJsonBodyParameter(*this); return ok; } bool PostStatsRequest::Parameters::WriteJson(CloudGemFramework::JsonWriter& writer) const { bool ok = true; ok = ok && CloudGemLeaderboard::ServiceAPI::WriteJson(writer, stat_def); return ok; } bool GetStatsRequest::Parameters::BuildRequest(CloudGemFramework::RequestBuilder& request) { bool ok = true; ok = ok && request.WriteJsonBodyParameter(*this); return ok; } bool GetStatsRequest::Parameters::WriteJson(CloudGemFramework::JsonWriter& writer) const { bool ok = true; return ok; } bool PostPlayerBanRequest::Parameters::BuildRequest(CloudGemFramework::RequestBuilder& request) { bool ok = true; ok = ok && request.SetPathParameter("{""user""}", user); ok = ok && request.WriteJsonBodyParameter(*this); return ok; } bool PostPlayerBanRequest::Parameters::WriteJson(CloudGemFramework::JsonWriter& writer) const { bool ok = true; return ok; } bool DeletePlayerBanRequest::Parameters::BuildRequest(CloudGemFramework::RequestBuilder& request) { bool ok = true; ok = ok && request.SetPathParameter("{""user""}", user); ok = ok && request.WriteJsonBodyParameter(*this); return ok; } bool DeletePlayerBanRequest::Parameters::WriteJson(CloudGemFramework::JsonWriter& writer) const { bool ok = true; return ok; } bool process_recordsRequest::Parameters::BuildRequest(CloudGemFramework::RequestBuilder& request) { bool ok = true; ok = ok && request.WriteJsonBodyParameter(*this); return ok; } bool process_recordsRequest::Parameters::WriteJson(CloudGemFramework::JsonWriter& writer) const { bool ok = true; return ok; } bool PostScoreRequest::Parameters::BuildRequest(CloudGemFramework::RequestBuilder& request) { bool ok = true; ok = ok && request.WriteJsonBodyParameter(*this); return ok; } bool PostScoreRequest::Parameters::WriteJson(CloudGemFramework::JsonWriter& writer) const { bool ok = true; ok = ok && CloudGemLeaderboard::ServiceAPI::WriteJson(writer, score_entry); return ok; } bool DeleteScoreRequest::Parameters::BuildRequest(CloudGemFramework::RequestBuilder& request) { bool ok = true; ok = ok && request.SetPathParameter("{""user""}", user); ok = ok && request.SetPathParameter("{""stat""}", stat); ok = ok && request.WriteJsonBodyParameter(*this); return ok; } bool DeleteScoreRequest::Parameters::WriteJson(CloudGemFramework::JsonWriter& writer) const { bool ok = true; return ok; } bool GetScoreRequest::Parameters::BuildRequest(CloudGemFramework::RequestBuilder& request) { bool ok = true; ok = ok && request.SetPathParameter("{""user""}", user); ok = ok && request.SetPathParameter("{""stat""}", stat); ok = ok && request.WriteJsonBodyParameter(*this); return ok; } bool GetScoreRequest::Parameters::WriteJson(CloudGemFramework::JsonWriter& writer) const { bool ok = true; return ok; } bool DeleteStatsRequest::Parameters::BuildRequest(CloudGemFramework::RequestBuilder& request) { bool ok = true; ok = ok && request.SetPathParameter("{""stat_name""}", stat_name); ok = ok && request.WriteJsonBodyParameter(*this); return ok; } bool DeleteStatsRequest::Parameters::WriteJson(CloudGemFramework::JsonWriter& writer) const { bool ok = true; return ok; } // CloudGemLeaderboardNotificationBus void CloudGemLeaderboardNotifications::OnGetPlayerBan_listRequestSuccess(const BannedPlayerList response) { } void CloudGemLeaderboardNotifications::OnGetPlayerBan_listRequestError(const CloudGemFramework::Error error) { } void CloudGemLeaderboardNotifications::OnPostScoreDedicatedRequestSuccess(const SingleScore response) { } void CloudGemLeaderboardNotifications::OnPostScoreDedicatedRequestError(const CloudGemFramework::Error error) { } void CloudGemLeaderboardNotifications::Onget_service_statusRequestSuccess(const ServiceStatus response) { } void CloudGemLeaderboardNotifications::Onget_service_statusRequestError(const CloudGemFramework::Error error) { } void CloudGemLeaderboardNotifications::OnPostLeaderboardRequestSuccess(const ScoreData response) { } void CloudGemLeaderboardNotifications::OnPostLeaderboardRequestError(const CloudGemFramework::Error error) { } void CloudGemLeaderboardNotifications::OnGetScoresRequestSuccess(const ScoreData response) { } void CloudGemLeaderboardNotifications::OnGetScoresRequestError(const CloudGemFramework::Error error) { } void CloudGemLeaderboardNotifications::OnPostStatsRequestSuccess(const StatList response) { } void CloudGemLeaderboardNotifications::OnPostStatsRequestError(const CloudGemFramework::Error error) { } void CloudGemLeaderboardNotifications::OnGetStatsRequestSuccess(const StatList response) { } void CloudGemLeaderboardNotifications::OnGetStatsRequestError(const CloudGemFramework::Error error) { } void CloudGemLeaderboardNotifications::OnPostPlayerBanRequestSuccess(const BanOutcome response) { } void CloudGemLeaderboardNotifications::OnPostPlayerBanRequestError(const CloudGemFramework::Error error) { } void CloudGemLeaderboardNotifications::OnDeletePlayerBanRequestSuccess(const BanOutcome response) { } void CloudGemLeaderboardNotifications::OnDeletePlayerBanRequestError(const CloudGemFramework::Error error) { } void CloudGemLeaderboardNotifications::Onprocess_recordsRequestSuccess() { } void CloudGemLeaderboardNotifications::Onprocess_recordsRequestError(const CloudGemFramework::Error error) { } void CloudGemLeaderboardNotifications::OnPostScoreRequestSuccess(const SingleScore response) { } void CloudGemLeaderboardNotifications::OnPostScoreRequestError(const CloudGemFramework::Error error) { } void CloudGemLeaderboardNotifications::OnDeleteScoreRequestSuccess(const ScoreData response) { } void CloudGemLeaderboardNotifications::OnDeleteScoreRequestError(const CloudGemFramework::Error error) { } void CloudGemLeaderboardNotifications::OnGetScoreRequestSuccess(const ScoreData response) { } void CloudGemLeaderboardNotifications::OnGetScoreRequestError(const CloudGemFramework::Error error) { } void CloudGemLeaderboardNotifications::OnDeleteStatsRequestSuccess(const StatList response) { } void CloudGemLeaderboardNotifications::OnDeleteStatsRequestError(const CloudGemFramework::Error error) { } // BehaviorContext CloudGemLeaderboardNotificationBus handler implementation void BehaviorCloudGemLeaderboardNotificationBusHandler::OnGetPlayerBan_listRequestSuccess(const BannedPlayerList response) { Call(FN_OnGetPlayerBan_listRequestSuccess, response); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnGetPlayerBan_listRequestError(const CloudGemFramework::Error error) { Call(FN_OnGetPlayerBan_listRequestError, error); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnPostScoreDedicatedRequestSuccess(const SingleScore response) { Call(FN_OnPostScoreDedicatedRequestSuccess, response); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnPostScoreDedicatedRequestError(const CloudGemFramework::Error error) { Call(FN_OnPostScoreDedicatedRequestError, error); } void BehaviorCloudGemLeaderboardNotificationBusHandler::Onget_service_statusRequestSuccess(const ServiceStatus response) { Call(FN_Onget_service_statusRequestSuccess, response); } void BehaviorCloudGemLeaderboardNotificationBusHandler::Onget_service_statusRequestError(const CloudGemFramework::Error error) { Call(FN_Onget_service_statusRequestError, error); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnPostLeaderboardRequestSuccess(const ScoreData response) { Call(FN_OnPostLeaderboardRequestSuccess, response); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnPostLeaderboardRequestError(const CloudGemFramework::Error error) { Call(FN_OnPostLeaderboardRequestError, error); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnGetScoresRequestSuccess(const ScoreData response) { Call(FN_OnGetScoresRequestSuccess, response); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnGetScoresRequestError(const CloudGemFramework::Error error) { Call(FN_OnGetScoresRequestError, error); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnPostStatsRequestSuccess(const StatList response) { Call(FN_OnPostStatsRequestSuccess, response); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnPostStatsRequestError(const CloudGemFramework::Error error) { Call(FN_OnPostStatsRequestError, error); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnGetStatsRequestSuccess(const StatList response) { Call(FN_OnGetStatsRequestSuccess, response); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnGetStatsRequestError(const CloudGemFramework::Error error) { Call(FN_OnGetStatsRequestError, error); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnPostPlayerBanRequestSuccess(const BanOutcome response) { Call(FN_OnPostPlayerBanRequestSuccess, response); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnPostPlayerBanRequestError(const CloudGemFramework::Error error) { Call(FN_OnPostPlayerBanRequestError, error); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnDeletePlayerBanRequestSuccess(const BanOutcome response) { Call(FN_OnDeletePlayerBanRequestSuccess, response); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnDeletePlayerBanRequestError(const CloudGemFramework::Error error) { Call(FN_OnDeletePlayerBanRequestError, error); } void BehaviorCloudGemLeaderboardNotificationBusHandler::Onprocess_recordsRequestSuccess() { Call(FN_Onprocess_recordsRequestSuccess); } void BehaviorCloudGemLeaderboardNotificationBusHandler::Onprocess_recordsRequestError(const CloudGemFramework::Error error) { Call(FN_Onprocess_recordsRequestError, error); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnPostScoreRequestSuccess(const SingleScore response) { Call(FN_OnPostScoreRequestSuccess, response); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnPostScoreRequestError(const CloudGemFramework::Error error) { Call(FN_OnPostScoreRequestError, error); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnDeleteScoreRequestSuccess(const ScoreData response) { Call(FN_OnDeleteScoreRequestSuccess, response); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnDeleteScoreRequestError(const CloudGemFramework::Error error) { Call(FN_OnDeleteScoreRequestError, error); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnGetScoreRequestSuccess(const ScoreData response) { Call(FN_OnGetScoreRequestSuccess, response); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnGetScoreRequestError(const CloudGemFramework::Error error) { Call(FN_OnGetScoreRequestError, error); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnDeleteStatsRequestSuccess(const StatList response) { Call(FN_OnDeleteStatsRequestSuccess, response); } void BehaviorCloudGemLeaderboardNotificationBusHandler::OnDeleteStatsRequestError(const CloudGemFramework::Error error) { Call(FN_OnDeleteStatsRequestError, error); } // CloudGemLeaderboardRequestBus void CloudGemLeaderboardRequests::GetPlayerBan_list(CloudGemLeaderboardResponseHandler* responseHandler) { } void CloudGemLeaderboardRequests::PostScoreDedicated(const SingleScore& score_entry, CloudGemLeaderboardResponseHandler* responseHandler) { } void CloudGemLeaderboardRequests::get_service_status(CloudGemLeaderboardResponseHandler* responseHandler) { } void CloudGemLeaderboardRequests::PostLeaderboard(const AZStd::string& stat, const AdditionalLeaderboardRequestData& additional_data, CloudGemLeaderboardResponseHandler* responseHandler) { } void CloudGemLeaderboardRequests::GetScores(const AZStd::string& user, CloudGemLeaderboardResponseHandler* responseHandler) { } void CloudGemLeaderboardRequests::PostStats(const StatDefinition& stat_def, CloudGemLeaderboardResponseHandler* responseHandler) { } void CloudGemLeaderboardRequests::GetStats(CloudGemLeaderboardResponseHandler* responseHandler) { } void CloudGemLeaderboardRequests::PostPlayerBan(const AZStd::string& user, CloudGemLeaderboardResponseHandler* responseHandler) { } void CloudGemLeaderboardRequests::DeletePlayerBan(const AZStd::string& user, CloudGemLeaderboardResponseHandler* responseHandler) { } void CloudGemLeaderboardRequests::process_records(CloudGemLeaderboardResponseHandler* responseHandler) { } void CloudGemLeaderboardRequests::PostScore(const SingleScore& score_entry, CloudGemLeaderboardResponseHandler* responseHandler) { } void CloudGemLeaderboardRequests::DeleteScore(const AZStd::string& user, const AZStd::string& stat, CloudGemLeaderboardResponseHandler* responseHandler) { } void CloudGemLeaderboardRequests::GetScore(const AZStd::string& user, const AZStd::string& stat, CloudGemLeaderboardResponseHandler* responseHandler) { } void CloudGemLeaderboardRequests::DeleteStats(const AZStd::string& stat_name, CloudGemLeaderboardResponseHandler* responseHandler) { } // CloudGemLeaderboardResponseHandler void CloudGemLeaderboardResponseHandler::HandleGetPlayerBan_listSuccess(GetPlayerBan_listRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnGetPlayerBan_listRequestSuccess, job->result); } void CloudGemLeaderboardResponseHandler::HandleGetPlayerBan_listError(GetPlayerBan_listRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnGetPlayerBan_listRequestError, job->error); } void CloudGemLeaderboardResponseHandler::HandlePostScoreDedicatedSuccess(PostScoreDedicatedRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnPostScoreDedicatedRequestSuccess, job->result); } void CloudGemLeaderboardResponseHandler::HandlePostScoreDedicatedError(PostScoreDedicatedRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnPostScoreDedicatedRequestError, job->error); } void CloudGemLeaderboardResponseHandler::Handleget_service_statusSuccess(get_service_statusRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, Onget_service_statusRequestSuccess, job->result); } void CloudGemLeaderboardResponseHandler::Handleget_service_statusError(get_service_statusRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, Onget_service_statusRequestError, job->error); } void CloudGemLeaderboardResponseHandler::HandlePostLeaderboardSuccess(PostLeaderboardRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnPostLeaderboardRequestSuccess, job->result); } void CloudGemLeaderboardResponseHandler::HandlePostLeaderboardError(PostLeaderboardRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnPostLeaderboardRequestError, job->error); } void CloudGemLeaderboardResponseHandler::HandleGetScoresSuccess(GetScoresRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnGetScoresRequestSuccess, job->result); } void CloudGemLeaderboardResponseHandler::HandleGetScoresError(GetScoresRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnGetScoresRequestError, job->error); } void CloudGemLeaderboardResponseHandler::HandlePostStatsSuccess(PostStatsRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnPostStatsRequestSuccess, job->result); } void CloudGemLeaderboardResponseHandler::HandlePostStatsError(PostStatsRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnPostStatsRequestError, job->error); } void CloudGemLeaderboardResponseHandler::HandleGetStatsSuccess(GetStatsRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnGetStatsRequestSuccess, job->result); } void CloudGemLeaderboardResponseHandler::HandleGetStatsError(GetStatsRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnGetStatsRequestError, job->error); } void CloudGemLeaderboardResponseHandler::HandlePostPlayerBanSuccess(PostPlayerBanRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnPostPlayerBanRequestSuccess, job->result); } void CloudGemLeaderboardResponseHandler::HandlePostPlayerBanError(PostPlayerBanRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnPostPlayerBanRequestError, job->error); } void CloudGemLeaderboardResponseHandler::HandleDeletePlayerBanSuccess(DeletePlayerBanRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnDeletePlayerBanRequestSuccess, job->result); } void CloudGemLeaderboardResponseHandler::HandleDeletePlayerBanError(DeletePlayerBanRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnDeletePlayerBanRequestError, job->error); } void CloudGemLeaderboardResponseHandler::Handleprocess_recordsSuccess(process_recordsRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, Onprocess_recordsRequestSuccess); } void CloudGemLeaderboardResponseHandler::Handleprocess_recordsError(process_recordsRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, Onprocess_recordsRequestError, job->error); } void CloudGemLeaderboardResponseHandler::HandlePostScoreSuccess(PostScoreRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnPostScoreRequestSuccess, job->result); } void CloudGemLeaderboardResponseHandler::HandlePostScoreError(PostScoreRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnPostScoreRequestError, job->error); } void CloudGemLeaderboardResponseHandler::HandleDeleteScoreSuccess(DeleteScoreRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnDeleteScoreRequestSuccess, job->result); } void CloudGemLeaderboardResponseHandler::HandleDeleteScoreError(DeleteScoreRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnDeleteScoreRequestError, job->error); } void CloudGemLeaderboardResponseHandler::HandleGetScoreSuccess(GetScoreRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnGetScoreRequestSuccess, job->result); } void CloudGemLeaderboardResponseHandler::HandleGetScoreError(GetScoreRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnGetScoreRequestError, job->error); } void CloudGemLeaderboardResponseHandler::HandleDeleteStatsSuccess(DeleteStatsRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnDeleteStatsRequestSuccess, job->result); } void CloudGemLeaderboardResponseHandler::HandleDeleteStatsError(DeleteStatsRequestJob* job, AZ::EntityId entityId) { EBUS_EVENT_ID(entityId, CloudGemLeaderboardNotificationBus, OnDeleteStatsRequestError, job->error); } // CloudGemLeaderboardClientComponent void CloudGemLeaderboardClientComponent::Init() { m_defaultResponseHandler = AZStd::make_shared(); CloudGemLeaderboard::ServiceAPI::Configure(); } void CloudGemLeaderboardClientComponent::Activate() { CloudGemLeaderboardRequestBus::Handler::BusConnect(m_entity->GetId()); } void CloudGemLeaderboardClientComponent::Deactivate() { CloudGemLeaderboardRequestBus::Handler::BusDisconnect(); } void CloudGemLeaderboardClientComponent::GetPlayerBan_list(CloudGemLeaderboardResponseHandler* responseHandler) { // Cache our entityId in case the entity goes away AZ::EntityId entityId; if (m_entity) { entityId = m_entity->GetId(); } // Cache our default response handler in case this component goes away AZStd::shared_ptr < CloudGemLeaderboardResponseHandler > defaultResponseHandler = m_defaultResponseHandler; // Create job GetPlayerBan_listRequestJob* requestJob = GetPlayerBan_listRequestJob::Create( [responseHandler, defaultResponseHandler, entityId](GetPlayerBan_listRequestJob* successJob) { // handle success CloudGemLeaderboardResponseHandler* successHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (successHandler) { successHandler->HandleGetPlayerBan_listSuccess(successJob, entityId); } }, [responseHandler, defaultResponseHandler, entityId](GetPlayerBan_listRequestJob* failedJob) { // handle error CloudGemLeaderboardResponseHandler* failureHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (failureHandler) { failureHandler->HandleGetPlayerBan_listError(failedJob, entityId); } } ); requestJob->Start(); } void CloudGemLeaderboardClientComponent::PostScoreDedicated(const SingleScore& score_entry, CloudGemLeaderboardResponseHandler* responseHandler) { // Cache our entityId in case the entity goes away AZ::EntityId entityId; if (m_entity) { entityId = m_entity->GetId(); } // Cache our default response handler in case this component goes away AZStd::shared_ptr < CloudGemLeaderboardResponseHandler > defaultResponseHandler = m_defaultResponseHandler; // Create job PostScoreDedicatedRequestJob* requestJob = PostScoreDedicatedRequestJob::Create( [responseHandler, defaultResponseHandler, entityId](PostScoreDedicatedRequestJob* successJob) { // handle success CloudGemLeaderboardResponseHandler* successHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (successHandler) { successHandler->HandlePostScoreDedicatedSuccess(successJob, entityId); } }, [responseHandler, defaultResponseHandler, entityId](PostScoreDedicatedRequestJob* failedJob) { // handle error CloudGemLeaderboardResponseHandler* failureHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (failureHandler) { failureHandler->HandlePostScoreDedicatedError(failedJob, entityId); } } ); requestJob->parameters.score_entry = score_entry; requestJob->Start(); } void CloudGemLeaderboardClientComponent::get_service_status(CloudGemLeaderboardResponseHandler* responseHandler) { // Cache our entityId in case the entity goes away AZ::EntityId entityId; if (m_entity) { entityId = m_entity->GetId(); } // Cache our default response handler in case this component goes away AZStd::shared_ptr < CloudGemLeaderboardResponseHandler > defaultResponseHandler = m_defaultResponseHandler; // Create job get_service_statusRequestJob* requestJob = get_service_statusRequestJob::Create( [responseHandler, defaultResponseHandler, entityId](get_service_statusRequestJob* successJob) { // handle success CloudGemLeaderboardResponseHandler* successHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (successHandler) { successHandler->Handleget_service_statusSuccess(successJob, entityId); } }, [responseHandler, defaultResponseHandler, entityId](get_service_statusRequestJob* failedJob) { // handle error CloudGemLeaderboardResponseHandler* failureHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (failureHandler) { failureHandler->Handleget_service_statusError(failedJob, entityId); } } ); requestJob->Start(); } void CloudGemLeaderboardClientComponent::PostLeaderboard(const AZStd::string& stat, const AdditionalLeaderboardRequestData& additional_data, CloudGemLeaderboardResponseHandler* responseHandler) { // Cache our entityId in case the entity goes away AZ::EntityId entityId; if (m_entity) { entityId = m_entity->GetId(); } // Cache our default response handler in case this component goes away AZStd::shared_ptr < CloudGemLeaderboardResponseHandler > defaultResponseHandler = m_defaultResponseHandler; // Create job PostLeaderboardRequestJob* requestJob = PostLeaderboardRequestJob::Create( [responseHandler, defaultResponseHandler, entityId](PostLeaderboardRequestJob* successJob) { // handle success CloudGemLeaderboardResponseHandler* successHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (successHandler) { successHandler->HandlePostLeaderboardSuccess(successJob, entityId); } }, [responseHandler, defaultResponseHandler, entityId](PostLeaderboardRequestJob* failedJob) { // handle error CloudGemLeaderboardResponseHandler* failureHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (failureHandler) { failureHandler->HandlePostLeaderboardError(failedJob, entityId); } } ); requestJob->parameters.additional_data = additional_data; requestJob->parameters.stat = stat; requestJob->Start(); } void CloudGemLeaderboardClientComponent::GetScores(const AZStd::string& user, CloudGemLeaderboardResponseHandler* responseHandler) { // Cache our entityId in case the entity goes away AZ::EntityId entityId; if (m_entity) { entityId = m_entity->GetId(); } // Cache our default response handler in case this component goes away AZStd::shared_ptr < CloudGemLeaderboardResponseHandler > defaultResponseHandler = m_defaultResponseHandler; // Create job GetScoresRequestJob* requestJob = GetScoresRequestJob::Create( [responseHandler, defaultResponseHandler, entityId](GetScoresRequestJob* successJob) { // handle success CloudGemLeaderboardResponseHandler* successHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (successHandler) { successHandler->HandleGetScoresSuccess(successJob, entityId); } }, [responseHandler, defaultResponseHandler, entityId](GetScoresRequestJob* failedJob) { // handle error CloudGemLeaderboardResponseHandler* failureHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (failureHandler) { failureHandler->HandleGetScoresError(failedJob, entityId); } } ); requestJob->parameters.user = user; requestJob->Start(); } void CloudGemLeaderboardClientComponent::PostStats(const StatDefinition& stat_def, CloudGemLeaderboardResponseHandler* responseHandler) { // Cache our entityId in case the entity goes away AZ::EntityId entityId; if (m_entity) { entityId = m_entity->GetId(); } // Cache our default response handler in case this component goes away AZStd::shared_ptr < CloudGemLeaderboardResponseHandler > defaultResponseHandler = m_defaultResponseHandler; // Create job PostStatsRequestJob* requestJob = PostStatsRequestJob::Create( [responseHandler, defaultResponseHandler, entityId](PostStatsRequestJob* successJob) { // handle success CloudGemLeaderboardResponseHandler* successHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (successHandler) { successHandler->HandlePostStatsSuccess(successJob, entityId); } }, [responseHandler, defaultResponseHandler, entityId](PostStatsRequestJob* failedJob) { // handle error CloudGemLeaderboardResponseHandler* failureHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (failureHandler) { failureHandler->HandlePostStatsError(failedJob, entityId); } } ); requestJob->parameters.stat_def = stat_def; requestJob->Start(); } void CloudGemLeaderboardClientComponent::GetStats(CloudGemLeaderboardResponseHandler* responseHandler) { // Cache our entityId in case the entity goes away AZ::EntityId entityId; if (m_entity) { entityId = m_entity->GetId(); } // Cache our default response handler in case this component goes away AZStd::shared_ptr < CloudGemLeaderboardResponseHandler > defaultResponseHandler = m_defaultResponseHandler; // Create job GetStatsRequestJob* requestJob = GetStatsRequestJob::Create( [responseHandler, defaultResponseHandler, entityId](GetStatsRequestJob* successJob) { // handle success CloudGemLeaderboardResponseHandler* successHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (successHandler) { successHandler->HandleGetStatsSuccess(successJob, entityId); } }, [responseHandler, defaultResponseHandler, entityId](GetStatsRequestJob* failedJob) { // handle error CloudGemLeaderboardResponseHandler* failureHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (failureHandler) { failureHandler->HandleGetStatsError(failedJob, entityId); } } ); requestJob->Start(); } void CloudGemLeaderboardClientComponent::PostPlayerBan(const AZStd::string& user, CloudGemLeaderboardResponseHandler* responseHandler) { // Cache our entityId in case the entity goes away AZ::EntityId entityId; if (m_entity) { entityId = m_entity->GetId(); } // Cache our default response handler in case this component goes away AZStd::shared_ptr < CloudGemLeaderboardResponseHandler > defaultResponseHandler = m_defaultResponseHandler; // Create job PostPlayerBanRequestJob* requestJob = PostPlayerBanRequestJob::Create( [responseHandler, defaultResponseHandler, entityId](PostPlayerBanRequestJob* successJob) { // handle success CloudGemLeaderboardResponseHandler* successHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (successHandler) { successHandler->HandlePostPlayerBanSuccess(successJob, entityId); } }, [responseHandler, defaultResponseHandler, entityId](PostPlayerBanRequestJob* failedJob) { // handle error CloudGemLeaderboardResponseHandler* failureHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (failureHandler) { failureHandler->HandlePostPlayerBanError(failedJob, entityId); } } ); requestJob->parameters.user = user; requestJob->Start(); } void CloudGemLeaderboardClientComponent::DeletePlayerBan(const AZStd::string& user, CloudGemLeaderboardResponseHandler* responseHandler) { // Cache our entityId in case the entity goes away AZ::EntityId entityId; if (m_entity) { entityId = m_entity->GetId(); } // Cache our default response handler in case this component goes away AZStd::shared_ptr < CloudGemLeaderboardResponseHandler > defaultResponseHandler = m_defaultResponseHandler; // Create job DeletePlayerBanRequestJob* requestJob = DeletePlayerBanRequestJob::Create( [responseHandler, defaultResponseHandler, entityId](DeletePlayerBanRequestJob* successJob) { // handle success CloudGemLeaderboardResponseHandler* successHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (successHandler) { successHandler->HandleDeletePlayerBanSuccess(successJob, entityId); } }, [responseHandler, defaultResponseHandler, entityId](DeletePlayerBanRequestJob* failedJob) { // handle error CloudGemLeaderboardResponseHandler* failureHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (failureHandler) { failureHandler->HandleDeletePlayerBanError(failedJob, entityId); } } ); requestJob->parameters.user = user; requestJob->Start(); } void CloudGemLeaderboardClientComponent::process_records(CloudGemLeaderboardResponseHandler* responseHandler) { // Cache our entityId in case the entity goes away AZ::EntityId entityId; if (m_entity) { entityId = m_entity->GetId(); } // Cache our default response handler in case this component goes away AZStd::shared_ptr < CloudGemLeaderboardResponseHandler > defaultResponseHandler = m_defaultResponseHandler; // Create job process_recordsRequestJob* requestJob = process_recordsRequestJob::Create( [responseHandler, defaultResponseHandler, entityId](process_recordsRequestJob* successJob) { // handle success CloudGemLeaderboardResponseHandler* successHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (successHandler) { successHandler->Handleprocess_recordsSuccess(successJob, entityId); } }, [responseHandler, defaultResponseHandler, entityId](process_recordsRequestJob* failedJob) { // handle error CloudGemLeaderboardResponseHandler* failureHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (failureHandler) { failureHandler->Handleprocess_recordsError(failedJob, entityId); } } ); requestJob->Start(); } void CloudGemLeaderboardClientComponent::PostScore(const SingleScore& score_entry, CloudGemLeaderboardResponseHandler* responseHandler) { // Cache our entityId in case the entity goes away AZ::EntityId entityId; if (m_entity) { entityId = m_entity->GetId(); } // Cache our default response handler in case this component goes away AZStd::shared_ptr < CloudGemLeaderboardResponseHandler > defaultResponseHandler = m_defaultResponseHandler; // Create job PostScoreRequestJob* requestJob = PostScoreRequestJob::Create( [responseHandler, defaultResponseHandler, entityId](PostScoreRequestJob* successJob) { // handle success CloudGemLeaderboardResponseHandler* successHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (successHandler) { successHandler->HandlePostScoreSuccess(successJob, entityId); } }, [responseHandler, defaultResponseHandler, entityId](PostScoreRequestJob* failedJob) { // handle error CloudGemLeaderboardResponseHandler* failureHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (failureHandler) { failureHandler->HandlePostScoreError(failedJob, entityId); } } ); requestJob->parameters.score_entry = score_entry; requestJob->Start(); } void CloudGemLeaderboardClientComponent::DeleteScore(const AZStd::string& user, const AZStd::string& stat, CloudGemLeaderboardResponseHandler* responseHandler) { // Cache our entityId in case the entity goes away AZ::EntityId entityId; if (m_entity) { entityId = m_entity->GetId(); } // Cache our default response handler in case this component goes away AZStd::shared_ptr < CloudGemLeaderboardResponseHandler > defaultResponseHandler = m_defaultResponseHandler; // Create job DeleteScoreRequestJob* requestJob = DeleteScoreRequestJob::Create( [responseHandler, defaultResponseHandler, entityId](DeleteScoreRequestJob* successJob) { // handle success CloudGemLeaderboardResponseHandler* successHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (successHandler) { successHandler->HandleDeleteScoreSuccess(successJob, entityId); } }, [responseHandler, defaultResponseHandler, entityId](DeleteScoreRequestJob* failedJob) { // handle error CloudGemLeaderboardResponseHandler* failureHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (failureHandler) { failureHandler->HandleDeleteScoreError(failedJob, entityId); } } ); requestJob->parameters.user = user; requestJob->parameters.stat = stat; requestJob->Start(); } void CloudGemLeaderboardClientComponent::GetScore(const AZStd::string& user, const AZStd::string& stat, CloudGemLeaderboardResponseHandler* responseHandler) { // Cache our entityId in case the entity goes away AZ::EntityId entityId; if (m_entity) { entityId = m_entity->GetId(); } // Cache our default response handler in case this component goes away AZStd::shared_ptr < CloudGemLeaderboardResponseHandler > defaultResponseHandler = m_defaultResponseHandler; // Create job GetScoreRequestJob* requestJob = GetScoreRequestJob::Create( [responseHandler, defaultResponseHandler, entityId](GetScoreRequestJob* successJob) { // handle success CloudGemLeaderboardResponseHandler* successHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (successHandler) { successHandler->HandleGetScoreSuccess(successJob, entityId); } }, [responseHandler, defaultResponseHandler, entityId](GetScoreRequestJob* failedJob) { // handle error CloudGemLeaderboardResponseHandler* failureHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (failureHandler) { failureHandler->HandleGetScoreError(failedJob, entityId); } } ); requestJob->parameters.user = user; requestJob->parameters.stat = stat; requestJob->Start(); } void CloudGemLeaderboardClientComponent::DeleteStats(const AZStd::string& stat_name, CloudGemLeaderboardResponseHandler* responseHandler) { // Cache our entityId in case the entity goes away AZ::EntityId entityId; if (m_entity) { entityId = m_entity->GetId(); } // Cache our default response handler in case this component goes away AZStd::shared_ptr < CloudGemLeaderboardResponseHandler > defaultResponseHandler = m_defaultResponseHandler; // Create job DeleteStatsRequestJob* requestJob = DeleteStatsRequestJob::Create( [responseHandler, defaultResponseHandler, entityId](DeleteStatsRequestJob* successJob) { // handle success CloudGemLeaderboardResponseHandler* successHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (successHandler) { successHandler->HandleDeleteStatsSuccess(successJob, entityId); } }, [responseHandler, defaultResponseHandler, entityId](DeleteStatsRequestJob* failedJob) { // handle error CloudGemLeaderboardResponseHandler* failureHandler = responseHandler ? responseHandler : defaultResponseHandler.get(); if (failureHandler) { failureHandler->HandleDeleteStatsError(failedJob, entityId); } } ); requestJob->parameters.stat_name = stat_name; requestJob->Start(); } bool BannedPlayerList::OnJsonKey(const char* key, CloudGemFramework::JsonReader& reader) { if (strcmp(key, "players") == 0) return reader.Accept(players); return reader.Ignore(); } void BannedPlayerList::Reflect(AZ::ReflectContext* reflection) { AZ::SerializeContext* serializeContext = azrtti_cast(reflection); if (serializeContext) { serializeContext->Class() ->Version(1); } AZ::BehaviorContext* behaviorContext = azrtti_cast(reflection); if (behaviorContext) { behaviorContext->Class("CloudGemLeaderboard_BannedPlayerList") ->Attribute(AZ::Script::Attributes::Storage, AZ::Script::Attributes::StorageType::Value) ->Property("players", BehaviorValueProperty(&BannedPlayerList::players)) ; } } bool SingleScore::OnJsonKey(const char* key, CloudGemFramework::JsonReader& reader) { if (strcmp(key, "stat") == 0) return reader.Accept(stat); if (strcmp(key, "user") == 0) return reader.Accept(user); if (strcmp(key, "value") == 0) return reader.Accept(value); if (strcmp(key, "estimated_rank") == 0) return reader.Accept(estimated_rank); return reader.Ignore(); } void SingleScore::Reflect(AZ::ReflectContext* reflection) { AZ::SerializeContext* serializeContext = azrtti_cast(reflection); if (serializeContext) { serializeContext->Class() ->Version(1); } AZ::BehaviorContext* behaviorContext = azrtti_cast(reflection); if (behaviorContext) { behaviorContext->Class("CloudGemLeaderboard_SingleScore") ->Attribute(AZ::Script::Attributes::Storage, AZ::Script::Attributes::StorageType::Value) ->Property("stat", BehaviorValueProperty(&SingleScore::stat)) ->Property("user", BehaviorValueProperty(&SingleScore::user)) ->Property("value", BehaviorValueProperty(&SingleScore::value)) ->Property("estimated_rank", BehaviorValueProperty(&SingleScore::estimated_rank)) ; } } bool ServiceStatus::OnJsonKey(const char* key, CloudGemFramework::JsonReader& reader) { if (strcmp(key, "status") == 0) return reader.Accept(status); return reader.Ignore(); } void ServiceStatus::Reflect(AZ::ReflectContext* reflection) { AZ::SerializeContext* serializeContext = azrtti_cast(reflection); if (serializeContext) { serializeContext->Class() ->Version(1); } AZ::BehaviorContext* behaviorContext = azrtti_cast(reflection); if (behaviorContext) { behaviorContext->Class("CloudGemLeaderboard_ServiceStatus") ->Attribute(AZ::Script::Attributes::Storage, AZ::Script::Attributes::StorageType::Value) ->Property("status", BehaviorValueProperty(&ServiceStatus::status)) ; } } bool AdditionalLeaderboardRequestData::OnJsonKey(const char* key, CloudGemFramework::JsonReader& reader) { if (strcmp(key, "users") == 0) return reader.Accept(users); if (strcmp(key, "page_size") == 0) return reader.Accept(page_size); if (strcmp(key, "page") == 0) return reader.Accept(page); return reader.Ignore(); } void AdditionalLeaderboardRequestData::Reflect(AZ::ReflectContext* reflection) { AZ::SerializeContext* serializeContext = azrtti_cast(reflection); if (serializeContext) { serializeContext->Class() ->Version(1); } AZ::BehaviorContext* behaviorContext = azrtti_cast(reflection); if (behaviorContext) { behaviorContext->Class("CloudGemLeaderboard_AdditionalLeaderboardRequestData") ->Attribute(AZ::Script::Attributes::Storage, AZ::Script::Attributes::StorageType::Value) ->Property("users", BehaviorValueProperty(&AdditionalLeaderboardRequestData::users)) ->Property("page_size", BehaviorValueProperty(&AdditionalLeaderboardRequestData::page_size)) ->Property("page", BehaviorValueProperty(&AdditionalLeaderboardRequestData::page)) ; } } bool ScoreData::OnJsonKey(const char* key, CloudGemFramework::JsonReader& reader) { if (strcmp(key, "current_page") == 0) return reader.Accept(current_page); if (strcmp(key, "total_pages") == 0) return reader.Accept(total_pages); if (strcmp(key, "scores") == 0) return reader.Accept(scores); return reader.Ignore(); } void ScoreData::Reflect(AZ::ReflectContext* reflection) { AZ::SerializeContext* serializeContext = azrtti_cast(reflection); if (serializeContext) { serializeContext->Class() ->Version(1); } AZ::BehaviorContext* behaviorContext = azrtti_cast(reflection); if (behaviorContext) { behaviorContext->Class("CloudGemLeaderboard_ScoreData") ->Attribute(AZ::Script::Attributes::Storage, AZ::Script::Attributes::StorageType::Value) ->Property("current_page", BehaviorValueProperty(&ScoreData::current_page)) ->Property("total_pages", BehaviorValueProperty(&ScoreData::total_pages)) ->Property("scores", BehaviorValueProperty(&ScoreData::scores)) ; } } bool StatDefinition::OnJsonKey(const char* key, CloudGemFramework::JsonReader& reader) { if (strcmp(key, "max") == 0) return reader.Accept(max); if (strcmp(key, "min") == 0) return reader.Accept(min); if (strcmp(key, "name") == 0) return reader.Accept(name); if (strcmp(key, "sample_size") == 0) return reader.Accept(sample_size); if (strcmp(key, "mode") == 0) return reader.Accept(mode); return reader.Ignore(); } void StatDefinition::Reflect(AZ::ReflectContext* reflection) { AZ::SerializeContext* serializeContext = azrtti_cast(reflection); if (serializeContext) { serializeContext->Class() ->Version(1); } AZ::BehaviorContext* behaviorContext = azrtti_cast(reflection); if (behaviorContext) { behaviorContext->Class("CloudGemLeaderboard_StatDefinition") ->Attribute(AZ::Script::Attributes::Storage, AZ::Script::Attributes::StorageType::Value) ->Property("max", BehaviorValueProperty(&StatDefinition::max)) ->Property("min", BehaviorValueProperty(&StatDefinition::min)) ->Property("name", BehaviorValueProperty(&StatDefinition::name)) ->Property("sample_size", BehaviorValueProperty(&StatDefinition::sample_size)) ->Property("mode", BehaviorValueProperty(&StatDefinition::mode)) ; } } bool StatList::OnJsonKey(const char* key, CloudGemFramework::JsonReader& reader) { if (strcmp(key, "stats") == 0) return reader.Accept(stats); return reader.Ignore(); } void StatList::Reflect(AZ::ReflectContext* reflection) { AZ::SerializeContext* serializeContext = azrtti_cast(reflection); if (serializeContext) { serializeContext->Class() ->Version(1); } AZ::BehaviorContext* behaviorContext = azrtti_cast(reflection); if (behaviorContext) { behaviorContext->Class("CloudGemLeaderboard_StatList") ->Attribute(AZ::Script::Attributes::Storage, AZ::Script::Attributes::StorageType::Value) ->Property("stats", BehaviorValueProperty(&StatList::stats)) ; } } bool BanOutcome::OnJsonKey(const char* key, CloudGemFramework::JsonReader& reader) { if (strcmp(key, "status") == 0) return reader.Accept(status); return reader.Ignore(); } void BanOutcome::Reflect(AZ::ReflectContext* reflection) { AZ::SerializeContext* serializeContext = azrtti_cast(reflection); if (serializeContext) { serializeContext->Class() ->Version(1); } AZ::BehaviorContext* behaviorContext = azrtti_cast(reflection); if (behaviorContext) { behaviorContext->Class("CloudGemLeaderboard_BanOutcome") ->Attribute(AZ::Script::Attributes::Storage, AZ::Script::Attributes::StorageType::Value) ->Property("status", BehaviorValueProperty(&BanOutcome::status)) ; } } } }