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) {