ServiceStack.Auth.RegenerateApiKeysService.Any C# (CSharp) Method

Any() public method

public Any ( RegenerateApiKeys request ) : object
request RegenerateApiKeys
return object
        public object Any(RegenerateApiKeys request)
        {
            var apiKeyAuth = this.Request.AssertValidApiKeyRequest();
            if (string.IsNullOrEmpty(request.Environment) && apiKeyAuth.Environments.Length != 1)
                throw new ArgumentNullException("Environment");

            var env = request.Environment ?? apiKeyAuth.Environments[0];

            var apiRepo = (IManageApiKeys)HostContext.AppHost.GetAuthRepository(base.Request);
            using (apiRepo as IDisposable)
            {
                var userId = GetSession().UserAuthId;
                var updateKeys = apiRepo.GetUserApiKeys(userId)
                    .Where(x => x.Environment == env)
                    .ToList();

                updateKeys.Each(x => x.CancelledDate = DateTime.UtcNow);

                var newKeys = apiKeyAuth.GenerateNewApiKeys(userId, env);
                updateKeys.AddRange(newKeys);

                apiRepo.StoreAll(updateKeys);

                return new RegenerateApiKeysResponse
                {
                    Results = newKeys.Map(k => new UserApiKey
                    {
                        Key = k.Id,
                        KeyType = k.KeyType,
                        ExpiryDate = k.ExpiryDate,
                    })
                };
            }
        }
    }
RegenerateApiKeysService