git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube...
authorSweidan Omar <TFS\sweidan.omar>
Thu, 24 Mar 2022 09:21:16 +0000 (09:21 +0000)
committerSweidan Omar <TFS\sweidan.omar>
Thu, 24 Mar 2022 09:21:16 +0000 (09:21 +0000)
server/-product/production/LOCAL/jobs/steps/shared/MediaFileSearchFilterOptions.java [new file with mode: 0644]

diff --git a/server/-product/production/LOCAL/jobs/steps/shared/MediaFileSearchFilterOptions.java b/server/-product/production/LOCAL/jobs/steps/shared/MediaFileSearchFilterOptions.java
new file mode 100644 (file)
index 0000000..ee467e5
--- /dev/null
@@ -0,0 +1,42 @@
+package user.jobengine.server.steps.shared;\r
+\r
+import java.nio.file.Path;\r
+import java.util.regex.Matcher;\r
+import java.util.regex.Pattern;\r
+\r
+import com.ibm.nosql.json.api.BasicDBObject;\r
+\r
+public class MediaFileSearchFilterOptions extends FileSearchFilterOptions {\r
+\r
+       private BasicDBObject filter;\r
+\r
+       public MediaFileSearchFilterOptions(BasicDBObject filter) {\r
+               super(filter);\r
+       }\r
+\r
+       @Override\r
+       public boolean acceptFile(Path file) {\r
+               if (filter == null)\r
+                       return true;\r
+\r
+               if (filter.containsKey("fileName")) {\r
+                       // .*\.(sh|ini|conf|vhost|xml|php)$\r
+                       String fileNamePattern = filter.getString("fileName");\r
+                       if (fileNamePattern == null || fileNamePattern.trim().length() == 0)\r
+                               return true;\r
+\r
+                       Pattern pattern = Pattern.compile(fileNamePattern, Pattern.CASE_INSENSITIVE);\r
+\r
+                       Matcher matcher = pattern.matcher(file.getFileName().toString());\r
+                       if (matcher.find())\r
+                               return true;\r
+               }\r
+\r
+               return false;\r
+       }\r
+\r
+       @Override\r
+       public boolean preAcceptDirectory(Path file) {\r
+               return true;\r
+       }\r
+}\r