private CurSearch CreateSearch() { var res = new CurSearch(); var loadedAssemblies = publicApiStorage .LoadAssemblies(); var namespaces = new HashSet <string>(); res.searchItems = loadedAssemblies .SelectMany(a => Prepare(a, namespaces)) .ToArray(); { var search_strings = res.searchItems.Select(w => w.ClassName); res.stat = wSBuilder.BuildStat(search_strings); var index = wSBuilder.Index(search_strings.Select(w => new Bulk { Sentence = w }), res.stat); res.classSearch = wSBuilder.CreateSearch(index); } res.BuildTime = DateTime.UtcNow; res.Namespaces = namespaces .OrderBy(w => w) .Select(w => new Base.NamespaceInfo { Namespace = w, Levels = w.Split('.').Length + 1 }) .ToArray(); return(res); }
public StorageSearch(IWSBuilder wSBuilder, InterfaceController interfaceController) { var model = interfaceController.GetInterfacesModel(""); this.interfaces = model.Interfaces.ToArray(); var stat = wSBuilder.BuildStat(interfaces.Select(w => w.Name)); var index = wSBuilder.Index(interfaces.Select(w => new Bulk { Sentence = w.Name }), stat); this.search = wSBuilder.CreateSearch(index); }