当前位置: 首页>>代码示例>>Java>>正文


Java AlgoliaException类代码示例

本文整理汇总了Java中com.algolia.search.saas.AlgoliaException的典型用法代码示例。如果您正苦于以下问题:Java AlgoliaException类的具体用法?Java AlgoliaException怎么用?Java AlgoliaException使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


AlgoliaException类属于com.algolia.search.saas包,在下文中一共展示了AlgoliaException类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: searchDisjunctiveFacetingAsync

import com.algolia.search.saas.AlgoliaException; //导入依赖的package包/类
/**
 * Perform a search with disjunctive facets, generating as many queries as number of disjunctive facets.
 *
 * @param query             The query.
 * @param disjunctiveFacets List of disjunctive facets.
 * @param refinements       The current refinements, mapping facet names to a list of values.
 * @param completionHandler The listener that will be notified of the request's outcome.
 * @return A cancellable request.
 */
public Request searchDisjunctiveFacetingAsync(@NonNull Query query, @NonNull final List<String> disjunctiveFacets, @NonNull final Map<String, List<String>> refinements, @NonNull final CompletionHandler completionHandler) {
    final List<Query> queries = computeDisjunctiveFacetingQueries(query, disjunctiveFacets, refinements);
    return multipleQueriesAsync(queries, new CompletionHandler() {
        @Override
        public void requestCompleted(JSONObject content, AlgoliaException error) {
            JSONObject aggregatedResults = null;
            try {
                if (content != null) {
                    aggregatedResults = aggregateDisjunctiveFacetingResults(content, disjunctiveFacets, refinements);
                }
            } catch (AlgoliaException e) {
                error = e;
            }
            completionHandler.requestCompleted(aggregatedResults, error);
        }
    });
}
 
开发者ID:algolia,项目名称:algoliasearch-client-android,代码行数:27,代码来源:DisjunctiveFaceting.java

示例2: searchAsync

import com.algolia.search.saas.AlgoliaException; //导入依赖的package包/类
@Test
public void searchAsync() throws Exception {
    PlacesQuery query = new PlacesQuery();
    query.setQuery("Paris");
    query.setType(PlacesQuery.Type.CITY);
    query.setHitsPerPage(10);
    query.setAroundLatLngViaIP(false);
    query.setAroundLatLng(new PlacesQuery.LatLng(32.7767, -96.7970)); // Dallas, TX, USA
    query.setLanguage("en");
    query.setCountries("fr", "us");
    places.searchAsync(query, new AssertCompletionHandler() {
        @Override public void doRequestCompleted(JSONObject content, AlgoliaException error) {
            if (error != null) {
                fail(error.getMessage());
            }
            assertNotNull(content);
            assertNotNull(content.optJSONArray("hits"));
            assertTrue(content.optJSONArray("hits").length() > 0);
        }
    });
}
 
开发者ID:algolia,项目名称:algoliasearch-client-android,代码行数:22,代码来源:PlacesClientTest.java

示例3: loadMore

import com.algolia.search.saas.AlgoliaException; //导入依赖的package包/类
/**
 * Loads more results with the same query.
 * <p>
 * Note that this method won't do anything if {@link Searcher#hasMoreHits} returns false.
 *
 * @return this {@link Searcher} for chaining.
 */
@NonNull
public Searcher loadMore() {
    if (!hasMoreHits()) {
        return this;
    }
    query.setPage(++lastRequestPage);
    final int currentRequestId = ++lastRequestId;
    EventBus.getDefault().post(new SearchEvent(query, currentRequestId));
    pendingRequests.put(currentRequestId, triggerSearch(new CompletionHandler() {
        @Override
        public void requestCompleted(@NonNull JSONObject content, @Nullable AlgoliaException error) {
            pendingRequests.remove(currentRequestId);
            if (error != null) {
                postError(error, currentRequestId);
            } else {
                if (currentRequestId <= lastResponseId) {
                    return; // Hits are for an older query, let's ignore them
                }

                if (hasHits(content)) {
                    updateListeners(content, true);
                    updateFacetStats(content);
                    lastResponsePage = lastRequestPage;

                    checkIfLastPage(content);
                } else {
                    endReached = true;
                }
                EventBus.getDefault().post(new ResultEvent(content, query, currentRequestId));
            }
        }
    }));
    return this;
}
 
