summaryrefslogtreecommitdiff
path: root/base/src/main/java/bjc/utils/parserutils/splitter
diff options
context:
space:
mode:
Diffstat (limited to 'base/src/main/java/bjc/utils/parserutils/splitter')
-rw-r--r--base/src/main/java/bjc/utils/parserutils/splitter/ConfigurableTokenSplitter.java32
1 files changed, 32 insertions, 0 deletions
diff --git a/base/src/main/java/bjc/utils/parserutils/splitter/ConfigurableTokenSplitter.java b/base/src/main/java/bjc/utils/parserutils/splitter/ConfigurableTokenSplitter.java
index cc69221..731c9c6 100644
--- a/base/src/main/java/bjc/utils/parserutils/splitter/ConfigurableTokenSplitter.java
+++ b/base/src/main/java/bjc/utils/parserutils/splitter/ConfigurableTokenSplitter.java
@@ -117,4 +117,36 @@ public class ConfigurableTokenSplitter extends SimpleTokenSplitter {
return String.format(fmt, simpleDelimiters, multipleDelimiters, rRawDelimiters, spliter);
}
+
+ public static class Builder {
+ private ConfigurableTokenSplitter cts;
+
+ public Builder(boolean keepDelims) {
+ cts = new ConfigurableTokenSplitter(keepDelims);
+ }
+
+ public Builder simple(String...strings) {
+ cts.addSimpleDelimiters(strings);
+
+ return this;
+ }
+
+ public Builder multiple(String...strings) {
+ cts.addMultiDelimiters(strings);
+
+ return this;
+ }
+
+ public Builder raw(String...strings) {
+ cts.addRawDelimiters(strings);
+
+ return this;
+ }
+
+ public ConfigurableTokenSplitter build() {
+ cts.compile();
+
+ return cts;
+ }
+ }
}