コード例 #1
0
        public DiagnosticController(IContentItemRepository repository, IHost host, IDefinitionManager definitions,
                                    ILinkGenerator linkGenerator, IUrlParser parser, DatabaseSection config, IFlushable flushable, IReplicationStorage repstore,
                                    IFileSystemFactory fileSystemFactory)
        {
            _repository    = repository;
            _host          = host;
            _definitions   = definitions;
            _linkGenerator = linkGenerator;
            _parser        = parser;
            _flushable     = flushable;
            _tablePrefix   = config.TablePrefix;

            _repstore = repstore;

            if (_forceWriteLockManager != null)
            {
                return;
            }

            // Create Force Write Lock Manager
            var storageConfig = (FileSystemNamespace)Enum.Parse(typeof(FileSystemNamespace),
                                                                ConfigurationManager.AppSettings["AzureReplicationStorageContainerName"] ??
                                                                "ReplicationStorageDebug");

            var fileSystem = fileSystemFactory.Create(storageConfig);

            _forceWriteLockManager = new ReplicationForceWriteLockManager(fileSystem);
            _writeLockManager      = new ReplicationWriteLockManager(fileSystem);
        }
 public static string DeleteApprentice(this ILinkGenerator linkGenerator,
                                       string accountHashedId,
                                       string cohortReference,
                                       string draftApprenticeshipHashedId)
 {
     return(linkGenerator.CommitmentsLink($"accounts/{accountHashedId}/apprentices/{cohortReference}/apprenticeships/{draftApprenticeshipHashedId}/delete"));
 }
 public static string WhenToApplyStopApprentice(
     this ILinkGenerator linkGenerator,
     string accountHashedId,
     string hashedApprenticeshipId)
 {
     return(linkGenerator.CommitmentsLink($"accounts/{accountHashedId}/apprentices/manage/{hashedApprenticeshipId}/details/statuschange/stop/whentoapply"));
 }
コード例 #4
0
        public CategoryListViewModel GetCategoryListViewModel(CategoryListPart part, ILinkGenerator linkGenerator, ICatalogApi catalogApi)
        {
            var model = new CategoryListViewModel { Title = part.Title };

            foreach (var category in part.Categories)
            {
                var itemModel = new CategoryListItemViewModel
                {
                    Url = category.TargetUrl,
                    Title = category.Title,
                    Text = category.Text
                };
                long cid;
                if (long.TryParse(category.Category, out cid))
                {
                    itemModel.Category = catalogApi.GetCategoryAsync(catalogApi.GetCategoryUri(cid)).Result;
                    if (string.IsNullOrEmpty(itemModel.Url))
                        itemModel.Url = linkGenerator.GenerateCategoryLink(cid);
                    if (string.IsNullOrEmpty(itemModel.Title))
                        itemModel.Title = itemModel.Category.DisplayName;
                    if (string.IsNullOrEmpty(itemModel.Text))
                        itemModel.Text = itemModel.Category.ShortDescription;
                }
                model.Categories.Add(itemModel);
            }

            return model;
        }
コード例 #5
0
ファイル: SubNavModel.cs プロジェクト: TOByrne/TGOByrne
        public SubNavModel(ILinkGenerator linkDictionary)
        {
            LinkDictionary = linkDictionary;

            Enumerator = LinkDictionary.GetEnumerator();
            Enumerator.Reset();
        }
コード例 #6
0
 public SitemapController(ICatalogApi catalogApi, ICategoryViewModelBuilder catViewModelBuilder, ILinkGenerator linkGenerator)
 {
     _catalogApi          = catalogApi;
     _linkGenerator       = linkGenerator;
     _catViewModelBuilder = catViewModelBuilder;
     _siteConfig          = ConfigLoader.Get <SiteConfig>();
 }
 public static string EditApprenticeship(
     this ILinkGenerator linkGenerator,
     string accountHashedId,
     string hashedApprenticeshipId)
 {
     return(linkGenerator.CommitmentsLink($"accounts/{accountHashedId}/apprentices/manage/{hashedApprenticeshipId}/edit"));
 }
 public static string EditStopDate(
     this ILinkGenerator linkGenerator,
     string accountHashedId,
     string hashedApprenticeshipId)
 {
     return(linkGenerator.CommitmentsLink($"accounts/{accountHashedId}/apprentices/manage/{hashedApprenticeshipId}/details/editstopdate"));
 }
