diff --git a/guacamole-ext/src/main/java/org/apache/guacamole/token/TokenFilter.java b/guacamole-ext/src/main/java/org/apache/guacamole/token/TokenFilter.java index ab4362227..c412d184a 100644 --- a/guacamole-ext/src/main/java/org/apache/guacamole/token/TokenFilter.java +++ b/guacamole-ext/src/main/java/org/apache/guacamole/token/TokenFilter.java @@ -19,6 +19,7 @@ package org.apache.guacamole.token; +import java.util.Collections; import java.util.HashMap; import java.util.Map; import java.util.regex.Matcher; @@ -68,7 +69,27 @@ public class TokenFilter { /** * The values of all known tokens. */ - private final Map tokenValues = new HashMap(); + private final Map tokenValues; + + /** + * Creates a new TokenFilter which has no associated tokens. Tokens must + * later be given using {@link #setToken(java.lang.String, java.lang.String)} + * or {@link #setTokens(java.util.Map)}. + */ + public TokenFilter() { + this(Collections.emptyMap()); + } + + /** + * Creates a new TokenFilter which is initialized with the given token + * name/value pairs. + * + * @param tokenValues + * A map containing token names and their corresponding values. + */ + public TokenFilter(Map tokenValues) { + this.tokenValues = new HashMap<>(tokenValues); + } /** * Sets the token having the given name to the given value. Any existing