Respackopts/src/main/java/io/gitlab/jfronny/respackopts/filters/util/FileExclusionProvider.java

22 lines
805 B
Java
Raw Normal View History

2021-09-15 16:45:54 +02:00
package io.gitlab.jfronny.respackopts.filters.util;
2021-07-13 16:15:03 +02:00
import io.gitlab.jfronny.libjf.data.WrappedPack;
import io.gitlab.jfronny.respackopts.Respackopts;
2021-09-15 18:37:07 +02:00
import io.gitlab.jfronny.respackopts.RpoModInfo;
2021-09-15 17:13:14 +02:00
import io.gitlab.jfronny.respackopts.util.RpoFormatException;
2021-09-15 16:45:54 +02:00
public class FileExclusionProvider {
2021-07-13 16:15:03 +02:00
public static boolean fileHidden(WrappedPack pack, String name) {
2021-09-15 17:13:14 +02:00
return FileRpoSearchProvider.modifyWithRpo(name, pack, rpo -> {
if (rpo.conditions == null)
return false;
2021-09-15 17:13:14 +02:00
try {
return !rpo.conditions.evaluate(Respackopts.getId(pack));
} catch (RpoFormatException e) {
2021-09-15 18:37:07 +02:00
RpoModInfo.LOGGER.error("Could not evaluate condition " + name, e);
2021-09-15 17:13:14 +02:00
return false;
}
}, false);
}
}