|
xmlBlaster 2.1.0 client API | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.xmlBlaster.util.StringPairTokenizer
public class StringPairTokenizer
StringPairTokenizer is a utility class used to parse a string giving
back a map containing pairs of key/value strings.
The method parseLine respects quoted '"' tokens and ignores the separator inside the quotes.
| Field Summary | |
|---|---|
static char |
DEFAULT_INNER_SEPARATOR
|
static char |
DEFAULT_QUOTE_CHARACTER
|
static char |
DEFAULT_SEPARATOR
|
static char |
ESCAPE_CHARACTER
|
| Constructor Summary | |
|---|---|
StringPairTokenizer()
|
|
| Method Summary | |
|---|---|
static java.lang.String |
arrayToCSV(java.lang.String[] strs,
java.lang.String sep)
|
static java.util.Map<java.lang.String,java.lang.String> |
CSVToMap(java.lang.String csv)
Counterpart to #mapToCSV(Map) Fails if key contains token "=" and fails if value contains token """ |
static java.util.Map<java.lang.String,java.lang.String> |
CSVToMap(java.lang.String csv,
char sep,
char apos,
char innerSeparator)
Counterpart to #mapToCSV(Map) Fails if key contains token "=" and fails if value contains token """ |
static java.lang.String |
dumpMap(java.util.Map<java.lang.String,ClientProperty> map)
Dumps the given map to a human readable string. |
static void |
main(java.lang.String[] args)
|
static java.lang.String |
mapToCSV(java.util.Map map)
Counterpart to #CSVToMap(String) |
static java.lang.String |
mapToCSV(java.util.Map map,
char sep,
char apos)
A '=' in the key is escaped with "=". |
static java.lang.String |
mapToCSV(java.util.Map map,
char sep,
char apos,
char innerSeparator)
|
static java.lang.String[] |
parseLine(java.lang.String nextLine)
|
static java.lang.String[] |
parseLine(java.lang.String[] nextLines,
char separator,
char quotechar,
boolean trimEmpty,
boolean preserveInsideQuoteChar)
Split string to tokens and respect quotes. |
static java.util.Map |
parseLine(java.lang.String[] nextLines,
char separator,
char quotechar,
char innerSeparator,
boolean trimEmpty,
boolean wantClientProperties,
boolean trimValue)
Split string to tokens and respect quotes, then parse key/values into the returned map. |
static java.lang.String[] |
parseLine(java.lang.String nextLine,
char separator)
|
static java.lang.String[] |
parseLine(java.lang.String nextLine,
char separator,
char quotechar,
boolean trimEmpty)
|
static java.lang.String[] |
parseLine(java.lang.String nextLine,
char separator,
char quotechar,
boolean trimEmpty,
boolean preserveInsideQuoteChar)
|
static java.util.Map |
parseLine(java.lang.String nextLine,
char separator,
char quotechar,
char innerSeparator,
boolean trimEmpty,
boolean wantClientProperties)
|
static java.util.Map |
parseLineToProperties(java.lang.String nextLine)
Parsing for example >org.xmlBlaster.protocol.soap.SoapDriver,"classpath=xerces.jar:soap.jar,all",MAXSIZE=100,a=10<. |
static java.util.Map<java.lang.String,ClientProperty> |
parseToStringClientPropertyPairs(java.lang.String rawString,
java.lang.String outerToken,
java.lang.String innerToken)
|
static java.util.Map |
parseToStringStringPairs(java.lang.String rawString,
java.lang.String outerToken,
java.lang.String innerToken)
|
static java.lang.String[] |
toArray(java.lang.String str,
java.lang.String separator)
Convert a separator based string to an array of strings. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final char DEFAULT_QUOTE_CHARACTER
public static final char ESCAPE_CHARACTER
public static final char DEFAULT_SEPARATOR
public static final char DEFAULT_INNER_SEPARATOR
| Constructor Detail |
|---|
public StringPairTokenizer()
| Method Detail |
|---|
public static java.lang.String[] parseLine(java.lang.String nextLine)
#parseLine(String[] nextLines, char separator, char quotechar, boolean trimEmpty)
public static java.lang.String[] parseLine(java.lang.String nextLine,
char separator)
#parseLine(String[] nextLines, char separator, char quotechar, boolean trimEmpty)
public static java.lang.String[] parseLine(java.lang.String nextLine,
char separator,
char quotechar,
boolean trimEmpty)
parseLine(String[] nextLines, char separator, char quotechar, boolean trimEmpty, boolean)
public static java.lang.String[] parseLine(java.lang.String nextLine,
char separator,
char quotechar,
boolean trimEmpty,
boolean preserveInsideQuoteChar)
parseLine(String[] nextLines, char separator, char quotechar, boolean trimEmpty, boolean)
public static java.lang.String[] parseLine(java.lang.String[] nextLines,
char separator,
char quotechar,
boolean trimEmpty,
boolean preserveInsideQuoteChar)
/node/heron/client/\"joe/the/great\" 'node' 'heron' 'client' 'joe/the/great'Thanks to http://opencsv.sourceforge.net/ (under Apache license)
nextLines - An array of lines, followup lines will only be parsed if an open quotechar existsseparator - Defaults to StringPairTokenizer.DEFAULT_SEPARATOR=','quotechar - Defaults to StringPairTokenizer.DEFAULT_QUOTE_CHARACTER='"'trimEmpty - if true removes silently empy tokenspreserveInsideQuoteChar - true: Preserve the inside quotes of "bla, bla, "blu blu", bli"
public static java.util.Map parseLine(java.lang.String[] nextLines,
char separator,
char quotechar,
char innerSeparator,
boolean trimEmpty,
boolean wantClientProperties,
boolean trimValue)
nextLines - e.g.
String[] nextLines = { "org.xmlBlaster.protocol.soap.SoapDriver,\"classpath=xerces.jar:soap.jar,all\",MAXSIZE=100,a=10,\"b=", "20\",c=30" };
Followup lines will only be parsed if an open quotechar existsinnerSeparator - is for example StringPairTokenizer.DEFAULT_INNER_SEPARATOR "=" or " "wantClientProperties - if set to true returns pairs 'String,ClientProperty', returns 'String,String' pairs otherwise.trimValue - If true the value is trimmed (removed white spaces in front and back)
classpath=xerces.jar:soap.jar,all org.xmlBlaster.protocol.soap.SoapDriver=null MAXSIZE=100 a=10 c=30 b=20
#parseLine(String[] nextLines, char separator, char quotechar, boolean trimEmpty)
public static java.util.Map parseLine(java.lang.String nextLine,
char separator,
char quotechar,
char innerSeparator,
boolean trimEmpty,
boolean wantClientProperties)
parseLine(String[] nextLines, char separator, char quotechar, char innerSeparator, boolean trimEmpty, boolean wantClientProperties, boolean trimEmpty)public static java.util.Map parseLineToProperties(java.lang.String nextLine)
Using default separator chars and quote chars:
return parseLine(nextLines, DEFAULT_SEPARATOR, DEFAULT_QUOTE_CHARACTER, DEFAULT_INNER_SEPARATOR, true, false, false);
parseLine(String[] nextLines, char separator, char quotechar, char innerSeparator, boolean trimEmpty, boolean wantClientProperties, boolean trimEmpty)
public static final java.lang.String[] toArray(java.lang.String str,
java.lang.String separator)
key - the key to look fordefaultVal - The default value to return if key is not foundseparator - The separator, typically ","
public static java.lang.String dumpMap(java.util.Map<java.lang.String,ClientProperty> map)
map -
public static java.util.Map<java.lang.String,ClientProperty> parseToStringClientPropertyPairs(java.lang.String rawString,
java.lang.String outerToken,
java.lang.String innerToken)
rawString - e.g. "org.xmlBlaster.protocol.soap.SoapDriver,classpath=xerces.jar:soap.jar,MAXSIZE=100"outerToken - is for example ";" or ","innerToken - is for example "=" or " "
If a value is missing then a null object as value.
the map returns pairs 'String,ClientProperty'.public static java.util.Map<java.lang.String,java.lang.String> CSVToMap(java.lang.String csv)
csv -
public static java.util.Map<java.lang.String,java.lang.String> CSVToMap(java.lang.String csv,
char sep,
char apos,
char innerSeparator)
csv - sep - Defaults to ","apos - Only '"' or "'" is supported, defaults to '"'innerSeparator - '='
public static java.lang.String mapToCSV(java.util.Map map)
map -
public static java.lang.String mapToCSV(java.util.Map map,
char sep,
char apos)
map - sep - Defaults to ","apos - Only '"' or "'" is supported, defaults to '"'
public static java.lang.String mapToCSV(java.util.Map map,
char sep,
char apos,
char innerSeparator)
public static java.util.Map parseToStringStringPairs(java.lang.String rawString,
java.lang.String outerToken,
java.lang.String innerToken)
rawString - e.g. "org.xmlBlaster.protocol.soap.SoapDriver,classpath=xerces.jar:soap.jar,MAXSIZE=100"outerToken - is for example ";" or ","innterToken - is for example "=" or " "
If a value is missing then a null object as value.
the map returns pairs 'String,String'.
public static java.lang.String arrayToCSV(java.lang.String[] strs,
java.lang.String sep)
public static void main(java.lang.String[] args)
|
xmlBlaster 2.1.0 client API | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||