Package org.apache.solr.response
Class BinaryResponseWriter
- java.lang.Object
-
- org.apache.solr.response.BinaryResponseWriter
-
- All Implemented Interfaces:
BinaryQueryResponseWriter
,QueryResponseWriter
,NamedListInitializedPlugin
- Direct Known Subclasses:
SmileResponseWriter
public class BinaryResponseWriter extends Object implements BinaryQueryResponseWriter
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
BinaryResponseWriter.Resolver
-
Field Summary
-
Fields inherited from interface org.apache.solr.response.QueryResponseWriter
CONTENT_TYPE_TEXT_ASCII, CONTENT_TYPE_TEXT_UTF8, CONTENT_TYPE_XML_UTF8
-
-
Constructor Summary
Constructors Constructor Description BinaryResponseWriter()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description String
getContentType(SolrQueryRequest request, SolrQueryResponse response)
Return the applicable Content Type for a request, this method must be thread safe.static NamedList<Object>
getParsedResponse(SolrQueryRequest req, SolrQueryResponse rsp)
TODO -- there may be a way to do this without marshal at all...void
init(NamedList args)
init
will be called just once, immediately after creation.void
write(OutputStream out, SolrQueryRequest req, SolrQueryResponse response)
Use it to write the response in a binary formatvoid
write(Writer writer, SolrQueryRequest request, SolrQueryResponse response)
Write a SolrQueryResponse, this method must be thread save.
-
-
-
Method Detail
-
write
public void write(OutputStream out, SolrQueryRequest req, SolrQueryResponse response) throws IOException
Description copied from interface:BinaryQueryResponseWriter
Use it to write the response in a binary format- Specified by:
write
in interfaceBinaryQueryResponseWriter
- Throws:
IOException
-
write
public void write(Writer writer, SolrQueryRequest request, SolrQueryResponse response) throws IOException
Description copied from interface:QueryResponseWriter
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 bersp
.There are no mandatory actions that write must perform. An empty write implementation would fulfill all interface obligations.
- Specified by:
write
in interfaceQueryResponseWriter
- Throws:
IOException
-
getContentType
public String getContentType(SolrQueryRequest request, SolrQueryResponse response)
Description copied from interface:QueryResponseWriter
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.
- Specified by:
getContentType
in interfaceQueryResponseWriter
- Returns:
- a Content-Type string, which may not be null.
-
init
public void init(NamedList args)
Description copied from interface:QueryResponseWriter
init
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
- Specified by:
init
in interfaceNamedListInitializedPlugin
- Specified by:
init
in interfaceQueryResponseWriter
-
getParsedResponse
public static NamedList<Object> getParsedResponse(SolrQueryRequest req, SolrQueryResponse rsp)
TODO -- there may be a way to do this without marshal at all...- Returns:
- a response object equivalent to what you get from the XML/JSON/javabin parser. Documents become SolrDocuments, DocList becomes SolrDocumentList etc.
- Since:
- solr 1.4
-
-