public RelatedItemContentTaggingProvidersSet Build(string providersSetName) { ItemContentTaggingConfiguration configurationByName = this.ConfigurationService.GetConfigurationByName(providersSetName); var test = new RelatedItemContentTaggingProvidersSet { ContentProviders = configurationByName.ContentProviders.Select(cp => this.ProvidersFactory.CreateContentProvider <Item>(cp)).Where(new Func <IContentProvider <Item>, bool>(this.NotNull <IContentProvider <Item> >)), DiscoveryProvider = configurationByName.DiscoveryProviders.Select(cp => this.ProvidersFactory.CreateDiscoveryProvider(cp)).Where(new Func <IRelatedItemsDiscoveryProvider, bool>(this.NotNull <IRelatedItemsDiscoveryProvider>)).FirstOrDefault(), Taggers = configurationByName.Taggers.Select(cp => this.ProvidersFactory.CreateTagger <Item>(cp)).Where(new Func <IRelatedItemsTagger <Item>, bool>(this.NotNull <IRelatedItemsTagger <Item> >)) }; return(test); }
public virtual ItemContentTaggingConfiguration GetConfigurationByName(string configurationName) { if (!ItemContentTaggingConfigurations.Value.TryGetValue(configurationName, out var taggingConfiguration)) { taggingConfiguration = new ItemContentTaggingConfiguration { ContentProviders = new List <string>(), DiscoveryProviders = new List <string>(), Taggers = new List <string>(), } } ; return(taggingConfiguration); }