From 289dc3a50c01beb68625b3385308c223f29c3a8b Mon Sep 17 00:00:00 2001
From: Kai Reinhard <K.Reinhard@micromata.de>
Date: Sun, 16 Dec 2018 18:27:17 +0000
Subject: [PATCH] Search is now 2 times faster.

---
 borgbutler-core/src/main/java/de/micromata/borgbutler/data/FileSystemFilter.java |   15 +++++++++++----
 1 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/borgbutler-core/src/main/java/de/micromata/borgbutler/data/FileSystemFilter.java b/borgbutler-core/src/main/java/de/micromata/borgbutler/data/FileSystemFilter.java
index ac91755..a83ae75 100644
--- a/borgbutler-core/src/main/java/de/micromata/borgbutler/data/FileSystemFilter.java
+++ b/borgbutler-core/src/main/java/de/micromata/borgbutler/data/FileSystemFilter.java
@@ -18,15 +18,22 @@
     private String[] blackListSearchKeyWords;
 
     public boolean matches(BorgFilesystemItem item) {
+        if (searchKeyWords == null && blackListSearchKeyWords == null) {
+            return true;
+        }
+        if (item.getPath() == null) {
+            return false;
+        }
+        String path = item.getPath().toLowerCase();
         if (searchKeyWords != null) {
             for (String searchKeyWord : searchKeyWords) {
-                if (!StringUtils.containsIgnoreCase(item.getPath(), searchKeyWord))
+                if (!path.contains(searchKeyWord))
                     return false;
             }
         }
         if (blackListSearchKeyWords != null) {
             for (String blackListSearchKeyWord : blackListSearchKeyWords) {
-                if (StringUtils.containsIgnoreCase(item.getPath(), blackListSearchKeyWord))
+                if (path.contains(blackListSearchKeyWord))
                     return false;
             }
         }
@@ -51,9 +58,9 @@
                     continue;
                 }
                 if (keyWord.startsWith("!") && keyWord.length() > 1) {
-                    blackList.add(keyWord.substring(1));
+                    blackList.add(keyWord.substring(1).toLowerCase());
                 } else {
-                    whiteList.add(keyWord);
+                    whiteList.add(keyWord.toLowerCase());
                 }
             }
             if (whiteList.size() > 0) {

--
Gitblit v1.10.0