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 2014/03/19 21:39:16 UTC
svn commit: r1579392 - in
/manifoldcf/trunk/connectors/opensearchserver/connector/src/main/java/org/apache/manifoldcf/agents/output/opensearchserver:
OpenSearchServerConnection.java OpenSearchServerConnector.java
OpenSearchServerIndex.java
Author: kwright
Date: Wed Mar 19 20:39:16 2014
New Revision: 1579392
URL: http://svn.apache.org/r1579392
Log:
Remove deprecation warnings; part of CONNECTORS-911
Modified:
manifoldcf/trunk/connectors/opensearchserver/connector/src/main/java/org/apache/manifoldcf/agents/output/opensearchserver/OpenSearchServerConnection.java
manifoldcf/trunk/connectors/opensearchserver/connector/src/main/java/org/apache/manifoldcf/agents/output/opensearchserver/OpenSearchServerConnector.java
manifoldcf/trunk/connectors/opensearchserver/connector/src/main/java/org/apache/manifoldcf/agents/output/opensearchserver/OpenSearchServerIndex.java
Modified: manifoldcf/trunk/connectors/opensearchserver/connector/src/main/java/org/apache/manifoldcf/agents/output/opensearchserver/OpenSearchServerConnection.java
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/opensearchserver/connector/src/main/java/org/apache/manifoldcf/agents/output/opensearchserver/OpenSearchServerConnection.java?rev=1579392&r1=1579391&r2=1579392&view=diff
==============================================================================
--- manifoldcf/trunk/connectors/opensearchserver/connector/src/main/java/org/apache/manifoldcf/agents/output/opensearchserver/OpenSearchServerConnection.java (original)
+++ manifoldcf/trunk/connectors/opensearchserver/connector/src/main/java/org/apache/manifoldcf/agents/output/opensearchserver/OpenSearchServerConnection.java Wed Mar 19 20:39:16 2014
@@ -27,6 +27,7 @@ import java.io.InputStreamReader;
import java.io.InputStream;
import java.io.InterruptedIOException;
import java.net.URLEncoder;
+import java.nio.charset.Charset;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
@@ -41,12 +42,14 @@ import org.apache.http.client.methods.Ht
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.util.EntityUtils;
+import org.apache.http.entity.ContentType;
import org.apache.http.conn.ConnectTimeoutException;
import org.apache.http.client.RedirectException;
import org.apache.http.client.CircularRedirectException;
import org.apache.http.NoHttpResponseException;
import org.apache.http.HttpException;
+import org.apache.http.ParseException;
import org.apache.manifoldcf.core.interfaces.ManifoldCFException;
import org.w3c.dom.Document;
@@ -82,6 +85,8 @@ public class OpenSearchServerConnection
private Result result;
+ private final static Charset UTF_8 = Charset.forName("UTF-8");
+
protected OpenSearchServerConnection(HttpClient client, OpenSearchServerConfig config) {
this.httpClient = client;
result = Result.UNKNOWN;
@@ -235,9 +240,19 @@ public class OpenSearchServerConnection
{
try
{
- String charSet = EntityUtils.getContentCharSet(entity);
- if (charSet == null)
- charSet = "utf-8";
+ Charset charSet;
+ try
+ {
+ ContentType ct = ContentType.get(entity);
+ if (ct == null)
+ charSet = UTF_8;
+ else
+ charSet = ct.getCharset();
+ }
+ catch (ParseException e)
+ {
+ charSet = UTF_8;
+ }
char[] buffer = new char[65536];
Reader r = new InputStreamReader(is,charSet);
Writer w = new StringWriter();
Modified: manifoldcf/trunk/connectors/opensearchserver/connector/src/main/java/org/apache/manifoldcf/agents/output/opensearchserver/OpenSearchServerConnector.java
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/opensearchserver/connector/src/main/java/org/apache/manifoldcf/agents/output/opensearchserver/OpenSearchServerConnector.java?rev=1579392&r1=1579391&r2=1579392&view=diff
==============================================================================
--- manifoldcf/trunk/connectors/opensearchserver/connector/src/main/java/org/apache/manifoldcf/agents/output/opensearchserver/OpenSearchServerConnector.java (original)
+++ manifoldcf/trunk/connectors/opensearchserver/connector/src/main/java/org/apache/manifoldcf/agents/output/opensearchserver/OpenSearchServerConnector.java Wed Mar 19 20:39:16 2014
@@ -28,19 +28,18 @@ import java.util.Map;
import java.util.TreeMap;
import java.util.Locale;
-import org.apache.http.conn.ClientConnectionManager;
-import org.apache.http.impl.conn.PoolingClientConnectionManager;
+import org.apache.http.conn.HttpClientConnectionManager;
import org.apache.http.client.HttpClient;
-import org.apache.http.impl.client.DefaultHttpClient;
+import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
+import org.apache.http.impl.client.HttpClientBuilder;
+import org.apache.http.protocol.HttpRequestExecutor;
+import org.apache.http.impl.client.HttpClients;
+import org.apache.http.client.config.RequestConfig;
+import org.apache.http.client.CredentialsProvider;
+import org.apache.http.impl.client.BasicCredentialsProvider;
+import org.apache.http.config.SocketConfig;
import org.apache.http.client.HttpRequestRetryHandler;
import org.apache.http.protocol.HttpContext;
-import org.apache.http.params.HttpConnectionParams;
-import org.apache.http.params.HttpParams;
-import org.apache.http.params.BasicHttpParams;
-import org.apache.http.params.CoreConnectionPNames;
-import org.apache.http.params.CoreProtocolPNames;
-import org.apache.http.client.params.ClientPNames;
-import org.apache.http.client.params.HttpClientParams;
import org.apache.commons.io.FilenameUtils;
import org.apache.commons.io.IOUtils;
@@ -103,7 +102,7 @@ public class OpenSearchServerConnector e
/** Connection expiration interval */
private static final long EXPIRATION_INTERVAL = 60000L;
- private ClientConnectionManager connectionManager = null;
+ private HttpClientConnectionManager connectionManager = null;
private HttpClient client = null;
private long expirationTime = -1L;
@@ -128,38 +127,34 @@ public class OpenSearchServerConnector e
{
if (client == null)
{
- PoolingClientConnectionManager localConnectionManager = new PoolingClientConnectionManager();
- localConnectionManager.setMaxTotal(1);
- connectionManager = localConnectionManager;
+ connectionManager = new PoolingHttpClientConnectionManager();
int socketTimeout = 900000;
int connectionTimeout = 60000;
- BasicHttpParams params = new BasicHttpParams();
- // This one is essential to prevent us from reading from the content stream before necessary during auth, but
- // is incompatible with some proxies.
- params.setBooleanParameter(CoreProtocolPNames.USE_EXPECT_CONTINUE,true);
- // Enabled for Solr, but probably not necessary for better-behaved ES
- //params.setBooleanParameter(CoreConnectionPNames.TCP_NODELAY,true);
- params.setBooleanParameter(CoreConnectionPNames.STALE_CONNECTION_CHECK,true);
- params.setBooleanParameter(ClientPNames.ALLOW_CIRCULAR_REDIRECTS,true);
- params.setIntParameter(CoreConnectionPNames.SO_TIMEOUT,socketTimeout);
- params.setIntParameter(CoreConnectionPNames.CONNECTION_TIMEOUT,connectionTimeout);
- params.setBooleanParameter(ClientPNames.HANDLE_REDIRECTS,true);
- DefaultHttpClient localClient = new DefaultHttpClient(connectionManager,params);
- // No retries
- localClient.setHttpRequestRetryHandler(new HttpRequestRetryHandler()
- {
- public boolean retryRequest(
- IOException exception,
- int executionCount,
- HttpContext context)
- {
- return false;
- }
-
- });
- client = localClient;
+ CredentialsProvider credentialsProvider = new BasicCredentialsProvider();
+
+ RequestConfig.Builder requestBuilder = RequestConfig.custom()
+ .setCircularRedirectsAllowed(true)
+ .setSocketTimeout(socketTimeout)
+ .setStaleConnectionCheckEnabled(true)
+ .setExpectContinueEnabled(true)
+ .setConnectTimeout(connectionTimeout)
+ .setConnectionRequestTimeout(socketTimeout);
+
+ client = HttpClients.custom()
+ .setConnectionManager(connectionManager)
+ .setMaxConnTotal(1)
+ .disableAutomaticRetries()
+ .setDefaultRequestConfig(requestBuilder.build())
+ .setDefaultSocketConfig(SocketConfig.custom()
+ //.setTcpNoDelay(true)
+ .setSoTimeout(socketTimeout)
+ .build())
+ .setDefaultCredentialsProvider(credentialsProvider)
+ .setRequestExecutor(new HttpRequestExecutor(socketTimeout))
+ .build();
+
}
expirationTime = System.currentTimeMillis() + EXPIRATION_INTERVAL;
return client;
Modified: manifoldcf/trunk/connectors/opensearchserver/connector/src/main/java/org/apache/manifoldcf/agents/output/opensearchserver/OpenSearchServerIndex.java
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/opensearchserver/connector/src/main/java/org/apache/manifoldcf/agents/output/opensearchserver/OpenSearchServerIndex.java?rev=1579392&r1=1579391&r2=1579392&view=diff
==============================================================================
--- manifoldcf/trunk/connectors/opensearchserver/connector/src/main/java/org/apache/manifoldcf/agents/output/opensearchserver/OpenSearchServerIndex.java (original)
+++ manifoldcf/trunk/connectors/opensearchserver/connector/src/main/java/org/apache/manifoldcf/agents/output/opensearchserver/OpenSearchServerIndex.java Wed Mar 19 20:39:16 2014
@@ -56,6 +56,7 @@ public class OpenSearchServerIndex exten
}
@Override
+ @Deprecated
public void consumeContent()
throws IOException {
EntityUtils.consume(this);