From 600d08e46f52d510598ffe382bf83f576f7ab8a6 Mon Sep 17 00:00:00 2001 From: Rakesh Iyer Date: Thu, 9 Apr 2015 11:05:08 -0700 Subject: Save away unknown properties that begin with X-. PBAP sends over call logs using the vcard format and uses the X-IRMC-DATETIME property to add in the timestamp of the calls. The current VCardEntry drops entries that are not recognized, and since these aren't recongized, they are dropped. Given that X- properties can be anything, this change saves them away in a list that the caller can check and parse if they desire to do so. Change-Id: Iece345cc5b1f0ac3b7c8fbc29c78cc4deff11b22 --- java/com/android/vcard/VCardEntry.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/java/com/android/vcard/VCardEntry.java b/java/com/android/vcard/VCardEntry.java index 255697b..44a71d8 100644 --- a/java/com/android/vcard/VCardEntry.java +++ b/java/com/android/vcard/VCardEntry.java @@ -42,6 +42,7 @@ import android.provider.ContactsContract.RawContacts; import android.telephony.PhoneNumberUtils; import android.text.TextUtils; import android.util.Log; +import android.util.Pair; import java.util.ArrayList; import java.util.Arrays; @@ -1552,6 +1553,7 @@ public class VCardEntry { private List mAndroidCustomDataList; private BirthdayData mBirthday; private AnniversaryData mAnniversary; + private List> mUnknownXData; /** * Inner iterator interface. @@ -2403,6 +2405,12 @@ public class VCardEntry { final List customPropertyList = VCardUtils.constructListFromValue(propValue, mVCardType); handleAndroidCustomProperty(customPropertyList); + } else if (propertyName.toUpperCase().startsWith("X-")) { + // Catch all for X- properties. The caller can decide what to do with these. + if (mUnknownXData == null) { + mUnknownXData = new ArrayList>(); + } + mUnknownXData.add(new Pair(propertyName, propValue)); } else { } // Be careful when adding some logic here, as some blocks above may use "return". @@ -2647,4 +2655,8 @@ public class VCardEntry { } return mNameData.displayName; } + + public List> getUnknownXData() { + return mUnknownXData; + } } -- cgit v1.2.3