Interface QueryResponseWriter

All Superinterfaces:
NamedListInitializedPlugin
All Known Subinterfaces:
BinaryQueryResponseWriter
All Known Implementing Classes:
BinaryResponseWriter, CborResponseWriter, CSVResponseWriter, GeoJSONResponseWriter, GraphMLResponseWriter, JacksonJsonWriter, JSONResponseWriter, PHPResponseWriter, PHPSerializedResponseWriter, PrometheusResponseWriter, PythonResponseWriter, RawResponseWriter, RubyResponseWriter, SchemaXmlResponseWriter, SmileResponseWriter, XMLResponseWriter

public interface QueryResponseWriter extends NamedListInitializedPlugin
Implementations of QueryResponseWriter are used to format responses to query requests.

Different QueryResponseWriters are registered with the SolrCore. One way to register a QueryResponseWriter with the core is through the solrconfig.xml file.

Example solrconfig.xml entry to register a QueryResponseWriter implementation to handle all queries with a writer type of "simple":

<queryResponseWriter name="simple" class="foo.SimpleResponseWriter" />

A single instance of any registered QueryResponseWriter is created via the default constructor and is reused for all relevant queries.

  • Field Details

  • Method Details

    • write

      void write(Writer writer, SolrQueryRequest request, SolrQueryResponse response) throws IOException
      Write a SolrQueryResponse, this method must be thread save.

      Information about the request (in particular: formatting options) may be obtained from req but the dominant source of information should be rsp.

      There are no mandatory actions that write must perform. An empty write implementation would fulfill all interface obligations.

      Throws:
      IOException
    • getContentType

      String getContentType(SolrQueryRequest request, SolrQueryResponse response)
      Return the applicable Content Type for a request, this method must be thread safe.

      QueryResponseWriter's must implement this method to return a valid HTTP Content-Type header for the request, that will logically correspond with the output produced by the write method.

      Returns:
      a Content-Type string, which may not be null.