コード例 #9
0
 public override string GetUrl(ILinkGenerator linkGenerator)
 {
     long catId;
     if (!long.TryParse(Category, out catId))
         catId = 0;
     return linkGenerator.GenerateCategoryLink(catId);
 }
 public static string DatalockChanges(
     this ILinkGenerator linkGenerator,
     string accountHashedId,
     string hashedApprenticeshipId)
 {
     return(linkGenerator.CommitmentsLink($"accounts/{accountHashedId}/apprentices/manage/{hashedApprenticeshipId}/datalock/changes"));
 }
コード例 #11
0
 public TransferRequestController(EmployerCommitmentsOrchestrator orchestrator, IOwinWrapper owinWrapper,
                                  IMultiVariantTestingService multiVariantTestingService, ICookieStorageService <FlashMessageViewModel> flashMessage,
                                  ICookieStorageService <string> lastCohortCookieStorageService, ILinkGenerator linkGenerator)
     : base(orchestrator, owinWrapper, multiVariantTestingService, flashMessage, lastCohortCookieStorageService)
 {
     _linkGenerator = linkGenerator;
 }
コード例 #12
0
 public static string SenderApplicationDetails(this ILinkGenerator linkGenerator,
                                               string hashedAccountId,
                                               string hashedPledgeId,
                                               string hashedPledgeApplicationId)
 {
     return(linkGenerator.LevyTransferMatchingLink($"/accounts/{hashedAccountId}/pledges/{hashedPledgeId}/applications/{hashedPledgeApplicationId}"));
 }
コード例 #13
0
        /// <summary>
        /// Maps a single aggregate to the UI datasource, and only includes the specified datatype segment
        /// returned by the web service, including any additional links
        /// </summary>
        /// <param name="aggregate">the Windfarm Data</param>
        /// <param name="includeOnlyDataType">Include only the specified datatype segment</param>
        /// <param name="generator">Instance of the Link generator class</param>
        /// <returns>UI data source and links</returns>
        //public Windfarm MapAggregate(Core.Model.Aggregate aggregate, DataTypeEnum includeOnlyDataType, IAggregateLinkGenerator generator)
        public Windfarm MapAggregate(Core.Model.Aggregate aggregate, DataTypeEnum includeOnlyDataType, ILinkGenerator<Core.Model.Aggregate> generator)
        {
            if (aggregate == null)
                return new Windfarm();

            //  Create a data segment and a link for each datatype
            var data = new List<WindfarmData>();
            foreach (var d in aggregate.Data)
            {
                if (d.DataType == includeOnlyDataType)
                {
                    data.Add(new WindfarmData()
                    {
                        Type = Enum.GetName(typeof(DataTypeEnum), d.DataType),
                        Data = d.Data
                    });
                    break;      //  Found, now leave immediately
                }
            }
            //  Create the UiAggregate
            var uiAggregate = new Windfarm()
            {
                Id = aggregate.Id,
                Name = aggregate.Name,
                Data = data,
                Links = generator.GenerateItemLinks(aggregate)      //  Include links for all other datatypes
            };
            return uiAggregate;
        }
コード例 #14
0
        private IDictionary <string, object> GenerateLinks(
            ILinkGenerator <TInput> generator, TInput source)
        {
            var links = generator.GenerateLinks(this.urlHelper, source);

            return(NamedLink.BuildLinks(links));
        }
