diff options
author | Marc R. Hoffmann <hoffmann@mountainminds.com> | 2015-03-27 08:15:40 +0100 |
---|---|---|
committer | Marc R. Hoffmann <hoffmann@mountainminds.com> | 2015-03-30 23:35:30 +0200 |
commit | d4ef46ac917f2a6896ce7465024da4848f49eac3 (patch) | |
tree | 991b407fed9f629b4b9c455d4b3e5145270cc49e /org.jacoco.ant | |
parent | 6b72d5a96182af30dc8d109d3ed691cedaee3061 (diff) | |
download | jacoco-d4ef46ac917f2a6896ce7465024da4848f49eac3.tar.gz |
GitHub #289: Allow locales with country and variant for Ant report task.
Diffstat (limited to 'org.jacoco.ant')
-rw-r--r-- | org.jacoco.ant/src/org/jacoco/ant/ReportTask.java | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/org.jacoco.ant/src/org/jacoco/ant/ReportTask.java b/org.jacoco.ant/src/org/jacoco/ant/ReportTask.java index 3242ff2c..edf7cefe 100644 --- a/org.jacoco.ant/src/org/jacoco/ant/ReportTask.java +++ b/org.jacoco.ant/src/org/jacoco/ant/ReportTask.java @@ -22,6 +22,7 @@ import java.util.Collection; import java.util.Iterator; import java.util.List; import java.util.Locale; +import java.util.StringTokenizer; import org.apache.tools.ant.BuildException; import org.apache.tools.ant.Project; @@ -221,8 +222,8 @@ public class ReportTask extends Task { * @param locale * text locale */ - public void setLocale(final Locale locale) { - this.locale = locale; + public void setLocale(final String locale) { + this.locale = parseLocale(locale); } @Override @@ -600,4 +601,21 @@ public class ReportTask extends Task { } } + /** + * Splits a given underscore "_" separated string and creates a Locale. This + * method is implemented as the method Locale.forLanguageTag() was not + * available in Java 5. + * + * @param locale + * String representation of a Locate + * @return Locale instance + */ + static Locale parseLocale(final String locale) { + final StringTokenizer st = new StringTokenizer(locale, "_"); + final String language = st.hasMoreTokens() ? st.nextToken() : ""; + final String country = st.hasMoreTokens() ? st.nextToken() : ""; + final String variant = st.hasMoreTokens() ? st.nextToken() : ""; + return new Locale(language, country, variant); + } + } |