[Schmitzm-commits] r2078 - in trunk/schmitzm-core/src: main/java/de/schmitzm/lang test/java/de/schmitzm/crypt test/java/de/schmitzm/i18n test/java/de/schmitzm/lang test/java/de/schmitzm/net test/java/de/schmitzm/net/mail test/java/de/schmitzm/swing/swingworker test/java/de/schmitzm/versionnumber

scm-commit at wald.intevation.org scm-commit at wald.intevation.org
Wed Aug 29 16:09:00 CEST 2012


Author: alfonx
Date: 2012-08-29 16:09:00 +0200 (Wed, 29 Aug 2012)
New Revision: 2078

Modified:
   trunk/schmitzm-core/src/main/java/de/schmitzm/lang/LangUtil.java
   trunk/schmitzm-core/src/test/java/de/schmitzm/crypt/HtPasswdTest.java
   trunk/schmitzm-core/src/test/java/de/schmitzm/i18n/SwitchLanguageDialogTest.java
   trunk/schmitzm-core/src/test/java/de/schmitzm/lang/LimitedHashMapTest.java
   trunk/schmitzm-core/src/test/java/de/schmitzm/net/SitemapTest.java
   trunk/schmitzm-core/src/test/java/de/schmitzm/net/mail/MailerTest.java
   trunk/schmitzm-core/src/test/java/de/schmitzm/swing/swingworker/AtlasStatusDialogTest.java
   trunk/schmitzm-core/src/test/java/de/schmitzm/versionnumber/ReleaseUtilTest.java
Log:


Modified: trunk/schmitzm-core/src/main/java/de/schmitzm/lang/LangUtil.java
===================================================================
--- trunk/schmitzm-core/src/main/java/de/schmitzm/lang/LangUtil.java	2012-08-29 13:54:38 UTC (rev 2077)
+++ trunk/schmitzm-core/src/main/java/de/schmitzm/lang/LangUtil.java	2012-08-29 14:09:00 UTC (rev 2078)
@@ -83,21 +83,20 @@
 /**
  * Diese Klasse stellt Hilfsfunktionen fuer Basisoperationen bereit.
  * 
- * @author <a href="mailto:martin.schmitz at koeln.de">Martin Schmitz</a>
- *         (University of Bonn/Germany)
+ * @author <a href="mailto:martin.schmitz at koeln.de">Martin Schmitz</a> (University of Bonn/Germany)
  * @version 1.0
  */
 public class LangUtil {
 	private static NumberFormat DEFAULT_DELAY_FORMAT = new DecimalFormat("0.00");
 
-	/** If {@code true} {@link #removeWhitespacesToEmpty(String)} (which uses {@link RegexCache})
-	 *  is called in {@link #parseStringDefaultNull(String, boolean)}.
-	 *  To avoid this behavior for an application, this flag can be set to {@code false}.<br>
-	 *  Default: {@code true}
+	/**
+	 * If {@code true} {@link #removeWhitespacesToEmpty(String)} (which uses {@link RegexCache}) is called in
+	 * {@link #parseStringDefaultNull(String, boolean)}. To avoid this behavior for an application, this flag can be set
+	 * to {@code false}.<br>
+	 * Default: {@code true}
 	 */
 	public static boolean REMOVE_WHITESPACES_ON_PARSE_STRING = true;
-	
-	
+
 	/** Eine Sekunde in Millisekunden. */
 	public static final long SEC_MILLIS = 1000;
 	/** Eine Minute in Millisekunden. */
@@ -117,42 +116,34 @@
 	final static Pattern onlyZerosRegEx = Pattern.compile("^([\\s0.,]*)$");
 
 	/** Dummy day representing the 01.01.0001. */
-	public static final Date DAY1 = new GregorianCalendar(1, Calendar.JANUARY,
-			1).getTime();
+	public static final Date DAY1 = new GregorianCalendar(1, Calendar.JANUARY, 1).getTime();
 	/** Dummy day representing the 02.01.0001. */
-	public static final Date DAY2 = new GregorianCalendar(1, Calendar.JANUARY,
-			2).getTime();
+	public static final Date DAY2 = new GregorianCalendar(1, Calendar.JANUARY, 2).getTime();
 
 	/**
 	 * Date formatter for "dd.MM.yyyy [HH:mm:ss]".
 	 */
-	public static final DateFormat DEFAULT_DATE_TIME_FORMATTER = new SimpleDateFormat(
-			"dd.MM.yyyy [HH:mm:ss]");
+	public static final DateFormat DEFAULT_DATE_TIME_FORMATTER = new SimpleDateFormat("dd.MM.yyyy [HH:mm:ss]");
 
 	/** Format for 2-digit hour information with leading zero. */
 	public static final NumberFormat HOUR_FORMAT = new DecimalFormat("00");
 
 	/**
-	 * Liefert <code>true</code> wenn der String nur Nullen, Leerzeichen,
-	 * Kommata und/oder Punkte enthält.
+	 * Liefert <code>true</code> wenn der String nur Nullen, Leerzeichen, Kommata und/oder Punkte enthält.
 	 */
 	public static boolean onlyZero(String numerString) {
 		return onlyZerosRegEx.matcher(numerString).find();
 	}
 
 	/**
-	 * {@link ResourceProvider}, der die Lokalisation fuer Komponenten des
-	 * Package {@code schmitzm.lang} zur Verfuegung stellt. Diese sind in
-	 * properties-Dateien unter {@code schmitzm.lang.resource.locales}
-	 * hinterlegt.
+	 * {@link ResourceProvider}, der die Lokalisation fuer Komponenten des Package {@code schmitzm.lang} zur Verfuegung
+	 * stellt. Diese sind in properties-Dateien unter {@code schmitzm.lang.resource.locales} hinterlegt.
 	 */
 	public static ResourceProvider RESOURCE = ResourceProvider.newInstance(
-			extendPackagePath(LangUtil.class,
-					"resource.locales.LangResourceBundle"), Locale.ENGLISH);
+			extendPackagePath(LangUtil.class, "resource.locales.LangResourceBundle"), Locale.ENGLISH);
 
 	/**
-	 * Liefert den einfachen Namen einer Klasse (ohne Package) oder den String
-	 * "null", falls das Objekt {@code null} ist
+	 * Liefert den einfachen Namen einer Klasse (ohne Package) oder den String "null", falls das Objekt {@code null} ist
 	 * 
 	 * @param object
 	 *            ein Objekt
@@ -176,24 +167,22 @@
 			return "";
 		return string.trim();
 	}
-	
+
 	/**
-	 * Checks whether {@link RegexCache} is available. In some cases the
-	 * "Apache Lucene" library is excluded because of application size
-	 * issues ("FatJar"). This method checks this case and sets the
-	 * {@link #REMOVE_WHITESPACES_ON_PARSE_STRING} flag.
-	 * This method can be called at the beginning of an application. 
+	 * Checks whether {@link RegexCache} is available. In some cases the "Apache Lucene" library is excluded because of
+	 * application size issues ("FatJar"). This method checks this case and sets the
+	 * {@link #REMOVE_WHITESPACES_ON_PARSE_STRING} flag. This method can be called at the beginning of an application.
 	 */
 	public static boolean checkRegexCacheAvailable() {
-	    try {
-	      RegexCache.getInstance();
-	      REMOVE_WHITESPACES_ON_PARSE_STRING = true;
-	      return true;
-	    } catch (Throwable e) {
-	      // RegexCache can not be used
-	      REMOVE_WHITESPACES_ON_PARSE_STRING = false;
-	      return false;
-	    }
+		try {
+			RegexCache.getInstance();
+			REMOVE_WHITESPACES_ON_PARSE_STRING = true;
+			return true;
+		} catch (Throwable e) {
+			// RegexCache can not be used
+			REMOVE_WHITESPACES_ON_PARSE_STRING = false;
+			return false;
+		}
 
 	}
 
