14199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa/*
24199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa * Copyright (C) 2009 The Android Open Source Project
34199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa *
44199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa * Licensed under the Apache License, Version 2.0 (the "License");
54199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa * you may not use this file except in compliance with the License.
64199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa * You may obtain a copy of the License at
74199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa *
84199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa *      http://www.apache.org/licenses/LICENSE-2.0
94199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa *
104199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa * Unless required by applicable law or agreed to in writing, software
114199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa * distributed under the License is distributed on an "AS IS" BASIS,
124199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
134199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa * See the License for the specific language governing permissions and
144199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa * limitations under the License.
154199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa */
164199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawapackage com.android.vcard;
174199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
184199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa/**
194199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa * Constants used in both exporter and importer code.
204199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa */
214199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawapublic class VCardConstants {
2202117b3d19787ff65486b9f9db8abd338ae4c9f9Daisuke Miyakawa    /* package */ static final String LOG_TAG = "vCard";
234199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String VERSION_V21 = "2.1";
244199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String VERSION_V30 = "3.0";
25be378d5b188f51cf717e5309e3c39180e85833a8Daisuke Miyakawa    public static final String VERSION_V40 = "4.0";
264199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
27da2f6ef422b360827f2c5231552d8c9fad0ed8b1Daisuke Miyakawa    // Valid and supported property names.
284199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_BEGIN = "BEGIN";
294199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_VERSION = "VERSION";
304199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_N = "N";
314199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_FN = "FN";
324199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_ADR = "ADR";
334199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_EMAIL = "EMAIL";
344199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_NOTE = "NOTE";
354199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_ORG = "ORG";
364199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_SOUND = "SOUND";  // Not fully supported.
374199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_TEL = "TEL";
384199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_TITLE = "TITLE";
394199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_ROLE = "ROLE";
404199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_PHOTO = "PHOTO";
414199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_LOGO = "LOGO";
424199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_URL = "URL";
43c13101ba38c929d91dcb68e21165c82c19af35d7Daisuke Miyakawa    public static final String PROPERTY_BDAY = "BDAY";  // Birthday (3.0, 4.0)
44c13101ba38c929d91dcb68e21165c82c19af35d7Daisuke Miyakawa    public static final String PROPERTY_ANNIVERSARY = "ANNIVERSARY";  // Date of marriage (4.0)
45da2f6ef422b360827f2c5231552d8c9fad0ed8b1Daisuke Miyakawa    public static final String PROPERTY_NAME = "NAME";  // (3.0)
46c13101ba38c929d91dcb68e21165c82c19af35d7Daisuke Miyakawa    public static final String PROPERTY_NICKNAME = "NICKNAME";  // (3.0, 4.0)
47c13101ba38c929d91dcb68e21165c82c19af35d7Daisuke Miyakawa    public static final String PROPERTY_SORT_STRING = "SORT-STRING";  // (3.0, 4.0)
48422643669a44d08ca8b22a73286fae988a288b0eDaisuke Miyakawa    public static final String PROPERTY_IMPP = "IMPP";  // RFC 4770 (vCard 3.0) and vCard 4.0
494199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_END = "END";
504199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
51da2f6ef422b360827f2c5231552d8c9fad0ed8b1Daisuke Miyakawa    // Valid property names which are not supported (not appropriately handled) by
52da2f6ef422b360827f2c5231552d8c9fad0ed8b1Daisuke Miyakawa    // importer/exporter. Those properties will be read and discarded silently.
534199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_REV = "REV";
54c13101ba38c929d91dcb68e21165c82c19af35d7Daisuke Miyakawa    public static final String PROPERTY_AGENT = "AGENT";  // (3.0)
55da2f6ef422b360827f2c5231552d8c9fad0ed8b1Daisuke Miyakawa    public static final String PROPERTY_GENDER = "GENDER";  // (4.0)
56da2f6ef422b360827f2c5231552d8c9fad0ed8b1Daisuke Miyakawa    public static final String PROPERTY_XML = "XML";  // (4.0)
57da2f6ef422b360827f2c5231552d8c9fad0ed8b1Daisuke Miyakawa    public static final String PROPERTY_FBURL = "FBURL";  // (4.0)
58da2f6ef422b360827f2c5231552d8c9fad0ed8b1Daisuke Miyakawa    public static final String PROPERTY_PRODID = "PRODID";  // (4.0)
59da2f6ef422b360827f2c5231552d8c9fad0ed8b1Daisuke Miyakawa    public static final String PROPERTY_RELATED = "RELATED";  // (4.0)
60da2f6ef422b360827f2c5231552d8c9fad0ed8b1Daisuke Miyakawa    public static final String PROPERTY_CATEGORIES = "CATEGORIES";  // (4.0)
61da2f6ef422b360827f2c5231552d8c9fad0ed8b1Daisuke Miyakawa    public static final String PROPERTY_CLIENTPIDMAP = "CLIENTPIDMAP";  // (4.0)
62da2f6ef422b360827f2c5231552d8c9fad0ed8b1Daisuke Miyakawa    public static final String PROPERTY_CALURI = "CALURI";  // (4.0)
63da2f6ef422b360827f2c5231552d8c9fad0ed8b1Daisuke Miyakawa
64da2f6ef422b360827f2c5231552d8c9fad0ed8b1Daisuke Miyakawa
65da2f6ef422b360827f2c5231552d8c9fad0ed8b1Daisuke Miyakawa
66da2f6ef422b360827f2c5231552d8c9fad0ed8b1Daisuke Miyakawa    // defact SIP property which had been used till RFC 4770.
67da2f6ef422b360827f2c5231552d8c9fad0ed8b1Daisuke Miyakawa    public static final String PROPERTY_X_SIP = "X-SIP";
684199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
694199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // Available in vCard 3.0. Shoud not use when composing vCard 2.1 file.
7002117b3d19787ff65486b9f9db8abd338ae4c9f9Daisuke Miyakawa
714199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // De-fact property values expressing phonetic names.
724199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_PHONETIC_FIRST_NAME = "X-PHONETIC-FIRST-NAME";
734199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_PHONETIC_MIDDLE_NAME = "X-PHONETIC-MIDDLE-NAME";
744199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_PHONETIC_LAST_NAME = "X-PHONETIC-LAST-NAME";
754199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
7606ae82316d0b5f7222a7a1d15b7d03df88fdea15Daisuke Miyakawa    // Properties both ContactsStruct and de-fact vCard extensions
7706ae82316d0b5f7222a7a1d15b7d03df88fdea15Daisuke Miyakawa    // Shown in http://en.wikipedia.org/wiki/VCard support are defined here.
784199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_AIM = "X-AIM";
794199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_MSN = "X-MSN";
804199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_YAHOO = "X-YAHOO";
814199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_ICQ = "X-ICQ";
824199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_JABBER = "X-JABBER";
834199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_GOOGLE_TALK = "X-GOOGLE-TALK";
844199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_SKYPE_USERNAME = "X-SKYPE-USERNAME";
854199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // Properties only ContactsStruct has. We alse use this.
864199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_QQ = "X-QQ";
874199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_NETMEETING = "X-NETMEETING";
884199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
894199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // Phone number for Skype, available as usual phone.
904199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_SKYPE_PSTNNUMBER = "X-SKYPE-PSTNNUMBER";
914199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
924199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // Property for Android-specific fields.
934199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_ANDROID_CUSTOM = "X-ANDROID-CUSTOM";
944199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
954199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // Properties for DoCoMo vCard.
964199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_CLASS = "X-CLASS";
974199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_REDUCTION = "X-REDUCTION";
984199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_NO = "X-NO";
994199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PROPERTY_X_DCM_HMN_MODE = "X-DCM-HMN-MODE";
1004199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
1014199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_TYPE = "TYPE";
1024199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
1034199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_TYPE_HOME = "HOME";
1044199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_TYPE_WORK = "WORK";
1054199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_TYPE_FAX = "FAX";
1064199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_TYPE_CELL = "CELL";
1074199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_TYPE_VOICE = "VOICE";
1084199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_TYPE_INTERNET = "INTERNET";
1094199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
11048dd8e86a81d2ab40eb762975c8211c225002bf0Daisuke Miyakawa    public static final String PARAM_VALUE = "VALUE";
111d5a8fc2a35c69fc34df35fd545ccf83d548ba50cDaisuke Miyakawa    public static final String PARAM_CHARSET = "CHARSET";
112d5a8fc2a35c69fc34df35fd545ccf83d548ba50cDaisuke Miyakawa    public static final String PARAM_ENCODING = "ENCODING";
113d5a8fc2a35c69fc34df35fd545ccf83d548ba50cDaisuke Miyakawa
1144199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // Abbreviation of "prefered" according to vCard 2.1 specification.
1154199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // We interpret this value as "primary" property during import/export.
1164199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    //
1174199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // Note: Both vCard specs does not mention anything about the requirement for this parameter,
1184199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    //       but there may be some vCard importer which will get confused with more than
1194199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    //       one "PREF"s in one property name, while Android accepts them.
1204199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_TYPE_PREF = "PREF";
1214199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
1224199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // Phone type parameters valid in vCard and known to ContactsContract, but not so common.
1234199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_TYPE_CAR = "CAR";
1244199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_TYPE_ISDN = "ISDN";
1254199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_TYPE_PAGER = "PAGER";
1264199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_TYPE_TLX = "TLX";  // Telex
1274199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
1284199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // Phone types existing in vCard 2.1 but not known to ContactsContract.
1294199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_TYPE_MODEM = "MODEM";
1304199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_TYPE_MSG = "MSG";
1314199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_TYPE_BBS = "BBS";
1324199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_TYPE_VIDEO = "VIDEO";
1334199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
1344199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_ENCODING_7BIT = "7BIT";
1354199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_ENCODING_8BIT = "8BIT";
1364199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_ENCODING_QP = "QUOTED-PRINTABLE";
1374199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_ENCODING_BASE64 = "BASE64";  // Available in vCard 2.1
1384199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_ENCODING_B = "B";  // Available in vCard 3.0
1394199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
1404199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // TYPE parameters for Phones, which are not formally valid in vCard (at least 2.1).
1414199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // These types are basically encoded to "X-" parameters when composing vCard.
1424199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // Parser passes these when "X-" is added to the parameter or not.
1434199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_PHONE_EXTRA_TYPE_CALLBACK = "CALLBACK";
1444199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_PHONE_EXTRA_TYPE_RADIO = "RADIO";
1454199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_PHONE_EXTRA_TYPE_TTY_TDD = "TTY-TDD";
1464199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_PHONE_EXTRA_TYPE_ASSISTANT = "ASSISTANT";
1474199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // vCard composer translates this type to "WORK" + "PREF". Just for parsing.
1484199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_PHONE_EXTRA_TYPE_COMPANY_MAIN = "COMPANY-MAIN";
1494199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // vCard composer translates this type to "VOICE" Just for parsing.
1504199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_PHONE_EXTRA_TYPE_OTHER = "OTHER";
1514199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
1524199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // TYPE parameters for postal addresses.
1534199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_ADR_TYPE_PARCEL = "PARCEL";
1544199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_ADR_TYPE_DOM = "DOM";
1554199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_ADR_TYPE_INTL = "INTL";
1564199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
1574560bdde6dd75cca49fc55b58aafb5d416b88ca3Daisuke Miyakawa    public static final String PARAM_LANGUAGE = "LANGUAGE";
1584560bdde6dd75cca49fc55b58aafb5d416b88ca3Daisuke Miyakawa
1594560bdde6dd75cca49fc55b58aafb5d416b88ca3Daisuke Miyakawa    // SORT-AS parameter introduced in vCard 4.0 (as of rev.13)
1604560bdde6dd75cca49fc55b58aafb5d416b88ca3Daisuke Miyakawa    public static final String PARAM_SORT_AS = "SORT-AS";
1614560bdde6dd75cca49fc55b58aafb5d416b88ca3Daisuke Miyakawa
1624199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // TYPE parameters not officially valid but used in some vCard exporter.
1634199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // Do not use in composer side.
1644199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public static final String PARAM_EXTRA_TYPE_COMPANY = "COMPANY";
1654199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
1664199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    public interface ImportOnly {
1674199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa        public static final String PROPERTY_X_NICKNAME = "X-NICKNAME";
1684199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa        // Some device emits this "X-" parameter for expressing Google Talk,
1694199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa        // which is specifically invalid but should be always properly accepted, and emitted
1704199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa        // in some special case (for that device/application).
1714199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa        public static final String PROPERTY_X_GOOGLE_TALK_WITH_SPACE = "X-GOOGLE TALK";
1724199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    }
1734199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
1744199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    //// Mainly for package constants.
1754199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
1764199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // DoCoMo specific type parameter. Used with "SOUND" property, which is alternate of
1774199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    // SORT-STRING invCard 3.0.
1784199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    /* package */ static final String PARAM_TYPE_X_IRMC_N = "X-IRMC-N";
1794199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
18006ae82316d0b5f7222a7a1d15b7d03df88fdea15Daisuke Miyakawa    // Used in unit test.
18106ae82316d0b5f7222a7a1d15b7d03df88fdea15Daisuke Miyakawa    public static final int MAX_DATA_COLUMN = 15;
1824199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
1834199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    /* package */ static final int MAX_CHARACTER_NUMS_QP = 76;
1844199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    static final int MAX_CHARACTER_NUMS_BASE64_V30 = 75;
1854199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa
1864199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    private VCardConstants() {
1874199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa    }
1884199c54c527330ac01699b176e7bca186a3aa3a4Daisuke Miyakawa}