public class RawResponseWriter extends Object implements BinaryQueryResponseWriter
This writer is a special case that extends and alters the
QueryResponseWriter contract. If SolrQueryResponse contains a
ContentStream added with the key CONTENT
then this writer will output that stream exactly as is (with its
Content-Type). if no such ContentStream has been added, then a
"base" QueryResponseWriter will be used to write the response
according to the usual contract. The name of the "base" writer can
be specified as an initialization param for this writer, or it
defaults to the "standard" writer.
| Modifier and Type | Field and Description |
|---|---|
static String |
CONTENT
The key that should be used to add a ContentStream to the
SolrQueryResponse if you intend to use this Writer.
|
CONTENT_TYPE_TEXT_ASCII, CONTENT_TYPE_TEXT_UTF8, CONTENT_TYPE_XML_UTF8| Constructor and Description |
|---|
RawResponseWriter() |
| Modifier and Type | Method and Description |
|---|---|
protected QueryResponseWriter |
getBaseWriter(SolrQueryRequest request) |
String |
getContentType(SolrQueryRequest request,
SolrQueryResponse response)
Return the applicable Content Type for a request, this method
must be thread safe.
|
void |
init(NamedList n)
init will be called just once, immediately after creation. |
void |
write(OutputStream out,
SolrQueryRequest request,
SolrQueryResponse response)
Use it to write the response in a binary format
|
void |
write(Writer writer,
SolrQueryRequest request,
SolrQueryResponse response)
Write a SolrQueryResponse, this method must be thread save.
|
public static final String CONTENT
public void init(NamedList n)
QueryResponseWriterinit will be called just once, immediately after creation.
The args are user-level initialization parameters that may be specified when declaring a response writer in solrconfig.xml
init in interface QueryResponseWriterinit in interface NamedListInitializedPluginprotected QueryResponseWriter getBaseWriter(SolrQueryRequest request)
public String getContentType(SolrQueryRequest request, SolrQueryResponse response)
QueryResponseWriterQueryResponseWriter'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.
getContentType in interface QueryResponseWriterpublic void write(Writer writer, SolrQueryRequest request, SolrQueryResponse response) throws IOException
QueryResponseWriter
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.
write in interface QueryResponseWriterIOExceptionpublic void write(OutputStream out, SolrQueryRequest request, SolrQueryResponse response) throws IOException
BinaryQueryResponseWriterwrite in interface BinaryQueryResponseWriterIOExceptionCopyright © 2000-2020 Apache Software Foundation. All Rights Reserved.