added more whitespace behaviors (trims)

This commit is contained in:
Tim Chamberlain
2025-05-13 10:15:41 -05:00
parent 6d0f5d4fb3
commit 2491523a6b
2 changed files with 63 additions and 3 deletions

View File

@ -41,7 +41,10 @@ import com.kingsrook.qqq.backend.core.utils.CollectionUtils;
public enum WhiteSpaceBehavior implements FieldBehavior<WhiteSpaceBehavior>, FieldBehaviorForFrontend, FieldFilterBehavior<WhiteSpaceBehavior>
{
NONE(null),
REMOVE_ALL_WHITESPACE((String s) -> s.chars().filter(c -> !Character.isWhitespace(c)).collect(StringBuilder::new, StringBuilder::appendCodePoint, StringBuilder::append).toString());
REMOVE_ALL_WHITESPACE((String s) -> s.chars().filter(c -> !Character.isWhitespace(c)).collect(StringBuilder::new, StringBuilder::appendCodePoint, StringBuilder::append).toString()),
TRIM((String s) -> s.trim()),
TRIM_LEFT((String s) -> s.stripLeading()),
TRIM_RIGHT((String s) -> s.stripTrailing());
private final Function<String, String> function;
@ -82,7 +85,7 @@ public enum WhiteSpaceBehavior implements FieldBehavior<WhiteSpaceBehavior>, Fie
switch(this)
{
case REMOVE_ALL_WHITESPACE -> applyFunction(recordList, table, field);
case REMOVE_ALL_WHITESPACE, TRIM, TRIM_LEFT, TRIM_RIGHT -> applyFunction(recordList, table, field);
default -> throw new IllegalStateException("Unexpected enum value: " + this);
}
}