Author: nextgens
Date: 2007-03-31 22:26:01 +0000 (Sat, 31 Mar 2007)
New Revision: 12498
Modified:
trunk/freenet/src/freenet/l10n/L10n.java
trunk/freenet/src/freenet/node/Node.java
Log:
Create a new configuration option: node.l10n
Modified: trunk/freenet/src/freenet/l10n/L10n.java
===================================================================
--- trunk/freenet/src/freenet/l10n/L10n.java 2007-03-31 22:11:28 UTC (rev
12497)
+++ trunk/freenet/src/freenet/l10n/L10n.java 2007-03-31 22:26:01 UTC (rev
12498)
@@ -125,6 +125,10 @@
return result;
}
+ public static String getSelectedLanguage() {
+ return selectedLanguage;
+ }
+
public static void main(String[] args) {
L10n.setLanguage("fr");
System.out.println(L10n.getString("testing.test"));
Modified: trunk/freenet/src/freenet/node/Node.java
===================================================================
--- trunk/freenet/src/freenet/node/Node.java 2007-03-31 22:11:28 UTC (rev
12497)
+++ trunk/freenet/src/freenet/node/Node.java 2007-03-31 22:26:01 UTC (rev
12498)
@@ -26,6 +26,7 @@
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
+import java.util.MissingResourceException;
import java.util.zip.DeflaterOutputStream;
import net.i2p.util.NativeBigInteger;
@@ -79,6 +80,7 @@
import freenet.keys.NodeSSK;
import freenet.keys.SSKBlock;
import freenet.keys.SSKVerifyException;
+import freenet.l10n.L10n;
import freenet.node.updater.NodeUpdaterManager;
import freenet.node.useralerts.BuildOldAgeUserAlert;
import freenet.node.useralerts.ExtOldAgeUserAlert;
@@ -1306,6 +1308,29 @@
disableHangCheckers =
nodeConfig.getBoolean("disableHangCheckers");
+ // l10n stuffs
+ nodeConfig.register("l10n", "en", sortOrder++, false, true,
"The language the node will use", "This setting ",
+ new StringCallback(){
+ public String get() {
+ return L10n.getSelectedLanguage();
+ }
+
+ public void set(String val) throws
InvalidConfigValueException {
+ if(get().equalsIgnoreCase(val)) return;
+ try {
+ L10n.setLanguage(val);
+ } catch (MissingResourceException e) {
+ throw new
InvalidConfigValueException(e.getMessage());
+ }
+ }
+ });
+
+ try {
+ L10n.setLanguage(nodeConfig.getString("l10n"));
+ } catch (MissingResourceException e) {
+
L10n.setLanguage(nodeConfig.getOption("l10n").getDefault());
+ }
+
nodeConfig.finishedInitialization();
writeNodeFile();