protected List <SearchResultExtendedContract> SearchByCriteriaText(CriteriaKey key, string text, int start, int count, short sortingEnum, bool sortAsc, IList <long> selectedBookIds, IList <int> selectedCategoryIds, SearchAdvancedParametersContract parameters = null) { var listSearchCriteriaContracts = CreateTextCriteriaList(key, text); return(SearchByCriteria(listSearchCriteriaContracts, start, count, sortingEnum, sortAsc, selectedBookIds, selectedCategoryIds, parameters)); }
/// <summary> /// Get ordered selection criteria. /// </summary> public List <List <SelectionCriteria> > GetSelectionCriteria(RestoreTargetGraph graph, NuGetFramework framework) { // Criteria are unique on graph and framework override. var key = new CriteriaKey(graph.TargetGraphName, framework); if (!_criteriaSets.TryGetValue(key, out var criteria)) { criteria = LockFileUtils.CreateOrderedCriteriaSets(graph, framework); _criteriaSets.Add(key, criteria); } return(criteria); }
private WordListCriteriaContract CreateWordListContract(CriteriaKey criteriaKey, string text) { return(new WordListCriteriaContract { Key = criteriaKey, Disjunctions = new List <WordCriteriaContract> { new WordCriteriaContract { Contains = new List <string> { text } } } }); }
private List <SearchCriteriaContract> CreateQueryCriteriaContract(CriteriaKey criteriaKey, string query) { return(new List <SearchCriteriaContract> { new WordListCriteriaContract { Key = criteriaKey, Disjunctions = new List <WordCriteriaContract> { new WordCriteriaContract { Contains = new List <string> { query } } } } }); }
private Type GetCriteriaType(CriteriaKey criteriaKey) { switch (criteriaKey) { case CriteriaKey.Author: case CriteriaKey.Title: case CriteriaKey.Editor: case CriteriaKey.Fulltext: case CriteriaKey.Heading: case CriteriaKey.Sentence: case CriteriaKey.Headword: case CriteriaKey.HeadwordDescription: case CriteriaKey.Term: return(typeof(WordListCriteriaContract)); case CriteriaKey.Dating: return(typeof(DatingListCriteriaContract)); case CriteriaKey.Result: return(typeof(ResultCriteriaContract)); case CriteriaKey.ResultRestriction: return(typeof(ResultRestrictionCriteriaContract)); case CriteriaKey.SnapshotResultRestriction: return(typeof(SnapshotResultRestrictionCriteriaContract)); case CriteriaKey.TokenDistance: case CriteriaKey.HeadwordDescriptionTokenDistance: return(typeof(TokenDistanceListCriteriaContract)); case CriteriaKey.SelectedCategory: return(typeof(SelectedCategoryCriteriaContract)); case CriteriaKey.Authorization: return(typeof(AuthorizationCriteriaContract)); default: throw new ArgumentOutOfRangeException(nameof(criteriaKey), criteriaKey, null); } }
protected List <SearchCriteriaContract> CreateTextCriteriaList(CriteriaKey key, string text) { var listSearchCriteriaContracts = new List <SearchCriteriaContract>(); if (!string.IsNullOrEmpty(text)) { var wordListCriteria = new WordListCriteriaContract { Key = key, Disjunctions = new List <WordCriteriaContract> { new WordCriteriaContract { Contains = new List <string> { text } } } }; listSearchCriteriaContracts.Add(wordListCriteria); } return(listSearchCriteriaContracts); }
protected long SearchByCriteriaTextCount(CriteriaKey key, string text, IList <long> selectedBookIds, IList <int> selectedCategoryIds, SearchAdvancedParametersContract parameters = null) { var listSearchCriteriaContracts = CreateTextCriteriaList(key, text); return(SearchByCriteriaCount(listSearchCriteriaContracts, selectedBookIds, selectedCategoryIds, parameters)); }