X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Fjvcard%2Fresources%2FBundles.java;h=04b6f707d1dcaeb1935d036d7fcd2f3cf5ff6597;hb=a73a906356c971b080c36368e71a15d87e8b8d31;hp=b83b1b050d93fa3c56304f90f7138afc2fb28533;hpb=88eb81220498dc5b3199bad2d1de6970b55ceaed;p=jvcard.git diff --git a/src/be/nikiroo/jvcard/resources/Bundles.java b/src/be/nikiroo/jvcard/resources/Bundles.java index b83b1b0..04b6f70 100644 --- a/src/be/nikiroo/jvcard/resources/Bundles.java +++ b/src/be/nikiroo/jvcard/resources/Bundles.java @@ -17,6 +17,10 @@ import java.util.ResourceBundle; * */ public class Bundles { + /** + * The configuration directory where we try to get the .properties + * in priority, or NULL to get the information from the compiled resources. + */ static private String confDir = getConfDir(); /** @@ -69,6 +73,16 @@ public class Bundles { Bundles.confDir = confDir; } + /** + * Get the primary configuration directory to look for .properties + * files in. + * + * @return the directory + */ + static public String getDirectory() { + return Bundles.confDir; + } + /** * This class encapsulate a {@link ResourceBundle} in UTF-8. It only allows * to retrieve values associated to an enumeration, and allows some @@ -313,11 +327,29 @@ public class Bundles { * in case of IO error */ protected void writeValue(Writer writer, E id) throws IOException { - writer.write(id.name()); + writeValue(writer, id.name(), getString(id)); + } + + /** + * Write the given data to the config file, i.e., + * "MY_ID = my_curent_value" followed by a new line + * + * @param writer + * the {@link Writer} to write into + * @param id + * the id to write + * @param value + * the id's value + * + * @throws IOException + * in case of IO error + */ + protected void writeValue(Writer writer, String id, String value) + throws IOException { + writer.write(id); writer.write(" = "); - String[] lines = getString(id).replaceAll("\\\t", "\\\\\\t").split( - "\n"); + String[] lines = value.replaceAll("\\\t", "\\\\\\t").split("\n"); for (int i = 0; i < lines.length; i++) { writer.write(lines[i]); if (i < lines.length - 1) {