Author: j16sdiz
Date: 2008-04-19 16:34:50 +0000 (Sat, 19 Apr 2008)
New Revision: 19428

Modified:
   trunk/freenet/src/freenet/keys/FreenetURI.java
Log:
intern() some common string, can save ~0.5MiB memory on my node


Modified: trunk/freenet/src/freenet/keys/FreenetURI.java
===================================================================
--- trunk/freenet/src/freenet/keys/FreenetURI.java      2008-04-19 16:33:44 UTC 
(rev 19427)
+++ trunk/freenet/src/freenet/keys/FreenetURI.java      2008-04-19 16:34:50 UTC 
(rev 19428)
@@ -200,7 +200,7 @@
                String[] metaStr,
                byte[] routingKey,
                byte[] cryptoKey, byte[] extra2) {
-               this.keyType = keyType.trim().toUpperCase();
+               this.keyType = keyType.trim().toUpperCase().intern();
                this.docName = docName;
                this.metaStr = metaStr;
                this.routingKey = routingKey;
@@ -216,7 +216,7 @@
                byte[] routingKey,
                byte[] cryptoKey, byte[] extra2,
                long suggestedEdition) {
-               this.keyType = keyType.trim().toUpperCase();
+               this.keyType = keyType.trim().toUpperCase().intern();
                this.docName = docName;
                this.metaStr = metaStr;
                this.routingKey = routingKey;
@@ -255,7 +255,7 @@
                if(atchar == -1)
                        throw new MalformedURLException("There is no @ in that 
URI! (" + URI + ')');
                else
-                       keyType = URI.substring(0, atchar).toUpperCase().trim();
+                       keyType = URI.substring(0, 
atchar).toUpperCase().trim().intern();
                URI = URI.substring(atchar + 1);

                boolean validKeyType = false;
@@ -321,7 +321,7 @@
                if(!sv.isEmpty()) {
                        metaStr = new String[sv.size()];
                        for(int i = 0; i < metaStr.length; i++) {
-                               metaStr[i] = (String) 
sv.elementAt(metaStr.length - 1 - i);
+                               metaStr[i] = ((String) 
sv.elementAt(metaStr.length - 1 - i)).intern();
                                if(metaStr[i] == null)
                                        throw new NullPointerException();
                        }
@@ -473,7 +473,7 @@
                else {
                        newMetaStr = new String[metaStr.length + 1];
                        System.arraycopy(metaStr, 0, newMetaStr, 0, 
metaStr.length);
-                       newMetaStr[metaStr.length] = name;
+                       newMetaStr[metaStr.length] = name.intern();
                }
                return setMetaString(newMetaStr);
        }


Reply via email to