Package org.eclipse.jetty.util
Class QuotedStringTokenizer
- java.lang.Object
-
- java.util.StringTokenizer
-
- org.eclipse.jetty.util.QuotedStringTokenizer
-
- All Implemented Interfaces:
Enumeration<Object>
public class QuotedStringTokenizer extends StringTokenizer
StringTokenizer with Quoting support. This class is a copy of the java.util.StringTokenizer API and the behaviour is the same, except that single and double quoted string values are recognised. Delimiters within quotes are not considered delimiters. Quotes can be escaped with '\'.- See Also:
StringTokenizer
-
-
Constructor Summary
Constructors Constructor Description QuotedStringTokenizer(String str)QuotedStringTokenizer(String str, String delim)QuotedStringTokenizer(String str, String delim, boolean returnDelimiters)QuotedStringTokenizer(String str, String delim, boolean returnDelimiters, boolean returnQuotes)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description intcountTokens()Not implemented.booleangetDouble()booleangetSingle()booleanhasMoreElements()booleanhasMoreTokens()static booleanisQuoted(String s)ObjectnextElement()StringnextToken()StringnextToken(String delim)static voidquote(Appendable buffer, String input)Quote a string into an Appendable.static Stringquote(String s)Quote a string.static StringquoteIfNeeded(String s, String delim)Quote a string.static voidquoteOnly(Appendable buffer, String input)Quote a string into an Appendable.voidsetDouble(boolean d)voidsetSingle(boolean single)static Stringunquote(String s)static Stringunquote(String s, boolean lenient)Unquote a string.static StringunquoteOnly(String s)static StringunquoteOnly(String s, boolean lenient)Unquote a string, NOT converting unicode sequences-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface java.util.Enumeration
asIterator
-
-
-
-
Constructor Detail
-
QuotedStringTokenizer
public QuotedStringTokenizer(String str, String delim, boolean returnDelimiters, boolean returnQuotes)
-
QuotedStringTokenizer
public QuotedStringTokenizer(String str, String delim, boolean returnDelimiters)
-
QuotedStringTokenizer
public QuotedStringTokenizer(String str)
-
-
Method Detail
-
hasMoreTokens
public boolean hasMoreTokens()
- Overrides:
hasMoreTokensin classStringTokenizer
-
nextToken
public String nextToken() throws NoSuchElementException
- Overrides:
nextTokenin classStringTokenizer- Throws:
NoSuchElementException
-
nextToken
public String nextToken(String delim) throws NoSuchElementException
- Overrides:
nextTokenin classStringTokenizer- Throws:
NoSuchElementException
-
hasMoreElements
public boolean hasMoreElements()
- Specified by:
hasMoreElementsin interfaceEnumeration<Object>- Overrides:
hasMoreElementsin classStringTokenizer
-
nextElement
public Object nextElement() throws NoSuchElementException
- Specified by:
nextElementin interfaceEnumeration<Object>- Overrides:
nextElementin classStringTokenizer- Throws:
NoSuchElementException
-
countTokens
public int countTokens()
Not implemented.- Overrides:
countTokensin classStringTokenizer
-
quoteIfNeeded
public static String quoteIfNeeded(String s, String delim)
Quote a string. The string is quoted only if quoting is required due to embedded delimiters, quote characters or the empty string.- Parameters:
s- The string to quote.delim- the delimiter to use to quote the string- Returns:
- quoted string
-
quote
public static String quote(String s)
Quote a string. The string is quoted only if quoting is required due to embedded delimiters, quote characters or the empty string.- Parameters:
s- The string to quote.- Returns:
- quoted string
-
quoteOnly
public static void quoteOnly(Appendable buffer, String input)
Quote a string into an Appendable. Only quotes and backslash are escaped.- Parameters:
buffer- The Appendableinput- The String to quote.
-
quote
public static void quote(Appendable buffer, String input)
Quote a string into an Appendable. The characters ", \, \n, \r, \t, \f and \b are escaped- Parameters:
buffer- The Appendableinput- The String to quote.
-
unquoteOnly
public static String unquoteOnly(String s, boolean lenient)
Unquote a string, NOT converting unicode sequences- Parameters:
s- The string to unquote.lenient- if true, will leave in backslashes that aren't valid escapes- Returns:
- quoted string
-
unquote
public static String unquote(String s, boolean lenient)
Unquote a string.- Parameters:
s- The string to unquote.lenient- true if unquoting should be lenient to escaped content, leaving some alone, false if string unescaping- Returns:
- quoted string
-
isQuoted
public static boolean isQuoted(String s)
-
getDouble
public boolean getDouble()
- Returns:
- handle double quotes if true
-
setDouble
public void setDouble(boolean d)
- Parameters:
d- handle double quotes if true
-
getSingle
public boolean getSingle()
- Returns:
- handle single quotes if true
-
setSingle
public void setSingle(boolean single)
- Parameters:
single- handle single quotes if true
-
-