Package davmail.util
Class StringUtil
java.lang.Object
davmail.util.StringUtil
Various string handling methods
-
Method Summary
Modifier and TypeMethodDescriptionstatic Stringbase64ToHex(String value) Convert base64 value to hex.static Stringbase64ToUrl(String value) Encode EWS base64 itemId to url compatible value.static StringGet allDay date value from Zulu timestamp.static StringdavSearchEncode(String value) Encode quotes in Dav search parameter.static StringdecodeFolderName(String folderName) Decode the folder name with _xF8FF_ or _x003E_ characters.static StringdecodeUrlcompname(String urlcompname) Decode urlcompname to get item name.static StringencodeFolderName(String folderName) folderName may contain / or > characters, encode them.static StringencodePlusSign(String value) Urlencode plus sign in encoded href.static StringencodeUrlcompname(String value) Encode item name to get actual value stored in urlcompname MAPI property.static StringescapeDoubleQuotes(String value) Backslash escape double guotes in provided string.static StringescapeQuotes(String value) Escape quotes for DAV and graph filters.static StringgetLastToken(String value, String startDelimiter, String endDelimiter) Return the sub string between startDelimiter and endDelimiter or null, look for last token in string.static StringReturn the sub string between startDelimiter and endDelimiter or null.static StringhexToBase64(String value) Convert hex value to base64.static StringJoin values with given separator.static StringparseQuotedImapString(String quoted) Takes a quoted string according to IMAP rfc 3501 and returns its intrinsic (unquoted) string value.static StringremoveQuotes(String value) Remove quotes if present on value.static StringreplaceToken(String value, String startDelimiter, String endDelimiter, String newToken) Return the sub string between startDelimiter and endDelimiter with newToken.static StringurlToBase64(String value) Encode EWS url compatible itemId back to base64 value.static StringNeed to decode XML for iCalstatic StringXml encode content.static StringxmlEncodeAttribute(String name) Xml encode inside attribute.
-
Method Details
-
getToken
Return the sub string between startDelimiter and endDelimiter or null.- Parameters:
value- String valuestartDelimiter- start delimiterendDelimiter- end delimiter- Returns:
- token value
-
getLastToken
Return the sub string between startDelimiter and endDelimiter or null, look for last token in string.- Parameters:
value- String valuestartDelimiter- start delimiterendDelimiter- end delimiter- Returns:
- token value
-
replaceToken
public static String replaceToken(String value, String startDelimiter, String endDelimiter, String newToken) Return the sub string between startDelimiter and endDelimiter with newToken.- Parameters:
value- String valuestartDelimiter- start delimiterendDelimiter- end delimiternewToken- new token value- Returns:
- token value
-
join
Join values with given separator.- Parameters:
values- value setseparator- separator- Returns:
- joined values
-
xmlEncode
Xml encode content.- Parameters:
name- decoded name- Returns:
- name encoded name
-
xmlEncodeAttribute
Xml encode inside attribute.- Parameters:
name- decoded name- Returns:
- name encoded name
-
xmlDecode
Need to decode XML for iCal- Parameters:
name- encoded name- Returns:
- name decoded name
-
base64ToHex
Convert base64 value to hex.- Parameters:
value- base64 value- Returns:
- hex value
-
hexToBase64
Convert hex value to base64.- Parameters:
value- hex value- Returns:
- base64 value
- Throws:
org.apache.commons.codec.DecoderException- on error
-
encodeUrlcompname
Encode item name to get actual value stored in urlcompname MAPI property.- Parameters:
value- decoded value- Returns:
- urlcompname encoded value
-
decodeUrlcompname
Decode urlcompname to get item name.- Parameters:
urlcompname- encoded value- Returns:
- decoded value
-
encodePlusSign
Urlencode plus sign in encoded href. '+' is decoded as ' ' by URIUtil.decode, the workaround is to force urlencoding to '%2B' first- Parameters:
value- encoded href- Returns:
- encoded href
-
base64ToUrl
Encode EWS base64 itemId to url compatible value.- Parameters:
value- base64 value- Returns:
- url compatible value
-
urlToBase64
Encode EWS url compatible itemId back to base64 value.- Parameters:
value- url compatible value- Returns:
- base64 value
-
davSearchEncode
Encode quotes in Dav search parameter.- Parameters:
value- search parameter- Returns:
- escaped value
-
escapeQuotes
Escape quotes for DAV and graph filters.- Parameters:
value- input value- Returns:
- quoted result
-
escapeDoubleQuotes
Backslash escape double guotes in provided string.- Parameters:
value- input string- Returns:
- escaped string
-
convertZuluDateTimeToAllDay
Get allDay date value from Zulu timestamp.- Parameters:
value- Zulu datetime- Returns:
- yyyyMMdd allDay date value
-
parseQuotedImapString
Takes a quoted string according to IMAP rfc 3501 and returns its intrinsic (unquoted) string value.RFC 3501 defines a quoted string in its ABNF as follows:
quoted = DQUOTE *QUOTED-CHAR DQUOTE DQUOTE = %x22 ; " (Double Quote) QUOTED-CHAR = <any TEXT-CHAR except quoted-specials> / "\" quoted-specials / UTF8-2 / UTF8-3 / UTF8-4 TEXT-CHAR = <any CHAR except CR and LF> quoted-specials = DQUOTE / "\"- Parameters:
quoted- the quoted string or null- Returns:
- the unquoted string, or null if-and-only-if `quoted` was null
- Throws:
IllegalArgumentException- when the given quoted string is not validParseException
-
removeQuotes
Remove quotes if present on value.- Parameters:
value- input value- Returns:
- unquoted string
-
decodeFolderName
Decode the folder name with _xF8FF_ or _x003E_ characters.- Parameters:
folderName- encoded folder name- Returns:
- decoded folder name
-
encodeFolderName
folderName may contain / or > characters, encode them.- Parameters:
folderName- folder name to encode- Returns:
- encoded folder name
-