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/05/09 10:25:18 UTC

svn commit: r1678471 - /manifoldcf/trunk/connectors/searchblox/connector/src/main/java/org/apache/manifoldcf/agents/output/searchblox/SearchBloxConnector.java

Author: kwright
Date: Sat May  9 08:25:18 2015
New Revision: 1678471

URL: http://svn.apache.org/r1678471
Log:
First fix for SearchBlox connector problems.  This gets the connector working, at least, but we still need to move some parameters from specification to connection.

Modified:
    manifoldcf/trunk/connectors/searchblox/connector/src/main/java/org/apache/manifoldcf/agents/output/searchblox/SearchBloxConnector.java

Modified: manifoldcf/trunk/connectors/searchblox/connector/src/main/java/org/apache/manifoldcf/agents/output/searchblox/SearchBloxConnector.java
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/searchblox/connector/src/main/java/org/apache/manifoldcf/agents/output/searchblox/SearchBloxConnector.java?rev=1678471&r1=1678470&r2=1678471&view=diff
==============================================================================
--- manifoldcf/trunk/connectors/searchblox/connector/src/main/java/org/apache/manifoldcf/agents/output/searchblox/SearchBloxConnector.java (original)
+++ manifoldcf/trunk/connectors/searchblox/connector/src/main/java/org/apache/manifoldcf/agents/output/searchblox/SearchBloxConnector.java Sat May  9 08:25:18 2015
@@ -91,11 +91,14 @@ public class SearchBloxConnector extends
 	private static final long BUILDER_DEFAULT_SOCKET_TIMEOUT = 60;
 	private static final long BUILDER_DEFAULT_CONNECTION_TIMEOUT = 60;
 
-	private ResteasyClientBuilder restBuilder = null;
 	private SearchBloxClient client = null;
 	private String apiKey = null;
 	private String lastVersion = null;
 
+	private int poolSize = BUILDER_DEFAULT_POOL_SIZE;
+	private long socketTimeout = BUILDER_DEFAULT_SOCKET_TIMEOUT;
+	private long connectionTimeout = BUILDER_DEFAULT_CONNECTION_TIMEOUT;
+	
 	public SearchBloxConnector() {
 
 	}
@@ -118,7 +121,6 @@ public class SearchBloxConnector extends
 	public void disconnect() throws ManifoldCFException {
 		if (client != null) {
 			apiKey = null;
-			restBuilder = null;
 			client = null;
 		}
 		super.disconnect();
@@ -136,56 +138,22 @@ public class SearchBloxConnector extends
 				CREATION_ACTIVITY };
 	}
 
-	protected synchronized void getSession(Map<String, List<String>> args, String version) {
+	protected void getSession() {
 		if (client == null) {
 			String endpoint = params.getParameter(SEARCHBLOX_ENDPOINT);
 			this.apiKey = params.getParameter(SearchBloxDocument.API_KEY);
 			ResteasyClientBuilder builder = new ResteasyClientBuilder();
-			builder.connectionPoolSize(BUILDER_DEFAULT_POOL_SIZE);
-			builder.socketTimeout(BUILDER_DEFAULT_SOCKET_TIMEOUT,
-					TimeUnit.SECONDS);
-			builder.establishConnectionTimeout(
-					BUILDER_DEFAULT_CONNECTION_TIMEOUT, TimeUnit.SECONDS);
-			this.restBuilder = builder;
-			client = new SearchBloxClient(apiKey, this.restBuilder, endpoint);
+			builder.connectionPoolSize(poolSize);
+			builder.establishConnectionTimeout(connectionTimeout, TimeUnit.SECONDS);
+			builder.socketTimeout(socketTimeout, TimeUnit.SECONDS);
+			client = new SearchBloxClient(apiKey, builder, endpoint);
 		}
 		
-		if(args != null && !version.equals(lastVersion)){
-			
-			lastVersion = version;
-			
-			try{
-				int poolSize = 
-						Integer.parseInt(args.get(
-								SearchBloxConfig.ATTRIBUTE_POOLSIZE).get(0));
-				this.restBuilder.connectionPoolSize(poolSize);
-			}catch(NumberFormatException e){
-				Logging.connectors.error("Incorrect Argument Value for Client Pool Size", e);
-			}
-			
-			try{
-				int connectionTimeout = 
-						Integer.parseInt(args.get(
-								SearchBloxConfig.ATTRIBUTE_TIMEOUT_CONNECTION).get(0));
-				this.restBuilder.connectionPoolSize(connectionTimeout);
-			}catch(NumberFormatException e){
-				Logging.connectors.error("Incorrect Argument Value for Client Connection Timeout", e);
-			}
-			
-			try{
-				int socketTimeout = 
-						Integer.parseInt(args.get(
-								SearchBloxConfig.ATTRIBUTE_TIMEOUT_SOCKET).get(0));
-				this.restBuilder.connectionPoolSize(socketTimeout);
-			}catch(NumberFormatException e){
-				Logging.connectors.error("Incorrect Argument Value for Client Socket Timeout", e);
-			}
-		}
 	}
 
 	@Override
 	public String check() throws ManifoldCFException {
-		getSession(null, null);
+		getSession();
 		try {
 			String format = getConfiguration().getParameter(SEARCHBLOX_INDEXING_FORMAT);
 			if (client.ping(format)) {
@@ -309,10 +277,10 @@ public class SearchBloxConnector extends
 		SpecPacker sp = new SpecPacker(pipelineDescription.getSpecification());
 		Map<String, List<String>> args = sp.getArgs();
 		// Establish a session
-		getSession(args, pipelineDescription.getVersionString());
+		getSession();
 
 		SearchBloxDocument sbDoc = new SearchBloxDocument(this.apiKey,
-				documentURI, document, sp.getArgs());
+				documentURI, document, args);
 		String format = this.getConfiguration().getParameter(SEARCHBLOX_INDEXING_FORMAT);
 		long startTime = System.currentTimeMillis();
 		try {
@@ -372,7 +340,7 @@ public class SearchBloxConnector extends
 		SpecPacker packer = new SpecPacker(outputDescription);
 		Map<String, List<String>> args = packer.getArgs();
 		// Establish a session
-		getSession(args, packer.toPackedString());
+		getSession();
 		
 		SearchBloxDocument document = new SearchBloxDocument(this.apiKey);
 		document.uid = documentURI;