using Ryujinx.Common.Logging;
using Ryujinx.HLE.HOS.Ipc;
using Ryujinx.HLE.HOS.Services.Arp;
using Ryujinx.HLE.Utilities;
using System.Collections.Generic;
namespace Ryujinx.HLE.HOS.Services.Acc
{
class IManagerForApplication : IpcService
private UInt128 _userId;
private ApplicationLaunchProperty _applicationLaunchProperty;
private Dictionary<int, ServiceProcessRequest> _commands;
public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => _commands;
public IManagerForApplication(UInt128 userId, ApplicationLaunchProperty applicationLaunchProperty)
_commands = new Dictionary<int, ServiceProcessRequest>
{ 0, CheckAvailability },
{ 1, GetAccountId }
};
_userId = userId;
_applicationLaunchProperty = applicationLaunchProperty;
}
// CheckAvailability()
public long CheckAvailability(ServiceCtx context)
Logger.PrintStub(LogClass.ServiceAcc);
return 0;
// GetAccountId() -> nn::account::NetworkServiceAccountId
public long GetAccountId(ServiceCtx context)
long networkServiceAccountId = 0xcafe;
Logger.PrintStub(LogClass.ServiceAcc, new { networkServiceAccountId });
context.ResponseData.Write(networkServiceAccountId);