@Override public void requestSuggestions(Request request, Callback callback) { String query = normalizeSearch(request.getQuery()); int limit = request.getLimit(); // Get candidates from search words. List<String> candidates = createCandidatesFromSearch(query); // Respect limit for number of choices. int numberTruncated = Math.max(0, candidates.size() - limit); for (int i = candidates.size() - 1; i > limit; i--) { candidates.remove(i); } // Convert candidates to suggestions. List<MultiWordSuggestion> suggestions = convertToFormattedSuggestions(query, candidates); Response response = new Response(suggestions); response.setMoreSuggestionsCount(numberTruncated); callback.onSuggestionsReady(request, response); }
if (json != null && json.isArray() != null) { final JSONArray results = json.isArray(); final int n = Math.min(request.getLimit(), results.size()); for (int i = 0; i < n; i++) { final JSONValue suggestion = results.get(i);
@Override public void requestSuggestions(Request request, Callback callback) { String query = normalizeSearch(request.getQuery()); int limit = request.getLimit(); // Get candidates from search words. List<String> candidates = createCandidatesFromSearch(query); // Respect limit for number of choices. int numberTruncated = Math.max(0, candidates.size() - limit); for (int i = candidates.size() - 1; i > limit; i--) { candidates.remove(i); } // Convert candidates to suggestions. List<MultiWordSuggestion> suggestions = convertToFormattedSuggestions(query, candidates); Response response = new Response(suggestions); response.setMoreSuggestionsCount(numberTruncated); callback.onSuggestionsReady(request, response); }
@Override public void requestSuggestions(Request request, Callback callback) { String query = normalizeSearch(request.getQuery()); int limit = request.getLimit(); // Get candidates from search words. List<String> candidates = createCandidatesFromSearch(query); // Respect limit for number of choices. int numberTruncated = Math.max(0, candidates.size() - limit); for (int i = candidates.size() - 1; i > limit; i--) { candidates.remove(i); } // Convert candidates to suggestions. List<MultiWordSuggestion> suggestions = convertToFormattedSuggestions(query, candidates); Response response = new Response(suggestions); response.setMoreSuggestionsCount(numberTruncated); callback.onSuggestionsReady(request, response); }
@Override public void requestSuggestions(final Request request, final Callback callback) { srv.requestSuggestion(request.getQuery(), request.getLimit(), new AbstractMethodCallback<List<String>>(bus) { @Override public void onSuccess(final Method method, final List<String> response) { final List<LoggerWordSuggestion> result = new ArrayList<>(); for (final String string : response) { result.add(new LoggerWordSuggestion(string)); } callback.onSuggestionsReady(request, new Response(result)); } }); }
@Override public void onSuccess(SearchResultInfo results) { lastSuggestions = createSuggestions(results, request.getLimit()); Response response = new Response(lastSuggestions); loading.hide(); callback.onSuggestionsReady(request, response); if (searchCompletedCallbacks != null && lastSuggestions != null && lastSuggestions.size() == 1) { for (org.kuali.student.common.ui.client.mvc.Callback<IdableSuggestion> callback : searchCompletedCallbacks) { callback.exec(lastSuggestions.get(0)); } } }
/** * The case when the user types letters in the textbox and this method * is called to search (case insensitive) the list of sugestions previously added. * This list is build and passed to the callback. * */ @Override public void requestSuggestions(Request request, Callback callback) { final List<Suggestion> suggestions = searchSuggestions(request.getQuery().toLowerCase(), request.getLimit()); Response response = new Response(suggestions); callback.onSuggestionsReady(request, response); }