コード例 #15
0
        /// <summary>
        /// Maps a single aggregate to the UI datasource
        /// returned by the web service, including any additional links
        /// </summary>
        /// <param name="aggregate">the Windfarm Data</param>
        /// <param name="generator">The instance of the LinkGenerator to generate the Links</param>
        /// <returns>UI data source and links</returns>
        //public Windfarm MapAggregate(Aggregate aggregate, IAggregateLinkGenerator generator)
        public Windfarm MapAggregate(Aggregate aggregate, ILinkGenerator<Core.Model.Aggregate> generator)
        {
            if (aggregate == null)
                return  new Windfarm();

            //  Create a data segment and a link for each datatype
            var data = new List<WindfarmData>();
            foreach (var d in aggregate.Data)
            {
                data.Add(new WindfarmData()
                {
                    Type = Enum.GetName(typeof(DataTypeEnum), d.DataType),
                    Data = d.Data
                });
            }
            //  Create the UiAggregate
            var uiAggregate = new Windfarm()
            {
                Id = aggregate.Id,
                Name = aggregate.Name,
                Data = data,
                Links = generator.GenerateItemLinks(aggregate)
            };
            return uiAggregate;
        }
コード例 #16
0
        public ProductListViewModel GetProductListViewModel(ProductListPart part, ILinkGenerator linkGenerator, ICatalogApi catalogApi)
        {
            var model = new ProductListViewModel {Title = part.Title};

            foreach (var product in part.Products)
            {
                var itemModel = new ProductListItemViewModel
                {
                    Url = product.TargetUrl,
                    Title = product.Title,
                    Text = product.Text
                };
                long pid;
                if (long.TryParse(product.Product, out pid))
                {
                    itemModel.Product = catalogApi.GetProductAsync(catalogApi.GetProductUri(pid)).Result;
                    if (string.IsNullOrEmpty(itemModel.Url))
                        itemModel.Url = linkGenerator.GenerateProductLink(pid);
                    if (string.IsNullOrEmpty(itemModel.Title))
                        itemModel.Title = itemModel.Product.DisplayName;
                    if (string.IsNullOrEmpty(itemModel.Text))
                        itemModel.Text = itemModel.Product.ShortDescription;
                }
                model.Products.Add(itemModel);
            }

            return model;
        }
コード例 #17
0
 public CandyRackPartController(IRequestLogger logger, IOffersViewModelBuilder offersViewModelBuilder, ICartApi cartApi, ILinkGenerator linkGenerator)
     : base(logger, null, null)
 {
     _offersViewModelBuilder = offersViewModelBuilder;
     _cartApi       = cartApi;
     _linkGenerator = linkGenerator;
 }
コード例 #18
0
        public DiagnosticController(IContentItemRepository repository, IHost host, IDefinitionManager definitions,
            ILinkGenerator linkGenerator, IUrlParser parser, DatabaseSection config, IFlushable flushable, IReplicationStorage repstore, 
            IFileSystemFactory fileSystemFactory)
        {
            _repository = repository;
            _host = host;
            _definitions = definitions;
            _linkGenerator = linkGenerator;
            _parser = parser;
            _flushable = flushable;
            _tablePrefix = config.TablePrefix;

            _repstore = repstore;

            if (_forceWriteLockManager != null) return;

            // Create Force Write Lock Manager
            var storageConfig = (FileSystemNamespace) Enum.Parse(typeof (FileSystemNamespace),
                ConfigurationManager.AppSettings["AzureReplicationStorageContainerName"] ??
                "ReplicationStorageDebug");

            var fileSystem = fileSystemFactory.Create(storageConfig);
            _forceWriteLockManager = new ReplicationForceWriteLockManager(fileSystem);
            _writeLockManager = new ReplicationWriteLockManager(fileSystem);
        }
