/** * Copyright (C) 2014-2015 LinkedIn Corp. (pinot-core@linkedin.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.linkedin.pinot.common.response; import java.util.List; import org.json.JSONObject; /** * Interface for broker response. */ public interface BrokerResponse { /** * Set exceptions caught during request handling, into the broker response. */ void setExceptions(List<ProcessingException> exceptions); /** * Set the number of servers got queried by the broker. * * @param numServersQueried number of servers got queried. */ void setNumServersQueried(int numServersQueried); /** * Set the number of servers responded to the broker. * * @param numServersResponded number of servers responded. */ void setNumServersResponded(int numServersResponded); /** * Set the total time used in request handling, into the broker response. */ void setTimeUsedMs(long timeUsedMs); /** * Convert the broker response to JSONObject. */ JSONObject toJson() throws Exception; /** * Convert the broker response to JSON String. */ String toJsonString() throws Exception; /** * Get number of documents scanned while processing the query. */ long getNumDocsScanned(); /** * Get number of entries scanned in filter phase while processing the query. */ long getNumEntriesScannedInFilter(); /** * Get number of entries scanned post filter phase while processing the query. */ long getNumEntriesScannedPostFilter(); /** * Get total number of documents within the table hit. */ long getTotalDocs(); /** * Get number of exceptions recorded in the response. */ int getExceptionsSize(); }