]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.document.linking.ui/src/org/simantics/document/linking/function/SearchFunction.java
Index tokenized lowercase versions of name and types for UI searches
[simantics/platform.git] / bundles / org.simantics.document.linking.ui / src / org / simantics / document / linking / function / SearchFunction.java
index eb4b02591a62a9c584cac5cbce9f1842b9539dbe..7f14520f24ee6ac3818906dffa0dc538499b67e6 100644 (file)
@@ -14,6 +14,7 @@ import org.simantics.db.common.utils.Logger;
 import org.simantics.db.common.utils.NameUtils;
 import org.simantics.db.exception.DatabaseException;
 import org.simantics.db.layer0.adapter.Instances;
+import org.simantics.db.layer0.genericrelation.Dependencies;
 import org.simantics.document.linking.ontology.DocumentLink;
 import org.simantics.document.linking.utils.SourceLinkUtil;
 import org.simantics.scl.runtime.function.FunctionImpl5;
@@ -30,9 +31,9 @@ public class SearchFunction extends FunctionImpl5<IProgressMonitor, ReadGraph, R
        
        static {
                columns = new ArrayList<SearchResultColumn>();
-               columns.add(new SearchResultColumn("Name"));
-               columns.add(new SearchResultColumn("Comment"));
-               columns.add(new SearchResultColumn("Part Of"));
+               columns.add(new SearchResultColumn("Name")); //$NON-NLS-1$
+               columns.add(new SearchResultColumn("Comment")); //$NON-NLS-1$
+               columns.add(new SearchResultColumn("Part Of")); //$NON-NLS-1$
        }
        
        @Override
@@ -54,9 +55,9 @@ public class SearchFunction extends FunctionImpl5<IProgressMonitor, ReadGraph, R
                int type = 0;
                
                public NameComparator(String query) {
-               String parts[] = query.split(" OR ");
+               String parts[] = query.split(" OR "); //$NON-NLS-1$
                for (String s : parts) {
-                       if (s.startsWith("Name:")) {
+                       if (s.startsWith("Name:")) { //$NON-NLS-1$
                                 name = s.substring(5);
                        }
                }
@@ -65,11 +66,11 @@ public class SearchFunction extends FunctionImpl5<IProgressMonitor, ReadGraph, R
                name = name.trim();
                boolean freeStart = false;
                boolean freeEnd = false;
-               if (name.endsWith("*")) {
+               if (name.endsWith("*")) { //$NON-NLS-1$
                        name = name.substring(0,name.length()-1);
                        freeEnd = true;
                }
-               if (name.startsWith("*")) {
+               if (name.startsWith("*")) { //$NON-NLS-1$
                        name = name.substring(1,name.length());
                        freeStart = true;
                }
@@ -104,8 +105,8 @@ public class SearchFunction extends FunctionImpl5<IProgressMonitor, ReadGraph, R
         SearchResult result = new SearchResult(columns);
         Set<Resource> processed = new HashSet<Resource>();
 
-       NameComparator c = new NameComparator(query.getQuery("Name"));
-        
+        NameComparator c = new NameComparator(query.getQuery(Dependencies.FIELD_NAME_SEARCH));
+
         for (Resource source : results) {
                  // Prevent index corruption from producing duplicate results.
             if (!processed.add(source))
@@ -134,7 +135,7 @@ public class SearchFunction extends FunctionImpl5<IProgressMonitor, ReadGraph, R
                String relationName = NameUtils.getSafeLabel(graph, relation);
                if (relationName.length() == 0)
                        relationName = NameUtils.getSafeName(graph, relation);
-               parentName = parentName +"#"+relationName;
+               parentName = parentName +"#"+relationName; //$NON-NLS-1$
             }
             
             DocumentLinkRow rst = new DocumentLinkRow();
@@ -169,17 +170,17 @@ public class SearchFunction extends FunctionImpl5<IProgressMonitor, ReadGraph, R
        public String getContent(int column) {
                switch (column) {
                case 0:
-                       return "<a class=\"small\" href=\"resource:"+ resource.getResource() +"\"" + (resource.getUri() == null ? "" : " title=\""+resource.getUri()+"\">")+StringUtil.escape(resource.getName())+"</a>";
+                       return "<a class=\"small\" href=\"resource:"+ resource.getResource() +"\"" + (resource.getUri() == null ? "" : " title=\""+resource.getUri()+"\">")+StringUtil.escape(resource.getName())+"</a>"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$
                case 1:
                        if (comment != null)
                                return comment;
-                       return "";
+                       return ""; //$NON-NLS-1$
                case 2:
                        if (parent != null)
-                               return "<a class=\"small\" href=\"resource:"+ parent.getResource() +"\"" + (parent.getUri() == null ? "" : " title=\""+parent.getUri()+"\">")+StringUtil.escape(parent.getName())+"</a>";
-                       return "";
+                               return "<a class=\"small\" href=\"resource:"+ parent.getResource() +"\"" + (parent.getUri() == null ? "" : " title=\""+parent.getUri()+"\">")+StringUtil.escape(parent.getName())+"</a>"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$
+                       return ""; //$NON-NLS-1$
                default:
-                       return "";
+                       return ""; //$NON-NLS-1$
                }
        }
     }