forked from I2P_Developers/i2p.i2p
Util: Consolidate FileFilters
This commit is contained in:
@@ -40,6 +40,7 @@ import net.i2p.I2PAppContext;
|
||||
import net.i2p.data.Base64;
|
||||
import net.i2p.data.DataHelper;
|
||||
import net.i2p.util.Log;
|
||||
import net.i2p.util.FileSuffixFilter;
|
||||
import net.i2p.util.SecureFileOutputStream;
|
||||
import net.i2p.util.SystemVersion;
|
||||
|
||||
@@ -486,21 +487,17 @@ public final class CertUtil {
|
||||
*/
|
||||
private static void loadCRLs(Set<X509CRL> crls, File dir) {
|
||||
if (dir.exists() && dir.isDirectory()) {
|
||||
File[] files = dir.listFiles();
|
||||
File[] files = dir.listFiles(new FileSuffixFilter(".crl"));
|
||||
if (files != null) {
|
||||
for (int i = 0; i < files.length; i++) {
|
||||
File f = files[i];
|
||||
if (!f.isFile())
|
||||
continue;
|
||||
if (f.getName().endsWith(".crl")) {
|
||||
try {
|
||||
X509CRL crl = loadCRL(f);
|
||||
crls.add(crl);
|
||||
} catch (IOException ioe) {
|
||||
error("Cannot load CRL from " + f, ioe);
|
||||
} catch (GeneralSecurityException crle) {
|
||||
error("Cannot load CRL from " + f, crle);
|
||||
}
|
||||
try {
|
||||
X509CRL crl = loadCRL(f);
|
||||
crls.add(crl);
|
||||
} catch (IOException ioe) {
|
||||
error("Cannot load CRL from " + f, ioe);
|
||||
} catch (GeneralSecurityException crle) {
|
||||
error("Cannot load CRL from " + f, crle);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
42
core/java/src/net/i2p/util/FileSuffixFilter.java
Normal file
42
core/java/src/net/i2p/util/FileSuffixFilter.java
Normal file
@@ -0,0 +1,42 @@
|
||||
package net.i2p.util;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileFilter;
|
||||
import java.util.Locale;
|
||||
|
||||
/**
|
||||
* A FileFilter that accepts regular files
|
||||
* with a suffix and optionally a prefix, case-insensitive.
|
||||
*
|
||||
* @since 0.9.34
|
||||
*/
|
||||
public class FileSuffixFilter implements FileFilter {
|
||||
|
||||
private final String begin, end;
|
||||
|
||||
/**
|
||||
* A filter that accepts regular files that
|
||||
* end with suffix, case-insensitive.
|
||||
*/
|
||||
public FileSuffixFilter(String suffix) {
|
||||
begin = null;
|
||||
end = suffix.toLowerCase(Locale.US);
|
||||
}
|
||||
|
||||
/**
|
||||
* A filter that accepts regular files that
|
||||
* start with prefix and
|
||||
* end with suffix, case-insensitive.
|
||||
*/
|
||||
public FileSuffixFilter(String prefix, String suffix) {
|
||||
begin = prefix.toLowerCase(Locale.US);
|
||||
end = suffix.toLowerCase(Locale.US);
|
||||
}
|
||||
|
||||
public boolean accept(File file) {
|
||||
String name = file.getName().toLowerCase(Locale.US);
|
||||
return name.endsWith(end) &&
|
||||
(begin == null || name.startsWith(begin)) &&
|
||||
file.isFile();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user