nemo r82 - trunk/metadata



Author: arj
Date: Thu Feb  7 15:58:35 2008
New Revision: 82
URL: http://svn.gnome.org/viewvc/nemo?rev=82&view=rev

Log:
Another improvement from using StringBuilder instead of string concat

Although a lot smaller



Modified:
   trunk/metadata/MetadataStore.cs

Modified: trunk/metadata/MetadataStore.cs
==============================================================================
--- trunk/metadata/MetadataStore.cs	(original)
+++ trunk/metadata/MetadataStore.cs	Thu Feb  7 15:58:35 2008
@@ -1530,7 +1530,7 @@
                 froms.Add("file_labels");
                 clauses.Add("file_labels.file_id = files.id");
                 
-                string sub_clause = "file_labels.label_id in (";
+                StringBuilder sub_clause = new StringBuilder("file_labels.label_id in (");
 
                 int i = 0;
                 foreach (MetaLabel label in query.labels) {
@@ -1538,18 +1538,18 @@
                     add_par(cmd, String.Format("@label_id{0}", i), DbType.Int64, label.db_id);
 
                     if (!first)
-                    	sub_clause += ", " + String.Format("@label_id{0}", i);
+                    	sub_clause.Append(String.Format(", @label_id{0}", i));
                     else {
                     	first = false;
-                    	sub_clause += String.Format("@label_id{0}", i);
+                    	sub_clause.Append(String.Format("@label_id{0}", i));
                     }
 
                     ++i;
                 }
 
-   				sub_clause += ")";
+   				sub_clause.Append(")");
 
-                clauses.Add(sub_clause);
+                clauses.Add(sub_clause.ToString());
             }
 
             if (query.types != null) {
@@ -1560,25 +1560,25 @@
                 froms.Add("file_types");
                 clauses.Add("file_types.id = files.type");
                 
-                string sub_clause = "file_types.category in (";
+                StringBuilder sub_clause = new StringBuilder("file_types.category in (");
 
                 foreach (long id in query.types) {
                 
                     add_par(cmd, String.Format("@type_id{0}", i), DbType.Int64, id);
 
                     if (!first)
-                    	sub_clause += ", " + String.Format("@type_id{0}", i);
+                    	sub_clause.Append(String.Format(", @type_id{0}", i));
                     else {
                     	first = false;
-                    	sub_clause += String.Format("@type_id{0}", i);
+                    	sub_clause.Append(String.Format("@type_id{0}", i));
                     }
 
                     ++i;
                 }
 
-				sub_clause += ")";
+				sub_clause.Append(")");
 
-                clauses.Add(sub_clause);
+                clauses.Add(sub_clause.ToString());
             }
 
             clauses.Add("files.last_modified >= @date_start");



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]