You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by ch...@apache.org on 2014/06/15 20:54:02 UTC
svn commit: r1602752 -
/uima/sandbox/uima-ducc/trunk/uima-ducc-sm/src/main/java/org/apache/uima/ducc/sm/PingDriver.java
Author: challngr
Date: Sun Jun 15 18:54:01 2014
New Revision: 1602752
URL: http://svn.apache.org/r1602752
Log:
UIMA-3727 Prepare sample pinger for donation.
Modified:
uima/sandbox/uima-ducc/trunk/uima-ducc-sm/src/main/java/org/apache/uima/ducc/sm/PingDriver.java
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-sm/src/main/java/org/apache/uima/ducc/sm/PingDriver.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-sm/src/main/java/org/apache/uima/ducc/sm/PingDriver.java?rev=1602752&r1=1602751&r2=1602752&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-sm/src/main/java/org/apache/uima/ducc/sm/PingDriver.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-sm/src/main/java/org/apache/uima/ducc/sm/PingDriver.java Sun Jun 15 18:54:01 2014
@@ -33,6 +33,7 @@ import java.net.URL;
import java.net.URLClassLoader;
import java.util.ArrayList;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
import java.util.Timer;
import java.util.TimerTask;
@@ -381,6 +382,19 @@ class PingDriver
sset.signalRebalance(additions, deletions, ndeletions, response.isExcessiveFailures());
}
+ void expand_wildcards(List<URL> in, String cp_entry)
+ throws MalformedURLException
+ {
+ int ndx = cp_entry.lastIndexOf("/");
+ File dir = new File(cp_entry.substring(0, ndx));
+ File[] files = dir.listFiles();
+ for ( File f : files ) {
+ if ( f.isFile() ) {
+ in.add(new URL("file://" + f.getPath()));
+ }
+ }
+ }
+
AServicePing loadInternalMonitor()
throws ClassNotFoundException,
IllegalAccessException,
@@ -393,12 +407,18 @@ class PingDriver
return (AServicePing) cl.newInstance();
} else {
String[] cp_elems = classpath.split(":");
- URL[] cp_urls = new URL[cp_elems.length];
-
+ List<URL> cp_urls = new ArrayList<URL>();
+
+
for ( int i = 0; i < cp_elems.length; i++ ) {
- cp_urls[i] = new URL("file://" + cp_elems[i]);
+ if ( cp_elems[i].endsWith("*") ) {
+ expand_wildcards(cp_urls, cp_elems[i]);
+ } else {
+ cp_urls.add(new URL("file://" + cp_elems[i]));
+ }
}
- URLClassLoader l = new URLClassLoader(cp_urls);
+
+ URLClassLoader l = new URLClassLoader(cp_urls.toArray(new URL[cp_urls.size()]));
@SuppressWarnings("rawtypes")
Class loaded_class = l.loadClass(ping_class);
l = null;