public TrustedTicketGetter(IOptions <TableauSignInOptions> tableauSignInOptions, ITableauUserCredentials tableauUserCredentials, ITableauTenantFinder tableauTenantFinder, IHttpClientFactory httpClientFactory) { Requires.NonNull(tableauSignInOptions, nameof(tableauSignInOptions)); Requires.NonNull(tableauUserCredentials, nameof(tableauUserCredentials)); HttpClientFactory = httpClientFactory; TableauSignInOptions = tableauSignInOptions.Value; TableauUserCredentials = tableauUserCredentials; var tenantId = tableauTenantFinder.GetTenantIdAsync().ExecuteSynchronously(); if (tenantId != null) { TableauSignInOptions.UpdateForTenant(tenantId); } }
public ReportVisualService(ITableauViewerService tableauViewerService, TraffkTenantModelDbContext rdb, ITableauTenantFinder tableauTenantFinder, ICurrentUser currentUser, IPhiAuthorizer phiAuthorizer, ICacher cacher = null) { CanSeePhi = phiAuthorizer.CanSeePhi; TableauViewerService = tableauViewerService; Rdb = rdb; TableauTenantFinder = tableauTenantFinder; CurrentUser = currentUser.User; Cacher = cacher.CreateScope(CurrentUser.UserName, CanSeePhi); TableauTenantId = TableauTenantFinder.GetTenantIdAsync().Result; ReportIndexCacheTimeout = TableauViewerService.ReportIndexCacheTimeout; ((IReportVisualService)this).IsOnline = TableauViewerService.IsOnline; }