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 2012/10/03 12:38:57 UTC

svn commit: r1393396 - in /stanbol/trunk/enhancer: chain/graph/src/main/java/org/apache/stanbol/enhancer/chain/graph/impl/ chain/list/src/main/java/org/apache/stanbol/enhancer/chain/list/impl/ engines/celi/src/test/java/org/apache/stanbol/enhancer/engi...

Author: rwesten
Date: Wed Oct  3 10:38:56 2012
New Revision: 1393396

URL: http://svn.apache.org/viewvc?rev=1393396&view=rev
Log:
STANBOL-759: Implementation of the RemoteServiceHelperUtility; Utility is now used by all EnhancementEngineTests that do access remote services; Minor Changes: ListChain now accepts EngineNames parsed as a Vector, activate/deactivate Method of GraphChain are now protected; added target folder of the new UIMA engines to svn ignore

Added:
    stanbol/trunk/enhancer/generic/test/src/main/java/org/apache/stanbol/enhancer/test/helper/RemoteServiceHelper.java
Modified:
    stanbol/trunk/enhancer/chain/graph/src/main/java/org/apache/stanbol/enhancer/chain/graph/impl/GraphChain.java
    stanbol/trunk/enhancer/chain/list/src/main/java/org/apache/stanbol/enhancer/chain/list/impl/ListChain.java
    stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/CeliHttpTest.java
    stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/CeliLanguageIdentifierEnhancementEngineTest.java
    stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliLemmatizerEnhancementEngineTest.java
    stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/CeliNamedEntityExtractionEnhancementEngineTest.java
    stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/testutils/TestUtils.java
    stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/annotate/DBPSpotlightAnnotateEnhancementTest.java
    stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/candidates/DBPSpotlightCandidatesEnhancementTest.java
    stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/disambiguate/DBPSpotlightDisambiguateEnhancementTest.java
    stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/spot/DBPSpotlightSpotEnhancementTest.java
    stanbol/trunk/enhancer/engines/geonames/src/test/java/org/apache/stanbol/enhancer/engines/geonames/impl/TestLocationEnhancementEngine.java
    stanbol/trunk/enhancer/engines/opencalais/src/test/java/org/apache/stanbol/enhancer/engines/opencalais/impl/TestOpenCalaisEngine.java
    stanbol/trunk/enhancer/engines/uimalocal-template/   (props changed)
    stanbol/trunk/enhancer/engines/uimaremote/   (props changed)
    stanbol/trunk/enhancer/engines/uimatotriples/   (props changed)
    stanbol/trunk/enhancer/engines/zemanta/src/test/java/org/apache/stanbol/enhancer/engines/zemanta/impl/ZemantaEnhancementEngineTest.java

Modified: stanbol/trunk/enhancer/chain/graph/src/main/java/org/apache/stanbol/enhancer/chain/graph/impl/GraphChain.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancer/chain/graph/src/main/java/org/apache/stanbol/enhancer/chain/graph/impl/GraphChain.java?rev=1393396&r1=1393395&r2=1393396&view=diff
==============================================================================
--- stanbol/trunk/enhancer/chain/graph/src/main/java/org/apache/stanbol/enhancer/chain/graph/impl/GraphChain.java (original)
+++ stanbol/trunk/enhancer/chain/graph/src/main/java/org/apache/stanbol/enhancer/chain/graph/impl/GraphChain.java Wed Oct  3 10:38:56 2012
@@ -176,7 +176,7 @@ public class GraphChain extends Abstract
 
     @Activate
     @Override
