Package org.apache.solr.client.solrj
Class SolrRequest<T extends SolrResponse>
- java.lang.Object
-
- org.apache.solr.client.solrj.SolrRequest<T>
-
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
AbstractSchemaRequest
,AbstractUpdateRequest
,AliasesApi.DeleteAlias
,AliasesApi.GetAliasByName
,AliasesApi.GetAliases
,AliasPropertiesApi.CreateOrUpdateAliasProperty
,AliasPropertiesApi.DeleteAliasProperty
,AliasPropertiesApi.GetAliasProperty
,AliasPropertiesApi.GetAllAliasProperties
,AliasPropertiesApi.UpdateAliasProperties
,ClusterApi.BalanceReplicas
,CollectionAdminRequest
,CollectionBackupsApi.DeleteMultipleBackupsByRecency
,CollectionBackupsApi.DeleteSingleBackupById
,CollectionBackupsApi.GarbageCollectUnusedBackupFiles
,CollectionBackupsApi.ListBackupsAtLocation
,CollectionsApi.DeleteCollection
,CollectionsApi.ListCollections
,CollectionsApi.ReloadCollection
,CollectionsApi.RenameCollection
,ConfigSetAdminRequest
,ConfigsetsApi.ListConfigSet
,CoreAdminRequest
,DelegationTokenRequest
,DirectXmlRequest
,DocumentAnalysisRequest
,FieldAnalysisRequest
,GenericSolrRequest
,HealthCheckRequest
,LukeRequest
,NodeApi.DeleteNode
,NodeApi.GetPublicKey
,NodeApi.ReplaceNode
,QueryRequest
,ReplicaPropertiesApi.AddReplicaProperty
,ReplicaPropertiesApi.DeleteReplicaProperty
,ReplicasApi.DeleteReplicaByName
,ReplicasApi.DeleteReplicasByCount
,ReplicasApi.DeleteReplicasByCountAllShards
,ShardsApi.ForceShardLeader
,ShardsApi.SyncShard
,SolrPing
,V2Request
public abstract class SolrRequest<T extends SolrResponse> extends Object implements Serializable
- Since:
- solr 1.3
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
SolrRequest.METHOD
static class
SolrRequest.SolrClientContext
static class
SolrRequest.SolrRequestType
-
Field Summary
Fields Modifier and Type Field Description static Set<String>
SUPPORTED_METHODS
protected boolean
useBinaryV2
protected boolean
usev2
-
Constructor Summary
Constructors Constructor Description SolrRequest(SolrRequest.METHOD m, String path)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
addHeader(String key, String value)
void
addHeaders(Map<String,String> headers)
protected abstract T
createResponse(SolrClient client)
Create a new SolrResponse to hold the response from the serverString
getBasePath()
String
getBasicAuthPassword()
String
getBasicAuthUser()
String
getCollection()
Collection<ContentStream>
getContentStreams()
Deprecated.Please usegetContentWriter(String)
instead.RequestWriter.ContentWriter
getContentWriter(String expectedType)
If a request object wants to do a push write, implement this method.Map<String,String>
getHeaders()
SolrRequest.METHOD
getMethod()
abstract SolrParams
getParams()
String
getPath()
List<String>
getPreferredNodes()
Set<String>
getQueryParams()
Parameter keys that are sent via the query stringabstract String
getRequestType()
This method defines the type of this Solr request.ResponseParser
getResponseParser()
StreamingResponseCallback
getStreamingResponseCallback()
Principal
getUserPrincipal()
T
process(SolrClient client)
Send this request to aSolrClient
and return the responseT
process(SolrClient client, String collection)
Send this request to aSolrClient
and return the responsevoid
setBasePath(String path)
SolrRequest<T>
setBasicAuthCredentials(String user, String password)
void
setMethod(SolrRequest.METHOD method)
void
setPath(String path)
SolrRequest<T>
setPreferredNodes(List<String> nodes)
void
setQueryParams(Set<String> queryParams)
void
setResponseParser(ResponseParser responseParser)
Optionally specify how the Response should be parsed.void
setStreamingResponseCallback(StreamingResponseCallback callback)
SolrRequest<T>
setUseBinaryV2(boolean flag)
If set to true use javabin instead of json (default)void
setUserPrincipal(Principal userPrincipal)
SolrRequest<T>
setUseV2(boolean flag)
If set to true, every request that implementsV2RequestSupport
will be converted to a V2 API call
-
-
-
Constructor Detail
-
SolrRequest
public SolrRequest(SolrRequest.METHOD m, String path)
-
-
Method Detail
-
setUserPrincipal
public void setUserPrincipal(Principal userPrincipal)
-
getUserPrincipal
public Principal getUserPrincipal()
-
setUseV2
public SolrRequest<T> setUseV2(boolean flag)
If set to true, every request that implementsV2RequestSupport
will be converted to a V2 API call
-
setUseBinaryV2
public SolrRequest<T> setUseBinaryV2(boolean flag)
If set to true use javabin instead of json (default)
-
setPreferredNodes
public SolrRequest<T> setPreferredNodes(List<String> nodes)
-
setBasicAuthCredentials
public SolrRequest<T> setBasicAuthCredentials(String user, String password)
-
getBasicAuthUser
public String getBasicAuthUser()
-
getBasicAuthPassword
public String getBasicAuthPassword()
-
getMethod
public SolrRequest.METHOD getMethod()
-
setMethod
public void setMethod(SolrRequest.METHOD method)
-
getPath
public String getPath()
-
setPath
public void setPath(String path)
-
getResponseParser
public ResponseParser getResponseParser()
- Returns:
- The
ResponseParser
-
setResponseParser
public void setResponseParser(ResponseParser responseParser)
Optionally specify how the Response should be parsed. Not all server implementations require a ResponseParser to be specified.- Parameters:
responseParser
- TheResponseParser
-
getStreamingResponseCallback
public StreamingResponseCallback getStreamingResponseCallback()
-
setStreamingResponseCallback
public void setStreamingResponseCallback(StreamingResponseCallback callback)
-
getQueryParams
public Set<String> getQueryParams()
Parameter keys that are sent via the query string
-
getRequestType
public abstract String getRequestType()
This method defines the type of this Solr request.
-
getParams
public abstract SolrParams getParams()
-
getContentStreams
@Deprecated public Collection<ContentStream> getContentStreams() throws IOException
Deprecated.Please usegetContentWriter(String)
instead.- Throws:
IOException
-
getContentWriter
public RequestWriter.ContentWriter getContentWriter(String expectedType)
If a request object wants to do a push write, implement this method.- Parameters:
expectedType
- This is the type that the RequestWriter would like to get. But, it is OK to send any format
-
createResponse
protected abstract T createResponse(SolrClient client)
Create a new SolrResponse to hold the response from the server- Parameters:
client
- theSolrClient
the request will be sent to
-
process
public final T process(SolrClient client, String collection) throws SolrServerException, IOException
Send this request to aSolrClient
and return the response- Parameters:
client
- the SolrClient to communicate withcollection
- the collection to execute the request against- Returns:
- the response
- Throws:
SolrServerException
- if there is an error on the Solr serverIOException
- if there is a communication error
-
process
public final T process(SolrClient client) throws SolrServerException, IOException
Send this request to aSolrClient
and return the response- Parameters:
client
- the SolrClient to communicate with- Returns:
- the response
- Throws:
SolrServerException
- if there is an error on the Solr serverIOException
- if there is a communication error
-
getCollection
public String getCollection()
-
setBasePath
public void setBasePath(String path)
-
getBasePath
public String getBasePath()
-
-