public override async Task ExecuteAsync(UserIdentifier args) { using (UnitOfWorkManager.Current.SetTenantId(args.TenantId)) { var userLanguage = await _settingManager.GetSettingValueForUserAsync( LocalizationSettingNames.DefaultLanguage, args.TenantId, args.UserId ); var culture = CultureHelper.GetCultureInfoByChecking(userLanguage); using (CultureInfoHelper.Use(culture)) { var files = new List <FileDto>(); using (var scope = IocManager.Instance.CreateScope()) { var providers = scope.ResolveAll <IUserCollectedDataProvider>(); foreach (var provider in providers) { var providerFiles = await provider.GetFiles(args); if (providerFiles.Any()) { files.AddRange(providerFiles); } } } var zipFile = new BinaryObject ( args.TenantId, CompressFiles(files), $"{args.UserId} {DateTime.UtcNow} UserCollectedDataPrepareJob result" ); // Save zip file to object manager. await _binaryObjectManager.SaveAsync(zipFile); // Send notification to user. await _appNotifier.GdprDataPrepared(args, zipFile.Id); } } }
public override void Execute(UserIdentifier args) { using (UnitOfWorkManager.Current.SetTenantId(args.TenantId)) { var userLanguage = AsyncHelper.RunSync(() => _settingManager.GetSettingValueForUserAsync(LocalizationSettingNames.DefaultLanguage, args.TenantId, args.UserId)); var culture = CultureHelper.GetCultureInfoByChecking(userLanguage); using (CultureInfoHelper.Use(culture)) { var files = new List <FileDto>(); using (var scope = IocManager.Instance.CreateScope()) { var providers = scope.ResolveAll <IUserCollectedDataProvider>(); foreach (var provider in providers) { var providerFiles = AsyncHelper.RunSync(() => provider.GetFiles(args)); if (providerFiles.Any()) { files.AddRange(providerFiles); } } } var zipFile = new BinaryObject { TenantId = args.TenantId, Bytes = CompressFiles(files) }; // Save zip file to object manager. _binaryObjectManager.SaveAsync(zipFile); //AsyncHelper.RunSync(() => ); // Send notification to user. AsyncHelper.RunSync(() => _appNotifier.GdprDataPrepared(args, zipFile.Id)); } } }