protected override async void Execute(object parameter) { var currentMethod = System.Reflection.MethodBase.GetCurrentMethod(); //Microsoft.AppCenter.Analytics.Analytics.TrackEvent($"{currentMethod.DeclaringType.Name}#{currentMethod.Name}"); if (parameter is IVideoContentProvider provider) { string ownerName = null; if (string.IsNullOrEmpty(ownerName)) { if (provider.ProviderType == OwnerType.User) { var user = _nicoVideoOwnerRepository.Get(provider.ProviderId); if (user?.ScreenName is not null) { ownerName = user.ScreenName; } else { ownerName = await UserProvider.GetUserNameAsync(provider.ProviderId); } } else if (provider.ProviderType == OwnerType.Channel) { ownerName = await ChannelProvider.GetChannelNameWithCacheAsync(provider.ProviderId); } } NgSettings.AddHiddenVideoOwnerId(provider.ProviderId.ToString(), ownerName); } }