public TableauAuthorizationService(IOptions <TableauSignInOptions> options,
                                    IOptions <TableauAdminCredentials> adminSignInOptions,
                                    TraffkTenantModelDbContext rdb,
                                    IHttpClientFactory httpClientFactory,
                                    ILogger logger)
 {
     TableauAdminCredentials = adminSignInOptions.Value;
     AdminTableauRestService = new TableauViewerService(options, TableauAdminCredentials, httpClientFactory, logger);
     Options = options.Value;
     Rdb     = rdb;
 }
示例#2
0
        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;
        }