210ebaab315e389ffc66278e28ecd6230e412b5f |
|
22-Jul-2014 |
Jay Shrauner <shrauner@google.com> |
Fix import of iOS vcards Fix handling of multiline data blocks in v3.0 vcards with \r\r\n line terminators. Bug:16433675 Change-Id: I77c7c94fa1b13e18e53459e94c3c73ad53b7d8e2
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
a326bcbb665b08f5c20122616452c6e3be8389ac |
|
04-Apr-2014 |
Tom Taylor <tomtaylor@google.com> |
Can't send my wife's vcard between devices Bug 13751984 If X-ANDROID-CUSTOM follows a photo's hex data, that line will get included as part of the photo data and will cause Base64.decode() to throw an exception. The code that gathers the hex data needs to finish if it sees X-ANDROID-CUSTOM. Added a test case to test this "bad" vcard. Change-Id: Ie60a1d09354a9c8a9dab603da01e9c7aff5eb070
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
7a2ac0405decebde94bb4e3a139d62162e6e15a0 |
|
13-Nov-2012 |
Chiao Cheng <chiaocheng@google.com> |
Store encoding in upper case. Instead of checking for up case each time or using equalsIgnoreCase. Bug: 7292017 Change-Id: I3954a2e0fdb757d157bcf3dff77ed2749a9577d8
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
8aa2ab8a2f4284cdbc9392e8597ab6d4fd302c50 |
|
18-Oct-2012 |
Chiao Cheng <chiaocheng@google.com> |
Allow importer to handle missing encoding attribute for FN. - Removed separators from FN properties. - Adding fix on importer side since we cannot fix exporters that already exist. Bug: 7292017 Change-Id: I61c691c24828e63aac1920384e16461da7a03881
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
9e87c7606b0593b6789cdd177d80e31b991c864c |
|
21-Aug-2012 |
Chiao Cheng <chiaocheng@google.com> |
Allowing multiline addresses to support microsoft vCard. Multiline addresses are not allowed in vCard 2.1 but it has been encountered in microsoft mobile vCard. This adds support for this by checking the next line. If the next line contains a colon, we assume it's a new property. Otherwise, we assume it's a continuation. Bug: 5188556 Change-Id: I4607eda901a1d535c759b5026f6702eb47290cb8
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
2c9cf383b1c956c7185e97c2417ebd85b48fc0ac |
|
15-Aug-2012 |
Chiao Cheng <chiaocheng@google.com> |
Making vcard photo parsing more robust to decode errors. Base64.decode throws IllegalArgumentException which is not handled and results in crash reports for users. Switching to VCardException which should have better UI handling. Change-Id: I3fa12b8a703c3eed181caade0bfda2271435b377
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
a4e576ce8ebf869c505f0fe0ea82faefae9940f8 |
|
15-Aug-2012 |
Chiao Cheng <chiaocheng@google.com> |
Fix for malformed photo entry. Blackberry vcard photo entry is not terminated with standard vcard 2.1 terminator. The vcard code is suppose to handle this irregularity already but there was a bug where it would not work unless the next entry contained a ':' right after the property name (i.e. "END:VCARD"). Cases with next entries such as "TEL;TYPE=CELL:" was missed. Note the ":" is not right after TEL. Bug: 6979337 Change-Id: Ifa3dbb377b9da97ef7570c0f8eca8a1cb5e727a9
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
56650608f09fc75f260c03e00456ef3d1e60c929 |
|
01-Apr-2011 |
Daisuke Miyakawa <dmiyakawa@google.com> |
Add parseOne() capability. Bug: 4066223 Change-Id: I1699dd073a3b9647a5654d3fea4a2963430599da
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
1de396f6df89363169d3a2e61a61fa98d12c1ef8 |
|
23-Mar-2011 |
Daisuke Miyakawa <dmiyakawa@google.com> |
Refactor code 1) introduce VCardProperty and make use of it everywhere Previously we had had two structures for it: VCardParserImpl_V21.PropertyData and VCardEntry#Property. The former was for holding raw data for property, while the latter was for holding resultant (encoded) values. Apparently we can share same structure. To do so, we need to let VCardInterpreter pass the structure to interpreter side, instead of splitting them into smaller pieces by using several propertyXXX() calls. Thus this change introduces onPropertyCreated(VCardProperty) in lieu of propertyXXX(). Now vCard parser side is responsible for encoding Quoted-Printable, BASE64, and several charsets. Users are still able to do them manually by using VCardEntry#getRawValue(). 2) add better handling for data inside VCardEntry Now VCardEntry has so many fields that it is harder to iterate those data, while the iteration itself is common use case for it. At least three functionalities are now using iteration: toString(), isEmpty(), and constructInsertOperations(). This change introduces inner iterator functionality. VCardEntry.EntryElementIterator allows users to implement their own iteration logic. VCardEntry#iterateAllData(VCardEntry.EntryElementIterator) iterates all data inside VCardEntry and pass them into the inner iterator. 3) make VCardParser abstract class VCardParser should provide some utility functionality like VCardParser#getInstance(), while currently users have to choose one of inherited classes like VCardParser_V21, which is hindering encapsulation. Currently no external library implements VCardParser, so this change isn't so harmful. Bug: 4167593 Bug: 4066223 Change-Id: Ic6bb453cf733cf1de356789b36dd90521dceff56
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
48dd8e86a81d2ab40eb762975c8211c225002bf0 |
|
22-Mar-2011 |
Daisuke Miyakawa <dmiyakawa@google.com> |
Tolerate nested vCard. vCard 2.1 requires to handle nest (or grouping) while our parser has not supported it well. One support we have had is ignoring top element when FLAG_TORELATE_NEST is specified, which isn't appropriate. e.g. BEGIN:VCARD X-VENDER-SPECIFIC-META-INFO:XXXX ... BEGIN:VCARD (Actual content) END:VCARD END:VCARD This change lets the vCard lib import nested vCard. One problem around handling the case above is that, after having this change, we'll get two vCard elements instead of one, as the top element isn't ignored on parser level any more, while we don't want the top-level data. To solve the problem, this change also makes vCard importer ignore such empty data. This changes just flattens nested vCard. Caller needs to take care of grouping/nest case using VCardEntry#getChildren() if it wants to support grouping feature. - introduce "children" into VCardEntry, which enables users to handle nested vCard on their side. - make vCard parsers accept nest cases. - make vCard interpreters handle nest cases. - make VCardEntry ignore empty data during constructing insert opertions. - make tests accept nest cases. - add additional test cases for verifying more details. - add debug string capability. - remove codes for performance measurement. Bug: 4066223 Change-Id: Id8af659c2cc0bb0db59c8de239d9d95e9d440089
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
02117b3d19787ff65486b9f9db8abd338ae4c9f9 |
|
11-Mar-2011 |
Daisuke Miyakawa <dmiyakawa@google.com> |
Use same TAG in vCard Tiny cleanups are included Bug: 4066223 Change-Id: I0b121e93ea5c624325d44b8aa6bab42d9a9a24fb
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
677ef21613a9d35053ec098444832ce4125a847e |
|
08-Mar-2011 |
Daisuke Miyakawa <dmiyakawa@google.com> |
Reorganize codes, especially around vCard composition. - suppress misc warnings - stop using VCardException in vCard composer which has been used only in test context - add VCardComposer#createOneEntryNew(). I'm planning to replace this with old VCardComposer#createOneEntry() I don't understand why we have callback mechanism for this kind of simple stuff. I could have been better on this. - add some documentation - mark initWithRawContacsEntityUri() (introduced recently) as deprecated. That was not a good idea =( Bug: 4066223 Change-Id: Ib533a435cac3b4e4fa31527d02b0657fc4bd0377
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
c955c8b0da0c9fcbad0ddcae76641358c27e72cd |
|
10-Jan-2011 |
Daisuke Miyakawa <dmiyakawa@google.com> |
Handle a case BASE64 doesn't contain two CRLFs Although BASE64 must contain two CRLFs at its end, sometimes we encounter the case where it doesn't. This change handles it if possible. Bug: 3330767 Change-Id: Ibe2be216a25fe1047034be1fdb17bb5d35ed1b5f
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
b23043e3a199e951817b6d86c301b9521d4c26fe |
|
03-Nov-2010 |
Daisuke Miyakawa <dmiyakawa@google.com> |
Add logs to track the parser behavior. Bug: 3159855 Change-Id: Idee28c6cfb05bab0079aa755f402843da3d746bd
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
4560bdde6dd75cca49fc55b58aafb5d416b88ca3 |
|
20-Aug-2010 |
Daisuke Miyakawa <dmiyakawa@google.com> |
Make vCard 4.0 parser support SORT-AS parameter. Add unit test for it. Fix bugs in foundation classes.. Change-Id: I8b5ca1fd49ef3e729ec85429fb8110efde5091f1
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
d5a8fc2a35c69fc34df35fd545ccf83d548ba50c |
|
13-Jul-2010 |
Daisuke Miyakawa <dmiyakawa@google.com> |
Rename a test file for comma-separated values in VALUE fields. Also add TODO for supporting the values. Bug: 2835996 Change-Id: I02c9d8735cee943e307fbbe75f0635bad636c396
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
be378d5b188f51cf717e5309e3c39180e85833a8 |
|
02-Jul-2010 |
Daisuke Miyakawa <dmiyakawa@google.com> |
Add a first implementation for vCard 4.0. TODO: need unit tests. Bug: 2794181 Change-Id: I6be681f79479e9d6d436895e1b5539af54539f9c
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
147f1ae5371954ae845cb2330b221df6ca1d8831 |
|
09-Jun-2010 |
Daisuke Miyakawa <dmiyakawa@google.com> |
Fix: make private to protected. Change-Id: Icbc51b4ee0d728263953d90760d9c52364a47d3f
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
f6d9e0eeae38a72481ce2e19d0872d3f8f81189f |
|
09-Jun-2010 |
Daisuke Miyakawa <dmiyakawa@google.com> |
Make vCard 2.1 importer accept vCard with non-QP multiple lines. Add unit test for it. Bug: 2750981 Change-Id: Ie4c9437e505dccbbcc1f6812f627c62e804bc368
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
58610106ce61adad9b1caa1fe9f7925c3e938bab |
|
08-Jun-2010 |
Daisuke Miyakawa <dmiyakawa@google.com> |
Supress unnecessary warning. Make VCardSourceDetector#PARSE_TYPE_UNKNOWN public for letting it available for default estimated type. Change-Id: I77a464ea22c2565f1d077b94db9f29233031297e
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|
4199c54c527330ac01699b176e7bca186a3aa3a4 |
|
04-Jun-2010 |
Daisuke Miyakawa <dmiyakawa@google.com> |
Move vCard code in platform/framework/base to platform/framework/opt/vcard. See also 33m4347ad6 in platform/framework/base. Bug: 2735156 Change-Id: I64b1bd42515a32b354396a030ec77d1ea3c5a08c
/frameworks/opt/vcard/java/com/android/vcard/VCardParserImpl_V21.java
|