From 8918d129525ace873e98840d9d4499e35c92dffe Mon Sep 17 00:00:00 2001 From: Lorenz Date: Fri, 15 Jul 2022 19:41:05 +0200 Subject: added repo support --- .../at/hannibal2/skyhanni/utils/MultiFilter.kt | 35 ++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 src/main/java/at/hannibal2/skyhanni/utils/MultiFilter.kt (limited to 'src/main/java/at/hannibal2/skyhanni/utils') diff --git a/src/main/java/at/hannibal2/skyhanni/utils/MultiFilter.kt b/src/main/java/at/hannibal2/skyhanni/utils/MultiFilter.kt new file mode 100644 index 000000000..13968c0ae --- /dev/null +++ b/src/main/java/at/hannibal2/skyhanni/utils/MultiFilter.kt @@ -0,0 +1,35 @@ +package at.hannibal2.skyhanni.utils + +import com.google.gson.JsonObject + +class MultiFilter { + + val equals = mutableListOf() + val startsWith = mutableListOf() + val endsWith = mutableListOf() + + fun load(hideNpcSell: JsonObject) { + equals.clear() + startsWith.clear() + endsWith.clear() + + for (element in hideNpcSell["equals"].asJsonArray) { + equals.add(element.asString) + } + for (element in hideNpcSell["startsWith"].asJsonArray) { + startsWith.add(element.asString) + } + for (element in hideNpcSell["endsWith"].asJsonArray) { + endsWith.add(element.asString) + } + } + + fun match(name: String): Boolean { + if (equals.contains(name)) return true + + if (startsWith.any { name.startsWith(it) }) return true + if (endsWith.any { name.endsWith(it) }) return true + + return false + } +} \ No newline at end of file -- cgit