示例#1
0
 /// <summary>
 /// Provides the set of different other Inquirers for all available endpoints
 /// </summary>
 /// <param name="client">The NexusMods client to use</param>
 public NexusAPIInquirer(INexusAPIClient client)
 {
     RateManager   = client.RateManager;
     User          = new UserInquirer(client);
     Games         = new GamesInquirer(client);
     Mods          = new ModsInquirer(client);
     ModFiles      = new ModFilesInquirer(client);
     ColourSchemes = new ColourSchemesInquirer(client);
 }
        public async Task <IUserDetails> ValidateAPIKey(string key, CancellationToken cancellationToken)
        {
            using var client = _clientFactory.CreateClient(key);
            var inquirer = new UserInquirer(client);
            var user     = await inquirer.GetUserAsync(cancellationToken);

            return(new UserDetails
            {
                Email = user.Email,
                Key = user.Key,
                Name = user.Name,
                IsPremium = user.IsPremium,
                IsSupporter = user.IsSupporter,
                ProfileUrl = user.ProfileAvatarUrl,
                Id = user.UserId
            });
        }