Kaynağa Gözat

fix: PathUtils#hasExtension

Mariusz Czarnowski 4 yıl önce
ebeveyn
işleme
668eca3db4

+ 10 - 2
assira.core/src/main/java/net/ranides/assira/io/PathUtils.java

@@ -6,16 +6,20 @@
  */
 package net.ranides.assira.io;
 
+import java.io.File;
 import java.net.URISyntaxException;
 import java.net.URL;
 import java.nio.file.Path;
 import java.nio.file.Paths;
+import java.util.Locale;
 
 /**
  *
  * @author Ranides Atterwim <ranides@gmail.com>
  */
 public final class PathUtils {
+
+    private static final boolean CASE_SENSITIVE_FILES = !new File( "a" ).equals( new File( "A" ) );
     
     private PathUtils() {
         /* utility class */
@@ -68,11 +72,15 @@ public final class PathUtils {
     }
 
     public static boolean hasExtension(String path, String extension) {
-        return path.endsWith(extension);
+        if(CASE_SENSITIVE_FILES) {
+            return path.endsWith(extension);
+        } else {
+            return path.toUpperCase(Locale.ROOT).endsWith(extension.toUpperCase(Locale.ROOT));
+        }
     }
 
     public static boolean hasExtension(Path path, String extension) {
-        return path.toString().endsWith(extension);
+        return hasExtension(path.toString(), extension);
     }
     
     public static String getSimpleName(String path) {