You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stanbol.apache.org by rw...@apache.org on 2013/03/19 10:46:18 UTC

svn commit: r1458191 - in /stanbol/trunk/enhancement-engines/celi/src: main/java/org/apache/stanbol/enhancer/engines/celi/ main/java/org/apache/stanbol/enhancer/engines/celi/classification/impl/ main/java/org/apache/stanbol/enhancer/engines/celi/langid...

Author: rwesten
Date: Tue Mar 19 09:46:18 2013
New Revision: 1458191

URL: http://svn.apache.org/r1458191
Log:
STANBOL-986: The CELI engines do now allow to condigure the connection (and read) timeout. The default is 30sec; UnitTests do use a timeout of 5sec; minor: removed also some comments left over from feedback provided to the code originally contributed to Stanbol.

Modified:
    stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/CeliConstants.java
    stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/classification/impl/CeliClassificationEnhancementEngine.java
    stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/classification/impl/ClassificationClientHTTP.java
    stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/CeliLanguageIdentifierEnhancementEngine.java
    stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/LanguageIdentifierClientHTTP.java
    stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliAnalyzedTextLemmatizerEngine.java
    stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliLemmatizerEnhancementEngine.java
    stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/LemmatizerClientHTTP.java
    stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/CeliNamedEntityExtractionEnhancementEngine.java
    stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/NERserviceClientHTTP.java
    stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliAnalyzedTextSentimentAnalysisEngine.java
    stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliSentimentAnalysisEngine.java
    stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/SentimentAnalysisServiceClientHttp.java
    stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/utils/Utils.java
    stanbol/trunk/enhancement-engines/celi/src/main/resources/OSGI-INF/metatype/metatype.properties
    stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/CeliHttpTest.java
    stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/classification/impl/CeliClassificationEnhancementEngineTest.java
    stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/CeliLanguageIdentifierEnhancementEngineTest.java
    stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliAnalyzedTextLemmatizerEngineTest.java
    stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliLemmatizerEnhancementEngineTest.java
    stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/CeliNamedEntityExtractionEnhancementEngineTest.java
    stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliAnalyzedTextSentimentAnalysisEngineTest.java
    stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliSentimentAnalysisEngineTest.java

