You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@manifoldcf.apache.org by kw...@apache.org on 2015/03/27 20:33:37 UTC
svn commit: r1669660 - in /manifoldcf/trunk: ./ connectors/solr/
connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/
connectors/solr/connector/src/test/java/org/apache/manifoldcf/agents/output/solr/tests/
Author: kwright
Date: Fri Mar 27 19:33:37 2015
New Revision: 1669660
URL: http://svn.apache.org/r1669660
Log:
Fix for CONNECTORS-1176.
Added:
manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedHttpSolrClient.java
- copied, changed from r1668373, manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedHttpSolrServer.java
manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedLBHttpSolrClient.java
- copied, changed from r1668373, manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedLBHttpSolrServer.java
Removed:
manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedHttpSolrServer.java
manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedLBHttpSolrServer.java
Modified:
manifoldcf/trunk/CHANGES.txt
manifoldcf/trunk/build.xml
manifoldcf/trunk/connectors/solr/build.xml
manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/HttpPoster.java
manifoldcf/trunk/connectors/solr/connector/src/test/java/org/apache/manifoldcf/agents/output/solr/tests/MockSolrService.java
manifoldcf/trunk/pom.xml
Modified: manifoldcf/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/CHANGES.txt?rev=1669660&r1=1669659&r2=1669660&view=diff
==============================================================================
--- manifoldcf/trunk/CHANGES.txt (original)
+++ manifoldcf/trunk/CHANGES.txt Fri Mar 27 19:33:37 2015
@@ -3,6 +3,9 @@ $Id$
======================= 2.1-dev =====================
+CONNECTORS-1176: Update SolrJ version.
+(Karl Wright)
+
CONNECTORS-1175: Documentum connector needs to set file name.
(Dmitry Bardin, Karl Wright)
Modified: manifoldcf/trunk/build.xml
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/build.xml?rev=1669660&r1=1669659&r2=1669660&view=diff
==============================================================================
--- manifoldcf/trunk/build.xml (original)
+++ manifoldcf/trunk/build.xml Fri Mar 27 19:33:37 2015
@@ -82,7 +82,8 @@
<property name="velocity.version" value="1.7"/>
<property name="wss4j.version" value="1.5.12"/>
<property name="xmlgraphics-commons.version" value="1.4"/>
- <property name="wstx-asl.version" value="3.2.9"/>
+ <property name="woodstox-core-asl.version" value="4.4.1"/>
+ <property name="stax2-api.version" value="3.1.4"/>
<property name="xmlsec.version" value="1.4.0"/>
<property name="xml-apis.version" value="1.4.01"/>
<property name="jstl.version" value="1.2"/>
@@ -1426,16 +1427,22 @@ Use Apache Forrest version forrest-0.9-d
</antcall>
</target>
- <target name="download-wstx-asl">
+ <target name="download-woodstox">
<mkdir dir="lib"/>
<antcall target="download-via-maven"><param name="target" value="lib"/>
<param name="project-path" value="org/codehaus/woodstox"/>
- <param name="artifact-version" value="${wstx-asl.version}"/>
- <param name="artifact-name" value="wstx-asl"/>
+ <param name="artifact-version" value="${woodstox-core-asl.version}"/>
+ <param name="artifact-name" value="woodstox-core-asl"/>
+ <param name="artifact-type" value="jar"/>
+ </antcall>
+ <antcall target="download-via-maven"><param name="target" value="lib"/>
+ <param name="project-path" value="org/codehaus/woodstox"/>
+ <param name="artifact-version" value="${stax2-api.version}"/>
+ <param name="artifact-name" value="stax2-api"/>
<param name="artifact-type" value="jar"/>
</antcall>
</target>
-
+
<target name="download-xmlsec">
<!-- Alfresco dependency, so resolve it from alfresco svn -->
<mkdir dir="lib"/>
@@ -1664,7 +1671,7 @@ Use Apache Forrest version forrest-0.9-d
<antcall target="download-via-maven">
<param name="target" value="lib"/>
<param name="project-path" value="org/apache/solr"/>
- <param name="artifact-version" value="4.10.3"/>
+ <param name="artifact-version" value="5.0.0"/>
<param name="artifact-name" value="solr-solrj"/>
<param name="artifact-type" value="jar"/>
</antcall>
@@ -1944,7 +1951,7 @@ Use Apache Forrest version forrest-0.9-d
</antcall>
</target>
- <target name="make-core-deps" depends="download-resteasy,download-jsoup,download-mockito,download-alfresco-webscript-plugin,download-alfresco-indexer-client,download-mongo-java-driver,download-jira-client,download-google-api-client,download-dropbox-client,download-solrj,download-zookeeper,download-httpcomponents,download-json,download-hsqldb,download-xerces,download-commons,download-elasticsearch-plugin,download-solr-plugins,download-sharepoint-plugins,download-jstl,download-xmlgraphics-commons,download-wstx-asl,download-xmlsec,download-xml-apis,download-wss4j,download-velocity,download-streambuffer,download-stax,download-servlet-api,download-xml-resolver,download-osgi,download-opensaml,download-mimepull,download-mail,download-log4j,download-junit,download-jaxws,download-glassfish,download-jaxb,download-tomcat,download-h2,download-h2-support,download-geronimo-specs,download-fop,download-postgresql,download-axis,download-saaj,download-wsdl4j,download-castor,download-jetty,downloa
d-slf4j,download-xalan,download-activation,download-avalon-framework,download-poi,download-chemistry,download-ecj,download-hadoop,download-protobuf,download-tika,download-jackson">
+ <target name="make-core-deps" depends="download-resteasy,download-jsoup,download-mockito,download-alfresco-webscript-plugin,download-alfresco-indexer-client,download-mongo-java-driver,download-jira-client,download-google-api-client,download-dropbox-client,download-solrj,download-zookeeper,download-httpcomponents,download-json,download-hsqldb,download-xerces,download-commons,download-elasticsearch-plugin,download-solr-plugins,download-sharepoint-plugins,download-jstl,download-xmlgraphics-commons,download-woodstox,download-xmlsec,download-xml-apis,download-wss4j,download-velocity,download-streambuffer,download-stax,download-servlet-api,download-xml-resolver,download-osgi,download-opensaml,download-mimepull,download-mail,download-log4j,download-junit,download-jaxws,download-glassfish,download-jaxb,download-tomcat,download-h2,download-h2-support,download-geronimo-specs,download-fop,download-postgresql,download-axis,download-saaj,download-wsdl4j,download-castor,download-jetty,downloa
d-slf4j,download-xalan,download-activation,download-avalon-framework,download-poi,download-chemistry,download-ecj,download-hadoop,download-protobuf,download-tika,download-jackson">
<copy todir="lib">
<fileset dir="lib-license" includes="*.txt"/>
</copy>
Modified: manifoldcf/trunk/connectors/solr/build.xml
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/solr/build.xml?rev=1669660&r1=1669659&r2=1669660&view=diff
==============================================================================
--- manifoldcf/trunk/connectors/solr/build.xml (original)
+++ manifoldcf/trunk/connectors/solr/build.xml Fri Mar 27 19:33:37 2015
@@ -36,7 +36,8 @@
<include name="solr-solrj*.jar"/>
<include name="noggit*.jar"/>
<include name="httpmime*.jar"/>
- <include name="wstx-asl*.jar"/>
+ <include name="woodstox-core-asl*.jar"/>
+ <include name="stax2-api*.jar"/>
<include name="jcl-over-slf4j*.jar"/>
</fileset>
</path>
@@ -48,7 +49,8 @@
<include name="solr-solrj*.jar"/>
<include name="noggit*.jar"/>
<include name="httpmime*.jar"/>
- <include name="wstx-asl*.jar"/>
+ <include name="woodstox-core-asl*.jar"/>
+ <include name="stax2-api*.jar"/>
<include name="jcl-over-slf4j*.jar"/>
</fileset>
</copy>
Modified: manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/HttpPoster.java
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/HttpPoster.java?rev=1669660&r1=1669659&r2=1669660&view=diff
==============================================================================
--- manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/HttpPoster.java (original)
+++ manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/HttpPoster.java Fri Mar 27 19:33:37 2015
@@ -43,9 +43,9 @@ import org.apache.http.auth.Credentials;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.manifoldcf.core.util.URLEncoder;
-import org.apache.solr.client.solrj.SolrServer;
+import org.apache.solr.client.solrj.SolrClient;
import org.apache.solr.client.solrj.SolrServerException;
-import org.apache.solr.client.solrj.impl.CloudSolrServer;
+import org.apache.solr.client.solrj.impl.CloudSolrClient;
import org.apache.solr.client.solrj.request.ContentStreamUpdateRequest;
import org.apache.solr.client.solrj.request.UpdateRequest;
import org.apache.solr.client.solrj.impl.XMLResponseParser;
@@ -83,7 +83,7 @@ public class HttpPoster
// Solrj connection-associated objects
protected PoolingHttpClientConnectionManager connectionManager = null;
- protected SolrServer solrServer = null;
+ protected SolrClient solrServer = null;
// Action URI pieces
private final String postUpdateAction;
@@ -153,7 +153,7 @@ public class HttpPoster
try
{
- CloudSolrServer cloudSolrServer = new CloudSolrServer(zookeeperHosts, new ModifiedLBHttpSolrServer(HttpClientUtil.createClient(null)));
+ CloudSolrClient cloudSolrServer = new CloudSolrClient(zookeeperHosts, new ModifiedLBHttpSolrClient(HttpClientUtil.createClient(null)));
cloudSolrServer.setZkClientTimeout(zkClientTimeout);
cloudSolrServer.setZkConnectTimeout(zkConnectTimeout);
cloudSolrServer.setDefaultCollection(collection);
@@ -264,7 +264,7 @@ public class HttpPoster
String httpSolrServerUrl = protocol + "://" + server + ":" + port + location;
- solrServer = new ModifiedHttpSolrServer(httpSolrServerUrl, localClient, new XMLResponseParser());
+ solrServer = new ModifiedHttpSolrClient(httpSolrServerUrl, localClient, new XMLResponseParser());
}
/** Shut down the poster.
@@ -1556,7 +1556,7 @@ public class HttpPoster
}
@Override
- public SolrPingResponse process( SolrServer server ) throws SolrServerException, IOException
+ public SolrPingResponse process( SolrClient server ) throws SolrServerException, IOException
{
long startTime = System.currentTimeMillis();
SolrPingResponse res = new SolrPingResponse();
Copied: manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedHttpSolrClient.java (from r1668373, manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedHttpSolrServer.java)
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedHttpSolrClient.java?p2=manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedHttpSolrClient.java&p1=manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedHttpSolrServer.java&r1=1668373&r2=1669660&rev=1669660&view=diff
==============================================================================
--- manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedHttpSolrServer.java (original)
+++ manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedHttpSolrClient.java Fri Mar 27 19:33:37 2015
@@ -35,9 +35,12 @@ import org.apache.http.NameValuePair;
import org.apache.http.NoHttpResponseException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
+import org.apache.http.client.methods.HttpEntityEnclosingRequestBase;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
+import org.apache.http.client.methods.HttpPut;
import org.apache.http.client.methods.HttpRequestBase;
+import org.apache.http.client.methods.HttpUriRequest;
import org.apache.http.client.params.ClientPNames;
import org.apache.http.conn.ClientConnectionManager;
import org.apache.http.entity.InputStreamEntity;
@@ -51,10 +54,11 @@ import org.apache.http.message.BasicName
import org.apache.http.util.EntityUtils;
import org.apache.http.entity.ContentType;
import org.apache.manifoldcf.core.util.URLDecoder;
-import org.apache.solr.client.solrj.impl.HttpSolrServer;
+import org.apache.solr.client.solrj.impl.HttpSolrClient;
import org.apache.solr.client.solrj.ResponseParser;
+import org.apache.solr.client.solrj.impl.BinaryResponseParser;
import org.apache.solr.client.solrj.SolrRequest;
-import org.apache.solr.client.solrj.SolrServer;
+import org.apache.solr.client.solrj.SolrClient;
import org.apache.solr.client.solrj.SolrServerException;
import org.apache.solr.client.solrj.request.RequestWriter;
import org.apache.solr.client.solrj.request.UpdateRequest;
@@ -80,7 +84,7 @@ import java.nio.charset.Charset;
* problem in a method-insensitive way, but so far there has been no sign that
* the Solr team is interested in committing them.
*/
-public class ModifiedHttpSolrServer extends HttpSolrServer
+public class ModifiedHttpSolrClient extends HttpSolrClient
{
// Here we duplicate all the private fields we need
@@ -91,18 +95,16 @@ public class ModifiedHttpSolrServer exte
private final HttpClient httpClient;
- private boolean followRedirects = false;
private int maxRetries = 0;
private boolean useMultiPartPost = true;
- public ModifiedHttpSolrServer(String baseURL, HttpClient client, ResponseParser parser) {
+ public ModifiedHttpSolrClient(String baseURL, HttpClient client, ResponseParser parser) {
super(baseURL, client, parser);
httpClient = client;
}
@Override
- public NamedList<Object> request(final SolrRequest request,
- final ResponseParser processor) throws SolrServerException, IOException {
+ protected HttpRequestBase createMethod(final SolrRequest request) throws IOException, SolrServerException {
HttpRequestBase method = null;
InputStream is = null;
SolrParams params = request.getParams();
@@ -127,7 +129,6 @@ public class ModifiedHttpSolrServer exte
if (invariantParams != null) {
wparams.add(invariantParams);
}
- params = wparams;
int tries = maxRetries + 1;
try {
@@ -141,9 +142,9 @@ public class ModifiedHttpSolrServer exte
if( streams != null ) {
throw new SolrException( SolrException.ErrorCode.BAD_REQUEST, "GET can't send streams!" );
}
- method = new HttpGet( baseUrl + path + toQueryString( params, false ) );
+ method = new HttpGet( baseUrl + path + toQueryString( wparams, false ) );
}
- else if( SolrRequest.METHOD.POST == request.getMethod() ) {
+ else if( SolrRequest.METHOD.POST == request.getMethod() || SolrRequest.METHOD.PUT == request.getMethod() ) {
String url = baseUrl + path;
boolean hasNullStreamName = false;
@@ -155,28 +156,33 @@ public class ModifiedHttpSolrServer exte
}
}
}
- boolean isMultipart = (this.useMultiPartPost || ( streams != null && streams.size() > 1 )) && !hasNullStreamName;
+ boolean isMultipart = ((this.useMultiPartPost && SolrRequest.METHOD.POST == request.getMethod())
+ || ( streams != null && streams.size() > 1 )) && !hasNullStreamName;
- LinkedList<NameValuePair> postParams = new LinkedList<NameValuePair>();
+ LinkedList<NameValuePair> postOrPutParams = new LinkedList<>();
if (streams == null || isMultipart) {
- HttpPost post = new HttpPost(url);
- post.setHeader("Content-Charset", "UTF-8");
+ // send server list and request list as query string params
+ ModifiableSolrParams queryParams = calculateQueryParams(getQueryParams(), wparams);
+ queryParams.add(calculateQueryParams(request.getQueryParams(), wparams));
+ String fullQueryUrl = url + toQueryString( queryParams, false );
+ HttpEntityEnclosingRequestBase postOrPut = SolrRequest.METHOD.POST == request.getMethod() ?
+ new HttpPost(fullQueryUrl) : new HttpPut(fullQueryUrl);
if (!isMultipart) {
- post.addHeader("Content-Type",
+ postOrPut.addHeader("Content-Type",
"application/x-www-form-urlencoded; charset=UTF-8");
}
- List<FormBodyPart> parts = new LinkedList<FormBodyPart>();
- Iterator<String> iter = params.getParameterNamesIterator();
+ List<FormBodyPart> parts = new LinkedList<>();
+ Iterator<String> iter = wparams.getParameterNamesIterator();
while (iter.hasNext()) {
String p = iter.next();
- String[] vals = params.getParams(p);
+ String[] vals = wparams.getParams(p);
if (vals != null) {
for (String v : vals) {
if (isMultipart) {
parts.add(new FormBodyPart(p, new StringBody(v, StandardCharsets.UTF_8)));
} else {
- postParams.add(new BasicNameValuePair(p, v));
+ postOrPutParams.add(new BasicNameValuePair(p, v));
}
}
}
@@ -186,10 +192,13 @@ public class ModifiedHttpSolrServer exte
for (ContentStream content : streams) {
String contentType = content.getContentType();
if(contentType==null) {
- contentType = "application/octet-stream"; // default
+ contentType = BinaryResponseParser.BINARY_CONTENT_TYPE; // default
}
- String contentName = content.getName();
- parts.add(new FormBodyPart(contentName,
+ String name = content.getName();
+ if(name==null) {
+ name = "";
+ }
+ parts.add(new FormBodyPart(name,
new InputStreamBody(
content.getStream(),
contentType,
@@ -199,21 +208,23 @@ public class ModifiedHttpSolrServer exte
if (parts.size() > 0) {
ModifiedMultipartEntity entity = new ModifiedMultipartEntity(HttpMultipartMode.STRICT, null, StandardCharsets.UTF_8);
+ //MultipartEntity entity = new MultipartEntity(HttpMultipartMode.STRICT);
for(FormBodyPart p: parts) {
entity.addPart(p);
}
- post.setEntity(entity);
+ postOrPut.setEntity(entity);
} else {
//not using multipart
- post.setEntity(new UrlEncodedFormEntity(postParams, StandardCharsets.UTF_8));
+ postOrPut.setEntity(new UrlEncodedFormEntity(postOrPutParams, StandardCharsets.UTF_8));
}
- method = post;
+ method = postOrPut;
}
// It is has one stream, it is the post body, put the params in the URL
else {
- String pstr = toQueryString(params, false);
- HttpPost post = new HttpPost(url + pstr);
+ String pstr = toQueryString(wparams, false);
+ HttpEntityEnclosingRequestBase postOrPut = SolrRequest.METHOD.POST == request.getMethod() ?
+ new HttpPost(url + pstr) : new HttpPut(url + pstr);
// Single stream as body
// Using a loop just to get the first one
@@ -223,7 +234,7 @@ public class ModifiedHttpSolrServer exte
break;
}
if (contentStream[0] instanceof RequestWriter.LazyContentStream) {
- post.setEntity(new InputStreamEntity(contentStream[0].getStream(), -1) {
+ postOrPut.setEntity(new InputStreamEntity(contentStream[0].getStream(), -1) {
@Override
public Header getContentType() {
return new BasicHeader("Content-Type", contentStream[0].getContentType());
@@ -236,7 +247,7 @@ public class ModifiedHttpSolrServer exte
});
} else {
- post.setEntity(new InputStreamEntity(contentStream[0].getStream(), -1) {
+ postOrPut.setEntity(new InputStreamEntity(contentStream[0].getStream(), -1) {
@Override
public Header getContentType() {
return new BasicHeader("Content-Type", contentStream[0].getContentType());
@@ -248,7 +259,7 @@ public class ModifiedHttpSolrServer exte
}
});
}
- method = post;
+ method = postOrPut;
}
}
else {
@@ -270,99 +281,13 @@ public class ModifiedHttpSolrServer exte
throw new SolrServerException("error reading streams", ex);
}
- // XXX client already has this set, is this needed?
- //method.getParams().setParameter(ClientPNames.HANDLE_REDIRECTS,
- // followRedirects);
- method.addHeader("User-Agent", AGENT);
-
- InputStream respBody = null;
- boolean shouldClose = true;
-
- try {
- // Execute the method.
- final HttpResponse response = httpClient.execute(method);
- int httpStatus = response.getStatusLine().getStatusCode();
-
- // Read the contents
- respBody = response.getEntity().getContent();
-
- // handle some http level checks before trying to parse the response
- switch (httpStatus) {
- case HttpStatus.SC_OK:
- case HttpStatus.SC_BAD_REQUEST:
- case HttpStatus.SC_CONFLICT: // 409
- break;
- case HttpStatus.SC_MOVED_PERMANENTLY:
- case HttpStatus.SC_MOVED_TEMPORARILY:
- if (!followRedirects) {
- throw new SolrServerException("Server at " + getBaseURL()
- + " sent back a redirect (" + httpStatus + ").");
- }
- break;
- default:
- throw new SolrException(SolrException.ErrorCode.getErrorCode(httpStatus), "Server at " + getBaseURL()
- + " returned non ok status:" + httpStatus + ", message:"
- + response.getStatusLine().getReasonPhrase());
-
- }
- if (processor == null) {
- // no processor specified, return raw stream
- NamedList<Object> rsp = new NamedList<Object>();
- rsp.add("stream", respBody);
- // Only case where stream should not be closed
- shouldClose = false;
- return rsp;
- }
- Charset charsetObject = ContentType.getOrDefault(response.getEntity()).getCharset();
- String charset;
- if (charsetObject != null)
- charset = charsetObject.name();
- else
- charset = "utf-8";
- NamedList<Object> rsp = processor.processResponse(respBody, charset);
- if (httpStatus != HttpStatus.SC_OK) {
- String reason = null;
- try {
- NamedList err = (NamedList) rsp.get("error");
- if (err != null) {
- reason = (String) err.get("msg");
- // TODO? get the trace?
- }
- } catch (Exception ex) {}
- if (reason == null) {
- StringBuilder msg = new StringBuilder();
- msg.append(response.getStatusLine().getReasonPhrase());
- msg.append("\n\n");
- msg.append("request: " + method.getURI());
- reason = URLDecoder.decode(msg.toString());
- }
- throw new SolrException(
- SolrException.ErrorCode.getErrorCode(httpStatus), reason);
- }
- return rsp;
- } catch (ConnectException e) {
- throw new SolrServerException("Server refused connection at: "
- + getBaseURL(), e);
- } catch (SocketTimeoutException e) {
- throw new SolrServerException(
- "Timeout occured while waiting response from server at: "
- + getBaseURL(), e);
- } catch (IOException e) {
- throw new SolrServerException(
- "IOException occured when talking to server at: " + getBaseURL(), e);
- } finally {
- if (respBody != null && shouldClose) {
- try {
- respBody.close();
- } catch (Throwable t) {} // ignore
- }
- }
+ return method;
}
@Override
- public void setFollowRedirects(boolean followRedirects) {
- super.setFollowRedirects(followRedirects);
- this.followRedirects = followRedirects;
+ public void setMaxRetries(int maxRetries) {
+ super.setMaxRetries(maxRetries);
+ this.maxRetries = maxRetries;
}
public static String toQueryString( SolrParams params, boolean xml ) {
Copied: manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedLBHttpSolrClient.java (from r1668373, manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedLBHttpSolrServer.java)
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedLBHttpSolrClient.java?p2=manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedLBHttpSolrClient.java&p1=manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedLBHttpSolrServer.java&r1=1668373&r2=1669660&rev=1669660&view=diff
==============================================================================
--- manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedLBHttpSolrServer.java (original)
+++ manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/ModifiedLBHttpSolrClient.java Fri Mar 27 19:33:37 2015
@@ -16,8 +16,8 @@
*/
package org.apache.manifoldcf.agents.output.solr;
-import org.apache.solr.client.solrj.impl.LBHttpSolrServer;
-import org.apache.solr.client.solrj.impl.HttpSolrServer;
+import org.apache.solr.client.solrj.impl.LBHttpSolrClient;
+import org.apache.solr.client.solrj.impl.HttpSolrClient;
import org.apache.solr.client.solrj.impl.BinaryResponseParser;
import org.apache.solr.client.solrj.request.RequestWriter;
import org.apache.solr.client.solrj.*;
@@ -29,23 +29,23 @@ import java.util.Set;
* SolrJ LBHttpSolrServer class. This is so it instantiates our modified
* HttpSolrServer class, so that multipart forms work.
*/
-public class ModifiedLBHttpSolrServer extends LBHttpSolrServer
+public class ModifiedLBHttpSolrClient extends LBHttpSolrClient
{
private final HttpClient httpClient;
private final ResponseParser parser;
- public ModifiedLBHttpSolrServer(String... solrServerUrls) throws MalformedURLException {
+ public ModifiedLBHttpSolrClient(String... solrServerUrls) throws MalformedURLException {
this(null, solrServerUrls);
}
/** The provided httpClient should use a multi-threaded connection manager */
- public ModifiedLBHttpSolrServer(HttpClient httpClient, String... solrServerUrl)
+ public ModifiedLBHttpSolrClient(HttpClient httpClient, String... solrServerUrl)
throws MalformedURLException {
this(httpClient, new BinaryResponseParser(), solrServerUrl);
}
/** The provided httpClient should use a multi-threaded connection manager */
- public ModifiedLBHttpSolrServer(HttpClient httpClient, ResponseParser parser, String... solrServerUrl)
+ public ModifiedLBHttpSolrClient(HttpClient httpClient, ResponseParser parser, String... solrServerUrl)
throws MalformedURLException {
super(httpClient, parser, solrServerUrl);
this.httpClient = httpClient;
@@ -53,17 +53,15 @@ public class ModifiedLBHttpSolrServer ex
}
@Override
- protected HttpSolrServer makeServer(String server) {
- HttpSolrServer s = new ModifiedHttpSolrServer(server, httpClient, parser);
- RequestWriter r = getRequestWriter();
- Set<String> qp = getQueryParams();
- if (r != null) {
- s.setRequestWriter(r);
+ protected HttpSolrClient makeSolrClient(String server) {
+ HttpSolrClient client = new ModifiedHttpSolrClient(server, httpClient, parser);
+ if (getRequestWriter() != null) {
+ client.setRequestWriter(getRequestWriter());
}
- if (qp != null) {
- s.setQueryParams(qp);
+ if (getQueryParams() != null) {
+ client.setQueryParams(getQueryParams());
}
- return s;
+ return client;
}
}
Modified: manifoldcf/trunk/connectors/solr/connector/src/test/java/org/apache/manifoldcf/agents/output/solr/tests/MockSolrService.java
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/solr/connector/src/test/java/org/apache/manifoldcf/agents/output/solr/tests/MockSolrService.java?rev=1669660&r1=1669659&r2=1669660&view=diff
==============================================================================
--- manifoldcf/trunk/connectors/solr/connector/src/test/java/org/apache/manifoldcf/agents/output/solr/tests/MockSolrService.java (original)
+++ manifoldcf/trunk/connectors/solr/connector/src/test/java/org/apache/manifoldcf/agents/output/solr/tests/MockSolrService.java Fri Mar 27 19:33:37 2015
@@ -107,7 +107,7 @@ public class MockSolrService
throws IOException
{
res.setStatus(HttpServletResponse.SC_OK);
- res.setContentType("text/xml; charset=utf-8");
+ res.setContentType("application/xml; charset=utf-8");
res.getWriter().printf("<solr>\n");
res.getWriter().printf("</solr>\n");
res.getWriter().flush();
@@ -117,7 +117,7 @@ public class MockSolrService
throws IOException
{
res.setStatus(HttpServletResponse.SC_OK);
- res.setContentType("text/xml; charset=utf-8");
+ res.setContentType("application/xml; charset=utf-8");
res.getWriter().printf("<result>\n");
res.getWriter().printf(" <doc name=\"something\"/>\n");
res.getWriter().printf("</result>\n");
@@ -128,7 +128,7 @@ public class MockSolrService
throws IOException
{
res.setStatus(HttpServletResponse.SC_OK);
- res.setContentType("text/xml; charset=utf-8");
+ res.setContentType("application/xml; charset=utf-8");
res.getWriter().printf("<result>\n");
res.getWriter().printf(" <doc name=\"something\"/>\n");
res.getWriter().printf("</result>\n");
Modified: manifoldcf/trunk/pom.xml
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/pom.xml?rev=1669660&r1=1669659&r2=1669660&view=diff
==============================================================================
--- manifoldcf/trunk/pom.xml (original)
+++ manifoldcf/trunk/pom.xml Fri Mar 27 19:33:37 2015
@@ -63,7 +63,7 @@
<httpcomponent.httpclient.version>4.3.6</httpcomponent.httpclient.version>
<httpcomponent.httpcore.version>4.3.3</httpcomponent.httpcore.version>
<httpcomponent.httpmime.version>4.3.6</httpcomponent.httpmime.version>
- <solr.version>4.10.3</solr.version>
+ <solr.version>5.0.0</solr.version>
<noggit.version>0.6</noggit.version>
<commons-el.version>1.0</commons-el.version>
<commons-lang.version>2.6</commons-lang.version>