[Schmitzm-commits] r42 - trunk/src/schmitzm/io

scm-commit@wald.intevation.org scm-commit at wald.intevation.org
Wed Apr 8 02:43:54 CEST 2009


Author: alfonx
Date: 2009-04-08 02:43:53 +0200 (Wed, 08 Apr 2009)
New Revision: 42

Modified:
   trunk/src/schmitzm/io/IOUtil.java
Log:
 /**
	 * Die Umwandlung einer URL in ein File-Objekt ist leider nicht trivial.
	 * 
	 * @see http
	 *      ://weblogs.java.net/blog/kohsuke/archive/2007/04/how_to_convert.html
	 * 
	 * @param url
	 * 
	 * @author <a href="mailto:skpublic at wikisquare.de">Stefan Alfons
	 *         Kr&uuml;ger</a>
	 */
	public static File urlToFile(URL url) {
		LOGGER.debug("\nconverting " + url.toString() + " to ");
		File f;
		try {
			f = new File(url.toURI());
		} catch (URISyntaxException e) {
			f = new File(url.getPath());
		}
		LOGGER.debug("        to " + f.toString());
		return f;
	}


Modified: trunk/src/schmitzm/io/IOUtil.java
===================================================================
--- trunk/src/schmitzm/io/IOUtil.java	2009-04-06 19:54:46 UTC (rev 41)
+++ trunk/src/schmitzm/io/IOUtil.java	2009-04-08 00:43:53 UTC (rev 42)
@@ -13,12 +13,12 @@
 
 import java.io.File;
 import java.io.FileFilter;
-import java.io.FilenameFilter;
+import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
 import java.net.MalformedURLException;
+import java.net.URISyntaxException;
 import java.net.URL;
-import java.io.IOException;
 
 import org.apache.log4j.Logger;
 
@@ -164,22 +164,34 @@
 			throw new IllegalArgumentException("can't create a new URL for "+url+" with new extension "+postfix, e);
 		}
 	}
+	
 
-
-  /**
-   * Die Funktion soll der Funktion File.getParent() fuer URLs entsprechen. Die URL wird in einen Sting konvertiert und dann (kuerzer) neu
-   * zusammengesetzt. Falls eine Verkuerzung nicht moeglich ist, wird eine {@link MalformedURLException} geworfen
-   *
-   * @param url
-   *
-   * @author <a href="mailto:skpublic at wikisquare.de">Stefan Alfons Kr&uuml;ger</a>
-   */
-	public static URL getParentURL(URL url) throws MalformedURLException{
+	  /**
+	 * Die Funktion soll der Funktion File.getParent() fuer URLs entsprechen.
+	 * Die URL wird in einen Sting konvertiert und dann (kuerzer) neu
+	 * zusammengesetzt. Falls eine Verkuerzung nicht moeglich ist, wird eine
+	 * {@link MalformedURLException} geworfen
+	 * 
+	 * @author <a href="mailto:skpublic at wikisquare.de">Stefan Alfons
+	 *         Kr&uuml;ger</a>
+	 */
+	public static URL getParentUrl(final URL url) throws MalformedURLException {
 		String a = url.toExternalForm();
-		a = a.substring(0, a.lastIndexOf('/'));
+		final int lastDotPos = a.lastIndexOf('/');
+		if (lastDotPos >= 0)
+			a = a.substring(0, lastDotPos);
 		return new URL(a);
 	}
 
+
+
+  /**
+	 * @deprecated use getParentUrl()
+	 */
+	public static URL getParentURL(URL url) throws MalformedURLException {
+		return getParentUrl(url);
+	}
+
 	/**
 	 * Erweitert eine {@link URL}. Bei der uebergebenen URL muss es sich um ein Verzeichnis handeln, sonst
 	 * wird eine {@link MalformedURLException} geschmissen
@@ -441,31 +453,56 @@
   }
 
   /**
-   * Fuehrt verschiedene Funktionen aus.
-   * <ul>
-   *   <li>{@code DELDIR name}<br>
-   *       Loescht ein Verzeichnis aus allen Unterverzeichnissen.</li>
-   * </ul>
-   * @param arg
-   */
-  public static void main(final String[] arg) {
-    if ( arg.length == 0 ) {
-      System.err.println("Missing arguments.");
-      return;
-    }
+	 * Die Umwandlung einer URL in ein File-Objekt ist leider nicht trivial.
+	 * 
+	 * @see http
+	 *      ://weblogs.java.net/blog/kohsuke/archive/2007/04/how_to_convert.html
+	 * 
+	 * @param url
+	 * 
+	 * @author <a href="mailto:skpublic at wikisquare.de">Stefan Alfons
+	 *         Kr&uuml;ger</a>
+	 */
+	public static File urlToFile(URL url) {
+		LOGGER.debug("\nconverting " + url.toString() + " to ");
+		File f;
+		try {
+			f = new File(url.toURI());
+		} catch (URISyntaxException e) {
+			f = new File(url.getPath());
+		}
+		LOGGER.debug("        to " + f.toString());
+		return f;
+	}
+	
 
-    String func = arg[0].toUpperCase();
-    if ( func.equals("DELDIR") ) {
-      if ( arg.length < 2 ) {
-        System.err.println("Missing arguments for DELDIR.");
-      }
-      File currDir        = new File(".");
-      FileFilter filter   = createSimpleFileFilter(arg[1],FilterMode.DIR_ONLY);
-      int        delCount = deleteFiles(currDir, filter, true, true);
-      System.out.println(delCount+ " files deleted.");
-    }
-    else {
-      System.err.println("Unknown function: "+func);
-    }
-  }
+	  /**
+	   * Fuehrt verschiedene Funktionen aus.
+	   * <ul>
+	   *   <li>{@code DELDIR name}<br>
+	   *       Loescht ein Verzeichnis aus allen Unterverzeichnissen.</li>
+	   * </ul>
+	   * @param arg
+	   */
+	  public static void main(final String[] arg) {
+	    if ( arg.length == 0 ) {
+	      System.err.println("Missing arguments.");
+	      return;
+	    }
+
+	    String func = arg[0].toUpperCase();
+	    if ( func.equals("DELDIR") ) {
+	      if ( arg.length < 2 ) {
+	        System.err.println("Missing arguments for DELDIR.");
+	      }
+	      File currDir        = new File(".");
+	      FileFilter filter   = createSimpleFileFilter(arg[1],FilterMode.DIR_ONLY);
+	      int        delCount = deleteFiles(currDir, filter, true, true);
+	      System.out.println(delCount+ " files deleted.");
+	    }
+	    else {
+	      System.err.println("Unknown function: "+func);
+	    }
+	  }
+
 }



More information about the Schmitzm-commits mailing list