开发者ID:algolia,项目名称:instantsearch-android,代码行数:42,代码来源:Searcher.java

示例4: getUpdatedFacetStats

import com.algolia.search.saas.AlgoliaException; //导入依赖的package包/类
/**
 * Updates the facet stats, calling {@link Index#search(Query, RequestOptions)} without notifying listeners of the result.
 */
@SuppressWarnings({"WeakerAccess", "unused"}) // For library users
public void getUpdatedFacetStats() {
    index.searchAsync(query, new CompletionHandler() {
        @Override
        public void requestCompleted(JSONObject content, AlgoliaException error) {
            if (error == null) {
                updateFacetStats(content);
            } else {
                Log.e("Algolia|Searcher", "Error while getting updated facet stats:" + error.getMessage());
            }
        }
    });
}
 
开发者ID:algolia,项目名称:instantsearch-android,代码行数:17,代码来源:Searcher.java

示例5: onError

import com.algolia.search.saas.AlgoliaException; //导入依赖的package包/类
@Override
public void onError(@NonNull Query query, @NonNull AlgoliaException error) {
    if (errorTemplate == null) {
        setVisibility(GONE);
    } else {
        setVisibility(VISIBLE);
        setText(applyTemplate(errorTemplate, query, error));
    }
}
 
开发者ID:algolia,项目名称:instantsearch-android,代码行数:10,代码来源:Stats.java

示例6: commit