コード例 #19
0
 public DraftApprenticeshipController(IMediator mediator,
                                      ILinkGenerator urlHelper, ICommitmentsApiClient commitmentsApiClient, IModelMapper modelMapper)
 {
     _mediator             = mediator;
     _urlHelper            = urlHelper;
     _commitmentsApiClient = commitmentsApiClient;
     _modelMapper          = modelMapper;
 }
コード例 #20
0
        public Episode(string url, int number, string albumName, ILinkGenerator generator)
        {
            _url       = url;
            Number     = number;
            _albumName = albumName;

            _linkGenerator = generator;
        }
コード例 #21
0
ファイル: InfoController.cs プロジェクト: Azato21/nhitomi
 public InfoController(IServiceProvider services, ILinkGenerator link, IOptionsSnapshot <RecaptchaOptions> recaptchaOptions, IDiscordOAuthHandler discordOAuth, IScraperService scrapers)
 {
     _services         = services;
     _link             = link;
     _discordOAuth     = discordOAuth;
     _scrapers         = scrapers;
     _recaptchaOptions = recaptchaOptions.Value;
 }
コード例 #22
0
 public ProductsController(IProductServices productServices,
                           IProductOptionServices productOptionServices,
                           ILinkGenerator linkGenerator)
 {
     _productServices       = productServices;
     _productOptionServices = productOptionServices;
     _linkGenerator         = linkGenerator;
 }
コード例 #23
0
 public ShoppingCartPartController(IRequestLogger logger, ICartApi cartApi, IShoppingCartViewModelBuilder shoppingCartViewModelBuilder,
                                   IOffersViewModelBuilder offersViewModelBuilder, ILinkGenerator linkGenerator)
     : base(logger)
 {
     _shoppingCartViewModelBuilder = shoppingCartViewModelBuilder;
     _cartApi = cartApi;
     _offersViewModelBuilder = offersViewModelBuilder;
     _linkGenerator          = linkGenerator;
 }
コード例 #24
0
ファイル: StripeService.cs プロジェクト: YakkoRasZ14/nhitomi
 public StripeService(IHttpClientFactory http, IElasticClient client, IOptionsMonitor <StripeServiceOptions> options, ILinkGenerator link, IWriteControl writeControl, IUserService users)
 {
     _stripe       = new StripeClient(options.CurrentValue.SecretKey, null, new SystemNetHttpClient(http.CreateClient(nameof(StripeClient))));
     _client       = client;
     _options      = options;
     _link         = link;
     _writeControl = writeControl;
     _users        = users;
 }
コード例 #25
0
 public CatalogController(IRequestLogger logger, ICategoryViewModelBuilder catViewModelBuilder,
                          ILinkGenerator linkGenerator,
                          IPageInfo pageInfo, ICatalogApi catalogApi)
     : base(logger, linkGenerator, catalogApi)
 {
     _pageInfo            = pageInfo;
     _linkGenerator       = linkGenerator;
     _catViewModelBuilder = catViewModelBuilder;
 }
コード例 #26
0
 public ApprenticeController(IModelMapper modelMapper, ICookieStorageService <IndexRequest> cookieStorage, ICommitmentsApiClient commitmentsApiClient, ILinkGenerator linkGenerator, ILogger <ApprenticeController> logger, IAuthorizationService authorizationService)
 {
     _modelMapper          = modelMapper;
     _cookieStorage        = cookieStorage;
     _commitmentsApiClient = commitmentsApiClient;
     _linkGenerator        = linkGenerator;
     _logger = logger;
     _authorizationService = authorizationService;
 }
コード例 #27
0
 public CreateCohortController(ICookieStorageService <FlashMessageViewModel> flashMessage,
                               SelectEmployerOrchestrator selectEmployerOrchestrator, CreateCohortOrchestrator createCohortOrchestrator,
                               IFeatureToggleService featureToggleService, ILinkGenerator providerUrlhelper) : base(flashMessage)
 {
     _selectEmployerOrchestrator = selectEmployerOrchestrator;
     _createCohortOrchestrator   = createCohortOrchestrator;
     _featureToggleService       = featureToggleService;
     _providerUrlhelper          = providerUrlhelper;
 }
