filebot/source/net/filebot/format/ExpressionFileFilter.java

34 lines
723 B
Java

package net.filebot.format;
import static net.filebot.Logging.*;
import static net.filebot.media.XattrMetaInfo.*;
import java.io.File;
import java.io.FileFilter;
import javax.script.ScriptException;
public class ExpressionFileFilter implements FileFilter {
private ExpressionFilter filter;
public ExpressionFileFilter(String expression) throws ScriptException {
this.filter = new ExpressionFilter(expression);
}
public ExpressionFilter getExpressionFilter() {
return filter;
}
@Override
public boolean accept(File f) {
try {
return filter.matches(new MediaBindingBean(xattr.getMetaInfo(f), f));
} catch (Exception e) {
debug.warning("Filter expression failed: " + e);
}
return false;
}
}