import com.algolia.search.saas.AlgoliaException; //导入依赖的package包/类
@Override
public void commit() {
	if (batch.size() == 0) {
		return;
	}
	try {
		index.batch(batch);
		batch.clear();
	} catch (AlgoliaException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
}
 
开发者ID:algolia,项目名称:firebase-connector,代码行数:14,代码来源:Algolia.java

示例7: requestCompleted

import com.algolia.search.saas.AlgoliaException; //导入依赖的package包/类
@Override
public void requestCompleted(JSONObject content, AlgoliaException error) {
    if (!cancelled) {
        handler.handleBatch(BrowseIterator.this, content, error);
        if (error == null) {
            cursor = content.optString("cursor", null);
            if (!cancelled && hasNext()) {
                next();
            }
        }
    }
}
 
开发者ID:algolia,项目名称:algoliasearch-client-android,代码行数:13,代码来源:BrowseIterator.java

示例8: searchAsync

import com.algolia.search.saas.AlgoliaException; //导入依赖的package包/类
/**
 * Search for places.
 *
 * @param params Search parameters.
 * @param completionHandler The listener that will be notified of the request's outcome.
 * @return A cancellable request.
 */
public Request searchAsync(@NonNull PlacesQuery params, @NonNull CompletionHandler completionHandler) {
    final PlacesQuery paramsCopy = new PlacesQuery(params);
    return new AsyncTaskRequest(completionHandler) {
        @Override
        protected @NonNull JSONObject run() throws AlgoliaException {
            return search(paramsCopy);
        }
    }.start();
}
 
开发者ID:algolia,项目名称:algoliasearch-client-android,代码行数:17,代码来源:PlacesClient.java

示例9: search

import com.algolia.search.saas.AlgoliaException; //导入依赖的package包/类
/**
 * Search for places.
 *
 * @param params Search parameters.
 */
protected JSONObject search(@NonNull PlacesQuery params) throws AlgoliaException {
    try {
        JSONObject body = new JSONObject()
            .put("params", params.build());
        return postRequest("/1/places/query", /* urlParameters: */ null, body.toString(), true /* readOperation */, /* requestOptions: */ null);
    }
    catch (JSONException e) {
        throw new RuntimeException(e); // should never happen
    }
}
 
开发者ID:algolia,项目名称:algoliasearch-client-android,代码行数:16,代码来源:PlacesClient.java

示例10: search

import com.algolia.search.saas.AlgoliaException; //导入依赖的package包/类
/**
 * Starts a search with the given text from the given origin.
 *
 * @param queryString a String to search on the index.
 * @param origin      an optional origin to identify the change.
 * @return this {@link Searcher} for chaining.
 */
@NonNull
public Searcher search(@Nullable final String queryString, @Nullable final Object origin) {
    if (queryString != null) {
        query.setQuery(queryString);
        EventBus.getDefault().post(new QueryTextChangeEvent(queryString, origin));
    }
    endReached = false;
    lastRequestPage = 0;
    lastResponsePage = -1;
    final int currentRequestId = ++lastRequestId;

    final CompletionHandler searchHandler = new CompletionHandler() {
        @Override
        public void requestCompleted(@Nullable JSONObject content, @Nullable AlgoliaException error) {
            pendingRequests.remove(currentRequestId);
            // NOTE: Canceling any request anterior to the current one.
            //
            // Rationale: Although TCP imposes a server to send responses in the same order as
            // requests, nothing prevents the system from opening multiple connections to the
            // same server, nor the Algolia client to transparently switch to another server
            // between two requests. Therefore the order of responses is not guaranteed.
            for (int i = 0; i < pendingRequests.size(); i++) {
                int reqId = pendingRequests.keyAt(i);
                Request request = pendingRequests.valueAt(i);
                if (reqId < currentRequestId) {
                    cancelRequest(request, reqId);
                }
            }

            if (currentRequestId <= lastResponseId) {
                Log.e("Algolia|Searcher", "We already displayed results for request " + lastResponseId
                        + ", current request (" + currentRequestId + ") should have been canceled");
            }

            if (content == null || !hasHits(content)) {
                endReached = true;
            } else {
                checkIfLastPage(content);
            }

            lastResponseId = currentRequestId;
            lastResponsePage = 0;

            if (error != null) {
                postError(error, currentRequestId);
            } else {
                if (content == null) {
                    Log.e("Algolia|Searcher", "content is null but error too.");
                } else {
                    EventBus.getDefault().post(new ResultEvent(content, query, currentRequestId));
                    updateListeners(content, false);
                    updateFacetStats(content);
                }
            }
        }
    };

    final Request searchRequest;
    searchRequest = triggerSearch(searchHandler);
    EventBus.getDefault().post(new SearchEvent(query, currentRequestId));
    pendingRequests.put(currentRequestId, searchRequest);
    return this;
}
 
开发者ID:algolia,项目名称:instantsearch-android,代码行数:71,代码来源:Searcher.java

示例11: postError

import com.algolia.search.saas.AlgoliaException; //导入依赖的package包/类
private void postError(@NonNull AlgoliaException error, int currentRequestId) {
    for (AlgoliaErrorListener listener : errorListeners) {
        listener.onError(query, error);
    }
    EventBus.getDefault().post(new ErrorEvent(error, query, currentRequestId));
}
 
开发者ID:algolia,项目名称:instantsearch-android,代码行数:7,代码来源:Searcher.java

示例12: onError

import com.algolia.search.saas.AlgoliaException; //导入依赖的package包/类
@Override
public void onError(@NonNull Query query, @NonNull AlgoliaException error) {
    Log.e("Algolia|Hits", "Error while searching '" + query.getQuery() + "':" + error.getMessage());
}
 
开发者ID:algolia,项目名称:instantsearch-android,代码行数:5,代码来源:Hits.java

示例13: onError

import com.algolia.search.saas.AlgoliaException; //导入依赖的package包/类
@Override public final void onError(@NonNull Query query, @NonNull AlgoliaException error) {
    Filters.hideIfShouldHide(this, autoHide, shouldHide);
}
 
开发者ID:algolia,项目名称:instantsearch-android,代码行数:4,代码来源:Toggle.java

示例14: onError

import com.algolia.search.saas.AlgoliaException; //导入依赖的package包/类
@Override public void onError(@NonNull Query query, @NonNull AlgoliaException error) {
    Filters.hideIfShouldHide(this, autoHide, true);
}
 
开发者ID:algolia,项目名称:instantsearch-android,代码行数:4,代码来源:NumericSelector.java

示例15: applyTemplate

import com.algolia.search.saas.AlgoliaException; //导入依赖的package包/类
private String applyTemplate(@NonNull String template, @NonNull Query query, @NonNull AlgoliaException error) {
    return template
            .replace("{query}", String.valueOf((query.getQuery())))
            .replace("{error}", String.valueOf((error.getLocalizedMessage())));
}
 
开发者ID:algolia,项目名称:instantsearch-android,代码行数:6,代码来源:Stats.java


注:本文中的com.algolia.search.saas.AlgoliaException类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。