Package com.google.zxing.client.result
Class VCardResultParser
- java.lang.Object
-
- com.google.zxing.client.result.ResultParser
-
- com.google.zxing.client.result.VCardResultParser
-
public final class VCardResultParser extends ResultParser
Parses contact information formatted according to the VCard (2.1) format. This is not a complete implementation but should parse information as commonly encoded in 2D barcodes.
-
-
Field Summary
Fields Modifier and Type Field Description private static java.util.regex.Pattern
BEGIN_VCARD
private static java.util.regex.Pattern
COMMA
private static java.util.regex.Pattern
CR_LF_SPACE_TAB
private static java.util.regex.Pattern
EQUALS
private static java.util.regex.Pattern
NEWLINE_ESCAPE
private static java.util.regex.Pattern
SEMICOLON
private static java.util.regex.Pattern
SEMICOLON_OR_COMMA
private static java.util.regex.Pattern
UNESCAPED_SEMICOLONS
private static java.util.regex.Pattern
VCARD_ESCAPES
private static java.util.regex.Pattern
VCARD_LIKE_DATE
-
Fields inherited from class com.google.zxing.client.result.ResultParser
EMPTY_STR_ARRAY
-
-
Constructor Summary
Constructors Constructor Description VCardResultParser()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static java.lang.String
decodeQuotedPrintable(java.lang.CharSequence value, java.lang.String charset)
private static void
formatNames(java.lang.Iterable<java.util.List<java.lang.String>> names)
Formats name fields of the form "Public;John;Q.;Reverend;III" into a form like "Reverend John Q.private static boolean
isLikeVCardDate(java.lang.CharSequence value)
(package private) static java.util.List<java.lang.String>
matchSingleVCardPrefixedField(java.lang.CharSequence prefix, java.lang.String rawText, boolean trim, boolean parseFieldDivider)
(package private) static java.util.List<java.util.List<java.lang.String>>
matchVCardPrefixedField(java.lang.CharSequence prefix, java.lang.String rawText, boolean trim, boolean parseFieldDivider)
private static void
maybeAppendComponent(java.lang.String[] components, int i, java.lang.StringBuilder newName)
private static void
maybeAppendFragment(java.io.ByteArrayOutputStream fragmentBuffer, java.lang.String charset, java.lang.StringBuilder result)
AddressBookParsedResult
parse(Result result)
Attempts to parse the rawResult
's contents as a particular type of information (email, URL, etc.) and return aParsedResult
encapsulating the result of parsing.private static java.lang.String
toPrimaryValue(java.util.List<java.lang.String> list)
private static java.lang.String[]
toPrimaryValues(java.util.Collection<java.util.List<java.lang.String>> lists)
private static java.lang.String[]
toTypes(java.util.Collection<java.util.List<java.lang.String>> lists)
-
Methods inherited from class com.google.zxing.client.result.ResultParser
getMassagedText, isStringOfDigits, isSubstringOfDigits, matchPrefixedField, matchSinglePrefixedField, maybeAppend, maybeAppend, maybeWrap, parseHexDigit, parseNameValuePairs, parseResult, unescapeBackslash, urlDecode
-
-
-
-
Field Detail
-
BEGIN_VCARD
private static final java.util.regex.Pattern BEGIN_VCARD
-
VCARD_LIKE_DATE
private static final java.util.regex.Pattern VCARD_LIKE_DATE
-
CR_LF_SPACE_TAB
private static final java.util.regex.Pattern CR_LF_SPACE_TAB
-
NEWLINE_ESCAPE
private static final java.util.regex.Pattern NEWLINE_ESCAPE
-
VCARD_ESCAPES
private static final java.util.regex.Pattern VCARD_ESCAPES
-
EQUALS
private static final java.util.regex.Pattern EQUALS
-
SEMICOLON
private static final java.util.regex.Pattern SEMICOLON
-
UNESCAPED_SEMICOLONS
private static final java.util.regex.Pattern UNESCAPED_SEMICOLONS
-
COMMA
private static final java.util.regex.Pattern COMMA
-
SEMICOLON_OR_COMMA
private static final java.util.regex.Pattern SEMICOLON_OR_COMMA
-
-
Method Detail
-
parse
public AddressBookParsedResult parse(Result result)
Description copied from class:ResultParser
Attempts to parse the rawResult
's contents as a particular type of information (email, URL, etc.) and return aParsedResult
encapsulating the result of parsing.- Specified by:
parse
in classResultParser
- Parameters:
result
- the rawResult
to parse- Returns:
ParsedResult
encapsulating the parsing result
-
matchVCardPrefixedField
static java.util.List<java.util.List<java.lang.String>> matchVCardPrefixedField(java.lang.CharSequence prefix, java.lang.String rawText, boolean trim, boolean parseFieldDivider)
-
decodeQuotedPrintable
private static java.lang.String decodeQuotedPrintable(java.lang.CharSequence value, java.lang.String charset)
-
maybeAppendFragment
private static void maybeAppendFragment(java.io.ByteArrayOutputStream fragmentBuffer, java.lang.String charset, java.lang.StringBuilder result)
-
matchSingleVCardPrefixedField
static java.util.List<java.lang.String> matchSingleVCardPrefixedField(java.lang.CharSequence prefix, java.lang.String rawText, boolean trim, boolean parseFieldDivider)
-
toPrimaryValue
private static java.lang.String toPrimaryValue(java.util.List<java.lang.String> list)
-
toPrimaryValues
private static java.lang.String[] toPrimaryValues(java.util.Collection<java.util.List<java.lang.String>> lists)
-
toTypes
private static java.lang.String[] toTypes(java.util.Collection<java.util.List<java.lang.String>> lists)
-
isLikeVCardDate
private static boolean isLikeVCardDate(java.lang.CharSequence value)
-
formatNames
private static void formatNames(java.lang.Iterable<java.util.List<java.lang.String>> names)
Formats name fields of the form "Public;John;Q.;Reverend;III" into a form like "Reverend John Q. Public III".- Parameters:
names
- name values to format, in place
-
maybeAppendComponent
private static void maybeAppendComponent(java.lang.String[] components, int i, java.lang.StringBuilder newName)
-
-