コード例 #28
0
 public ShoppingCartController(ICartApi cartApi, IRequestLogger logger, ILinkGenerator linkGenerator,
                               IPageInfo pageInfo, IOffersViewModelBuilder offersViewModelBuilder, IShoppingCartViewModelBuilder shoppingCartViewModelBuilder, ICatalogApi catalogApi)
     : base(logger, linkGenerator, catalogApi)
 {
     CartApi = cartApi;
     ShoppingCartViewModelBuilder = shoppingCartViewModelBuilder;
     PageInfo = pageInfo;
     OffersViewModelBuilder = offersViewModelBuilder;
 }
コード例 #29
0
        public nhitomiDummyBookScraper(IServiceProvider services, ILogger <nhitomiDummyBookScraper> logger, IElasticClient client, ILinkGenerator link) : base(services, Extensions.GetOptionsMonitor(new Options()), logger)
        {
            _client = client;
            _link   = link;

            var hostname = new Uri(_link.GetWebLink("/")).Authority;

            UrlRegex = new ScraperUrlRegex($@"(nhitomi(\/|\s+)|(https?:\/\/)?{Regex.Escape(hostname)}\/books\/)(?<id>\w{{1,{Snowflake.MaxLength}}})((\/contents)?\/(?<contentId>\w{{1,{Snowflake.MaxLength}}}))?\/?");
        }
コード例 #30
0
 public DefaultBoardService(IDataBaseOperations dataBase,
                            IConverter <BoardRecord, Domain.Models.Board.Board> boardConverter,
                            ILinkGenerator linkGenerator,
                            IConverter <PrivateAccessRecord, PrivateAccessParameters> privateAccessConverter)
 {
     this.dataBase               = dataBase;
     this.boardConverter         = boardConverter;
     this.linkGenerator          = linkGenerator;
     this.privateAccessConverter = privateAccessConverter;
 }
コード例 #31
0
 public FoldersController(IFolderService folderService,
                          IAuthorizationService authorizationService,
                          ISharingService sharingService,
                          ILinkGenerator <FolderDTO> linkGenerator)
 {
     _folderService        = folderService;
     _authorizationService = authorizationService;
     _sharingService       = sharingService;
     _linkGenerator        = linkGenerator;
 }
コード例 #32
0
        public override string GetUrl(ILinkGenerator linkGenerator)
        {
            long catId;

            if (!long.TryParse(Category, out catId))
            {
                catId = 0;
            }
            return(linkGenerator.GenerateCategoryLink(catId));
        }
コード例 #33
0
 public DiscordOAuthHandler(IUserService users, IElasticClient client, IHttpClientFactory http, ISnapshotService snapshots, IOptionsMonitor <DiscordOAuthOptions> options, IResourceLocker locker, ILinkGenerator link)
 {
     _users     = users;
     _client    = client;
     _snapshots = snapshots;
     _http      = http.CreateClient(nameof(DiscordOAuthHandler));
     _options   = options;
     _locker    = locker;
     _link      = link;
 }
 public CohortController(IMediator mediator,
                         IModelMapper modelMapper,
                         ILinkGenerator urlHelper,
                         ICommitmentsApiClient commitmentsApiClient)
 {
     _mediator            = mediator;
     _modelMapper         = modelMapper;
     _urlHelper           = urlHelper;
     _commitmentApiClient = commitmentsApiClient;
 }
コード例 #35
0
 public DataLockOrchestrator(
     IMediator mediator,
     IHashingService hashingService,
     ILog logger,
     IApprenticeshipMapper apprenticeshipMapper,
     ILinkGenerator linkGenerator
     ) : base(mediator, hashingService, logger)
 {
     _apprenticeshipMapper = apprenticeshipMapper;
     _linkGenerator        = linkGenerator;
 }
