public void ReIndex(List <string> toReIndex, int tenant) { var allItems = FactoryIndexer.Builder.Resolve <IEnumerable <Wrapper> >().ToList(); var tasks = new List <Task>(toReIndex.Count); foreach (var item in toReIndex) { var index = allItems.FirstOrDefault(r => r.IndexName == item); if (index == null) { continue; } var generic = typeof(BaseIndexer <>); var instance = (IIndexer)Activator.CreateInstance(generic.MakeGenericType(index.GetType()), index); tasks.Add(instance.ReIndex()); } Task.WhenAll(tasks).ContinueWith(r => { CoreContext.TenantManager.SetCurrentTenant(tenant); SearchSettings.Load().ClearCache(); }); }
public static bool CanSearchByContent() { return(SearchSettings.Load().CanSearchByContent <T>()); }