@@ -227,12 +216,10 @@
 	}
 
 	/**
-	 * Returns a timezone description including difference to GMT for the
-	 * default time zone.
+	 * Returns a timezone description including difference to GMT for the default time zone.
 	 * 
 	 * @param style
-	 *            style for time zone description ({@link TimeZone#LONG} or
-	 *            {@link TimeZone#SHORT})
+	 *            style for time zone description ({@link TimeZone#LONG} or {@link TimeZone#SHORT})
 	 * @see TimeZone#getDisplayName(boolean, int, Locale)
 	 */
 	public static String getTimezoneDescription(int style) {
@@ -240,12 +227,10 @@
 	}
 
 	/**
-	 * Returns a timezone description including difference to GMT for the
-	 * default time zone.
+	 * Returns a timezone description including difference to GMT for the default time zone.
 	 * 
 	 * @param style
-	 *            style for time zone description ({@link TimeZone#LONG} or
-	 *            {@link TimeZone#SHORT})
+	 *            style for time zone description ({@link TimeZone#LONG} or {@link TimeZone#SHORT})
 	 * @see TimeZone#getDisplayName(boolean, int, Locale)
 	 */
 	public static String getTimezoneDescription(TimeZone timezone, int style) {
@@ -258,15 +243,12 @@
 	 * @param timezone
 	 *            a time zone (if {@code null} the default timezone is used)
 	 * @param date
-	 *            special date to return the timezone for (daylight saving in
-	 *            GMT offset)
+	 *            special date to return the timezone for (daylight saving in GMT offset)
 	 * @param style
-	 *            style for time zone description ({@link TimeZone#LONG} or
-	 *            {@link TimeZone#SHORT})
+	 *            style for time zone description ({@link TimeZone#LONG} or {@link TimeZone#SHORT})
 	 * @see TimeZone#getDisplayName(boolean, int, Locale)
 	 */
-	public static String getTimezoneDescription(TimeZone timezone, Date date,
-			int style) {
+	public static String getTimezoneDescription(TimeZone timezone, Date date, int style) {
 		if (timezone == null)
 			timezone = TimeZone.getDefault();
 		if (date == null)
@@ -279,14 +261,11 @@
 		String timezoneStr = timezone.getDisplayName(inclDST, style);
 		// for long description, show short term too
 		if (style == TimeZone.LONG)
-			timezoneStr += " / "
-					+ timezone.getDisplayName(inclDST, TimeZone.SHORT);
+			timezoneStr += " / " + timezone.getDisplayName(inclDST, TimeZone.SHORT);
 
 		// calculate offset to GMT
-		long zoneOffsetHours = timezone.getOffset(date.getTime())
-				/ LangUtil.HOUR_MILLIS;
-		String zoneOffsetStr = "GMT"
-				+ LangUtil.getSignumStr(zoneOffsetHours, "+")
+		long zoneOffsetHours = timezone.getOffset(date.getTime()) / LangUtil.HOUR_MILLIS;
+		String zoneOffsetStr = "GMT" + LangUtil.getSignumStr(zoneOffsetHours, "+")
 				+ HOUR_FORMAT.format(Math.abs(zoneOffsetHours));
 
 		timezoneStr += " (" + zoneOffsetStr + ")";
@@ -295,10 +274,9 @@
 	}
 
 	/**
-	 * Completes an incomplete date definition (in european dotted-format
-	 * {@code dd.MM.yyyy}). Missing dots are also added. In this case the method
-	 * expects that day is given with 2 digits. If month and/or year is not
-	 * given, these information is completed with the current month/year.<br>
+	 * Completes an incomplete date definition (in european dotted-format {@code dd.MM.yyyy}). Missing dots are also
+	 * added. In this case the method expects that day is given with 2 digits. If month and/or year is not given, these
+	 * information is completed with the current month/year.<br>
 	 * Examples: Expect that current date is 29.03.2011, then
 	 * <ul>
 	 * <li>"12102009" is completed to "12.10.2009"</li>
@@ -311,8 +289,7 @@
 	 * 
 	 * @param dateStr
 	 *            a european date definition as string
-	 * @return the source string if the given string contains other signs than
-	 *         digits and dots
+	 * @return the source string if the given string contains other signs than digits and dots
 	 */
 	public static String completeEuropeanDateString(String dateStr) {
 		if (dateStr == null || !dateStr.matches("[\\d\\.]+"))
@@ -352,8 +329,7 @@
 			// "19" erweitern
 			String yearStr = dateStr.substring(dateStr.lastIndexOf(".") + 1);
 			if (Integer.parseInt(yearStr) < 100)
-				dateStr = dateStr.substring(0, dateStr.lastIndexOf("."))
-						+ ".19" + yearStr;
+				dateStr = dateStr.substring(0, dateStr.lastIndexOf(".")) + ".19" + yearStr;
 
 		}
 		return dateStr;
@@ -374,8 +350,7 @@
 	 * Returns the current time as formatted string.
 	 * 
 	 * @param format
-	 *            date format as defined in {@link SimpleDateFormat} (if
-	 *            {@code null}, the default format is used)
+	 *            date format as defined in {@link SimpleDateFormat} (if {@code null}, the default format is used)
 	 * @see #DEFAULT_DATE_TIME_FORMATTER
 	 */
 	public static String getCurrentTimeFormatted(String formatPattern) {
@@ -386,14 +361,12 @@
 	}
 
 	/**
-	 * Returns a new date which combines the date and time information of
-	 * several date objects.
+	 * Returns a new date which combines the date and time information of several date objects.
 	 * 
 	 * @param date
 	 *            date the date information is taken from
 	 * @param time
-	 *            date the time information is taken from (if {@code null} the
-	 *            time 00:00:00.000 is set)
+	 *            date the time information is taken from (if {@code null} the time 00:00:00.000 is set)
 	 */
 	public static Date combineDate(Date date, Date time) {
 		Calendar dateCal = GregorianCalendar.getInstance();
@@ -404,14 +377,10 @@
 		Calendar combinedDateCal = GregorianCalendar.getInstance();
 
 		// combine date and time for new date object
-		combinedDateCal.set(Calendar.HOUR_OF_DAY,
-				time == null ? 0 : timeCal.get(Calendar.HOUR_OF_DAY));
-		combinedDateCal.set(Calendar.MINUTE,
-				time == null ? 0 : timeCal.get(Calendar.MINUTE));
-		combinedDateCal.set(Calendar.SECOND,
-				time == null ? 0 : timeCal.get(Calendar.SECOND));
-		combinedDateCal.set(Calendar.MILLISECOND,
-				time == null ? 0 : timeCal.get(Calendar.MILLISECOND));
+		combinedDateCal.set(Calendar.HOUR_OF_DAY, time == null ? 0 : timeCal.get(Calendar.HOUR_OF_DAY));
+		combinedDateCal.set(Calendar.MINUTE, time == null ? 0 : timeCal.get(Calendar.MINUTE));
+		combinedDateCal.set(Calendar.SECOND, time == null ? 0 : timeCal.get(Calendar.SECOND));
+		combinedDateCal.set(Calendar.MILLISECOND, time == null ? 0 : timeCal.get(Calendar.MILLISECOND));
 
 		combinedDateCal.set(Calendar.DATE, dateCal.get(Calendar.DATE));
 		combinedDateCal.set(Calendar.MONTH, dateCal.get(Calendar.MONTH));
@@ -421,8 +390,7 @@
 	}
 
 	/**
-	 * Returns a new date which combines the date and time information of
-	 * several date objects.
+	 * Returns a new date which combines the date and time information of several date objects.
 	 * 
 	 * @param date
 	 *            date the date information is taken from
@@ -442,25 +410,19 @@
 	}
 
 	/**
-	 * Returns a {@link Date} which represents the given day and time in GMT
-	 * time zone.<br>
+	 * Returns a {@link Date} which represents the given day and time in GMT time zone.<br>
 	 * <b>For example:</b><br>
-	 * The given date is 01.01.2011, 00:00 (in CET). Then this method returns
-	 * 01.01.2011, 01:00, because the timezone offset (+1 hour + possible
-	 * daylight saving time offset) is added. In other words: This method
-	 * returns the date (in current timezone), when GMT represents the moment of
-	 * the given date.<br>
+	 * The given date is 01.01.2011, 00:00 (in CET). Then this method returns 01.01.2011, 01:00, because the timezone
+	 * offset (+1 hour + possible daylight saving time offset) is added. In other words: This method returns the date
+	 * (in current timezone), when GMT represents the moment of the given date.<br>
 	 * <b>Field of application:</b><br>
-	 * Excel does not handle timezones, so it will always show an exported date
-	 * in GMT (java internal timestamp). For birthdates or many other "fixed"
-	 * moments this is not the expected way! This method converts e.g. the
-	 * birthdate (in the current timezone) so that it represents the exact
-	 * birthdate in GMT.
+	 * Excel does not handle timezones, so it will always show an exported date in GMT (java internal timestamp). For
+	 * birthdates or many other "fixed" moments this is not the expected way! This method converts e.g. the birthdate
+	 * (in the current timezone) so that it represents the exact birthdate in GMT.
 	 * 
 	 * @param date
 	 *            a date in any timezone
-	 * @return the date (in current timezone), when GMT represents this day and
-	 *         time
+	 * @return the date (in current timezone), when GMT represents this day and time
 	 */
 	public static Date getGmtDate(Date date) {
 		GregorianCalendar c = new GregorianCalendar();
@@ -548,8 +510,7 @@
 						// --> Pruefen, ob (erste) Position des "-" in Pattern
 						// mit (erster)
 						// Position des "-" im Datums-String uebereinstimmt.
-						String pattern = ((SimpleDateFormat) format)
-								.toPattern();
+						String pattern = ((SimpleDateFormat) format).toPattern();
 						if (pattern.indexOf('-') != dateStr.indexOf('-')
 								|| pattern.indexOf('.') != dateStr.indexOf('.'))
 							continue;
@@ -582,8 +543,7 @@
 	 * @param startMillis
 	 *            start offset
 	 * @param format
-	 *            formatter to format the seconds value (if {@code null} a
-	 *            format with 2 fraction digits is used)
+	 *            formatter to format the seconds value (if {@code null} a format with 2 fraction digits is used)
 	 */
 	public static String getDelaySeconds(long startMillis, NumberFormat format) {
 		if (format == null)
@@ -648,8 +608,7 @@
 	 * Checks whether both objects are {@code null} or equal.
 	 */
 	public static boolean checkEqual(Object o1, Object o2) {
-		return o1 == null && o2 == null || o1 != null && o2 != null
-				&& o1.equals(o2);
+		return o1 == null && o2 == null || o1 != null && o2 != null && o1.equals(o2);
 	}
 
 	/**
@@ -658,8 +617,7 @@
 	 * @param delim
 	 *            Trennzeichen (kann {@code null} sein)
 	 * @param strList
-	 *            Liste von Strings ({@code null}-Elemente und leere Strings
-	 *            werden ignoriert
+	 *            Liste von Strings ({@code null}-Elemente und leere Strings werden ignoriert
 	 * @return
 	 */
 	public static String listString(String delim, String... strList) {
@@ -684,20 +642,17 @@
 	 * @param delim
 	 *            Trennzeichen (kann {@code null} sein)
 	 * @param ignoreNulls
-	 *            bestimmt, ob {@code null}-Elemente (und leere Strings)
-	 *            ignoriert werden
+	 *            bestimmt, ob {@code null}-Elemente (und leere Strings) ignoriert werden
 	 * @param objList
 	 *            Liste von Objekten
 	 * @return
 	 */
-	public static String listObjects(String delim, boolean ignoreNulls,
-			Object... objList) {
+	public static String listObjects(String delim, boolean ignoreNulls, Object... objList) {
 		StringBuffer resultStr = new StringBuffer();
 		for (int i = 0; i < objList.length; i++) {
 			// ignore item if it is null or empty
 			if (ignoreNulls
-					&& (objList[i] == null || objList[i] instanceof String
-							&& "".equals(((String) objList[i]).trim())))
+					&& (objList[i] == null || objList[i] instanceof String && "".equals(((String) objList[i]).trim())))
 				continue;
 			// append delimiter (if necessary)
 			if (resultStr.length() > 0 && delim != null)
@@ -715,14 +670,12 @@
 	 * @param delim
 	 *            Trennzeichen (kann {@code null} sein)
 	 * @param ignoreNulls
-	 *            bestimmt, ob {@code null}-Elemente (und leere Strings)
-	 *            ignoriert werden
+	 *            bestimmt, ob {@code null}-Elemente (und leere Strings) ignoriert werden
 	 * @param objList
 	 *            Liste von Objekten
 	 * @return
 	 */
-	public static String listObjects(String delim, boolean ignoreNulls,
-			Collection<?> values) {
+	public static String listObjects(String delim, boolean ignoreNulls, Collection<?> values) {
 		Object[] objArray = values.toArray();
 		return listObjects(delim, ignoreNulls, objArray);
 	}
@@ -735,8 +688,7 @@
 	 * @param fieldName
 	 *            feld name
 	 */
-	public static boolean checkEnumValue(Class<? extends Enum> enumClass,
-			String fieldName) {
+	public static boolean checkEnumValue(Class<? extends Enum> enumClass, String fieldName) {
 		try {
 			Enum.valueOf(enumClass, fieldName);
 			return true;
@@ -746,14 +698,13 @@
 	}
 
 	/**
-	 * Fuegt alle Elemente eines Arrays in einen {@link Vector} ein. Wird als
-	 * Vector <code>null</code> angegeben, wird ein neuer Vector erzeugt.
+	 * Fuegt alle Elemente eines Arrays in einen {@link Vector} ein. Wird als Vector <code>null</code> angegeben, wird
+	 * ein neuer Vector erzeugt.
 	 * 
 	 * @param obj
 	 *            einzufuegende Objekte
 	 * @param vec
-	 *            Vector in den die Elemente eingefuegt werden (kann
-	 *            <code>null</code> sein)
+	 *            Vector in den die Elemente eingefuegt werden (kann <code>null</code> sein)
 	 * @return den Vector <code>vec</code> oder eine neue {@link Vector}-Instanz
 	 */
 	public static Vector addObjectsToVector(Object[] obj, Vector vec) {
@@ -778,15 +729,13 @@
 		Arrays.fill(maxSpacePattern, ' ');
 
 		for (int pos; (pos = outString.indexOf('\t')) >= 0;) {
-			outString = outString.replaceFirst("\t",
-					String.valueOf(maxSpacePattern, 0, tabLen - pos % tabLen));
+			outString = outString.replaceFirst("\t", String.valueOf(maxSpacePattern, 0, tabLen - pos % tabLen));
 		}
 		return outString;
 	}
 
 	/**
-	 * Haengt eine beliebige Anzahl von Objekte als Strings (toString())
-	 * hintereinander.
+	 * Haengt eine beliebige Anzahl von Objekte als Strings (toString()) hintereinander.
 	 * 
 	 * @param str
 	 *            aneinanderzuhaengende Objekte
@@ -800,60 +749,51 @@
 	}
 
 	/**
-	 * Haengt eine beliebige Anzahl von Strings hintereinander und fuegt
-	 * zwischen den Strings einen Trenner ein. {@code null}-Werte werden
-	 * ignoriert.<br>
-	 * Bemerkung: Dies ist eine Workaround-Methode, da die die ueberladendenen
-	 * Methoden mit "Object..." nicht von allen Compilern richtig interpretiert
-	 * werden!
+	 * Haengt eine beliebige Anzahl von Strings hintereinander und fuegt zwischen den Strings einen Trenner ein.
+	 * {@code null}-Werte werden ignoriert.<br>
+	 * Bemerkung: Dies ist eine Workaround-Methode, da die die ueberladendenen Methoden mit "Object..." nicht von allen
+	 * Compilern richtig interpretiert werden!
 	 * 
 	 * @param sep
 	 *            Trenner
 	 * @param str
 	 *            aneinanderzuhaengende Stings
 	 */
-	public static String stringConcatWithSepIgnoreNulls(String sep,
-			Object... str) {
+	public static String stringConcatWithSepIgnoreNulls(String sep, Object... str) {
 		return stringConcatWithSep(sep, null, true, str);
 	}
 
 	/**
-	 * Haengt eine beliebige Anzahl von Strings hintereinander und fuegt
-	 * zwischen den Strings einen Trenner ein. {@code null}-Werte werden
-	 * beruecksichtigt<br>
-	 * Bemerkung: Dies ist eine Workaround-Methode, da die die ueberladendenen
-	 * Methoden mit "Object..." nicht von allen Compilern richtig interpretiert
-	 * werden!
+	 * Haengt eine beliebige Anzahl von Strings hintereinander und fuegt zwischen den Strings einen Trenner ein.
+	 * {@code null}-Werte werden beruecksichtigt<br>
+	 * Bemerkung: Dies ist eine Workaround-Methode, da die die ueberladendenen Methoden mit "Object..." nicht von allen
+	 * Compilern richtig interpretiert werden!
 	 * 
 	 * @param sep
 	 *            Trenner
 	 * @param str
 	 *            aneinanderzuhaengende Stings
 	 */
-	public static String stringConcatWithSepIncludeNulls(String sep,
-			Object... str) {
+	public static String stringConcatWithSepIncludeNulls(String sep, Object... str) {
 		return stringConcatWithSep(sep, null, false, str);
 	}
 
 	/**
-	 * Haengt eine beliebige Anzahl von Strings hintereinander und fuegt
-	 * zwischen den Strings einen Trenner ein.
+	 * Haengt eine beliebige Anzahl von Strings hintereinander und fuegt zwischen den Strings einen Trenner ein.
 	 * 
 	 * @param sep
 	 *            Trenner
 	 * @param str
 	 *            aneinanderzuhaengende Stings als Liste
 	 */
-	public static String stringConcatWithSep(String sep,
-			Collection<? extends Object> list) {
+	public static String stringConcatWithSep(String sep, Collection<? extends Object> list) {
 		if (list == null)
 			return "";
 		return stringConcatWithSep(sep, null, list.toArray());
 	}
 
 	/**
-	 * Haengt eine beliebige Anzahl von Strings hintereinander und fuegt
-	 * zwischen den Strings einen Trenner ein.
+	 * Haengt eine beliebige Anzahl von Strings hintereinander und fuegt zwischen den Strings einen Trenner ein.
 	 * 
 	 * @param sep
 	 *            Trenner
@@ -865,8 +805,7 @@
 	}
 
 	/**
-	 * Haengt eine beliebige Anzahl von Strings hintereinander und fuegt
-	 * zwischen den Strings einen Trenner ein.
+	 * Haengt eine beliebige Anzahl von Strings hintereinander und fuegt zwischen den Strings einen Trenner ein.
 	 * 
 	 * @param sep
 	 *            Trenner
@@ -875,28 +814,24 @@
 	 * @param str
 	 *            aneinanderzuhaengende Stings
 	 */
-	public static String stringConcatWithSep(String sep, boolean ignoreNulls,
-			Object... str) {
+	public static String stringConcatWithSep(String sep, boolean ignoreNulls, Object... str) {
 		return stringConcatWithSep(sep, null, ignoreNulls, str);
 	}
 
 	/**
-	 * Haengt eine beliebige Anzahl von Strings hintereinander und fuegt
-	 * zwischen den Strings einen Trenner ein. Optional werden die einzelnen
-	 * Strings mit einem speziellen Zeichen (z.B. Apostroph oder
-	 * Anfuehrungszeichen) maskiert.
+	 * Haengt eine beliebige Anzahl von Strings hintereinander und fuegt zwischen den Strings einen Trenner ein.
+	 * Optional werden die einzelnen Strings mit einem speziellen Zeichen (z.B. Apostroph oder Anfuehrungszeichen)
+	 * maskiert.
 	 * 
 	 * @param sep
 	 *            Trenner
 	 * @param maskChar
-	 *            Zeichen, mit dem die aneinandergehaengten Strings gekapselt
-	 *            werden (z.B. Apostroph oder Anfuehrungszeichen). Wenn
-	 *            {@code null} oder leer, werden die Strings nicht gekapselt.
+	 *            Zeichen, mit dem die aneinandergehaengten Strings gekapselt werden (z.B. Apostroph oder
+	 *            Anfuehrungszeichen). Wenn {@code null} oder leer, werden die Strings nicht gekapselt.
 	 * @param str
 	 *            aneinanderzuhaengende Stings
 	 */
-	public static String stringConcatWithSep(String sep, String maskChar,
-			Object... str) {
+	public static String stringConcatWithSep(String sep, String maskChar, Object... str) {
 		// StringBuffer sb = new StringBuffer();
 		// for (int i = 0; str != null && i < str.length; i++) {
 		// if (i > 0)
@@ -911,24 +846,21 @@
 	}
 
 	/**
-	 * Haengt eine beliebige Anzahl von Strings hintereinander und fuegt
-	 * zwischen den Strings einen Trenner ein. Optional werden die einzelnen
-	 * Strings mit einem speziellen Zeichen (z.B. Apostroph oder
-	 * Anfuehrungszeichen) maskiert.
+	 * Haengt eine beliebige Anzahl von Strings hintereinander und fuegt zwischen den Strings einen Trenner ein.
+	 * Optional werden die einzelnen Strings mit einem speziellen Zeichen (z.B. Apostroph oder Anfuehrungszeichen)
+	 * maskiert.
 	 * 
 	 * @param sep
 	 *            Trenner
 	 * @param maskChar
-	 *            Zeichen, mit dem die aneinandergehaengten Strings gekapselt
-	 *            werden (z.B. Apostroph oder Anfuehrungszeichen). Wenn
-	 *            {@code null} oder leer, werden die Strings nicht gekapselt.
+	 *            Zeichen, mit dem die aneinandergehaengten Strings gekapselt werden (z.B. Apostroph oder
+	 *            Anfuehrungszeichen). Wenn {@code null} oder leer, werden die Strings nicht gekapselt.
 	 * @param ignoreNulls
 	 *            wenn {@code true} werden NULL-Werte ignoriert
 	 * @param str
 	 *            aneinanderzuhaengende Stings
 	 */
-	public static String stringConcatWithSep(String sep, String maskChar,
-			boolean ignoreNulls, Object... str) {
+	public static String stringConcatWithSep(String sep, String maskChar, boolean ignoreNulls, Object... str) {
 		StringBuffer sb = new StringBuffer();
 
 		// wenn statt einem Object-Array ein nativer Array angegeben wird,
@@ -939,8 +871,7 @@
 		}
 
 		for (int i = 0; str != null && i < str.length; i++) {
-			if (ignoreNulls
-					&& (str[i] == null || str[i].toString().trim().equals("")))
+			if (ignoreNulls && (str[i] == null || str[i].toString().trim().equals("")))
 				continue;
 			// if (i > 0)
 			if (sb.length() > 0)
@@ -970,16 +901,13 @@
 	 * @param sourceMap
 	 *            source map
 	 * @param mapping
-	 *            mapping from source key to destination key (if mapping
-	 *            contains no value for a key of source map, the original key is
-	 *            used!)
+	 *            mapping from source key to destination key (if mapping contains no value for a key of source map, the
+	 *            original key is used!)
 	 * @param destMap
-	 *            destination map to put the values in (if {@code null} a new
-	 *            {@link HashMap} is created)
+	 *            destination map to put the values in (if {@code null} a new {@link HashMap} is created)
 	 * @return {@code sourceMap} if mapping is {@code null}
 	 */
-	public static <K, V> Map<K, V> transformMapKeys(Map<K, V> sourceMap,
-			Map<K, K> mapping, Map<K, V> destMap) {
+	public static <K, V> Map<K, V> transformMapKeys(Map<K, V> sourceMap, Map<K, K> mapping, Map<K, V> destMap) {
 		if (mapping == null)
 			return sourceMap;
 		if (destMap == null)
@@ -998,16 +926,13 @@
 	 * @param sourceMap
 	 *            source map
 	 * @param mapping
-	 *            mapping from destination key to source key (if mapping
-	 *            contains no value for a key of source map, the value is
-	 *            irgnored)
+	 *            mapping from destination key to source key (if mapping contains no value for a key of source map, the
+	 *            value is irgnored)
 	 * @param destMap
-	 *            destination map to put the values in (if {@code null} a new
-	 *            {@link HashMap} is created)
+	 *            destination map to put the values in (if {@code null} a new {@link HashMap} is created)
 	 * @return {@code sourceMap} if mapping is {@code null}
 	 */
-	public static <K, V> Map<K, V> transformMapKeysInverted(
-			Map<K, V> sourceMap, Map<K, K> mapping, Map<K, V> destMap) {
+	public static <K, V> Map<K, V> transformMapKeysInverted(Map<K, V> sourceMap, Map<K, K> mapping, Map<K, V> destMap) {
 		if (mapping == null)
 			return sourceMap;
 		if (destMap == null)
@@ -1142,20 +1067,17 @@
 		case 20:
 			return new Object[size[0]][size[1]][size[2]][size[3]][size[4]][size[5]][size[6]][size[7]][size[8]][size[9]][size[10]][size[11]][size[12]][size[13]][size[14]][size[15]][size[16]][size[17]][size[18]][size[19]];
 		}
-		throw new IllegalArgumentException("Dimension not supported: "
-				+ size.length);
+		throw new IllegalArgumentException("Dimension not supported: " + size.length);
 	}
 
 	/**
 	 * Liefert die Dimension eines multi-dimensionalen {@link Object}-Array.<br>
-	 * <b>Diese Methode funktioniert nur, wenn das Element 0 in jeder Dimension
-	 * belegt ist!</b>
+	 * <b>Diese Methode funktioniert nur, wenn das Element 0 in jeder Dimension belegt ist!</b>
 	 * 
 	 * @param array
 	 *            multi-dim. Array (Instanz von {@code Object[]..[]})
 	 * @exception ArrayIndexOutOfBoundsException
-	 *                wenn das 0te Element in einer Dimension mit {@code null}
-	 *                belegt ist
+	 *                wenn das 0te Element in einer Dimension mit {@code null} belegt ist
 	 */
 	public static int getArrayDimension(Object array) {
 		int dim = 0;
@@ -1169,16 +1091,13 @@
 	}
 
 	/**
-	 * Liefert die Groessen der einzelnen Dimensionen eines multi-dimensionalen
-	 * {@link Object}-Array.<br>
-	 * <b>Diese Methode funktioniert nur, wenn das Element 0 in jeder Dimension
-	 * belegt ist!</b>
+	 * Liefert die Groessen der einzelnen Dimensionen eines multi-dimensionalen {@link Object}-Array.<br>
+	 * <b>Diese Methode funktioniert nur, wenn das Element 0 in jeder Dimension belegt ist!</b>
 	 * 
 	 * @param array
 	 *            multi-dim. Array (Instanz von {@code Object[]..[]})
 	 * @exception ArrayIndexOutOfBoundsException
-	 *                wenn das 0te Element in einer Dimension mit {@code null}
-	 *                belegt ist
+	 *                wenn das 0te Element in einer Dimension mit {@code null} belegt ist
 	 */
 	public static int[] getArrayLength(Object array) {
 		int[] dimSize = new int[getArrayDimension(array)];
@@ -1224,30 +1143,25 @@
 	}
 
 	/**
-	 * Kopiert einen Array (aber nicht dessen Elemente). Darueberhinaus koennen
-	 * (einige) Elemente direkt neu belegt werden. Ist das Flag {@code replNull}
-	 * auf {@code false} gesetzt, werden {@code null}-Werte in {@code replElem}
-	 * ignoriert. So ist es z.B. moeglich, nur das 4. und 5. Element im neuen
-	 * Array neu zu belegen und die davor liegenden Elemente unangetastet zu
-	 * lassen.
+	 * Kopiert einen Array (aber nicht dessen Elemente). Darueberhinaus koennen (einige) Elemente direkt neu belegt
+	 * werden. Ist das Flag {@code replNull} auf {@code false} gesetzt, werden {@code null}-Werte in {@code replElem}
+	 * ignoriert. So ist es z.B. moeglich, nur das 4. und 5. Element im neuen Array neu zu belegen und die davor
+	 * liegenden Elemente unangetastet zu lassen.
 	 * 
 	 * @param source
 	 *            zu kopierender Array
 	 * @param replNull
-	 *            Bestimmt, ob {@code null}-Elemente von {@code replElem} im
-	 *            neuen Array gesetzt werden ({@code true}) oder nicht
+	 *            Bestimmt, ob {@code null}-Elemente von {@code replElem} im neuen Array gesetzt werden ({@code true})
+	 *            oder nicht
 	 * @param replElem
-	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im
-	 *            Array neu gesetzt werden
+	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im Array neu gesetzt werden
 	 * @return Array von der Groesse {@code max(source.length, replElem.length)}
 	 */
-	public static <T> T[] cloneArray(T[] source, boolean replNull,
-			T... replElem) {
+	public static <T> T[] cloneArray(T[] source, boolean replNull, T... replElem) {
 		if (source == null)
 			return null;
 
-		T[] newArray = java.util.Arrays.copyOf(source,
-				Math.max(source.length, replElem.length));
+		T[] newArray = java.util.Arrays.copyOf(source, Math.max(source.length, replElem.length));
 		for (int i = 0; i < replElem.length; i++)
 			if (replNull || replElem[i] != null)
 				newArray[i] = replElem[i];
@@ -1255,14 +1169,13 @@
 	}
 
 	/**
-	 * Kopiert einen Array (aber nicht dessen Elemente). Darueberhinaus koennen
-	 * (einige) Elemente direkt neu belegt werden.
+	 * Kopiert einen Array (aber nicht dessen Elemente). Darueberhinaus koennen (einige) Elemente direkt neu belegt
+	 * werden.
 	 * 
 	 * @param source
 	 *            zu kopierender Array
 	 * @param replElem
-	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im
-	 *            Array neu gesetzt werden
+	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im Array neu gesetzt werden
 	 * @return Array von der Groesse {@code max(source.length, replElem.length)}
 	 */
 	public static <T> T[] cloneArray(T[] source, T... replElem) {
@@ -1275,16 +1188,14 @@
 	 * @param source
 	 *            zu kopierender Array
 	 * @param replElem
-	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im
-	 *            Array neu gesetzt werden
+	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im Array neu gesetzt werden
 	 * @return Array von der Groesse {@code max(source.length, replElem.length)}
 	 */
 	public static long[] cloneArray(long[] source, long... replElem) {
 		if (source == null)
 			return null;
 
-		long[] newArray = java.util.Arrays.copyOf(source,
-				Math.max(source.length, replElem.length));
+		long[] newArray = java.util.Arrays.copyOf(source, Math.max(source.length, replElem.length));
 		for (int i = 0; i < replElem.length; i++)
 			newArray[i] = replElem[i];
 		return newArray;
@@ -1296,16 +1207,14 @@
 	 * @param source
 	 *            zu kopierender Array
 	 * @param replElem
-	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im
-	 *            Array neu gesetzt werden
+	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im Array neu gesetzt werden
 	 * @return Array von der Groesse {@code max(source.length, replElem.length)}
 	 */
 	public static int[] cloneArray(int[] source, int... replElem) {
 		if (source == null)
 			return null;
 
-		int[] newArray = java.util.Arrays.copyOf(source,
-				Math.max(source.length, replElem.length));
+		int[] newArray = java.util.Arrays.copyOf(source, Math.max(source.length, replElem.length));
 		for (int i = 0; i < replElem.length; i++)
 			newArray[i] = replElem[i];
 		return newArray;
@@ -1317,16 +1226,14 @@
 	 * @param source
 	 *            zu kopierender Array
 	 * @param replElem
-	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im
-	 *            Array neu gesetzt werden
+	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im Array neu gesetzt werden
 	 * @return Array von der Groesse {@code max(source.length, replElem.length)}
 	 */
 	public static short[] cloneArray(short[] source, short... replElem) {
 		if (source == null)
 			return null;
 
-		short[] newArray = java.util.Arrays.copyOf(source,
-				Math.max(source.length, replElem.length));
+		short[] newArray = java.util.Arrays.copyOf(source, Math.max(source.length, replElem.length));
 		for (int i = 0; i < replElem.length; i++)
 			newArray[i] = replElem[i];
 		return newArray;
@@ -1338,15 +1245,13 @@
 	 * @param source
 	 *            zu kopierender Array
 	 * @param replElem
-	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im
-	 *            Array neu gesetzt werden
+	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im Array neu gesetzt werden
 	 * @return Array von der Groesse {@code max(source.length, replElem.length)}
 	 */
 	public static byte[] cloneArray(byte[] source, byte... replElem) {
 		if (source == null)
 			return null;
-		byte[] newArray = java.util.Arrays.copyOf(source,
-				Math.max(source.length, replElem.length));
+		byte[] newArray = java.util.Arrays.copyOf(source, Math.max(source.length, replElem.length));
 		for (int i = 0; i < replElem.length; i++)
 			newArray[i] = replElem[i];
 		return newArray;
@@ -1358,16 +1263,14 @@
 	 * @param source
 	 *            zu kopierender Array
 	 * @param replElem
-	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im
-	 *            Array neu gesetzt werden
+	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im Array neu gesetzt werden
 	 * @return Array von der Groesse {@code max(source.length, replElem.length)}
 	 */
 	public static double[] cloneArray(double[] source, double... replElem) {
 		if (source == null)
 			return null;
 
-		double[] newArray = java.util.Arrays.copyOf(source,
-				Math.max(source.length, replElem.length));
+		double[] newArray = java.util.Arrays.copyOf(source, Math.max(source.length, replElem.length));
 		for (int i = 0; i < replElem.length; i++)
 			newArray[i] = replElem[i];
 		return newArray;
@@ -1379,16 +1282,14 @@
 	 * @param source
 	 *            zu kopierender Array
 	 * @param replElem
-	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im
-	 *            Array neu gesetzt werden
+	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im Array neu gesetzt werden
 	 * @return Array von der Groesse {@code max(source.length, replElem.length)}
 	 */
 	public static float[] cloneArray(float[] source, float... replElem) {
 		if (source == null)
 			return null;
 
-		float[] newArray = java.util.Arrays.copyOf(source,
-				Math.max(source.length, replElem.length));
+		float[] newArray = java.util.Arrays.copyOf(source, Math.max(source.length, replElem.length));
 		for (int i = 0; i < replElem.length; i++)
 			newArray[i] = replElem[i];
 		return newArray;
@@ -1400,15 +1301,13 @@
 	 * @param source
 	 *            zu kopierender Array
 	 * @param replElem
-	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im
-	 *            Array neu gesetzt werden
+	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im Array neu gesetzt werden
 	 * @return Array von der Groesse {@code max(source.length, replElem.length)}
 	 */
 	public static boolean[] cloneArray(boolean[] source, boolean... replElem) {
 		if (source == null)
 			return null;
-		boolean[] newArray = java.util.Arrays.copyOf(source,
-				Math.max(source.length, replElem.length));
+		boolean[] newArray = java.util.Arrays.copyOf(source, Math.max(source.length, replElem.length));
 		for (int i = 0; i < replElem.length; i++)
 			newArray[i] = replElem[i];
 		return newArray;
@@ -1420,15 +1319,13 @@
 	 * @param source
 	 *            zu kopierender Array
 	 * @param replElem
-	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im
-	 *            Array neu gesetzt werden
+	 *            Elemente (beginnend bei Index 0), die nach dem Kopieren im Array neu gesetzt werden
 	 * @return Array von der Groesse {@code max(source.length, replElem.length)}
 	 */
 	public static char[] cloneArray(char[] source, char... replElem) {
 		if (source == null)
 			return null;
-		char[] newArray = java.util.Arrays.copyOf(source,
-				Math.max(source.length, replElem.length));
+		char[] newArray = java.util.Arrays.copyOf(source, Math.max(source.length, replElem.length));
 		for (int i = 0; i < replElem.length; i++)
 			newArray[i] = replElem[i];
 		return newArray;
@@ -1444,8 +1341,7 @@
 	 * @return Array von der Groesse {@code source.length + newElem.length}
 	 */
 	public static <T> T[] extendArray(T[] source, T... newElem) {
-		T[] newArray = java.util.Arrays.copyOf(source, source.length
-				+ newElem.length);
+		T[] newArray = java.util.Arrays.copyOf(source, source.length + newElem.length);
 		for (int i = 0; i < newElem.length; i++)
 			newArray[source.length + i] = newElem[i];
 		return newArray;
@@ -1461,8 +1357,7 @@
 	 * @return Array von der Groesse {@code source.length + newElem.length}
 	 */
 	public static long[] extendArray(long[] source, long... newElem) {
-		long[] newArray = java.util.Arrays.copyOf(source, source.length
-				+ newElem.length);
+		long[] newArray = java.util.Arrays.copyOf(source, source.length + newElem.length);
 		for (int i = 0; i < newElem.length; i++)
 			newArray[source.length + i] = newElem[i];
 		return newArray;
@@ -1478,8 +1373,7 @@
 	 * @return Array von der Groesse {@code source.length + newElem.length}
 	 */
 	public static int[] extendArray(int[] source, int... newElem) {
-		int[] newArray = java.util.Arrays.copyOf(source, source.length
-				+ newElem.length);
+		int[] newArray = java.util.Arrays.copyOf(source, source.length + newElem.length);
 		for (int i = 0; i < newElem.length; i++)
 			newArray[source.length + i] = newElem[i];
 		return newArray;
@@ -1495,8 +1389,7 @@
 	 * @return Array von der Groesse {@code source.length + newElem.length}
 	 */
 	public static short[] extendArray(short[] source, short... newElem) {
-		short[] newArray = java.util.Arrays.copyOf(source, source.length
-				+ newElem.length);
+		short[] newArray = java.util.Arrays.copyOf(source, source.length + newElem.length);
 		for (int i = 0; i < newElem.length; i++)
 			newArray[source.length + i] = newElem[i];
 		return newArray;
@@ -1512,8 +1405,7 @@
 	 * @return Array von der Groesse {@code source.length + newElem.length}
 	 */
 	public static byte[] extendArray(byte[] source, byte... newElem) {
-		byte[] newArray = java.util.Arrays.copyOf(source, source.length
-				+ newElem.length);
+		byte[] newArray = java.util.Arrays.copyOf(source, source.length + newElem.length);
 		for (int i = 0; i < newElem.length; i++)
 			newArray[source.length + i] = newElem[i];
 		return newArray;
@@ -1529,8 +1421,7 @@
 	 * @return Array von der Groesse {@code source.length + newElem.length}
 	 */
 	public static double[] extendArray(double[] source, double... newElem) {
-		double[] newArray = java.util.Arrays.copyOf(source, source.length
-				+ newElem.length);
+		double[] newArray = java.util.Arrays.copyOf(source, source.length + newElem.length);
 		for (int i = 0; i < newElem.length; i++)
 			newArray[source.length + i] = newElem[i];
 		return newArray;
@@ -1546,8 +1437,7 @@
 	 * @return Array von der Groesse {@code source.length + newElem.length}
 	 */
 	public static float[] extendArray(float[] source, float... newElem) {
-		float[] newArray = java.util.Arrays.copyOf(source, source.length
-				+ newElem.length);
+		float[] newArray = java.util.Arrays.copyOf(source, source.length + newElem.length);
 		for (int i = 0; i < newElem.length; i++)
 			newArray[source.length + i] = newElem[i];
 		return newArray;
@@ -1563,8 +1453,7 @@
 	 * @return Array von der Groesse {@code source.length + newElem.length}
 	 */
 	public static boolean[] extendArray(boolean[] source, boolean... newElem) {
-		boolean[] newArray = java.util.Arrays.copyOf(source, source.length
-				+ newElem.length);
+		boolean[] newArray = java.util.Arrays.copyOf(source, source.length + newElem.length);
 		for (int i = 0; i < newElem.length; i++)
 			newArray[source.length + i] = newElem[i];
 		return newArray;
@@ -1580,8 +1469,7 @@
 	 * @return Array von der Groesse {@code source.length + newElem.length}
 	 */
 	public static char[] extendArray(char[] source, char... newElem) {
-		char[] newArray = java.util.Arrays.copyOf(source, source.length
-				+ newElem.length);
+		char[] newArray = java.util.Arrays.copyOf(source, source.length + newElem.length);
 		for (int i = 0; i < newElem.length; i++)
 			newArray[source.length + i] = newElem[i];
 		return newArray;
@@ -1593,39 +1481,32 @@
 	 * @param clazz
 	 *            Klassen
 	 * @param simple
-	 *            gibt an, ob der einfache Klassenname ({@code true}) oder der
-	 *            komplette Klassenname inkl. Paketname ( {@code false})
-	 *            zurueckgegeben wird.
+	 *            gibt an, ob der einfache Klassenname ({@code true}) oder der komplette Klassenname inkl. Paketname (
+	 *            {@code false}) zurueckgegeben wird.
 	 */
 	public static String[] getClassNames(Class[] clazz, boolean simple) {
 		String[] className = new String[clazz.length];
 		for (int i = 0; i < className.length; i++)
-			className[i] = simple ? clazz[i].getSimpleName() : clazz[i]
-					.getName();
+			className[i] = simple ? clazz[i].getSimpleName() : clazz[i].getName();
 		return className;
 	}
 
 	/**
-	 * Instantiates an object by {@link Class#forName(String)}. The class must
-	 * be present in runtime classpath.
+	 * Instantiates an object by {@link Class#forName(String)}. The class must be present in runtime classpath.
 	 * 
 	 * @param className
 	 *            full name of class (incl. package)
 	 * @param fallback
-	 *            if <code>true</code> this method returns <code>null</code> if
-	 *            {@link Class#forName(String)} fails
+	 *            if <code>true</code> this method returns <code>null</code> if {@link Class#forName(String)} fails
 	 * @param constrArg
 	 *            arguments for the constructor
 	 * @exception UnsupportedOperationException
-	 *                if class could be loaded, but no matching constructor can
-	 *                be found
+	 *                if class could be loaded, but no matching constructor can be found
 	 * @exception RuntimeException
-	 *                if class can not be loaded and fallback is disabled or
-	 *                another error occurs during
+	 *                if class can not be loaded and fallback is disabled or another error occurs during
 	 *                {@link Constructor#newInstance(Object...)}
 	 */
-	public static Object instantiateObject(String className, boolean fallback,
-			Object... constrArg) {
+	public static Object instantiateObject(String className, boolean fallback, Object... constrArg) {
 		try {
 			Class<?> clazz = Class.forName(className);
 			for (Constructor constructor : clazz.getConstructors())
@@ -1633,8 +1514,7 @@
 					return constructor.newInstance(constrArg);
 				} catch (IllegalArgumentException err) {
 				}
-			throw new UnsupportedOperationException(
-					"No matching constructor found...");
+			throw new UnsupportedOperationException("No matching constructor found...");
 		} catch (ClassNotFoundException err) {
 			// if we want to fall back, we do nothing but
 			// return NULL
@@ -1652,8 +1532,7 @@
 	/**
 	 * Ruft die Java Garbage Collection auf.
 	 * 
-	 * @return Anzahl an Bytes, die durch den Aufruf der Garbage Collection
-	 *         freigegeben wurden
+	 * @return Anzahl an Bytes, die durch den Aufruf der Garbage Collection freigegeben wurden
 	 * @see Runtime#gc()
 	 * @see Runtime#freeMemory()
 	 */
@@ -1665,11 +1544,9 @@
 	}
 
 	/**
-	 * Ruft die Java Garbage Collection solange auf, bis kein Speicher mehr
-	 * freigegeben werden kann.
+	 * Ruft die Java Garbage Collection solange auf, bis kein Speicher mehr freigegeben werden kann.
 	 * 
-	 * @return Gesamt-Anzahl an Bytes, die durch die Aufrufe der Garbage
-	 *         Collection freigegeben wurden
+	 * @return Gesamt-Anzahl an Bytes, die durch die Aufrufe der Garbage Collection freigegeben wurden
 	 * @see #gc()
 	 */
 	public static long gcTotal() {
@@ -1680,22 +1557,19 @@
 	}
 
 	/**
-	 * Erzeugt einen neuen {@link URLClassLoader}, der vom
-	 * {@linkplain ClassLoader#getSystemClassLoader() System-ClassLoaders}
-	 * abgeleitet ist.
+	 * Erzeugt einen neuen {@link URLClassLoader}, der vom {@linkplain ClassLoader#getSystemClassLoader()
+	 * System-ClassLoaders} abgeleitet ist.
 	 * 
 	 * @param searchPath
 	 *            Pfade, in denen der ClassLoader nach Klassen sucht
 	 */
 	public static ClassLoader createClassLoader(URL[] searchPath) {
-		return URLClassLoader.newInstance(searchPath,
-				ClassLoader.getSystemClassLoader());
+		return URLClassLoader.newInstance(searchPath, ClassLoader.getSystemClassLoader());
 	}
 
 	/**
-	 * Erzeugt einen neuen {@link URLClassLoader}, der vom
-	 * {@linkplain ClassLoader#getSystemClassLoader() System-ClassLoaders}
-	 * abgeleitet ist.
+	 * Erzeugt einen neuen {@link URLClassLoader}, der vom {@linkplain ClassLoader#getSystemClassLoader()
+	 * System-ClassLoaders} abgeleitet ist.
 	 * 
 	 * @param searchPath
 	 *            Pfad, in denm der ClassLoader nach Klassen sucht
@@ -1705,38 +1579,30 @@
 	}
 
 	/**
-	 * Laed eine Klasse. Ggf. wird hierfuer ein neuer {@link ClassLoader}
-	 * erzeugt.
+	 * Laed eine Klasse. Ggf. wird hierfuer ein neuer {@link ClassLoader} erzeugt.
 	 * 
 	 * @param clazz
 	 *            Klassenname (inkl. Paket)
 	 * @param searchPath
-	 *            Pfade, in denen der ClassLoader nach Klassen sucht (wenn
-	 *            <code>null</code>, wird der
-	 *            {@linkplain ClassLoader#getSystemClassLoader()
-	 *            System-ClassLoader} zum Laden der Klasse verwendet)
+	 *            Pfade, in denen der ClassLoader nach Klassen sucht (wenn <code>null</code>, wird der
+	 *            {@linkplain ClassLoader#getSystemClassLoader() System-ClassLoader} zum Laden der Klasse verwendet)
 	 */
-	public static Class loadClass(String clazz, URL[] searchPath)
-			throws ClassNotFoundException {
+	public static Class loadClass(String clazz, URL[] searchPath) throws ClassNotFoundException {
 		if (searchPath == null)
 			return Class.forName(clazz);
 		return createClassLoader(searchPath).loadClass(clazz);
 	}
 
 	/**
-	 * Laed eine Klasse. Ggf. wird hierfuer ein neuer {@link ClassLoader}
-	 * erzeugt.
+	 * Laed eine Klasse. Ggf. wird hierfuer ein neuer {@link ClassLoader} erzeugt.
 	 * 
 	 * @param clazz
 	 *            Klassenname (inkl. Paket)
 	 * @param searchPath
-	 *            Pfad, in dem der ClassLoader nach Klassen sucht (wenn
-	 *            <code>null</code>, wird der
-	 *            {@linkplain ClassLoader#getSystemClassLoader()
-	 *            System-ClassLoader} zum Laden der Klasse verwendet)
+	 *            Pfad, in dem der ClassLoader nach Klassen sucht (wenn <code>null</code>, wird der
+	 *            {@linkplain ClassLoader#getSystemClassLoader() System-ClassLoader} zum Laden der Klasse verwendet)
 	 */
-	public static Class loadClass(String clazz, URL searchPath)
-			throws ClassNotFoundException {
+	public static Class loadClass(String clazz, URL searchPath) throws ClassNotFoundException {
 		if (searchPath == null)
 			return Class.forName(clazz);
 		return createClassLoader(searchPath).loadClass(clazz);
@@ -1744,34 +1610,28 @@
 
 	/**
 	 * 
-	 * Laed eine Klasse derart das Klassen im Cache ignoriert werden. Dazu ist
-	 * es erforderlich das unter dem Parameter <code>searchPath</code> eine
-	 * Verzeichnis "META-INF" vorhanden ist. Darin muss eine Datei
-	 * "PREFERRED.LIST" sein. Wie genau diese Datei aufgebaut sein muss, lässt
-	 * sich in der Dokumentation des {@link PreferredClassLoader
+	 * Laed eine Klasse derart das Klassen im Cache ignoriert werden. Dazu ist es erforderlich das unter dem Parameter
+	 * <code>searchPath</code> eine Verzeichnis "META-INF" vorhanden ist. Darin muss eine Datei "PREFERRED.LIST" sein.
+	 * Wie genau diese Datei aufgebaut sein muss, lässt sich in der Dokumentation des {@link PreferredClassLoader
 	 * PreferredClassLoaders} nachlesen.
 	 * 
 	 * @param classname
 	 *            Klassenname (inkl. Paket)
 	 * @param searchPath
-	 *            Pfad, in dem der ClassLoader nach Klassen sucht (wenn
-	 *            <code>null</code>, wird der System-Klassenpfad
-	 *            {@linkplain ClassLoader#getSystemResource(String)
-	 *            ClassLoader.getSystemResource("")} zum Laden der Klasse
-	 *            verwendet)
+	 *            Pfad, in dem der ClassLoader nach Klassen sucht (wenn <code>null</code>, wird der System-Klassenpfad
+	 *            {@linkplain ClassLoader#getSystemResource(String) ClassLoader.getSystemResource("")} zum Laden der
+	 *            Klasse verwendet)
 	 * @throws ClassNotFoundException
 	 * @see PreferredClassLoader
 	 * 
 	 * @author Dominik Appl
 	 */
-	public static Class loadPreferredClass(String classname, URL searchPath)
-			throws ClassNotFoundException {
+	public static Class loadPreferredClass(String classname, URL searchPath) throws ClassNotFoundException {
 		if (searchPath == null)
 			// System-Klassenpfad verwenden
 			searchPath = ClassLoader.getSystemResource("");
-		PreferredClassLoader classLoader = new PreferredClassLoader(
-				new URL[] { searchPath }, Thread.currentThread()
-						.getContextClassLoader(), null, false);
+		PreferredClassLoader classLoader = new PreferredClassLoader(new URL[] { searchPath }, Thread.currentThread()
+				.getContextClassLoader(), null, false);
 		Class loadedClass = classLoader.loadClass(classname);
 		if (loadedClass == null)
 			return Class.forName(classname);
@@ -1780,10 +1640,8 @@
 	}
 
 	/**
-	 * Laed eine Klasse neu und erzeugt eine Objekt-Instanz. Als Suchpfad fuer
-	 * die Klasse der System-Klassenpfad
-	 * {@linkplain ClassLoader#getSystemResource(String)
-	 * ClassLoader.getSystemResource("")} verwendet.
+	 * Laed eine Klasse neu und erzeugt eine Objekt-Instanz. Als Suchpfad fuer die Klasse der System-Klassenpfad
+	 * {@linkplain ClassLoader#getSystemResource(String) ClassLoader.getSystemResource("")} verwendet.
 	 * 
 	 * @param classname
 	 *            Klassenname (inkl. Paket)
@@ -1802,18 +1660,15 @@
 	 * @param classname
 	 *            Klassenname (inkl. Paket)
 	 * @param searchPath
-	 *            Pfad, in dem der ClassLoader nach Klassen sucht (wenn
-	 *            <code>null</code>, wird der System-Klassenpfad
-	 *            {@linkplain ClassLoader#getSystemResource(String)
-	 *            ClassLoader.getSystemResource("")} zum Laden der Klasse
-	 *            verwendet)
+	 *            Pfad, in dem der ClassLoader nach Klassen sucht (wenn <code>null</code>, wird der System-Klassenpfad
+	 *            {@linkplain ClassLoader#getSystemResource(String) ClassLoader.getSystemResource("")} zum Laden der
+	 *            Klasse verwendet)
 	 * @param param
 	 *            Parameter fuer den Konstruktor-Aufruf
 	 * @exception RuntimeException
 	 *                falls irgendein Fehler auftritt
 	 */
-	public static Object loadPreferredObject(String classname, URL searchPath,
-			Object... param) {
+	public static Object loadPreferredObject(String classname, URL searchPath, Object... param) {
 		try {
 			// Klasse laden
 			Class clazz = loadPreferredClass(classname, searchPath);
@@ -1834,8 +1689,7 @@
 				} catch (IllegalArgumentException err) {
 				}
 			// kein passender Konstruktor gefunden
-			throw new UnsupportedOperationException(
-					"No matching constructor found...");
+			throw new UnsupportedOperationException("No matching constructor found...");
 		} catch (Exception err) {
 			throw new RuntimeException(err);
 		}
@@ -1847,18 +1701,17 @@
 	 * @param classes
 	 *            irgenwelche Klassen
 	 * @param superClass
-	 *            es werden nur Klassen beruecksichtigt, die von dieser
-	 *            Oberklasse abgeleitet sind (kann {@code null} sein)
+	 *            es werden nur Klassen beruecksichtigt, die von dieser Oberklasse abgeleitet sind (kann {@code null}
+	 *            sein)
 	 * @param methodName
 	 *            aufzurufende Methode (case-sensitive!)
 	 * @param methodParams
 	 *            Aufruf-Parameter fuer Methode
-	 * @return Die Rueckgabewerte der Methoden-Aufrufe. Die Elemente fuer
-	 *         diejenigen Indizes i, fuer die classes[i] nicht der superClass
-	 *         entspricht werden mit {@code null} belegt
+	 * @return Die Rueckgabewerte der Methoden-Aufrufe. Die Elemente fuer diejenigen Indizes i, fuer die classes[i]
+	 *         nicht der superClass entspricht werden mit {@code null} belegt
 	 */
-	public static Object[] callStaticMethod(Class[] classes, Class superClass,
-			String methodName, Object... methodParams) {
+	public static Object[] callStaticMethod(Class[] classes, Class superClass, String methodName,
+			Object... methodParams) {
 		Object[] ret = new Object[classes.length];
 		for (int i = 0; i < classes.length; i++) {
 			Class clazz = classes[i];
@@ -1894,17 +1747,14 @@
 				}
 			}
 			if (!methodFound)
-				throw new UnsupportedOperationException("Static method '"
-						+ methodName + "("
-						+ stringConcatWithSep(",", methodParams)
-						+ ")' not available in " + getSimpleClassName(clazz));
+				throw new UnsupportedOperationException("Static method '" + methodName + "("
+						+ stringConcatWithSep(",", methodParams) + ")' not available in " + getSimpleClassName(clazz));
 		}
 		return ret;
 	}
 
 	/**
-	 * Liefert das Package einer Klasse erweitert um einen relativen Pfad in
-	 * Punkt-Notation.
+	 * Liefert das Package einer Klasse erweitert um einen relativen Pfad in Punkt-Notation.
 	 * 
 	 * @param clazz
 	 *            eine Klasse
@@ -1930,13 +1780,11 @@
 	 */
 	public static void checkIdentifierAndError(String identifier) {
 		if (!Character.isJavaIdentifierStart(identifier.charAt(0)))
-			throw new IllegalArgumentException("Illegal first character '"
-					+ identifier.charAt(0) + "'");
+			throw new IllegalArgumentException("Illegal first character '" + identifier.charAt(0) + "'");
 		for (int i = 1; i < identifier.length(); i++) {
 			char c = identifier.charAt(i);
 			if (!Character.isJavaIdentifierPart(c))
-				throw new IllegalArgumentException("Illegal inner character '"
-						+ c + "'");
+				throw new IllegalArgumentException("Illegal inner character '" + c + "'");
 		}
 	}
 
@@ -1957,8 +1805,7 @@
 	}
 
 	/**
-	 * Sortiert einen Array aus beliebigen Objekten nach der natuerlichen
-	 * Sortierung ihrer {@code toString()}-Werte.
+	 * Sortiert einen Array aus beliebigen Objekten nach der natuerlichen Sortierung ihrer {@code toString()}-Werte.
 	 * 
 	 * @param objects
 	 *            Objekte
@@ -1991,8 +1838,7 @@
 	}
 
 	/**
-	 * Returns the maximum value of some integer collections. If a collection is
-	 * empty, 0 is taken as its maximum value.
+	 * Returns the maximum value of some integer collections. If a collection is empty, 0 is taken as its maximum value.
 	 * 
 	 * @param collections
 	 *            some collections
@@ -2021,8 +1867,7 @@
 	}
 
 	/**
-	 * Returns the minimum value of some integer collections. If a collection is
-	 * empty, 0 is taken as its minimum value.
+	 * Returns the minimum value of some integer collections. If a collection is empty, 0 is taken as its minimum value.
 	 * 
 	 * @param collections
 	 *            some collections
@@ -2037,11 +1882,11 @@
 	 * @param value
 	 *            Wert
 	 * @param digits
-	 *            Anzahl an Nachkommastellen (negative Werte runden auf
-	 *            Vorkommastellen, also 10er-, 100er-, usw. Stelle)
+	 *            Anzahl an Nachkommastellen (negative Werte runden auf Vorkommastellen, also 10er-, 100er-, usw.
+	 *            Stelle)
 	 * @param mode
-	 *            Modus für das Runden (0 = normal Runden, 1 = Aufrunden, -1 =
-	 *            Abrunden; wenn nicht angegeben, wird normal gerundet)
+	 *            Modus für das Runden (0 = normal Runden, 1 = Aufrunden, -1 = Abrunden; wenn nicht angegeben, wird
+	 *            normal gerundet)
 	 */
 	public static double round(double value, int digits, int... mode) {
 		int roundMode = 0; // Default: Normal-Runden
@@ -2065,27 +1910,23 @@
 	}
 
 	/**
-	 * Rundet alle Werte einer {@link Collection} auf Nach- oder
-	 * Vorkommastellen.<br>
+	 * Rundet alle Werte einer {@link Collection} auf Nach- oder Vorkommastellen.<br>
 	 * <b>Achtung:</b><br>
-	 * Es wird eine neue {@link Collection} des gleichen Typs erzeugt und die
-	 * gerundeten Werte darin in der Reihenfolge eingefuegt, wie sie von
-	 * {@link Collection#iterator()} geliefert werden! Unter umstaenden kann die
-	 * urspruengliche Sortierung verloren gehen! Diese Methode sollte also im
-	 * Zweifelsfall nur auf automatisch sortierte {@link Collection Collections}
-	 * angewandt werden (z.B. {@link TreeSet}).
+	 * Es wird eine neue {@link Collection} des gleichen Typs erzeugt und die gerundeten Werte darin in der Reihenfolge
+	 * eingefuegt, wie sie von {@link Collection#iterator()} geliefert werden! Unter umstaenden kann die urspruengliche
+	 * Sortierung verloren gehen! Diese Methode sollte also im Zweifelsfall nur auf automatisch sortierte
+	 * {@link Collection Collections} angewandt werden (z.B. {@link TreeSet}).
 	 * 
 	 * @param values
 	 *            Werte
 	 * @param digits
-	 *            Anzahl an Nachkommastellen (negative Werte runden auf
-	 *            Vorkommastellen, also 10er-, 100er-, usw. Stelle)
+	 *            Anzahl an Nachkommastellen (negative Werte runden auf Vorkommastellen, also 10er-, 100er-, usw.
+	 *            Stelle)
 	 * @param mode
-	 *            Modus für das Runden (0 = normal Runden, 1 = Aufrunden, -1 =
-	 *            Abrunden; wenn nicht angegeben, wird normal gerundet)
+	 *            Modus für das Runden (0 = normal Runden, 1 = Aufrunden, -1 = Abrunden; wenn nicht angegeben, wird
+	 *            normal gerundet)
 	 */
-	public static Collection<Number> round(Collection<Number> values,
-			int digits, int... mode) {
+	public static Collection<Number> round(Collection<Number> values, int digits, int... mode) {
 		try {
 			Collection<Number> newCollection = values.getClass().newInstance();
 			for (Number value : values) {
@@ -2093,8 +1934,7 @@
 			}
 			return newCollection;
 		} catch (Exception err) {
-			throw new IllegalArgumentException("Can not handle collection: "
-					+ getSimpleClassName(values), err);
+			throw new IllegalArgumentException("Can not handle collection: " + getSimpleClassName(values), err);
 		}
 	}
 
@@ -2112,23 +1952,19 @@
 	}
 
 	/**
-	 * Reads from the clipboard and returns the content as a string, if the
-	 * content is of type stringFlavor. Returns empty String otherwise.
+	 * Reads from the clipboard and returns the content as a string, if the content is of type stringFlavor. Returns
+	 * empty String otherwise.
 	 * 
-	 * @return Clipboard content as String. Empty String if clipboard empty or
-	 *         of wrong type
+	 * @return Clipboard content as String. Empty String if clipboard empty or of wrong type
 	 */
 	public static String pasteFromClipboard() {
-		Transferable contents = Toolkit.getDefaultToolkit()
-				.getSystemClipboard().getContents(null);
+		Transferable contents = Toolkit.getDefaultToolkit().getSystemClipboard().getContents(null);
 		String result = "";
 
-		boolean hasTransferableText = (contents != null)
-				&& contents.isDataFlavorSupported(DataFlavor.stringFlavor);
+		boolean hasTransferableText = (contents != null) && contents.isDataFlavorSupported(DataFlavor.stringFlavor);
 		if (hasTransferableText) {
 			try {
-				result = (String) contents
-						.getTransferData(DataFlavor.stringFlavor);
+				result = (String) contents.getTransferData(DataFlavor.stringFlavor);
 			} catch (Exception ex) {
 				// highly unlikely since we are using a standard DataFlavor
 				System.out.println(ex);
@@ -2139,17 +1975,14 @@
 	}
 
 	/**
-	 * Returns the class names of the top of a stack trace. Duplicate class
-	 * names are eliminated.
+	 * Returns the class names of the top of a stack trace. Duplicate class names are eliminated.
 	 * 
 	 * @param stackTrace
 	 *            stack trace to explore
 	 * @param depth
-	 *            maximum count of classes, which are explored in the stack
-	 *            trace
+	 *            maximum count of classes, which are explored in the stack trace
 	 */
-	public static String[] getLastStackTraceClasses(
-			StackTraceElement[] stackTrace, int depth) {
+	public static String[] getLastStackTraceClasses(StackTraceElement[] stackTrace, int depth) {
 		Vector<String> lastClasses = new Vector<String>();
 		for (StackTraceElement st : stackTrace) {
 			String className = st.getClassName();
@@ -2167,13 +2000,11 @@
 	 * @param stackTrace
 	 *            stack trace to explore
 	 * @param depth
-	 *            maximum count of classes, which are explored in the stack
-	 *            trace
+	 *            maximum count of classes, which are explored in the stack trace
 	 * @param out
 	 *            output stream to write to
 	 */
-	public static void printLastStackTraceClasses(
-			StackTraceElement[] stackTrace, int depth, PrintStream out) {
+	public static void printLastStackTraceClasses(StackTraceElement[] stackTrace, int depth, PrintStream out) {
 		String[] lastClasses = getLastStackTraceClasses(stackTrace, depth);
 		for (int i = 0; i < lastClasses.length; i++) {
 			if (i > 0)
@@ -2188,27 +2019,22 @@
 	 * @param stackTrace
 	 *            stack trace to explore
 	 * @param depth
-	 *            maximum count of classes, which are explored in the stack
-	 *            trace
+	 *            maximum count of classes, which are explored in the stack trace
 	 * @see System#out
 	 */
-	public static void printLastStackTraceClasses(
-			StackTraceElement[] stackTrace, int depth) {
+	public static void printLastStackTraceClasses(StackTraceElement[] stackTrace, int depth) {
 		printLastStackTraceClasses(stackTrace, depth, System.out);
 	}
 
 	/**
-	 * Initializes the {@link Logger} (root logger) with a default
-	 * {@link ConsoleAppender}. This method does nothing when the root logger
-	 * already contains an appender, so it does not matter when this method is
-	 * called twice or more.
+	 * Initializes the {@link Logger} (root logger) with a default {@link ConsoleAppender}. This method does nothing
+	 * when the root logger already contains an appender, so it does not matter when this method is called twice or
+	 * more.
 	 * 
 	 * @param logLevel
-	 *            log level (if {@code null} the level {@link Level#DEBUG} is
-	 *            used)
+	 *            log level (if {@code null} the level {@link Level#DEBUG} is used)
 	 * @param logPattern
-	 *            pattern for the console output (if {@code null} a default
-	 *            pattern "%r\t%p\t%c\t%m%n" is used)
+	 *            pattern for the console output (if {@code null} a default pattern "%r\t%p\t%c\t%m%n" is used)
 	 */
 	public static void initializeDefaultLogger(Level logLevel, String logPattern) {
 		// Diry-code by Steve:
@@ -2242,13 +2068,12 @@
 	}
 
 	/**
-	 * Erzeugt einen Log4j-Logger fuer ein Objekt. Als Identifier fuer den
-	 * Logger wird der Klassenname des Objekts verwendet.
+	 * Erzeugt einen Log4j-Logger fuer ein Objekt. Als Identifier fuer den Logger wird der Klassenname des Objekts
+	 * verwendet.
 	 * 
 	 * @param object
 	 *            ein Objekt
-	 * @return Logger mit dem Namen "NULL", falls das uebergebene Objekt
-	 *         {@code null} ist
+	 * @return Logger mit dem Namen "NULL", falls das uebergebene Objekt {@code null} ist
 	 */
 	public static Logger createLogger(Object object) {
 		if (object == null)
@@ -2259,15 +2084,13 @@
 	}
 
 	/**
-	 * Erzeugt einen Error- und einen Debug-Eintrag in einem Logger. Der
-	 * Error-Eintrag erhaelt nur die Meldung, der Debug-Eintrag auch die
-	 * detaillierten Informationen des Fehlers.
+	 * Erzeugt einen Error- und einen Debug-Eintrag in einem Logger. Der Error-Eintrag erhaelt nur die Meldung, der
+	 * Debug-Eintrag auch die detaillierten Informationen des Fehlers.
 	 * 
 	 * @param logger
 	 *            ein Logger
 	 * @param mess
-	 *            Fehlermeldung (wenn {@code null} wird die Message des Fehlers
-	 *            ausgegeben)
+	 *            Fehlermeldung (wenn {@code null} wird die Message des Fehlers ausgegeben)
 	 * @param err
 	 *            ein Fehler
 	 */
@@ -2279,9 +2102,8 @@
 	}
 
 	/**
-	 * Erzeugt einen Error- und einen Debug-Eintrag in einem Logger. Der
-	 * Error-Eintrag erhaelt nur die Meldung, der Debug-Eintrag auch die
-	 * detaillierten Informationen des Fehlers.
+	 * Erzeugt einen Error- und einen Debug-Eintrag in einem Logger. Der Error-Eintrag erhaelt nur die Meldung, der
+	 * Debug-Eintrag auch die detaillierten Informationen des Fehlers.
 	 * 
 	 * @param logger
 	 *            ein Logger
@@ -2293,15 +2115,13 @@
 	}
 
 	/**
-	 * Erzeugt einen Warn- und einen Debug-Eintrag in einem Logger. Der
-	 * Warn-Eintrag erhaelt nur die Meldung, der Debug-Eintrag auch die
-	 * detaillierten Informationen des Fehlers.
+	 * Erzeugt einen Warn- und einen Debug-Eintrag in einem Logger. Der Warn-Eintrag erhaelt nur die Meldung, der
+	 * Debug-Eintrag auch die detaillierten Informationen des Fehlers.
 	 * 
 	 * @param logger
 	 *            ein Logger
 	 * @param mess
-	 *            Fehlermeldung (wenn {@code null} wird die Message des Fehlers
-	 *            ausgegeben)
+	 *            Fehlermeldung (wenn {@code null} wird die Message des Fehlers ausgegeben)
 	 * @param err
 	 *            ein Fehler
 	 */
@@ -2313,9 +2133,8 @@
 	}
 
 	/**
-	 * Erzeugt einen Warn- und einen Debug-Eintrag in einem Logger. Der
-	 * Warn-Eintrag erhaelt nur die Meldung, der Debug-Eintrag auch die
-	 * detaillierten Informationen des Fehlers.
+	 * Erzeugt einen Warn- und einen Debug-Eintrag in einem Logger. Der Warn-Eintrag erhaelt nur die Meldung, der
+	 * Debug-Eintrag auch die detaillierten Informationen des Fehlers.
 	 * 
 	 * @param logger
 	 *            ein Logger
@@ -2334,11 +2153,9 @@
 	 * @param stackTrace
 	 *            stack trace to explore
 	 * @param depth
-	 *            maximum count of classes, which are explored in the stack
-	 *            trace
+	 *            maximum count of classes, which are explored in the stack trace
 	 */
-	public static void logDebugLastStackTraceClasses(Category logger,
-			StackTraceElement[] stackTrace, int depth) {
+	public static void logDebugLastStackTraceClasses(Category logger, StackTraceElement[] stackTrace, int depth) {
 		String[] lastClasses = getLastStackTraceClasses(stackTrace, depth);
 		for (int i = 0; i < lastClasses.length; i++) {
 			String message = "";
@@ -2355,8 +2172,7 @@
 	 * @param numClass
 	 *            TODO Martin, geht das nicht schöner? Ich bin zu doof
 	 */
-	public static Number parseNumberAs(final String valueString,
-			final Class<?> numClass) {
+	public static Number parseNumberAs(final String valueString, final Class<?> numClass) {
 
 		if (StringUtils.trimToNull(valueString) == null)
 			return null;
@@ -2377,9 +2193,8 @@
 		} else if (numClass == Float.class) {
 			return doubleValue.floatValue();
 		} else {
-			throw new RuntimeException(
-					"Please report that parseNumberAs has to support variables of type "
-							+ numClass.getCanonicalName());
+			throw new RuntimeException("Please report that parseNumberAs has to support variables of type "
+					+ numClass.getCanonicalName());
 		}
 	}
 
@@ -2397,8 +2212,7 @@
 	}
 
 	/**
-	 * Interpretiert einen {@link String} zu einem {@link boolean} mit default
-	 * <code>true</code>.
+	 * Interpretiert einen {@link String} zu einem {@link boolean} mit default <code>true</code>.
 	 */
 	public static boolean parseStringDefaultTrue(String str) {
 		Boolean b = parseStringDefaultNull(str);
@@ -2416,27 +2230,25 @@
 	}
 
 	/**
-	 * Interpretiert einen {@link String} zu einem {@link boolean} mit default
-	 * <code>null</code>.
+	 * Interpretiert einen {@link String} zu einem {@link boolean} mit default <code>null</code>.
 	 */
 	public static Boolean parseStringDefaultNull(String str) {
 		return parseStringDefaultNull(str, true);
 	}
 
 	/**
-	 * Interpretiert einen {@link String} zu einem {@link boolean} mit default
-	 * <code>null</code>.
+	 * Interpretiert einen {@link String} zu einem {@link boolean} mit default <code>null</code>.
 	 */
 	public static Boolean parseStringDefaultNull(String str, boolean lax) {
 		if (str == null)
 			return null;
-//		String trimmedLowcase = removeWhitespacesToEmpty(str.toLowerCase())
-//				.trim();
-        String trimmedLowcase = str.toLowerCase();
-        if ( REMOVE_WHITESPACES_ON_PARSE_STRING )
-          trimmedLowcase = removeWhitespacesToEmpty(trimmedLowcase);
-        trimmedLowcase = trimmedLowcase.trim();
-        
+		// String trimmedLowcase = removeWhitespacesToEmpty(str.toLowerCase())
+		// .trim();
+		String trimmedLowcase = str.toLowerCase();
+		if (REMOVE_WHITESPACES_ON_PARSE_STRING)
+			trimmedLowcase = removeWhitespacesToEmpty(trimmedLowcase);
+		trimmedLowcase = trimmedLowcase.trim();
+
 		if (trimmedLowcase.startsWith("no"))
 			return false;
 		if (trimmedLowcase.endsWith("no"))
@@ -2491,8 +2303,7 @@
 	}
 
 	/**
-	 * Interpretiert einen {@link String} zu einem {@link boolean} mit default
-	 * <code>false</code>.
+	 * Interpretiert einen {@link String} zu einem {@link boolean} mit default <code>false</code>.
 	 */
 	public static boolean parseStringDefaultFalse(String str) {
 		Boolean b = parseStringDefaultNull(str);
@@ -2500,8 +2311,7 @@
 	}
 
 	/**
-	 * Converts a list to a map which contains the list items as keys and
-	 * corresponding values.
+	 * Converts a list to a map which contains the list items as keys and corresponding values.
 	 */
 	public static <K> Map<K, K> convertToMap(List<K> list) {
 		Map<K, K> map = new SequentialOrderedMap<K, K>();
@@ -2511,8 +2321,7 @@
 	}
 
 	/**
-	 * Removes leading and tailing "\n" newline commands. Very similar:
-	 * StringUtils.trimToEmpty(string);
+	 * Removes leading and tailing "\n" newline commands. Very similar: StringUtils.trimToEmpty(string);
 	 * 
 	 * @param string
 	 *            return <code>null</code> if <code>null</code> is passed.
@@ -2548,12 +2357,10 @@
 	final static String REMOVETAGSREGEX = "\\s*<[^>]*>\\s*";
 
 	/**
-	 * Kann verwendet werden, um einen String von XML/HTML Tags zu säubern.
-	 * Rückgabe ist ein ein String ohne Tags. Mehr als 2 Leerzeichen werden zu
-	 * einem Leerzeichen. Am Ende und Anfang nie Leerzeichen. Ein <li>wird zu
-	 * einem * um die Lesbarkeit als Rein-Text zu verbessern.<br/>
-	 * Die Methode basiert auf RegEx. Es wird also kein valides oder
-	 * wellformed-XML erwartet.
+	 * Kann verwendet werden, um einen String von XML/HTML Tags zu säubern. Rückgabe ist ein ein String ohne Tags. Mehr
+	 * als 2 Leerzeichen werden zu einem Leerzeichen. Am Ende und Anfang nie Leerzeichen. Ein <li>wird zu einem * um die
+	 * Lesbarkeit als Rein-Text zu verbessern.<br/>
+	 * Die Methode basiert auf RegEx. Es wird also kein valides oder wellformed-XML erwartet.
 	 */
 	public static String removeTags(String withTags) {
 		if (withTags == null)
@@ -2561,13 +2368,11 @@
 
 		String withoutTags = withTags;
 
-		Matcher matcher = RegexCache.getInstance().getMatcher("<li>",
-				withoutTags);
+		Matcher matcher = RegexCache.getInstance().getMatcher("<li>", withoutTags);
 		if (matcher.find())
 			withoutTags = matcher.replaceAll("*");
 
-		matcher = RegexCache.getInstance().getMatcher(REMOVETAGSREGEX,
-				withoutTags);
+		matcher = RegexCache.getInstance().getMatcher(REMOVETAGSREGEX, withoutTags);
 		if (matcher.find())
 			withoutTags = matcher.replaceAll(" ");
 
@@ -2587,22 +2392,18 @@
 	}
 
 	/**
-	 * Liefert einen String zurück, der zeigt, wo die RegEx im String getroffen
-	 * hat. Der getroffene Bereich wird +-$border Zeichen ausgeschnitten und
-	 * GROSS geschrieben. <br/>
+	 * Liefert einen String zurück, der zeigt, wo die RegEx im String getroffen hat. Der getroffene Bereich wird
+	 * +-$border Zeichen ausgeschnitten und GROSS geschrieben. <br/>
 	 * Beispiele:
 	 * <ul>
-	 * <li>assertEquals("abcBAUMdef", LangUtil.regExBereich("abcBaumdef",
-	 * "Baum", 115)); <br/>
-	 * <li>assertEquals("5BAUM6", LangUtil.regExBereich("12345Baum67890",
-	 * "Baum", 1));
+	 * <li>assertEquals("abcBAUMdef", LangUtil.regExBereich("abcBaumdef", "Baum", 115)); <br/>
+	 * <li>assertEquals("5BAUM6", LangUtil.regExBereich("12345Baum67890", "Baum", 1));
 	 */
 	static public String regExBereich(String value, String regex, int border) {
 		return regExBereich(value, regex, border, ".*", ".*");
 	}
 
-	static public String regExBereich(String value, String regex, int border,
-			String pre, String post) {
+	static public String regExBereich(String value, String regex, int border, String pre, String post) {
 
 		if (border < 0)
 			throw new IllegalStateException("border may not be smaller 0!");
@@ -2624,16 +2425,13 @@
 		int s2 = Math.min(start, border);
 		String vorher = value.substring(start - s2, start);
 
-		String nachher = value.substring(matcher.end(1),
-				Math.min(matcher.end(1) + border, value.length()));
+		String nachher = value.substring(matcher.end(1), Math.min(matcher.end(1) + border, value.length()));
 
-		return vorher.toLowerCase() + treffer.toUpperCase()
-				+ nachher.toLowerCase();
+		return vorher.toLowerCase() + treffer.toUpperCase() + nachher.toLowerCase();
 	}
 
 	/**
-	 * Fasst Zeilenumbrüche und sonstige Leerräume zu einem einizgen Leerzeichen
-	 * zusammen.
+	 * Fasst Zeilenumbrüche und sonstige Leerräume zu einem einizgen Leerzeichen zusammen.
 	 * 
 	 * @Deprecated use removeWhitespacesToNull
 	 */
@@ -2643,16 +2441,14 @@
 	}
 
 	/**
-	 * Fasst Zeilenumbrüche und sonstige Leerräume zu einem einizgen Leerzeichen
-	 * zusammen.
+	 * Fasst Zeilenumbrüche und sonstige Leerräume zu einem einizgen Leerzeichen zusammen.
 	 */
 	public static String removeWhitespacesToNull(String string) {
 		return StringUtils.trimToNull(removeWhitespacesToEmpty(string));
 	}
 
 	/**
-	 * Alle Zeilenumbrüche raus // Geschützte Leerzeichen weg // Tabulator ->
-	 * Leer
+	 * Alle Zeilenumbrüche raus // Geschützte Leerzeichen weg // Tabulator -> Leer
 	 */
 	final static String REMOVE_WHITESPACES_PATTERN_R = "[\\u0000\\n|\\t|\\r|\\u0085|\\u2028|\\u2029|\\u00A0]";
 	// final static Pattern REMOVE_WHITESPACES_PATTERN =
@@ -2667,8 +2463,7 @@
 	// REMOVE_WHITESPACES_PATTERN2_R);
 
 	/**
-	 * Fasst Zeilenumbrüche und sonstige Leerräume zu einem einizgen Leerzeichen
-	 * zusammen.
+	 * Fasst Zeilenumbrüche und sonstige Leerräume zu einem einizgen Leerzeichen zusammen.
 	 * 
 	 * @author gregor
 	 */
@@ -2676,14 +2471,12 @@
 		if (string == null)
 			return "";
 
-		final Matcher matcher = RegexCache.getInstance().getMatcher(
-				REMOVE_WHITESPACES_PATTERN_R, string);
+		final Matcher matcher = RegexCache.getInstance().getMatcher(REMOVE_WHITESPACES_PATTERN_R, string);
 
 		string = matcher.replaceAll(" ");
 
 		// Leerraum konsolidieren
-		final String result = RegexCache.getInstance()
-				.getMatcher(REMOVE_WHITESPACES_PATTERN2_R, string)
+		final String result = RegexCache.getInstance().getMatcher(REMOVE_WHITESPACES_PATTERN2_R, string)
 				.replaceAll(" ");
 
 		return result;
@@ -2708,17 +2501,15 @@
 	public static String formatInterval(final long l) {
 		final long days = TimeUnit.MILLISECONDS.toDays(l);
 		final long hr = TimeUnit.MILLISECONDS.toHours(l);
-		final long min = TimeUnit.MILLISECONDS.toMinutes(l
-				- TimeUnit.HOURS.toMillis(hr));
-		final long sec = TimeUnit.MILLISECONDS.toSeconds(l
-				- TimeUnit.HOURS.toMillis(hr) - TimeUnit.MINUTES.toMillis(min));
+		final long min = TimeUnit.MILLISECONDS.toMinutes(l - TimeUnit.HOURS.toMillis(hr));
+		final long sec = TimeUnit.MILLISECONDS.toSeconds(l - TimeUnit.HOURS.toMillis(hr)
+				- TimeUnit.MINUTES.toMillis(min));
 		// final long ms = TimeUnit.MILLISECONDS.toMillis(l -
 		// TimeUnit.HOURS.toMillis(hr) -
 		// TimeUnit.MINUTES.toMillis(min)
 		// - TimeUnit.SECONDS.toMillis(sec));
 		if (days > 0)
-			return String.format("%d days %02d:%02d:%02d", days, hr % 24, min,
-					sec);
+			return String.format("%d days %02d:%02d:%02d", days, hr % 24, min, sec);
 		else
 			return String.format("%02d:%02d:%02d", hr, min, sec);
 		// if (days > 0)
@@ -2737,8 +2528,7 @@
 		int start = 0;
 
 		while (itemsRemaining != 0) {
-			int end = itemsRemaining >= maxListSize ? (start + maxListSize)
-					: start + itemsRemaining;
+			int end = itemsRemaining >= maxListSize ? (start + maxListSize) : start + itemsRemaining;
 
 			splittedList.add(list.subList(start, end));
 
@@ -2753,8 +2543,7 @@
 	/**
 	 * Rauskopiert aus ExecutorService JavaDoc
 	 */
-	public static void shutdownAndAwaitTermination(ExecutorService pool,
-			int secondsToWait) {
+	public static void shutdownAndAwaitTermination(ExecutorService pool, int secondsToWait) {
 		pool.shutdown(); // Disable new tasks from being submitted
 		try {
 			// Wait a while for existing tasks to terminate

Modified: trunk/schmitzm-core/src/test/java/de/schmitzm/crypt/HtPasswdTest.java
===================================================================
--- trunk/schmitzm-core/src/test/java/de/schmitzm/crypt/HtPasswdTest.java	2012-08-29 13:54:38 UTC (rev 2077)
+++ trunk/schmitzm-core/src/test/java/de/schmitzm/crypt/HtPasswdTest.java	2012-08-29 14:09:00 UTC (rev 2078)
@@ -1,7 +1,7 @@
 package de.schmitzm.crypt;
 
 
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.*;
 
 import java.io.File;
 import java.io.IOException;

Modified: trunk/schmitzm-core/src/test/java/de/schmitzm/i18n/SwitchLanguageDialogTest.java
===================================================================
--- trunk/schmitzm-core/src/test/java/de/schmitzm/i18n/SwitchLanguageDialogTest.java	2012-08-29 13:54:38 UTC (rev 2077)
+++ trunk/schmitzm-core/src/test/java/de/schmitzm/i18n/SwitchLanguageDialogTest.java	2012-08-29 14:09:00 UTC (rev 2078)
@@ -29,7 +29,7 @@
  ******************************************************************************/
 package de.schmitzm.i18n;
 
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.*;
 
 import java.util.ArrayList;
 

Modified: trunk/schmitzm-core/src/test/java/de/schmitzm/lang/LimitedHashMapTest.java
===================================================================
--- trunk/schmitzm-core/src/test/java/de/schmitzm/lang/LimitedHashMapTest.java	2012-08-29 13:54:38 UTC (rev 2077)
+++ trunk/schmitzm-core/src/test/java/de/schmitzm/lang/LimitedHashMapTest.java	2012-08-29 14:09:00 UTC (rev 2078)
@@ -1,6 +1,6 @@
 package de.schmitzm.lang;
 
-import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.*;
 
 import java.awt.GraphicsEnvironment;
 import java.io.IOException;

Modified: trunk/schmitzm-core/src/test/java/de/schmitzm/net/SitemapTest.java
===================================================================
--- trunk/schmitzm-core/src/test/java/de/schmitzm/net/SitemapTest.java	2012-08-29 13:54:38 UTC (rev 2077)
+++ trunk/schmitzm-core/src/test/java/de/schmitzm/net/SitemapTest.java	2012-08-29 14:09:00 UTC (rev 2078)
@@ -1,6 +1,6 @@
 package de.schmitzm.net;
 
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.*;
 
 import org.junit.Test;
 

Modified: trunk/schmitzm-core/src/test/java/de/schmitzm/net/mail/MailerTest.java
===================================================================
--- trunk/schmitzm-core/src/test/java/de/schmitzm/net/mail/MailerTest.java	2012-08-29 13:54:38 UTC (rev 2077)
+++ trunk/schmitzm-core/src/test/java/de/schmitzm/net/mail/MailerTest.java	2012-08-29 14:09:00 UTC (rev 2078)
@@ -1,6 +1,6 @@
 package de.schmitzm.net.mail;
 
-import static org.junit.Assert.fail;
+import static org.junit.Assert.*;
 
 import javax.mail.MessagingException;
 

Modified: trunk/schmitzm-core/src/test/java/de/schmitzm/swing/swingworker/AtlasStatusDialogTest.java
===================================================================
--- trunk/schmitzm-core/src/test/java/de/schmitzm/swing/swingworker/AtlasStatusDialogTest.java	2012-08-29 13:54:38 UTC (rev 2077)
+++ trunk/schmitzm-core/src/test/java/de/schmitzm/swing/swingworker/AtlasStatusDialogTest.java	2012-08-29 14:09:00 UTC (rev 2078)
@@ -1,6 +1,6 @@
 package de.schmitzm.swing.swingworker;
 
-import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.*;
 
 import java.net.MalformedURLException;
 import java.net.URL;

Modified: trunk/schmitzm-core/src/test/java/de/schmitzm/versionnumber/ReleaseUtilTest.java
===================================================================
--- trunk/schmitzm-core/src/test/java/de/schmitzm/versionnumber/ReleaseUtilTest.java	2012-08-29 13:54:38 UTC (rev 2077)
+++ trunk/schmitzm-core/src/test/java/de/schmitzm/versionnumber/ReleaseUtilTest.java	2012-08-29 14:09:00 UTC (rev 2078)
@@ -1,6 +1,6 @@
 package de.schmitzm.versionnumber;
 
-import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.*;
 
 import org.apache.log4j.Logger;
 import org.junit.Test;



More information about the Schmitzm-commits mailing list