コード例 #36
0
ファイル: InfoController.cs プロジェクト: YakkoRasZ14/nhitomi
 public InfoController(IServiceProvider services, IOptionsMonitor <ServerOptions> serverOptions, IOptionsMonitor <StripeServiceOptions> stripeOptions, ILinkGenerator link, IOptionsMonitor <RecaptchaOptions> recaptchaOptions, IDiscordOAuthHandler discordOAuth, IScraperService scrapers, IStripeService stripe)
 {
     _services         = services;
     _serverOptions    = serverOptions;
     _stripeOptions    = stripeOptions;
     _link             = link;
     _discordOAuth     = discordOAuth;
     _scrapers         = scrapers;
     _recaptchaOptions = recaptchaOptions;
     _stripe           = stripe;
 }
コード例 #37
0
 public EventSender(
     IGenericRepository <IMessage> IMrepo,
     IGenericRepository <LogRecord> Lgrepo,
     ILinkGenerator linkGenerator,
     IMyMapper mapper)
 {
     _IMrepo        = IMrepo;
     _Lgrepo        = Lgrepo;
     _linkGenerator = linkGenerator;
     _mapper        = mapper;
 }
コード例 #38
0
 public ErrorsController(ILinkGenerator linkGenerator)
 {
     _linkGenerator = linkGenerator;
 }
コード例 #39
0
 public string GetUrl(ILinkGenerator linkGenerator)
 {
     return !string.IsNullOrEmpty(ExternalUrl)
         ? ExternalUrl
         : linkGenerator.GenerateLinkForNamedContentItem(ContentPageName);
 }
コード例 #40
0
 public virtual string GetUrl(ILinkGenerator linkGenerator)
 {
     return TargetUrl;
 }
コード例 #41
0
 public ListOfLinksAdapter(ILinkGenerator linkGenerator, ICatalogApi catalogApi, IRequestLogger logger)
     : base(logger, catalogApi)
 {
     _linkGenerator = linkGenerator;
 }
コード例 #42
0
 public OfferListViewModelBuilder(IOffersApi offersApi, ILinkGenerator linkGenerator)
 {
     _offersApi = offersApi;
     _linkGenerator = linkGenerator;
 }
コード例 #43
0
 public MyCustomRedirectController(ILinkGenerator linkGenerator)
     : base(linkGenerator, null)
 {
     Content = new ControllerContentHelper(null, () => new PathData(MyCurrentPage, MyCurrentItem));
 }
コード例 #44
0
 public override string GetUrl(ILinkGenerator linkGenerator)
 {
     return linkGenerator.GenerateLinkForNamedContentItem(TargetUrl);
 }
コード例 #45
0
 public override string GetUrl(ILinkGenerator linkGenerator)
 {
     long pid;
     return linkGenerator.GenerateProductLink(long.TryParse(Product, out pid) ? pid : (long?)null);
 }
コード例 #46
0
 /// <summary>
 /// Responsibile for mapping a collection of Aggregates
 /// to the set of links to be returned by the web service
 /// </summary>
 /// <param name="aggregates">Collection of Windfarm Data</param>
 /// <param name="generator">The instance of the LinkGenerator to generate the Links</param>
 /// <returns>Collection of Links to the individual aggregate data sources</returns>
 //public IEnumerable<WindfarmInfo> MapAggregatesToLinks(IEnumerable<Aggregate> aggregates, IAggregateLinkGenerator> generator)
 public IEnumerable<WindfarmInfo> MapAggregatesToLinks(IEnumerable<Aggregate> aggregates, ILinkGenerator<Core.Model.Aggregate> generator)
 {
     var uiAggregates = new List<WindfarmInfo>();
     foreach (var aggregate in aggregates)
     {
         var uiAggregate = new WindfarmInfo()
         {
             Name = aggregate.Name,
             Links = generator.GenerateCollectionLinks(aggregate)
         };
         uiAggregates.Add(uiAggregate);
     }
     return uiAggregates;
 }