-    public void activate(ComponentContext ctx) throws ConfigurationException {
+    protected void activate(ComponentContext ctx) throws ConfigurationException {
         super.activate(ctx);
         Object resource = ctx.getProperties().get(PROPERTY_GRAPH_RESOURCE);
         Object list = ctx.getProperties().get(PROPERTY_CHAIN_LIST);
@@ -245,7 +245,7 @@ public class GraphChain extends Abstract
     }
     @Deactivate
     @Override
-    public void deactivate(ComponentContext ctx){
+    protected void deactivate(ComponentContext ctx){
         if(mode == MODE.RESOURCE && tracker != null){
             //we need to remove the ExecutionPlanListerner
             tracker.removeAll((DataFileListener)internalChain);

Modified: stanbol/trunk/enhancer/chain/list/src/main/java/org/apache/stanbol/enhancer/chain/list/impl/ListChain.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancer/chain/list/src/main/java/org/apache/stanbol/enhancer/chain/list/impl/ListChain.java?rev=1393396&r1=1393395&r2=1393396&view=diff
==============================================================================
--- stanbol/trunk/enhancer/chain/list/src/main/java/org/apache/stanbol/enhancer/chain/list/impl/ListChain.java (original)
+++ stanbol/trunk/enhancer/chain/list/src/main/java/org/apache/stanbol/enhancer/chain/list/impl/ListChain.java Wed Oct  3 10:38:56 2012
@@ -107,9 +107,15 @@ public class ListChain extends AbstractC
         List<String> configuredChain = new ArrayList<String>();
         if(value instanceof String[]){
             configuredChain.addAll(Arrays.asList((String[])value));
+        } else if(value instanceof List<?>){
+            for(Object o : (List<?>)value){
+                if(o != null){
+                    configuredChain.add(o.toString());
+                }
+            }
         } else {
             throw new ConfigurationException(PROPERTY_ENGINE_LIST, 
-                "The engines of a List Chain MUST BE configured as Array of " +
+                "The engines of a List Chain MUST BE configured as Array/List of " +
                 "Strings (parsed: "+
                         (value != null?value.getClass():"null")+")");
         }

Modified: stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/CeliHttpTest.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/CeliHttpTest.java?rev=1393396&r1=1393395&r2=1393396&view=diff
==============================================================================
--- stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/CeliHttpTest.java (original)
+++ stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/CeliHttpTest.java Wed Oct  3 10:38:56 2012
@@ -19,16 +19,26 @@ package org.apache.stanbol.enhancer.engi
 import static org.apache.stanbol.enhancer.engines.celi.langid.impl.CeliLanguageIdentifierEnhancementEngineTest.CELI_LANGID_SERVICE_URL;
 
 import java.io.IOException;
+import java.net.SocketTimeoutException;
 import java.net.URL;
+import java.net.UnknownHostException;
 
+import javax.print.attribute.standard.MediaSize.Engineering;
 import javax.xml.soap.SOAPException;
 
 import junit.framework.Assert;
 
 import org.apache.stanbol.enhancer.engines.celi.langid.impl.LanguageIdentifierClientHTTP;
+import org.apache.stanbol.enhancer.engines.celi.testutils.TestUtils;
+import org.apache.stanbol.enhancer.servicesapi.EngineException;
+import org.apache.stanbol.enhancer.test.helper.RemoteServiceHelper;
 import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class CeliHttpTest {
+    
+    public static final Logger log = LoggerFactory.getLogger(CeliHttpTest.class);
 
     /**
      * None Existing user account should throw an IOException with 
@@ -67,7 +77,11 @@ public class CeliHttpTest {
     public void testTestAccount() throws IOException, SOAPException {
         LanguageIdentifierClientHTTP testClient = new LanguageIdentifierClientHTTP(
             new URL(CELI_LANGID_SERVICE_URL), null);
-        Assert.assertNotNull(testClient.guessQueryLanguage("This is a dummy request"));
+        try {
+            Assert.assertNotNull(testClient.guessQueryLanguage("This is a dummy request"));
+        } catch (IOException e) {
+            RemoteServiceHelper.checkServiceUnavailable(e);
+        }
     }
     
 }

Modified: stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/CeliLanguageIdentifierEnhancementEngineTest.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/CeliLanguageIdentifierEnhancementEngineTest.java?rev=1393396&r1=1393395&r2=1393396&view=diff
==============================================================================
--- stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/CeliLanguageIdentifierEnhancementEngineTest.java (original)
+++ stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/langid/impl/CeliLanguageIdentifierEnhancementEngineTest.java Wed Oct  3 10:38:56 2012
@@ -40,6 +40,7 @@ import org.apache.stanbol.enhancer.servi
 import org.apache.stanbol.enhancer.servicesapi.helper.EnhancementEngineHelper;
 import org.apache.stanbol.enhancer.servicesapi.impl.StringSource;
 import org.apache.stanbol.enhancer.servicesapi.rdf.Properties;
+import org.apache.stanbol.enhancer.test.helper.RemoteServiceHelper;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Test;
@@ -103,11 +104,7 @@ public class CeliLanguageIdentifierEnhan
 	        int entityAnnoNum = validateAllEntityAnnotations(ci.getMetadata(), expectedValues);
 	        assertEquals("No EntityAnnotations are expected",0, entityAnnoNum);
 		} catch (EngineException e) {
-			if (e.getCause() != null && e.getCause() instanceof UnknownHostException) {
-				log.warn("Celi Service not reachable -> offline? -> deactivate test");
-				return;
-			}
-			throw e;
+            RemoteServiceHelper.checkServiceUnavailable(e);
 		}
 	}
 

Modified: stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliLemmatizerEnhancementEngineTest.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliLemmatizerEnhancementEngineTest.java?rev=1393396&r1=1393395&r2=1393396&view=diff
==============================================================================
--- stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliLemmatizerEnhancementEngineTest.java (original)
+++ stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/lemmatizer/impl/CeliLemmatizerEnhancementEngineTest.java Wed Oct  3 10:38:56 2012
@@ -60,6 +60,7 @@ import org.apache.stanbol.enhancer.servi
 import org.apache.stanbol.enhancer.servicesapi.EnhancementEngine;
 import org.apache.stanbol.enhancer.servicesapi.impl.StringSource;
 import org.apache.stanbol.enhancer.servicesapi.rdf.Properties;
+import org.apache.stanbol.enhancer.test.helper.RemoteServiceHelper;
 import org.junit.Assert;
 import org.junit.Test;
 import org.osgi.service.cm.ConfigurationException;
@@ -149,11 +150,7 @@ public class CeliLemmatizerEnhancementEn
         try {
             morphoAnalysisEngine.computeEnhancements(ci);
         } catch (EngineException e) {
-            if (e.getCause() != null && e.getCause() instanceof UnknownHostException) {
-                log.warn("Celi Service not reachable -> offline? -> deactivate test");
-                return;
-            }
-            throw e;
+            RemoteServiceHelper.checkServiceUnavailable(e);
         }
 
         TestUtils.logEnhancements(ci);

Modified: stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/CeliNamedEntityExtractionEnhancementEngineTest.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/CeliNamedEntityExtractionEnhancementEngineTest.java?rev=1393396&r1=1393395&r2=1393396&view=diff
==============================================================================
--- stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/CeliNamedEntityExtractionEnhancementEngineTest.java (original)
+++ stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/ner/impl/CeliNamedEntityExtractionEnhancementEngineTest.java Wed Oct  3 10:38:56 2012
@@ -42,6 +42,7 @@ import org.apache.stanbol.enhancer.servi
 import org.apache.stanbol.enhancer.servicesapi.impl.StringSource;
 import org.apache.stanbol.enhancer.servicesapi.rdf.Properties;
 import org.apache.stanbol.enhancer.test.helper.EnhancementStructureHelper;
+import org.apache.stanbol.enhancer.test.helper.RemoteServiceHelper;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Test;
@@ -110,11 +111,7 @@ public class CeliNamedEntityExtractionEn
 	        int entityAnnoNum = EnhancementStructureHelper.validateAllEntityAnnotations(ci.getMetadata(),expectedValues);
 	        log.info(entityAnnoNum + " EntityAnnotations found ...");
 		} catch (EngineException e) {
-			if (e.getCause() != null && e.getCause() instanceof UnknownHostException) {
-				log.warn("Celi Service not reachable -> offliCeliNamedEntityExtractionEnhancementEnginene? -> deactivate test");
-				return;
-			}
-			throw e;
+            RemoteServiceHelper.checkServiceUnavailable(e);
 		}
     }
     

Modified: stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/testutils/TestUtils.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/testutils/TestUtils.java?rev=1393396&r1=1393395&r2=1393396&view=diff
==============================================================================
--- stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/testutils/TestUtils.java (original)
+++ stanbol/trunk/enhancer/engines/celi/src/test/java/org/apache/stanbol/enhancer/engines/celi/testutils/TestUtils.java Wed Oct  3 10:38:56 2012
@@ -19,10 +19,13 @@ package org.apache.stanbol.enhancer.engi
 import static org.apache.clerezza.rdf.core.serializedform.SupportedFormat.TURTLE;
 
 import java.io.ByteArrayOutputStream;
+import java.net.SocketTimeoutException;
+import java.net.UnknownHostException;
 import java.nio.charset.Charset;
 
 import org.apache.clerezza.rdf.jena.serializer.JenaSerializerProvider;
 import org.apache.stanbol.enhancer.servicesapi.ContentItem;
+import org.apache.stanbol.enhancer.servicesapi.EngineException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -39,5 +42,4 @@ public final class TestUtils {
         log.info("Enhancements: \n{}",new String(logOut.toByteArray(),Charset.forName("UTF-8")));
     }
 
-
 }

Modified: stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/annotate/DBPSpotlightAnnotateEnhancementTest.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/annotate/DBPSpotlightAnnotateEnhancementTest.java?rev=1393396&r1=1393395&r2=1393396&view=diff
==============================================================================
--- stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/annotate/DBPSpotlightAnnotateEnhancementTest.java (original)
+++ stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/annotate/DBPSpotlightAnnotateEnhancementTest.java Wed Oct  3 10:38:56 2012
@@ -44,6 +44,7 @@ import org.apache.stanbol.enhancer.servi
 import org.apache.stanbol.enhancer.servicesapi.impl.StringSource;
 import org.apache.stanbol.enhancer.servicesapi.rdf.Properties;
 import org.apache.stanbol.enhancer.test.helper.EnhancementStructureHelper;
+import org.apache.stanbol.enhancer.test.helper.RemoteServiceHelper;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.BeforeClass;
@@ -94,17 +95,17 @@ public class DBPSpotlightAnnotateEnhance
 	}
 
 	@Test
-	public void testEntityExtraction() {
+	public void testEntityExtraction() throws EngineException{
 		Collection<Annotation> entities;
 		try {
 			entities = dbpslight.doPostRequest(TEST_TEXT,ci.getUri());
-			LOG.info("Found entities: {}", entities.size());
-			LOG.debug("Entities:\n{}", entities);
-			Assert.assertFalse("No entities were found!", entities.isEmpty());
 		} catch (EngineException e) {
-			Assert.assertFalse("An EngineException occurred! The message was: "
-					+ e.getMessage(), true);
+            RemoteServiceHelper.checkServiceUnavailable(e);
+            return;
 		}
+        LOG.info("Found entities: {}", entities.size());
+        LOG.debug("Entities:\n{}", entities);
+        Assert.assertFalse("No entities were found!", entities.isEmpty());
 	}
 	@Test
 	public void testCanEnhance() throws EngineException {
@@ -117,7 +118,11 @@ public class DBPSpotlightAnnotateEnhance
 	 */
 	@Test
 	public void testEnhancement() throws EngineException {
-		dbpslight.computeEnhancements(ci);
+	    try {
+	        dbpslight.computeEnhancements(ci);
+	    } catch (EngineException e) {
+            RemoteServiceHelper.checkServiceUnavailable(e);
+        }
         HashMap<UriRef,Resource> expectedValues = new HashMap<UriRef,Resource>();
         expectedValues.put(Properties.ENHANCER_EXTRACTED_FROM, ci.getUri());
         expectedValues.put(Properties.DC_CREATOR, LiteralFactory.getInstance().createTypedLiteral(

Modified: stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/candidates/DBPSpotlightCandidatesEnhancementTest.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/candidates/DBPSpotlightCandidatesEnhancementTest.java?rev=1393396&r1=1393395&r2=1393396&view=diff
==============================================================================
--- stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/candidates/DBPSpotlightCandidatesEnhancementTest.java (original)
+++ stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/candidates/DBPSpotlightCandidatesEnhancementTest.java Wed Oct  3 10:38:56 2012
@@ -44,6 +44,7 @@ import org.apache.stanbol.enhancer.servi
 import org.apache.stanbol.enhancer.servicesapi.impl.StringSource;
 import org.apache.stanbol.enhancer.servicesapi.rdf.Properties;
 import org.apache.stanbol.enhancer.test.helper.EnhancementStructureHelper;
+import org.apache.stanbol.enhancer.test.helper.RemoteServiceHelper;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.BeforeClass;
@@ -94,11 +95,17 @@ public class DBPSpotlightCandidatesEnhan
 		assertEquals("en", EnhancementEngineHelper.getLanguage(ci));
 	}
 	@Test
-	public void testEntityExtraction() throws Exception{
-		Collection<SurfaceForm> entities = dbpslight.doPostRequest(TEST_TEXT,ci.getUri());
-			LOG.info("Found entities: {}", entities.size());
-			LOG.debug("Entities:\n{}", entities);
-			Assert.assertFalse("No entities were found!", entities.isEmpty());
+	public void testEntityExtraction() throws EngineException {
+		Collection<SurfaceForm> entities;
+        try {
+            entities = dbpslight.doPostRequest(TEST_TEXT,ci.getUri());
+        } catch (EngineException e) {
+            RemoteServiceHelper.checkServiceUnavailable(e);
+            return;
+        }
+        LOG.info("Found entities: {}", entities.size());
+        LOG.debug("Entities:\n{}", entities);
+        Assert.assertFalse("No entities were found!", entities.isEmpty());
 	}
 	@Test
 	public void testCanEnhance() throws EngineException {
@@ -111,7 +118,12 @@ public class DBPSpotlightCandidatesEnhan
 	 */
 	@Test
 	public void testEnhancement() throws EngineException {
-		dbpslight.computeEnhancements(ci);
+		try {
+            dbpslight.computeEnhancements(ci);
+        } catch (EngineException e) {
+            RemoteServiceHelper.checkServiceUnavailable(e);
+            return;
+        }
         HashMap<UriRef,Resource> expectedValues = new HashMap<UriRef,Resource>();
         expectedValues.put(Properties.ENHANCER_EXTRACTED_FROM, ci.getUri());
         expectedValues.put(Properties.DC_CREATOR, LiteralFactory.getInstance().createTypedLiteral(

Modified: stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/disambiguate/DBPSpotlightDisambiguateEnhancementTest.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/disambiguate/DBPSpotlightDisambiguateEnhancementTest.java?rev=1393396&r1=1393395&r2=1393396&view=diff
==============================================================================
--- stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/disambiguate/DBPSpotlightDisambiguateEnhancementTest.java (original)
+++ stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/disambiguate/DBPSpotlightDisambiguateEnhancementTest.java Wed Oct  3 10:38:56 2012
@@ -49,6 +49,7 @@ import org.apache.stanbol.enhancer.servi
 import org.apache.stanbol.enhancer.servicesapi.rdf.OntologicalClasses;
 import org.apache.stanbol.enhancer.servicesapi.rdf.Properties;
 import org.apache.stanbol.enhancer.test.helper.EnhancementStructureHelper;
+import org.apache.stanbol.enhancer.test.helper.RemoteServiceHelper;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.BeforeClass;
@@ -123,21 +124,22 @@ public class DBPSpotlightDisambiguateEnh
 	}
 
 	@Test
-	public void testEntityExtraction() {
-		Collection<Annotation> entities;
-		try {
-			spotsXml = IOUtils.toString(this.getClass().getClassLoader()
-					.getResourceAsStream(testFile));
-			System.out.println(SPL_URL);
+	public void testEntityExtraction() throws IOException, EngineException {
+		spotsXml = IOUtils.toString(this.getClass().getClassLoader()
+				.getResourceAsStream(testFile));
+		System.out.println(SPL_URL);
+        Collection<Annotation> entities;
+        try {
 			entities = dbpslight.doPostRequest(TEST_TEXT, spotsXml,ci.getUri());
-			LOG.info("Found entities: {}", entities.size());
-			LOG.debug("Entities:\n{}", entities);
-			Assert.assertFalse("No entities were found!", entities.isEmpty());
-		} catch (Exception e) {
-			Assert.assertFalse("An EngineException occurred! The message was: "
-					+ e.getMessage(), true);
-		}
+        } catch (EngineException e) {
+            RemoteServiceHelper.checkServiceUnavailable(e);
+            return;
+        }
+		LOG.info("Found entities: {}", entities.size());
+		LOG.debug("Entities:\n{}", entities);
+		Assert.assertFalse("No entities were found!", entities.isEmpty());
 	}
+	
 	@Test
 	public void testCanEnhance() throws EngineException {
 		assertEquals(ENHANCE_ASYNC, dbpslight.canEnhance(ci));
@@ -149,7 +151,12 @@ public class DBPSpotlightDisambiguateEnh
 	 */
 	@Test
 	public void testEnhancement() throws EngineException {
-		dbpslight.computeEnhancements(ci);
+		try {
+            dbpslight.computeEnhancements(ci);
+        } catch (EngineException e) {
+            RemoteServiceHelper.checkServiceUnavailable(e);
+            return;
+        }
         HashMap<UriRef,Resource> expectedValues = new HashMap<UriRef,Resource>();
         expectedValues.put(Properties.ENHANCER_EXTRACTED_FROM, ci.getUri());
         expectedValues.put(Properties.DC_CREATOR, LiteralFactory.getInstance().createTypedLiteral(

Modified: stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/spot/DBPSpotlightSpotEnhancementTest.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/spot/DBPSpotlightSpotEnhancementTest.java?rev=1393396&r1=1393395&r2=1393396&view=diff
==============================================================================
--- stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/spot/DBPSpotlightSpotEnhancementTest.java (original)
+++ stanbol/trunk/enhancer/engines/dbpedia-spotlight/src/test/java/org/apache/stanbol/enhancer/engines/dbpspotlight/spot/DBPSpotlightSpotEnhancementTest.java Wed Oct  3 10:38:56 2012
@@ -45,6 +45,7 @@ import org.apache.stanbol.enhancer.servi
 import org.apache.stanbol.enhancer.servicesapi.impl.StringSource;
 import org.apache.stanbol.enhancer.servicesapi.rdf.Properties;
 import org.apache.stanbol.enhancer.test.helper.EnhancementStructureHelper;
+import org.apache.stanbol.enhancer.test.helper.RemoteServiceHelper;
 import org.junit.Before;
 import org.junit.BeforeClass;
 import org.junit.Test;
@@ -96,9 +97,14 @@ public class DBPSpotlightSpotEnhancement
 	}
 	
 	@Test
-	public void testEntityExtraction() throws Exception {
+	public void testEntityExtraction() throws EngineException {
 		Collection<SurfaceForm> entities;
-		entities = dbpslight.doPostRequest(TEST_TEXT,ci.getUri());
+		try {
+            entities = dbpslight.doPostRequest(TEST_TEXT,ci.getUri());
+        } catch (EngineException e) {
+            RemoteServiceHelper.checkServiceUnavailable(e);
+            return;
+        }
 		LOG.info("Found entities: {}", entities.size());
 		LOG.debug("Entities:\n{}", entities);
 		assertFalse("No entities were found!", entities.isEmpty());
@@ -115,7 +121,12 @@ public class DBPSpotlightSpotEnhancement
 	 */
 	@Test
 	public void testEnhancement() throws EngineException {
-		dbpslight.computeEnhancements(ci);
+		try {
+            dbpslight.computeEnhancements(ci);
+        } catch (EngineException e) {
+            RemoteServiceHelper.checkServiceUnavailable(e);
+            return;
+        }
         HashMap<UriRef,Resource> expectedValues = new HashMap<UriRef,Resource>();
         expectedValues.put(Properties.ENHANCER_EXTRACTED_FROM, ci.getUri());
         expectedValues.put(Properties.DC_CREATOR, LiteralFactory.getInstance().createTypedLiteral(

Modified: stanbol/trunk/enhancer/engines/geonames/src/test/java/org/apache/stanbol/enhancer/engines/geonames/impl/TestLocationEnhancementEngine.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancer/engines/geonames/src/test/java/org/apache/stanbol/enhancer/engines/geonames/impl/TestLocationEnhancementEngine.java?rev=1393396&r1=1393395&r2=1393396&view=diff
==============================================================================
--- stanbol/trunk/enhancer/engines/geonames/src/test/java/org/apache/stanbol/enhancer/engines/geonames/impl/TestLocationEnhancementEngine.java (original)
+++ stanbol/trunk/enhancer/engines/geonames/src/test/java/org/apache/stanbol/enhancer/engines/geonames/impl/TestLocationEnhancementEngine.java Wed Oct  3 10:38:56 2012
@@ -44,6 +44,7 @@ import org.apache.stanbol.enhancer.servi
 import org.apache.stanbol.enhancer.servicesapi.EngineException;
 import org.apache.stanbol.enhancer.servicesapi.impl.StringSource;
 import org.apache.stanbol.enhancer.servicesapi.rdf.Properties;
+import org.apache.stanbol.enhancer.test.helper.RemoteServiceHelper;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Test;
@@ -129,7 +130,7 @@ public class TestLocationEnhancementEngi
     }
 
     @Test
-    public void testLocationEnhancementEngine() throws IOException {
+    public void testLocationEnhancementEngine() throws IOException, EngineException {
         //create a content item
         ContentItem ci = getContentItem("urn:org.apache:stanbol.enhancer:text:content-item:person", CONTEXT);
         //add three text annotations to be consumed by this test
@@ -140,18 +141,8 @@ public class TestLocationEnhancementEngi
         try {
             locationEnhancementEngine.computeEnhancements(ci);
         } catch (EngineException e) {
-            if (e.getCause() instanceof UnknownHostException) {
-                log.warn("Unable to test LocationEnhancemetEngine when offline! -> skipping this test", e.getCause());
-                return;
-            } else if (e.getCause() instanceof SocketTimeoutException) {
-                log.warn("Seams like the geonames.org webservice is currently unavailable -> skipping this test", e.getCause());
-                return;
-            } else if (e.getMessage().contains("overloaded with requests")) {
-                log.warn(
-                        "Seams like the geonames.org webservice is currently unavailable -> skipping this test",
-                        e.getCause());
-                return;
-            }
+            RemoteServiceHelper.checkServiceUnavailable(e, "overloaded with requests");
+            return;
         }
         Map<UriRef,Resource> expectedValues = new HashMap<UriRef,Resource>();
         expectedValues.put(Properties.ENHANCER_EXTRACTED_FROM, ci.getUri());

Modified: stanbol/trunk/enhancer/engines/opencalais/src/test/java/org/apache/stanbol/enhancer/engines/opencalais/impl/TestOpenCalaisEngine.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancer/engines/opencalais/src/test/java/org/apache/stanbol/enhancer/engines/opencalais/impl/TestOpenCalaisEngine.java?rev=1393396&r1=1393395&r2=1393396&view=diff
==============================================================================
--- stanbol/trunk/enhancer/engines/opencalais/src/test/java/org/apache/stanbol/enhancer/engines/opencalais/impl/TestOpenCalaisEngine.java (original)
+++ stanbol/trunk/enhancer/engines/opencalais/src/test/java/org/apache/stanbol/enhancer/engines/opencalais/impl/TestOpenCalaisEngine.java Wed Oct  3 10:38:56 2012
@@ -38,6 +38,7 @@ import org.apache.stanbol.enhancer.servi
 import org.apache.stanbol.enhancer.servicesapi.impl.StringSource;
 import org.apache.stanbol.enhancer.servicesapi.rdf.Properties;
 import org.apache.stanbol.enhancer.test.helper.EnhancementStructureHelper;
+import org.apache.stanbol.enhancer.test.helper.RemoteServiceHelper;
 import org.junit.Assert;
 import org.junit.Assume;
 import org.junit.BeforeClass;
@@ -97,7 +98,13 @@ public class TestOpenCalaisEngine {
         Assert.assertNotNull("failed to load resource " + testFile, in);
         MGraph model = calaisExtractor.readModel(in, format);
         Assert.assertNotNull("model reader failed with format: " + format, model);
-        Collection<CalaisEntityOccurrence> entities = calaisExtractor.queryModel(model);
+        Collection<CalaisEntityOccurrence> entities;
+        try {
+            entities = calaisExtractor.queryModel(model);
+        } catch (EngineException e) {
+            RemoteServiceHelper.checkServiceUnavailable(e);
+            return;
+        }
         LOG.info("Found entities: {}", entities.size());
         LOG.debug("Entities:\n{}", entities);
         Assert.assertFalse("No entities found!", entities.isEmpty());
@@ -117,22 +124,30 @@ public class TestOpenCalaisEngine {
     }
 
     @Test
-    public void testCalaisConnection() throws IOException {
+    public void testCalaisConnection() throws IOException, EngineException {
         Assume.assumeNotNull(calaisExtractor.getLicenseKey());
+        ContentItem ci = wrapAsContentItem(TEST_TEXT);
+        ci.getMetadata().add(
+            new TripleImpl(ci.getUri(), Properties.DC_LANGUAGE, LiteralFactory.getInstance()
+                    .createTypedLiteral("en")));
+        MGraph model;
+        try {
+            model = calaisExtractor.getCalaisAnalysis(TEST_TEXT, "text/plain");
+        } catch (EngineException e) {
+            RemoteServiceHelper.checkServiceUnavailable(e);
+            return;
+        }
+        Assert.assertNotNull("No model", model);
+        Collection<CalaisEntityOccurrence> entities;
         try {
-            ContentItem ci = wrapAsContentItem(TEST_TEXT);
-            ci.getMetadata().add(
-                new TripleImpl(ci.getUri(), Properties.DC_LANGUAGE, LiteralFactory.getInstance()
-                        .createTypedLiteral("en")));
-            MGraph model = calaisExtractor.getCalaisAnalysis(TEST_TEXT, "text/plain");
-            Assert.assertNotNull("No model", model);
-            Collection<CalaisEntityOccurrence> entities = calaisExtractor.queryModel(model);
-            LOG.info("Found entities: {}", entities.size());
-            LOG.debug("Entities:\n{}", entities);
-            Assert.assertFalse("No entities found!", entities.isEmpty());
+            entities = calaisExtractor.queryModel(model);
         } catch (EngineException e) {
-            Assert.fail("Connection problem: " + e.getMessage());
+            RemoteServiceHelper.checkServiceUnavailable(e);
+            return;
         }
+        LOG.info("Found entities: {}", entities.size());
+        LOG.debug("Entities:\n{}", entities);
+        Assert.assertFalse("No entities found!", entities.isEmpty());
     }
 
     // problem with license keys for testing?

Propchange: stanbol/trunk/enhancer/engines/uimalocal-template/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Oct  3 10:38:56 2012
@@ -0,0 +1 @@
+target

Propchange: stanbol/trunk/enhancer/engines/uimaremote/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Oct  3 10:38:56 2012
@@ -0,0 +1 @@
+target

Propchange: stanbol/trunk/enhancer/engines/uimatotriples/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Oct  3 10:38:56 2012
@@ -0,0 +1 @@
+target

Modified: stanbol/trunk/enhancer/engines/zemanta/src/test/java/org/apache/stanbol/enhancer/engines/zemanta/impl/ZemantaEnhancementEngineTest.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancer/engines/zemanta/src/test/java/org/apache/stanbol/enhancer/engines/zemanta/impl/ZemantaEnhancementEngineTest.java?rev=1393396&r1=1393395&r2=1393396&view=diff
==============================================================================
--- stanbol/trunk/enhancer/engines/zemanta/src/test/java/org/apache/stanbol/enhancer/engines/zemanta/impl/ZemantaEnhancementEngineTest.java (original)
+++ stanbol/trunk/enhancer/engines/zemanta/src/test/java/org/apache/stanbol/enhancer/engines/zemanta/impl/ZemantaEnhancementEngineTest.java Wed Oct  3 10:38:56 2012
@@ -40,6 +40,7 @@ import org.apache.stanbol.enhancer.servi
 import org.apache.stanbol.enhancer.servicesapi.impl.StringSource;
 import org.apache.stanbol.enhancer.servicesapi.rdf.Properties;
 import org.apache.stanbol.enhancer.test.helper.EnhancementStructureHelper;
+import org.apache.stanbol.enhancer.test.helper.RemoteServiceHelper;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Test;
@@ -98,16 +99,13 @@ public class ZemantaEnhancementEngineTes
     }
 
     @Test
-    public void tesetBioText() throws Exception {
+    public void tesetBioText()  throws EngineException, IOException {
         ContentItem ci = wrapAsContentItem(BIO_DOMAIN_TEXT);
         try {
             zemantaEngine.computeEnhancements(ci);
         } catch (EngineException e) {
-            if(e.getCause() != null && e.getCause() instanceof UnknownHostException){
-                log.warn("Zemanta Service not reachable -> offline? -> deactivate test");
-                return;
-            }
-            throw e;
+            RemoteServiceHelper.checkServiceUnavailable(e);
+            return;
         }
         JenaSerializerProvider serializer = new JenaSerializerProvider();
         serializer.serialize(System.out, ci.getMetadata(), TURTLE);

Added: stanbol/trunk/enhancer/generic/test/src/main/java/org/apache/stanbol/enhancer/test/helper/RemoteServiceHelper.java
URL: http://svn.apache.org/viewvc/stanbol/trunk/enhancer/generic/test/src/main/java/org/apache/stanbol/enhancer/test/helper/RemoteServiceHelper.java?rev=1393396&view=auto
==============================================================================
--- stanbol/trunk/enhancer/generic/test/src/main/java/org/apache/stanbol/enhancer/test/helper/RemoteServiceHelper.java (added)
+++ stanbol/trunk/enhancer/generic/test/src/main/java/org/apache/stanbol/enhancer/test/helper/RemoteServiceHelper.java Wed Oct  3 10:38:56 2012
@@ -0,0 +1,71 @@
+package org.apache.stanbol.enhancer.test.helper;
+
+import java.io.IOException;
+import java.net.SocketTimeoutException;
+import java.net.UnknownHostException;
+
+import org.apache.stanbol.enhancer.servicesapi.EngineException;
+import org.apache.stanbol.enhancer.servicesapi.EnhancementEngine;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * Utility that provides utilities for Unit Tests that need to access remote
+ * services
+ * 
+ * @author Rupert Westenthaler
+ *
+ */
+public final class RemoteServiceHelper {
+
+    private static final Logger log = LoggerFactory.getLogger(RemoteServiceHelper.class);
+    
+    private RemoteServiceHelper(){}
+    
+    
+    /**
+     * Catches {@link IOException}s or {@link EngineException} that are caused
+     * by {@link IOException}s indicating that a remote service is not available
+     * @param e the Exception to check
+     * @param containedInMessage Optionally an Err
+     * @throws T the parsed Exception if it was not caused by an External service
+     * that is not available
+     */
+    public static <T extends Exception> void checkServiceUnavailable(T e, String...containedInMessage) throws T {
+        Throwable check;
+        if(e instanceof EngineException){
+            check = e.getCause(); //check the cuase
+        } else {
+            check = e;
+        }
+        if (check instanceof UnknownHostException) {
+            log.warn("deactivate Test because of "+check.getMessage(), e);
+            return;
+        } else if (check instanceof SocketTimeoutException) {
+            log.warn("deactivate Test because of "+check.getMessage(), e);
+            return;
+        } else if (check instanceof IOException){
+            String message = check.getMessage();
+            //check for typical messates
+            if(message != null && message.contains("Connection refused")) {
+                log.warn("deactivate Test because connection to remote service was refused (Message: '"
+                        +check.getMessage()+"')", e);
+                return;
+            } else if(message.contains("Server returned HTTP response code: 50")){
+                log.warn("deactivate Test because Internal Error of remote serivce (Message: '"
+                        +check.getMessage()+"')", e);
+                return;
+            } else if(containedInMessage != null){
+                for(String contained : containedInMessage){
+                    if(message.contains(contained)){
+                        log.warn("deactivate Test because IOException of remote Service contained '"
+                            + contained+"' (Message: '"+check.getMessage()+"')", e);
+                        return;
+                    }
+                }
+            }
+        }
+        throw e;
+    }
+    
+}