20 package net.sf.gridarta.model.filter;
22 import java.util.Map.Entry;
23 import java.util.TreeMap;
24 import java.util.TreeSet;
25 import org.jetbrains.annotations.NotNull;
26 import org.jetbrains.annotations.Nullable;
38 private final StringBuilder
sb =
new StringBuilder();
49 final int position = sb.length();
53 if (filterConfig.isEnabled()) {
58 if (filterConfig.isInverted()) {
64 sb.append(
"inverted");
67 for (
final Entry<String,
FilterConfig<?, ?>> entry :
new TreeMap<>(filterConfig.getEntries()).entrySet()) {
68 final int savedPosition = sb.length();
69 final boolean savedFirst = first;
77 final int position2 = sb.length();
79 if (position2 == sb.length()) {
80 sb.setLength(savedPosition);
85 sb.setLength(position);
93 final int position = sb.length();
97 if (filterConfig.isEnabled()) {
102 for (
final String key :
new TreeSet<>(filterConfig.getProperties())) {
110 final String value = filterConfig.getProperty(key);
112 throw new AssertionError(
"no value for key " + key);
117 sb.setLength(position);
141 return sb.toString();
152 filterConfig.
accept(visitor);
154 this.filterConfig = prevFilterConfig;
static void encodeString(@NotNull final StringBuilder sb, @NotNull final String string)
Encodes a string configuration to a string builder.
void encodeInternal(@NotNull final FilterConfig<?, ?> filterConfig)
Encodes a file configuration to sb.
FilterConfig<?, ?> filterConfig
The FilterConfig instance being encoded.
Utility class for codec related functions.
Converts FilterConfig into string representation.
String encode(@NotNull final FilterConfig<?, ?> filterConfig)
Export the filter configuration settings.
void accept(@NotNull FilterConfigVisitor visitor)
Visits the appropriate.
Interface for visitors of filter configs.
final FilterConfigVisitor visitor
The FilterConfigVisitor for converting filterConfig instances to string representation.
final StringBuilder sb
The string representation.
Filter configuration of NamedGameObjectMatcherFilter instances.
A FilterConfig that has a name.