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

34 lines
723 B
Java
Raw Normal View History

package net.filebot.format;
2015-07-26 07:52:11 -04:00
2016-03-09 15:36:28 -05:00
import static net.filebot.Logging.*;
2016-03-27 09:52:59 -04:00
import static net.filebot.media.XattrMetaInfo.*;
2015-07-26 07:52:11 -04:00
import java.io.File;
import java.io.FileFilter;
import javax.script.ScriptException;
2015-07-26 07:52:11 -04:00
public class ExpressionFileFilter implements FileFilter {
private ExpressionFilter filter;
2015-07-26 07:52:11 -04:00
public ExpressionFileFilter(String expression) throws ScriptException {
this.filter = new ExpressionFilter(expression);
2015-07-26 07:52:11 -04:00
}
2015-07-27 08:40:55 -04:00
public ExpressionFilter getExpressionFilter() {
return filter;
}
2015-07-26 07:52:11 -04:00
@Override
public boolean accept(File f) {
try {
return filter.matches(new MediaBindingBean(xattr.getMetaInfo(f), f));
2015-07-26 07:52:11 -04:00
} catch (Exception e) {
debug.warning("Filter expression failed: " + e);
2015-07-26 07:52:11 -04:00
}
return false;
2015-07-26 07:52:11 -04:00
}
}