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();



Reply via email to