public YouTubeSearchProvider(LocalizationService localizationService, SiteDefinitionResolver siteDefinitionResolver, IContentTypeRepository contentTypeRepository, IContentProviderManager contentProviderManager, YouTubeRepository youTubeRepository, IdentityMappingService identityMappingService) : base(localizationService, siteDefinitionResolver, contentTypeRepository) { _youTubeRepository = youTubeRepository; _identityMappingService = identityMappingService; _youTubeProvider = contentProviderManager.GetProvider(YouTubeSettings.ProviderKey) as YouTubeProvider; }
/// <summary> /// Loads the provider. /// </summary> /// <returns> /// [true] if the provider has been loaded. /// </returns> private static bool LoadProviders() { IContentProviderManager providerManager = ServiceLocator.Current.GetInstance <IContentProviderManager>(); Collection <ClonedContentProviderSettings> providerCollection = SettingsRepository.Instance.GetAll(); foreach (ClonedContentProviderSettings providerSettings in providerCollection) { try { ContentProvider contentProvider = providerManager.GetProvider(providerSettings.Name); if (contentProvider != null) { continue; } CategoryList categoryList = new CategoryList( providerSettings.CategoryList.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries) .Select(int.Parse) .ToArray()); ClonedContentProvider provider = new ClonedContentProvider( providerSettings.Name, new PageReference(providerSettings.Root), new PageReference(providerSettings.EntryPoint), categoryList); providerManager.ProviderMap.AddProvider(provider); } catch (ArgumentNullException) { return(false); } catch (ArgumentException) { return(false); } catch (NotSupportedException) { return(false); } } return(true); }