Modified: stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/CeliConstants.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/CeliConstants.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/CeliConstants.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/CeliConstants.java Tue Mar 19 09:46:18 2013
@@ -54,7 +54,12 @@ public interface CeliConstants {
      */
     String CELI_TEST_ACCOUNT = "celi.testaccount";
     
- 
+    String CELI_CONNECTION_TIMEOUT = "celi.connectionTimeout";
+    /**
+     * The default connection timeout for HTTP connections (30sec)
+     */
+    int DEFAULT_CONECTION_TIMEOUT = 30;
+
     /**
      * Concept used to annotate sentiment expressions within text
      *  TODO: Find standard ontology for reference or check if it is OK to define new properties in the FISE namespace

Modified: stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/classification/impl/CeliClassificationEnhancementEngine.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/classification/impl/CeliClassificationEnhancementEngine.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/classification/impl/CeliClassificationEnhancementEngine.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/classification/impl/CeliClassificationEnhancementEngine.java Tue Mar 19 09:46:18 2013
@@ -74,7 +74,8 @@ import org.slf4j.LoggerFactory;
 @Properties(value = { 
     @Property(name = EnhancementEngine.PROPERTY_NAME, value = "celiClassification"),
     @Property(name = CeliConstants.CELI_LICENSE),
-    @Property(name = CeliConstants.CELI_TEST_ACCOUNT,boolValue=false)
+    @Property(name = CeliConstants.CELI_TEST_ACCOUNT,boolValue=false),
+    @Property(name = CeliConstants.CELI_CONNECTION_TIMEOUT, intValue=CeliConstants.DEFAULT_CONECTION_TIMEOUT)
 })
 public class CeliClassificationEnhancementEngine extends AbstractEnhancementEngine<IOException, RuntimeException> implements EnhancementEngine, ServiceProperties {
 	
@@ -155,7 +156,8 @@ public class CeliClassificationEnhanceme
 			throw new ConfigurationException(SERVICE_URL, String.format("%s : please configure the URL of the CELI Web Service (e.g. by" + "using the 'Configuration' tab of the Apache Felix Web Console).", getClass().getSimpleName()));
 		}
 		this.serviceURL = new URL(url);
-		this.client = new ClassificationClientHTTP(this.serviceURL, this.licenseKey);
+		int conTimeout = Utils.getConnectionTimeout(properties, ctx.getBundleContext());
+		this.client = new ClassificationClientHTTP(this.serviceURL, this.licenseKey, conTimeout);
 	}
 	
 	@Override

Modified: stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/classification/impl/ClassificationClientHTTP.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/classification/impl/ClassificationClientHTTP.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/classification/impl/ClassificationClientHTTP.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/classification/impl/ClassificationClientHTTP.java Tue Mar 19 09:46:18 2013
@@ -20,13 +20,11 @@ import java.io.BufferedWriter;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStreamWriter;
-import java.io.Writer;
 import java.net.HttpURLConnection;
 import java.net.URL;
 import java.nio.charset.Charset;
 import java.util.Collections;
 import java.util.HashMap;
-import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.Vector;
@@ -40,7 +38,6 @@ import javax.xml.transform.stream.Stream
 
 import org.apache.clerezza.rdf.core.UriRef;
 import org.apache.clerezza.rdf.core.impl.util.Base64;
-import org.apache.commons.io.IOUtils;
 import org.apache.commons.lang.StringEscapeUtils;
 import org.apache.stanbol.enhancer.engines.celi.utils.Utils;
 import org.apache.stanbol.enhancer.servicesapi.rdf.NamespaceEnum;
@@ -79,15 +76,15 @@ public class ClassificationClientHTTP {
 	
 	private final URL serviceEP;
 	private final String licenseKey;
+	private final int conTimeout;
 	
-	//NOTE: the request headers are the same for all request - so they can be
-	//      initialized in the constructor.
 	private final Map<String,String> requestHeaders;
 	
 	
-	public ClassificationClientHTTP(URL serviceUrl, String licenseKey){
+	public ClassificationClientHTTP(URL serviceUrl, String licenseKey, int conTimeout){
 		this.serviceEP=serviceUrl;
 		this.licenseKey=licenseKey;
+		this.conTimeout = conTimeout;
         Map<String,String> headers = new HashMap<String,String>();
         headers.put("Content-Type", CONTENT_TYPE);
         if(licenseKey != null){
@@ -97,53 +94,6 @@ public class ClassificationClientHTTP {
         this.requestHeaders = Collections.unmodifiableMap(headers);
 	}
 	
-	/*
-	 * NOTE: parsing/returning a String requires to create in-memory copies
-	 *       of the sent/received data. Imaging users that send the text of
-	 *       100 pages PDF files to the Stanbol Enhancer.
-	 *       Because of that an implementation that directly streams the
-	 *       StringEscapeUtils.escapeXml(..) to the request is preferable 
-	 *       
-	 *       This will no longer allow to debug the data of the request and
-	 *       response. See the commented main method at the end for alternatives
-	 */
-//	public String doPostRequest(URL url, String body) throws IOException {
-//		
-//		HttpURLConnection urlConn = (HttpURLConnection) url.openConnection();
-//		urlConn.setRequestMethod("POST");
-//		urlConn.setDoInput(true);
-//		if (null != body) {
-//			urlConn.setDoOutput(true);
-//		} else {
-//			urlConn.setDoOutput(false);
-//		}
-//		urlConn.setUseCaches(false);
-//		String	contentType = "text/xml; charset=utf-8";
-//		urlConn.setRequestProperty("Content-Type", contentType);
-//		if(this.licenseKey!=null){
-//			String encoded = Base64.encode(this.licenseKey.getBytes("UTF-8"));
-//			urlConn.setRequestProperty("Authorization", "Basic "+encoded);
-//		}
-//		
-//		// send POST output
-//		if (null != body) {
-//			OutputStreamWriter printout = new OutputStreamWriter(urlConn.getOutputStream(), "UTF-8");
-//			printout.write(body);
-//			printout.flush();
-//			printout.close();
-//		}
-//		
-//		//close connection
-//		urlConn.disconnect();
-//		
-//		// get response data
-//		return IOUtils.toString(urlConn.getInputStream(), "UTF-8");
-//	}
-
-
-	//NOTE: forward IOException and SOAPExceptions to allow correct error handling
-	//      by the EnhancementJobManager.
-	//      Also RuntimeExceptions MUST NOT be cached out of the same reason!
 	public List<Concept> extractConcepts(String text,String lang) throws IOException, SOAPException {
         if(text == null || text.isEmpty()){
             //no text -> no classification
@@ -151,7 +101,7 @@ public class ClassificationClientHTTP {
         }
 
         //create the POST request
-        HttpURLConnection con = Utils.createPostRequest(serviceEP, requestHeaders);
+        HttpURLConnection con = Utils.createPostRequest(serviceEP, requestHeaders,conTimeout);
         //"stream" the request content directly to the buffered writer
         BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(con.getOutputStream(),UTF8));
         writer.write(SOAP_PREFIX);
@@ -172,19 +122,10 @@ public class ClassificationClientHTTP {
         InputStream stream = con.getInputStream();
         log.debug("Request to {} took {}ms",serviceEP,System.currentTimeMillis()-start);
 
-        //NOTE: forward IOException and SOAPExceptions to allow correct error handling
-        //      by the EnhancementJobManager.
-        //      Also RuntimeExceptions MUST NOT be cached out of the same reason!
-
-//		try {
-
-		// Create SoapMessage
 		MessageFactory msgFactory = MessageFactory.newInstance();
 		SOAPMessage message = msgFactory.createMessage();
 		SOAPPart soapPart = message.getSOAPPart();
 
-		// NOTE: directly use the InputStream provided by the URLConnection!
-//			ByteArrayInputStream stream = new ByteArrayInputStream(responseXml.getBytes("UTF-8"));
 		StreamSource source = new StreamSource(stream);
 
 		// Set contents of message
@@ -193,11 +134,7 @@ public class ClassificationClientHTTP {
 		SOAPBody soapBody = message.getSOAPBody();
         List<Concept> extractedConcepts = new Vector<Concept>();
 		NodeList nlist = soapBody.getElementsByTagNameNS("*","return");
-		HashSet<String> inserted=new HashSet<String>();
 		for (int i = 0; i < nlist.getLength() && i<maxResultToReturn; i++) {
-		    //NOTE: do not catch RuntimeExceptions. Error handling is done by
-		    //      the EnhancementJobManager!
-//			try {
 			Element result = (Element) nlist.item(i);
 
 			//NOTE: (rwesten) implemented a mapping from the CELI classification
@@ -215,14 +152,7 @@ public class ClassificationClientHTTP {
 			String conf=result.getElementsByTagNameNS("*","score").item(0).getTextContent();
 			Double confidence= new Double(conf);
 			extractedConcepts.add(new Concept(model,modelConcept,confidence));
-//			} catch (Exception e) {
-//				e.printStackTrace();
-//			}
-
 		}
-//		} catch (Exception e) {
-//			e.printStackTrace();
-//		}
 		return extractedConcepts;
 	}
     /**
@@ -258,51 +188,4 @@ public class ClassificationClientHTTP {
             (tmps.length > 1 ? tmps[1] : tmps[0])); //the Class for the label
     }	
 	
-	//NOTE: If you stream the contents directly to the stream, you can no longer
-	//      debug the request/response. Because of that it is sometimes
-	//      helpful to have a main method for those tests
-	//      An even better variant would be to write a UnitTest for that!!
-	//      This would be recommended of the called service is still in beta
-	//      and may change at any time
-    public static void main(String[] args) throws Exception {
-        String lang = "fr";
-        String text = "Brigitte Bardot, née  le 28 septembre " +
-                "1934 à Paris, est une actrice de cinéma et chanteuse française.";
-        
-        //For request testing
-        //Writer request = new StringWriter();
-        
-        //For response testing
-        HttpURLConnection con = Utils.createPostRequest(
-            new URL("http://linguagrid.org/LSGrid/ws/dbpedia-classification"),
-            Collections.singletonMap("Content-Type", CONTENT_TYPE));
-        Writer request = new OutputStreamWriter(con.getOutputStream(),UTF8);
-        
-        //"stream" the request content directly to the buffered writer
-        BufferedWriter writer = new BufferedWriter(request);
-        
-        writer.write(SOAP_PREFIX);
-        writer.write("<clas:classify>");
-        writer.write("<clas:user>wiki</clas:user>");//TODO: should the user be configurable?
-        writer.write("<clas:model>");
-        writer.write(lang);
-        writer.write("</clas:model>");
-        writer.write("<clas:text>");
-        StringEscapeUtils.escapeXml(writer, text); //write the escaped text directly to the request
-        writer.write("</clas:text>");
-        writer.write("</clas:classify>");
-        writer.write(SOAP_SUFFIX);
-        writer.close();
-        
-        //log the Request (if request testing)
-        //log.info("Request \n{}",request.toString());
-        
-        //for response testing we need to call the service
-        //Call the service
-        long start = System.currentTimeMillis();
-        InputStream stream = con.getInputStream();
-        log.info("Request to took {}ms",System.currentTimeMillis()-start);
-        log.info("Response:\n{}",IOUtils.toString(stream));
-        stream.close();
-    }
 }

Modified: stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/CeliLanguageIdentifierEnhancementEngine.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/CeliLanguageIdentifierEnhancementEngine.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/CeliLanguageIdentifierEnhancementEngine.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/CeliLanguageIdentifierEnhancementEngine.java Tue Mar 19 09:46:18 2013
@@ -69,7 +69,8 @@ import org.slf4j.LoggerFactory;
 @Properties(value = { 
     @Property(name = EnhancementEngine.PROPERTY_NAME, value = "celiLangid"),
     @Property(name = CeliConstants.CELI_LICENSE),
-    @Property(name = CeliConstants.CELI_TEST_ACCOUNT,boolValue=false)
+    @Property(name = CeliConstants.CELI_TEST_ACCOUNT,boolValue=false),
+    @Property(name = CeliConstants.CELI_CONNECTION_TIMEOUT, intValue=CeliConstants.DEFAULT_CONECTION_TIMEOUT) 
 })
 public class CeliLanguageIdentifierEnhancementEngine extends AbstractEnhancementEngine<IOException, RuntimeException> implements EnhancementEngine, ServiceProperties {
 	/**
@@ -136,7 +137,8 @@ public class CeliLanguageIdentifierEnhan
                 String.format("%s : The URL of the CELI Web Service is not well formatted.", 
                     getClass().getSimpleName()),e);
         }
-		this.client = new LanguageIdentifierClientHTTP(this.serviceURL, this.licenseKey);
+		int conTimeout = Utils.getConnectionTimeout(properties, ctx.getBundleContext());
+		this.client = new LanguageIdentifierClientHTTP(this.serviceURL, this.licenseKey, conTimeout);
 	}
 	
 	@Override

Modified: stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/LanguageIdentifierClientHTTP.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/LanguageIdentifierClientHTTP.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/LanguageIdentifierClientHTTP.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/LanguageIdentifierClientHTTP.java Tue Mar 19 09:46:18 2013
@@ -70,12 +70,13 @@ public class LanguageIdentifierClientHTT
     
 	private URL serviceEP;
     private final Map<String,String> requestHeaders;
-	
+	private final int conTimeout;
 	private final Logger log = LoggerFactory.getLogger(getClass());
 
 	
-	public LanguageIdentifierClientHTTP(URL serviceUrl, String licenseKey){
+	public LanguageIdentifierClientHTTP(URL serviceUrl, String licenseKey, int conTimeout){
 		this.serviceEP=serviceUrl;
+		this.conTimeout = conTimeout;
         Map<String,String> headers = new HashMap<String,String>();
         headers.put("Content-Type", CONTENT_TYPE);
         if(licenseKey != null){
@@ -94,7 +95,7 @@ public class LanguageIdentifierClientHTT
 	        return Collections.emptyList(); //no language
 	    }
         //create the POST request
-        HttpURLConnection con = Utils.createPostRequest(serviceEP, requestHeaders);
+        HttpURLConnection con = Utils.createPostRequest(serviceEP, requestHeaders,conTimeout);
         //write content
         BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(con.getOutputStream(),UTF8));
         writer.write(SOAP_PREFIX);
@@ -145,7 +146,7 @@ public class LanguageIdentifierClientHTT
             return Collections.emptyList();
         }
         //create the POST request
-        HttpURLConnection con = Utils.createPostRequest(serviceEP, requestHeaders);
+        HttpURLConnection con = Utils.createPostRequest(serviceEP, requestHeaders,conTimeout);
         //write content
         BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(con.getOutputStream(),UTF8));
         writer.write(SOAP_PREFIX);

Modified: stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliAnalyzedTextLemmatizerEngine.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliAnalyzedTextLemmatizerEngine.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliAnalyzedTextLemmatizerEngine.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliAnalyzedTextLemmatizerEngine.java Tue Mar 19 09:46:18 2013
@@ -67,7 +67,8 @@ import org.osgi.service.component.Compon
 @Properties(value = { 
     @Property(name = EnhancementEngine.PROPERTY_NAME, value = "celiLemmatizer"), 
     @Property(name = CeliConstants.CELI_LICENSE), 
-    @Property(name = CeliConstants.CELI_TEST_ACCOUNT, boolValue = false) 
+    @Property(name = CeliConstants.CELI_TEST_ACCOUNT, boolValue = false) ,
+    @Property(name = CeliConstants.CELI_CONNECTION_TIMEOUT, intValue=CeliConstants.DEFAULT_CONECTION_TIMEOUT)
 })
 public class CeliAnalyzedTextLemmatizerEngine extends AbstractEnhancementEngine<IOException, RuntimeException> implements EnhancementEngine, ServiceProperties {
 
@@ -115,8 +116,8 @@ public class CeliAnalyzedTextLemmatizerE
         this.serviceURL = new URL(url);
         //parse the parsed language configuration
         languageConfig.setConfiguration(properties);
-
-        this.client = new LemmatizerClientHTTP(this.serviceURL, this.licenseKey);
+        int conTimeout = Utils.getConnectionTimeout(properties, ctx.getBundleContext());
+        this.client = new LemmatizerClientHTTP(this.serviceURL, this.licenseKey,conTimeout);
     }
 
     @Override

Modified: stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliLemmatizerEnhancementEngine.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliLemmatizerEnhancementEngine.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliLemmatizerEnhancementEngine.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliLemmatizerEnhancementEngine.java Tue Mar 19 09:46:18 2013
@@ -81,7 +81,8 @@ import org.slf4j.LoggerFactory;
 @Properties(value = { 
 		@Property(name = EnhancementEngine.PROPERTY_NAME, value = "celiLemmatizer"), 
 		@Property(name = CeliConstants.CELI_LICENSE), 
-		@Property(name = CeliConstants.CELI_TEST_ACCOUNT, boolValue = false) 
+		@Property(name = CeliConstants.CELI_TEST_ACCOUNT, boolValue = false),
+	    @Property(name = CeliConstants.CELI_CONNECTION_TIMEOUT, intValue=CeliConstants.DEFAULT_CONECTION_TIMEOUT) 
 })
 public class CeliLemmatizerEnhancementEngine extends AbstractEnhancementEngine<IOException, RuntimeException> implements EnhancementEngine, ServiceProperties {
 	// TODO: check if it is OK to define new properties in the FISE namespace
@@ -154,7 +155,8 @@ public class CeliLemmatizerEnhancementEn
 		} catch (Exception e) {
 			this.completeMorphoAnalysis = false;
 		}
-		this.client = new LemmatizerClientHTTP(this.serviceURL, this.licenseKey);
+		int conTimeout = Utils.getConnectionTimeout(properties, ctx.getBundleContext());
+		this.client = new LemmatizerClientHTTP(this.serviceURL, this.licenseKey, conTimeout);
 	}
 
 	@Override

Modified: stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/LemmatizerClientHTTP.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/LemmatizerClientHTTP.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/LemmatizerClientHTTP.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/LemmatizerClientHTTP.java Tue Mar 19 09:46:18 2013
@@ -67,12 +67,14 @@ public class LemmatizerClientHTTP {
     
     private URL serviceEP;
 	private String licenseKey;
+	private final int conTimeout;
     private final Map<String,String> requestHeaders;
 	private final Logger log = LoggerFactory.getLogger(getClass());
 
-	public LemmatizerClientHTTP(URL serviceUrl, String licenseKey){
+	public LemmatizerClientHTTP(URL serviceUrl, String licenseKey, int conTimeout){
 		this.serviceEP=serviceUrl;
 		this.licenseKey=licenseKey;
+		this.conTimeout = conTimeout;
         Map<String,String> headers = new HashMap<String,String>();
         headers.put("Content-Type", CONTENT_TYPE);
         if(licenseKey != null){
@@ -85,7 +87,7 @@ public class LemmatizerClientHTTP {
 	public List<LexicalEntry> performMorfologicalAnalysis(String text,String lang) throws IOException, SOAPException {
 
         //create the POST request
-        HttpURLConnection con = Utils.createPostRequest(serviceEP, requestHeaders);
+        HttpURLConnection con = Utils.createPostRequest(serviceEP, requestHeaders,conTimeout);
         //write content
         BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(con.getOutputStream(),UTF8));
         //write the SOAP envelope, header and start the body
@@ -166,7 +168,7 @@ public class LemmatizerClientHTTP {
 
 	public String lemmatizeContents(String text,String lang) throws SOAPException, IOException {
         //create the POST request
-        HttpURLConnection con = Utils.createPostRequest(serviceEP, requestHeaders);
+        HttpURLConnection con = Utils.createPostRequest(serviceEP, requestHeaders,conTimeout);
         //write content
         BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(con.getOutputStream(),UTF8));
         //write the SOAP envelope, header and start the body

Modified: stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/CeliNamedEntityExtractionEnhancementEngine.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/CeliNamedEntityExtractionEnhancementEngine.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/CeliNamedEntityExtractionEnhancementEngine.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/CeliNamedEntityExtractionEnhancementEngine.java Tue Mar 19 09:46:18 2013
@@ -78,7 +78,8 @@ import org.slf4j.LoggerFactory;
 @Properties(value = { 
     @Property(name = EnhancementEngine.PROPERTY_NAME, value = "celiNer"),
     @Property(name = CeliConstants.CELI_LICENSE),
-    @Property(name = CeliConstants.CELI_TEST_ACCOUNT,boolValue=false)
+    @Property(name = CeliConstants.CELI_TEST_ACCOUNT,boolValue=false),
+    @Property(name = CeliConstants.CELI_CONNECTION_TIMEOUT, intValue=CeliConstants.DEFAULT_CONECTION_TIMEOUT)
 })
 public class CeliNamedEntityExtractionEnhancementEngine extends AbstractEnhancementEngine<IOException, RuntimeException> implements EnhancementEngine, ServiceProperties {
 	
@@ -156,8 +157,8 @@ public class CeliNamedEntityExtractionEn
 			throw new ConfigurationException(SERVICE_URL, String.format("%s : please configure the URL of the CELI Web Service (e.g. by" + "using the 'Configuration' tab of the Apache Felix Web Console).", getClass().getSimpleName()));
 		}
 		this.serviceURL = new URL(url);
-		
-		this.client = new NERserviceClientHTTP(this.serviceURL, this.licenseKey);
+		int conTimeout = Utils.getConnectionTimeout(properties, ctx.getBundleContext());
+		this.client = new NERserviceClientHTTP(this.serviceURL, this.licenseKey,conTimeout);
         log.info(" > CELI service: {}",serviceURL);
 		
 		//init the supported languages (now configurable)

Modified: stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/NERserviceClientHTTP.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/NERserviceClientHTTP.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/NERserviceClientHTTP.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/NERserviceClientHTTP.java Tue Mar 19 09:46:18 2013
@@ -68,14 +68,15 @@ public class NERserviceClientHTTP {
 	
 	private final URL serviceEP;
 	private final String licenseKey;
-	
+	private final int conTimeout;
 	private final Map<String,String> requestHeaders;
 	
 	private final Logger log = LoggerFactory.getLogger(getClass());
 		
-	public NERserviceClientHTTP(URL serviceUrl, String licenseKey){
+	public NERserviceClientHTTP(URL serviceUrl, String licenseKey, int conTimeout){
 		this.serviceEP=serviceUrl;
 		this.licenseKey = licenseKey;
+		this.conTimeout = conTimeout;
 		Map<String,String> headers = new HashMap<String,String>();
 		headers.put("Content-Type", CONTENT_TYPE);
 		if(licenseKey != null){
@@ -93,7 +94,7 @@ public class NERserviceClientHTTP {
 	    }
 
 	    //create the POST request
-		HttpURLConnection con = Utils.createPostRequest(serviceEP, requestHeaders);
+		HttpURLConnection con = Utils.createPostRequest(serviceEP, requestHeaders,-1);
 		//write content
 		BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(con.getOutputStream(),UTF8));
 		writer.write(SOAP_PREFIX);

Modified: stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliAnalyzedTextSentimentAnalysisEngine.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliAnalyzedTextSentimentAnalysisEngine.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliAnalyzedTextSentimentAnalysisEngine.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliAnalyzedTextSentimentAnalysisEngine.java Tue Mar 19 09:46:18 2013
@@ -60,7 +60,8 @@ import org.osgi.service.component.Compon
 @Properties(value = { 
     @Property(name = EnhancementEngine.PROPERTY_NAME, value = "celiSentiment"),
     @Property(name = CeliConstants.CELI_LICENSE),
-    @Property(name = CeliConstants.CELI_TEST_ACCOUNT,boolValue=false)
+    @Property(name = CeliConstants.CELI_TEST_ACCOUNT,boolValue=false),
+    @Property(name = CeliConstants.CELI_CONNECTION_TIMEOUT, intValue=CeliConstants.DEFAULT_CONECTION_TIMEOUT)
 })
 public class CeliAnalyzedTextSentimentAnalysisEngine extends AbstractEnhancementEngine<IOException, RuntimeException> implements EnhancementEngine, ServiceProperties {
 	
@@ -106,8 +107,8 @@ public class CeliAnalyzedTextSentimentAn
         this.serviceURL = new URL(url);
         //parse the parsed language configuration
         languageConfig.setConfiguration(properties);
-
-        this.client = new SentimentAnalysisServiceClientHttp(this.serviceURL, this.licenseKey);
+        int connectionTimeout = Utils.getConnectionTimeout(properties, ctx.getBundleContext());
+        this.client = new SentimentAnalysisServiceClientHttp(this.serviceURL, this.licenseKey,connectionTimeout);
     }
 
     @Override

Modified: stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliSentimentAnalysisEngine.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliSentimentAnalysisEngine.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliSentimentAnalysisEngine.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliSentimentAnalysisEngine.java Tue Mar 19 09:46:18 2013
@@ -74,7 +74,8 @@ import org.slf4j.LoggerFactory;
 @Properties(value = { 
     @Property(name = EnhancementEngine.PROPERTY_NAME, value = "celiSentiment"),
     @Property(name = CeliConstants.CELI_LICENSE),
-    @Property(name = CeliConstants.CELI_TEST_ACCOUNT,boolValue=false)
+    @Property(name = CeliConstants.CELI_TEST_ACCOUNT,boolValue=false),
+    @Property(name = CeliConstants.CELI_CONNECTION_TIMEOUT, intValue=CeliConstants.DEFAULT_CONECTION_TIMEOUT)
 })
 public class CeliSentimentAnalysisEngine extends AbstractEnhancementEngine<IOException, RuntimeException> implements EnhancementEngine, ServiceProperties {
 	
@@ -138,8 +139,8 @@ public class CeliSentimentAnalysisEngine
 			throw new ConfigurationException(SERVICE_URL, String.format("%s : please configure the URL of the CELI Web Service (e.g. by" + "using the 'Configuration' tab of the Apache Felix Web Console).", getClass().getSimpleName()));
 		}
 		this.serviceURL = new URL(url);
-		
-		this.client = new SentimentAnalysisServiceClientHttp(this.serviceURL, this.licenseKey);
+		int connectionTimeout = Utils.getConnectionTimeout(properties, ctx.getBundleContext());
+		this.client = new SentimentAnalysisServiceClientHttp(this.serviceURL, this.licenseKey,connectionTimeout);
         log.info(" > CELI service: {}",serviceURL);
 		
 		//init the supported languages (now configurable)

Modified: stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/SentimentAnalysisServiceClientHttp.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/SentimentAnalysisServiceClientHttp.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/SentimentAnalysisServiceClientHttp.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/SentimentAnalysisServiceClientHttp.java Tue Mar 19 09:46:18 2013
@@ -69,12 +69,6 @@ public class SentimentAnalysisServiceCli
      */
     private static final String SOAP_SUFFIX = "</soapenv:Body></soapenv:Envelope>";
 	
-	public static void main(String[]args) throws SOAPException, IOException{
-		SentimentAnalysisServiceClientHttp cl=new SentimentAnalysisServiceClientHttp(new URL("http://linguagrid.org/LSGrid/ws/sentiment-analysis"),null);
-		List<SentimentExpression> list = cl.extractSentimentExpressions("J'aime Paris", "fr");
-		for(SentimentExpression e:list)
-			System.out.println(e.getSnippetStr()+" "+e.getSentimentType());
-	}
 	private final URL serviceEP;
 	
 	private final String licenseKey;
@@ -82,10 +76,13 @@ public class SentimentAnalysisServiceCli
 	private final Map<String,String> requestHeaders;
 	
 	private final Logger log = LoggerFactory.getLogger(getClass());
+
+    private int connectionTimeout;
 	
-	public SentimentAnalysisServiceClientHttp(URL serviceUrl, String licenseKey){
+	public SentimentAnalysisServiceClientHttp(URL serviceUrl, String licenseKey, int connectionTimeout){
 		this.serviceEP=serviceUrl;
 		this.licenseKey = licenseKey;
+		this.connectionTimeout = connectionTimeout;
 		Map<String,String> headers = new HashMap<String,String>();
 		headers.put("Content-Type", CONTENT_TYPE);
 		if(licenseKey != null){
@@ -103,7 +100,7 @@ public class SentimentAnalysisServiceCli
 	    }
 
 	    //create the POST request
-		HttpURLConnection con = Utils.createPostRequest(serviceEP, requestHeaders);
+		HttpURLConnection con = Utils.createPostRequest(serviceEP, requestHeaders,connectionTimeout);
 		//write content
 		BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(con.getOutputStream(),UTF8));
 		writer.write(SOAP_PREFIX);

Modified: stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/utils/Utils.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/utils/Utils.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/utils/Utils.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/main/java/org/apache/stanbol/enhancer/engines/celi/utils/Utils.java Tue Mar 19 09:46:18 2013
@@ -39,6 +39,7 @@ public final class Utils {
      * The maximum size of the preix/suffix for the selection context
      */
     private static final int DEFAULT_SELECTION_CONTEXT_PREFIX_SUFFIX_SIZE = 50;
+    
     /**
      * Extracts the selection context based on the content, selection and
      * the start char offset of the selection
@@ -75,11 +76,13 @@ public final class Utils {
      * Creates a POST Request with the parsed URL and optional headers
      * @param serviceURL the service URL
      * @param headers optional header
+     * @param conTimeout the connection timeout in seconds. If &lt;= 0 the default
+     * (30sec) is used.
      * @return the HTTP connection
      * @throws IOException if the connection to the parsed service could not be established.
      * @throws IllegalArgumentException if <code>null</code> is parsed as service URL
      */
-    public static HttpURLConnection createPostRequest(URL serviceURL, Map<String,String> headers) throws IOException {
+    public static HttpURLConnection createPostRequest(URL serviceURL, Map<String,String> headers, int conTimeout) throws IOException {
         if(serviceURL == null){
             throw new IllegalArgumentException("The parsed service URL MUST NOT be NULL!");
         }
@@ -88,6 +91,11 @@ public final class Utils {
         urlConn.setDoInput(true);
         urlConn.setDoOutput(true);
         urlConn.setUseCaches(false);
+        if(conTimeout < 0){
+            conTimeout = CeliConstants.DEFAULT_CONECTION_TIMEOUT;
+        }
+        urlConn.setConnectTimeout(conTimeout*1000);
+        urlConn.setReadTimeout(conTimeout*1000);
         if(headers != null){
             for(Entry<String,String> entry : headers.entrySet()){
                 urlConn.setRequestProperty(entry.getKey(), entry.getValue());
@@ -130,4 +138,36 @@ public final class Utils {
         }
         return licenseKey;
     }
+    /**
+     * Retrieves the connection timeout from the enignes configuration
+     * @param configuration the configuration of the CELI engine
+     * @param ctx the {@link BundleContext} used to read the configuration of
+     * the environment.
+     * @return The connection timeout or <code>-1</code> if none is configured
+     */
+    public static int getConnectionTimeout(Dictionary<String,Object> configuration,BundleContext ctx) throws ConfigurationException {
+        Object value = configuration.get(CeliConstants.CELI_CONNECTION_TIMEOUT);
+        int timeout = -1;
+        if (value instanceof Number){
+            timeout = ((Number)value).intValue();
+        } else if(value != null){
+            try {
+                timeout = Integer.parseInt(value.toString());
+            } catch (NumberFormatException e) {
+                throw new ConfigurationException(CeliConstants.CELI_CONNECTION_TIMEOUT, 
+                    "The configured value '"+value+"'is not a valid integer",e);
+            }
+        } else {
+            value = ctx.getProperty(CeliConstants.CELI_TEST_ACCOUNT);
+            if(value != null){
+                try {
+                    timeout = Integer.parseInt(value.toString());
+                } catch (NumberFormatException e) {
+                    throw new ConfigurationException(CeliConstants.CELI_CONNECTION_TIMEOUT, 
+                        "The configured value '"+value+"' taken from the system properties is not a valid integer",e);
+                }
+            }
+        }
+        return timeout;
+    }
 }

Modified: stanbol/trunk/enhancement-engines/celi/src/main/resources/OSGI-INF/metatype/metatype.properties
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/main/resources/OSGI-INF/metatype/metatype.properties?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/main/resources/OSGI-INF/metatype/metatype.properties (original)
+++ stanbol/trunk/enhancement-engines/celi/src/main/resources/OSGI-INF/metatype/metatype.properties Tue Mar 19 09:46:18 2013
@@ -43,6 +43,11 @@ celi.testaccount.name=Enable Test Accoun
 celi.testaccount.description=If enabled it allows to test the CELI Engines without \
 an License Key. Requests are limited to 100 per day and IP address.
 
+
+celi.connectionTimeout.name=Connection Timeout
+celi.connectionTimeout.description=The connection timeout in seconds (values < 1 \
+will set the default 30sec; a timeout of zero is interpreted as an infinite timeout).
+
 #NER
 
 org.apache.stanbol.enhancer.engines.celi.ner.impl.CeliNamedEntityExtractionEnhancementEngine.name=Apache \

Modified: stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/CeliHttpTest.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/CeliHttpTest.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/CeliHttpTest.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/CeliHttpTest.java Tue Mar 19 09:46:18 2013
@@ -23,10 +23,9 @@ import java.net.URL;
 
 import javax.xml.soap.SOAPException;
 
-import junit.framework.Assert;
-
 import org.apache.stanbol.enhancer.engines.celi.langid.impl.LanguageIdentifierClientHTTP;
 import org.apache.stanbol.enhancer.test.helper.RemoteServiceHelper;
+import org.junit.Assert;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -45,7 +44,7 @@ public class CeliHttpTest {
     @Test(expected=IOException.class)
     public void testNonExistentAccountAuthentification() throws IOException, SOAPException {
         LanguageIdentifierClientHTTP testClient = new LanguageIdentifierClientHTTP(
-            new URL(CELI_LANGID_SERVICE_URL), "nonexistent:useraccount");
+            new URL(CELI_LANGID_SERVICE_URL), "nonexistent:useraccount",5);
         testClient.guessQueryLanguage("This is a dummy request");
     }
     /**
@@ -58,7 +57,7 @@ public class CeliHttpTest {
     @Test(expected=IOException.class)
     public void testIllegalFormattedAuthentification() throws IOException, SOAPException {
         LanguageIdentifierClientHTTP testClient = new LanguageIdentifierClientHTTP(
-            new URL(CELI_LANGID_SERVICE_URL), "illeagalFormatted");
+            new URL(CELI_LANGID_SERVICE_URL), "illeagalFormatted",5);
         testClient.guessQueryLanguage("This is a dummy request");
     }
     /**
@@ -71,7 +70,7 @@ public class CeliHttpTest {
     @Test
     public void testTestAccount() throws IOException, SOAPException {
         LanguageIdentifierClientHTTP testClient = new LanguageIdentifierClientHTTP(
-            new URL(CELI_LANGID_SERVICE_URL), null);
+            new URL(CELI_LANGID_SERVICE_URL), null,5);
         try {
             Assert.assertNotNull(testClient.guessQueryLanguage("This is a dummy request"));
         } catch (IOException e) {

Modified: stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/classification/impl/CeliClassificationEnhancementEngineTest.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/classification/impl/CeliClassificationEnhancementEngineTest.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/classification/impl/CeliClassificationEnhancementEngineTest.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/classification/impl/CeliClassificationEnhancementEngineTest.java Tue Mar 19 09:46:18 2013
@@ -69,6 +69,7 @@ public class CeliClassificationEnhanceme
 		Dictionary<String, Object> properties = new Hashtable<String, Object>();
 		properties.put(EnhancementEngine.PROPERTY_NAME, "celiClassification");
 		properties.put(CeliConstants.CELI_TEST_ACCOUNT, "true");
+		properties.put(CeliConstants.CELI_CONNECTION_TIMEOUT, "5");
 	    properties.put(CeliClassificationEnhancementEngine.SERVICE_URL, "http://linguagrid.org/LSGrid/ws/dbpedia-classification");
 	 	
 		MockComponentContext context = new MockComponentContext(properties);

Modified: stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/CeliLanguageIdentifierEnhancementEngineTest.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/CeliLanguageIdentifierEnhancementEngineTest.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/CeliLanguageIdentifierEnhancementEngineTest.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/CeliLanguageIdentifierEnhancementEngineTest.java Tue Mar 19 09:46:18 2013
@@ -60,6 +60,7 @@ public class CeliLanguageIdentifierEnhan
 		Dictionary<String, Object> properties = new Hashtable<String, Object>();
 		properties.put(EnhancementEngine.PROPERTY_NAME, "celiLangIdentifier");
         properties.put(CeliConstants.CELI_TEST_ACCOUNT, "true");
+        properties.put(CeliConstants.CELI_CONNECTION_TIMEOUT, "5");
 	    properties.put(CeliLanguageIdentifierEnhancementEngine.SERVICE_URL, CELI_LANGID_SERVICE_URL);
 	    
 		MockComponentContext context = new MockComponentContext(properties);

Modified: stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliAnalyzedTextLemmatizerEngineTest.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliAnalyzedTextLemmatizerEngineTest.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliAnalyzedTextLemmatizerEngineTest.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliAnalyzedTextLemmatizerEngineTest.java Tue Mar 19 09:46:18 2013
@@ -90,6 +90,7 @@ public class CeliAnalyzedTextLemmatizerE
         Dictionary<String, Object> properties = new Hashtable<String, Object>();
         properties.put(EnhancementEngine.PROPERTY_NAME, "celiLemmatizer");
         properties.put(CeliConstants.CELI_TEST_ACCOUNT, "true");
+        properties.put(CeliConstants.CELI_CONNECTION_TIMEOUT, "5");
         properties.put(SERVICE_URL, "http://linguagrid.org/LSGrid/ws/morpho-analyser");
         MockComponentContext context = new MockComponentContext(properties);
         engine = new CeliAnalyzedTextLemmatizerEngine();

Modified: stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliLemmatizerEnhancementEngineTest.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliLemmatizerEnhancementEngineTest.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliLemmatizerEnhancementEngineTest.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliLemmatizerEnhancementEngineTest.java Tue Mar 19 09:46:18 2013
@@ -82,6 +82,7 @@ public class CeliLemmatizerEnhancementEn
 		properties.put(EnhancementEngine.PROPERTY_NAME, "celiLemmatizer");
         properties.put(CeliConstants.CELI_TEST_ACCOUNT, "true");
 	    properties.put(SERVICE_URL, "http://linguagrid.org/LSGrid/ws/morpho-analyser");
+        properties.put(CeliConstants.CELI_CONNECTION_TIMEOUT, "5");
 	    properties.put(MORPHOLOGICAL_ANALYSIS, completeMorphoAnalysis);
 		MockComponentContext context = new MockComponentContext(properties);
 		CeliLemmatizerEnhancementEngine morphoAnalysisEngine = new CeliLemmatizerEnhancementEngine();

Modified: stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/CeliNamedEntityExtractionEnhancementEngineTest.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/CeliNamedEntityExtractionEnhancementEngineTest.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/CeliNamedEntityExtractionEnhancementEngineTest.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/CeliNamedEntityExtractionEnhancementEngineTest.java Tue Mar 19 09:46:18 2013
@@ -80,6 +80,7 @@ public class CeliNamedEntityExtractionEn
         properties.put(CeliConstants.CELI_TEST_ACCOUNT, "true");
 	    properties.put(CeliNamedEntityExtractionEnhancementEngine.SERVICE_URL, "http://linguagrid.org/LSGrid/ws/com.celi-france.linguagrid.namedentityrecognition.v0u0.demo");
 	    properties.put(CeliNamedEntityExtractionEnhancementEngine.SUPPORTED_LANGUAGES, "fr;it");
+        properties.put(CeliConstants.CELI_CONNECTION_TIMEOUT, "5");
 	    MockComponentContext context = new MockComponentContext(properties);
 		nerEngine.activate(context);
 	}

Modified: stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliAnalyzedTextSentimentAnalysisEngineTest.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliAnalyzedTextSentimentAnalysisEngineTest.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliAnalyzedTextSentimentAnalysisEngineTest.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliAnalyzedTextSentimentAnalysisEngineTest.java Tue Mar 19 09:46:18 2013
@@ -76,6 +76,7 @@ public class CeliAnalyzedTextSentimentAn
         properties.put(EnhancementEngine.PROPERTY_NAME, "celiSentimentAnalysis");
 		properties.put(CeliConstants.CELI_TEST_ACCOUNT, "true");
 		properties.put(CeliAnalyzedTextSentimentAnalysisEngine.SERVICE_URL, CELI_SENTIMENT_ANALYSIS_SERVICE_URL);
+        properties.put(CeliConstants.CELI_CONNECTION_TIMEOUT, "5");
 		MockComponentContext context = new MockComponentContext(properties);
         engine =  new CeliAnalyzedTextSentimentAnalysisEngine();
         engine.activate(context);

Modified: stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliSentimentAnalysisEngineTest.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliSentimentAnalysisEngineTest.java?rev=1458191&r1=1458190&r2=1458191&view=diff
==============================================================================
--- stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliSentimentAnalysisEngineTest.java (original)
+++ stanbol/trunk/enhancement-engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/sentimentanalysis/impl/CeliSentimentAnalysisEngineTest.java Tue Mar 19 09:46:18 2013
@@ -69,7 +69,7 @@ public class CeliSentimentAnalysisEngine
 		properties.put(CeliConstants.CELI_TEST_ACCOUNT, "true");
 		properties.put(CeliSentimentAnalysisEngine.SERVICE_URL, CELI_SENTIMENT_ANALYSIS_SERVICE_URL);
 		properties.put(CeliSentimentAnalysisEngine.SUPPORTED_LANGUAGES, "fr;it");
-
+        properties.put(CeliConstants.CELI_CONNECTION_TIMEOUT, "5");
 		MockComponentContext context = new MockComponentContext(properties);
 		sentimentAnalysisEngine.activate(context);
 	}