1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.rat.document.impl.guesser;
20
21 import java.util.Locale;
22
23 import org.apache.rat.api.Document;
24
25 public class ArchiveGuesser {
26
27 public static final String[] ARCHIVE_EXTENSIONS = {
28 "jar", "gz",
29 "zip", "tar",
30 "bz", "bz2",
31 "rar", "war",
32 };
33
34 public static final boolean isArchive(final Document document) {
35
36 final String name = document.getName();
37 final boolean result = isArchive(name);
38 return result;
39 }
40
41
42
43
44 public static final boolean isArchive(final String name) {
45 if (name == null) {return false;}
46 String nameToLower = name.toLowerCase(Locale.US);
47 boolean result = false;
48 for (int i = 0; !result && i < ArchiveGuesser.ARCHIVE_EXTENSIONS.length; i++) {
49 result = nameToLower.endsWith("." + ArchiveGuesser.ARCHIVE_EXTENSIONS[i]);
50 }
51 return result;
52 }
53
54 }