Author: pkluegl
Date: Wed Aug 24 16:09:38 2016
New Revision: 1757546

URL: http://svn.apache.org/viewvc?rev=1757546&view=rev
Log:
UIMA-5069 - restrict usage of classes

Modified:
    
uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/launching/RutaLauncher.java

Modified: 
uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/launching/RutaLauncher.java
URL: 
http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/launching/RutaLauncher.java?rev=1757546&r1=1757545&r2=1757546&view=diff
==============================================================================
--- 
uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/launching/RutaLauncher.java
 (original)
+++ 
uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/launching/RutaLauncher.java
 Wed Aug 24 16:09:38 2016
@@ -23,10 +23,14 @@ import java.io.File;
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.UnsupportedEncodingException;
+import java.net.MalformedURLException;
 import java.net.URI;
+import java.net.URL;
+import java.net.URLClassLoader;
 import java.net.URLDecoder;
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Collection;
 import java.util.Iterator;
 import java.util.List;
 
@@ -41,7 +45,6 @@ import org.apache.uima.resource.Resource
 import org.apache.uima.resource.impl.ResourceManager_impl;
 import org.apache.uima.ruta.engine.Ruta;
 import org.apache.uima.ruta.engine.RutaEngine;
-import org.apache.uima.ruta.ide.core.builder.RutaProjectUtils;
 import org.apache.uima.util.CasIOUtils;
 import org.apache.uima.util.FileUtils;
 import org.apache.uima.util.impl.ProcessTrace_impl;
@@ -144,7 +147,7 @@ public class RutaLauncher {
     ResourceManager resourceManager = null;
     if (classPath != null) {
       String[] split = classPath.split(File.pathSeparator);
-      ClassLoader classLoader = 
RutaProjectUtils.getClassLoader(Arrays.asList(split));
+      ClassLoader classLoader = getClassLoader(Arrays.asList(split));
       resourceManager = new ResourceManager_impl(classLoader);
     }
     AnalysisEngine ae = Ruta.wrapAnalysisEngine(descriptor.toURI().toURL(), 
view, true,
@@ -258,5 +261,17 @@ public class RutaLauncher {
     result.getParentFile().mkdirs();
     return result;
   }
+  
+  private static ClassLoader getClassLoader(Collection<String> classPath) 
throws MalformedURLException {
+   // TODO copied method to avoid extended classpath
+    URL[] urls = new URL[classPath.size()];
+    int counter = 0;
+    for (String dep : classPath) {
+      urls[counter] = new File(dep).toURI().toURL();
+      counter++;
+    }
+    ClassLoader classLoader = new URLClassLoader(urls);
+    return classLoader;
+  }
 
 }


Reply via email to