diff options
Diffstat (limited to '')
-rw-r--r-- | src/core/hle/service/aoc/aoc_u.cpp | 79 |
1 files changed, 1 insertions, 78 deletions
diff --git a/src/core/hle/service/aoc/aoc_u.cpp b/src/core/hle/service/aoc/aoc_u.cpp index 486719cc0..31c7385ee 100644 --- a/src/core/hle/service/aoc/aoc_u.cpp +++ b/src/core/hle/service/aoc/aoc_u.cpp @@ -16,14 +16,13 @@ #include "core/file_sys/registered_cache.h" #include "core/hle/kernel/k_event.h" #include "core/hle/service/aoc/aoc_u.h" +#include "core/hle/service/aoc/purchase_event_manager.h" #include "core/hle/service/ipc_helpers.h" #include "core/hle/service/server_manager.h" #include "core/loader/loader.h" namespace Service::AOC { -constexpr Result ResultNoPurchasedProductInfoAvailable{ErrorModule::NIMShop, 400}; - static bool CheckAOCTitleIDMatchesBase(u64 title_id, u64 base) { return FileSys::GetBaseTitleID(title_id) == base; } @@ -46,82 +45,6 @@ static std::vector<u64> AccumulateAOCTitleIDs(Core::System& system) { return add_on_content; } -class IPurchaseEventManager final : public ServiceFramework<IPurchaseEventManager> { -public: - explicit IPurchaseEventManager(Core::System& system_) - : ServiceFramework{system_, "IPurchaseEventManager"}, service_context{ - system, "IPurchaseEventManager"} { - // clang-format off - static const FunctionInfo functions[] = { - {0, &IPurchaseEventManager::SetDefaultDeliveryTarget, "SetDefaultDeliveryTarget"}, - {1, &IPurchaseEventManager::SetDeliveryTarget, "SetDeliveryTarget"}, - {2, &IPurchaseEventManager::GetPurchasedEventReadableHandle, "GetPurchasedEventReadableHandle"}, - {3, &IPurchaseEventManager::PopPurchasedProductInfo, "PopPurchasedProductInfo"}, - {4, &IPurchaseEventManager::PopPurchasedProductInfoWithUid, "PopPurchasedProductInfoWithUid"}, - }; - // clang-format on - - RegisterHandlers(functions); - - purchased_event = service_context.CreateEvent("IPurchaseEventManager:PurchasedEvent"); - } - - ~IPurchaseEventManager() override { - service_context.CloseEvent(purchased_event); - } - -private: - void SetDefaultDeliveryTarget(HLERequestContext& ctx) { - IPC::RequestParser rp{ctx}; - - const auto unknown_1 = rp.Pop<u64>(); - [[maybe_unused]] const auto unknown_2 = ctx.ReadBuffer(); - - LOG_WARNING(Service_AOC, "(STUBBED) called, unknown_1={}", unknown_1); - - IPC::ResponseBuilder rb{ctx, 2}; - rb.Push(ResultSuccess); - } - - void SetDeliveryTarget(HLERequestContext& ctx) { - IPC::RequestParser rp{ctx}; - - const auto unknown_1 = rp.Pop<u64>(); - [[maybe_unused]] const auto unknown_2 = ctx.ReadBuffer(); - - LOG_WARNING(Service_AOC, "(STUBBED) called, unknown_1={}", unknown_1); - - IPC::ResponseBuilder rb{ctx, 2}; - rb.Push(ResultSuccess); - } - - void GetPurchasedEventReadableHandle(HLERequestContext& ctx) { - LOG_WARNING(Service_AOC, "called"); - - IPC::ResponseBuilder rb{ctx, 2, 1}; - rb.Push(ResultSuccess); - rb.PushCopyObjects(purchased_event->GetReadableEvent()); - } - - void PopPurchasedProductInfo(HLERequestContext& ctx) { - LOG_DEBUG(Service_AOC, "(STUBBED) called"); - - IPC::ResponseBuilder rb{ctx, 2}; - rb.Push(ResultNoPurchasedProductInfoAvailable); - } - - void PopPurchasedProductInfoWithUid(HLERequestContext& ctx) { - LOG_DEBUG(Service_AOC, "(STUBBED) called"); - - IPC::ResponseBuilder rb{ctx, 2}; - rb.Push(ResultNoPurchasedProductInfoAvailable); - } - - KernelHelpers::ServiceContext service_context; - - Kernel::KEvent* purchased_event; -}; - AOC_U::AOC_U(Core::System& system_) : ServiceFramework{system_, "aoc:u"}, add_on_content{AccumulateAOCTitleIDs(system)}, service_context{system_, "aoc:u"} { |