Package org.apache.solr.client.solrj
Class InputStreamResponse
- java.lang.Object
-
- org.apache.solr.client.solrj.SolrResponse
-
- org.apache.solr.client.solrj.response.SimpleSolrResponse
-
- org.apache.solr.client.solrj.InputStreamResponse
-
- All Implemented Interfaces:
Serializable,MapSerializable,MapWriter,NavigableObject,org.noggit.JSONWriter.Writable
- Direct Known Subclasses:
FileStoreApi.GetFileResponse,ReplicationApi.FetchFile1Response,ZookeeperReadApi.ReadNodeResponse
public class InputStreamResponse extends SimpleSolrResponse
Represents the NamedList response format created byInputStreamResponseParser.Particularly useful when targeting APIs that return arbitrary or binary data (e.g. replication APIs for fetching index files)
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.solr.common.MapWriter
MapWriter.EntryWriter
-
-
Field Summary
Fields Modifier and Type Field Description static Function<Integer,Boolean>HTTP_OK_VALIDATORstatic Function<Integer,Boolean>NON_ERROR_CODE_VALIDATOR-
Fields inherited from class org.apache.solr.client.solrj.response.SimpleSolrResponse
elapsedTime, nl
-
-
Constructor Summary
Constructors Constructor Description InputStreamResponse()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intgetHttpStatus()InputStreamgetResponseStream()Access the server response as anInputStream, regardless of the HTTP status codeInputStreamgetResponseStreamIfSuccessful()Access the server response as anInputStream, after ensuring that the HTTP status code is 200 ('OK')InputStreamgetResponseStreamIfSuccessful(Function<Integer,Boolean> statusValidator)Access the server response as anInputStream, after ensuring the HTTP status code passes a provided validator.voidsetResponse(NamedList<Object> rsp)-
Methods inherited from class org.apache.solr.client.solrj.response.SimpleSolrResponse
getElapsedTime, getResponse, setElapsedTime
-
Methods inherited from class org.apache.solr.client.solrj.SolrResponse
getException, writeMap
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.solr.common.NavigableObject
_forEachEntry, _forEachEntry, _forEachEntry, _get, _get, _get, _getStr, _getStr, _getStr, _size
-
-
-
-
Method Detail
-
setResponse
public void setResponse(NamedList<Object> rsp)
- Overrides:
setResponsein classSimpleSolrResponse
-
getHttpStatus
public int getHttpStatus()
-
getResponseStream
public InputStream getResponseStream()
Access the server response as anInputStream, regardless of the HTTP status codeCaller is responsible for consuming and closing the stream. No validation is done on the HTTP status code.
-
getResponseStreamIfSuccessful
public InputStream getResponseStreamIfSuccessful()
Access the server response as anInputStream, after ensuring that the HTTP status code is 200 ('OK')Caller is responsible for consuming and closing the stream, and releasing it from the tracking done by
ObjectReleaseTracker.
-
getResponseStreamIfSuccessful
public InputStream getResponseStreamIfSuccessful(Function<Integer,Boolean> statusValidator)
Access the server response as anInputStream, after ensuring the HTTP status code passes a provided validator.- Parameters:
statusValidator- a function that returns true iff the response body should be returned
-
-