diff options
author | Joseph Pirozzo <pirozzoj@google.com> | 2020-03-19 19:18:18 +0000 |
---|---|---|
committer | Joseph Pirozzo <pirozzoj@google.com> | 2020-03-19 19:18:18 +0000 |
commit | e60a883032572c6cebd1676aa9c45be5f72799ff (patch) | |
tree | 686572acc508f4467b0053e5aeee1730c3429729 | |
parent | da1dc71cffb5fbb1e55186a20410e3d4f95246c3 (diff) | |
download | android_packages_apps_Bluetooth-e60a883032572c6cebd1676aa9c45be5f72799ff.tar.gz android_packages_apps_Bluetooth-e60a883032572c6cebd1676aa9c45be5f72799ff.tar.bz2 android_packages_apps_Bluetooth-e60a883032572c6cebd1676aa9c45be5f72799ff.zip |
Revert "PBAP server, send favorite contacts"
This reverts commit da1dc71cffb5fbb1e55186a20410e3d4f95246c3.
Reason for revert: Not intended for this build.
Change-Id: I3d8f51080e377d5dc7b67395a4979b8e5937a181
3 files changed, 23 insertions, 82 deletions
diff --git a/src/com/android/bluetooth/pbap/BluetoothPbapObexServer.java b/src/com/android/bluetooth/pbap/BluetoothPbapObexServer.java index 34ee96270..979becdca 100755 --- a/src/com/android/bluetooth/pbap/BluetoothPbapObexServer.java +++ b/src/com/android/bluetooth/pbap/BluetoothPbapObexServer.java @@ -97,7 +97,6 @@ public class BluetoothPbapObexServer extends ServerRequestHandler { private static final String[] LEGAL_PATH = { "/telecom", "/telecom/pb", - "/telecom/fav", "/telecom/ich", "/telecom/och", "/telecom/mch", @@ -107,7 +106,6 @@ public class BluetoothPbapObexServer extends ServerRequestHandler { @SuppressWarnings("unused") private static final String[] LEGAL_PATH_WITH_SIM = { "/telecom", "/telecom/pb", - "/telecom/fav", "/telecom/ich", "/telecom/och", "/telecom/mch", @@ -140,9 +138,6 @@ public class BluetoothPbapObexServer extends ServerRequestHandler { // phone book private static final String PB = "pb"; - // favorites - private static final String FAV = "fav"; - private static final String TELECOM_PATH = "/telecom"; private static final String ICH_PATH = "/telecom/ich"; @@ -155,8 +150,6 @@ public class BluetoothPbapObexServer extends ServerRequestHandler { private static final String PB_PATH = "/telecom/pb"; - private static final String FAV_PATH = "/telecom/fav"; - // type for list vcard objects private static final String TYPE_LISTING = "x-bt/vcard-listing"; @@ -219,8 +212,6 @@ public class BluetoothPbapObexServer extends ServerRequestHandler { public static final int MISSED_CALL_HISTORY = 4; public static final int COMBINED_CALL_HISTORY = 5; - - public static final int FAVORITES = 6; } public BluetoothPbapObexServer(Handler callback, Context context, @@ -450,8 +441,6 @@ public class BluetoothPbapObexServer extends ServerRequestHandler { if (mCurrentPath.equals(PB_PATH)) { appParamValue.needTag = ContentType.PHONEBOOK; - } else if (mCurrentPath.equals(FAV_PATH)) { - appParamValue.needTag = ContentType.FAVORITES; } else if (mCurrentPath.equals(ICH_PATH)) { appParamValue.needTag = ContentType.INCOMING_CALL_HISTORY; } else if (mCurrentPath.equals(OCH_PATH)) { @@ -489,11 +478,6 @@ public class BluetoothPbapObexServer extends ServerRequestHandler { if (D) { Log.v(TAG, "download phonebook request"); } - } else if (isNameMatchTarget(name, FAV)) { - appParamValue.needTag = ContentType.FAVORITES; - if (D) { - Log.v(TAG, "download favorites request"); - } } else if (isNameMatchTarget(name, ICH)) { appParamValue.needTag = ContentType.INCOMING_CALL_HISTORY; appParamValue.callHistoryVersionCounter = @@ -767,8 +751,7 @@ public class BluetoothPbapObexServer extends ServerRequestHandler { result.append("<vCard-listing version=\"1.0\">"); // Phonebook listing request - if ((appParamValue.needTag == ContentType.PHONEBOOK) - || (appParamValue.needTag == ContentType.FAVORITES)) { + if (appParamValue.needTag == ContentType.PHONEBOOK) { String type = ""; if (appParamValue.searchAttr.equals("0")) { type = "name"; @@ -965,7 +948,7 @@ public class BluetoothPbapObexServer extends ServerRequestHandler { checkPbapFeatureSupport(mFolderVersionCounterbitMask); } boolean needSendPhonebookVersionCounters = false; - if (isNameMatchTarget(name, PB) || isNameMatchTarget(name, FAV)) { + if (isNameMatchTarget(name, PB)) { needSendPhonebookVersionCounters = checkPbapFeatureSupport(mFolderVersionCounterbitMask); } @@ -1209,12 +1192,11 @@ public class BluetoothPbapObexServer extends ServerRequestHandler { if (appParamValue.needTag == 0) { Log.w(TAG, "wrong path!"); return ResponseCodes.OBEX_HTTP_NOT_ACCEPTABLE; - } else if ((appParamValue.needTag == ContentType.PHONEBOOK) - || (appParamValue.needTag == ContentType.FAVORITES)) { + } else if (appParamValue.needTag == ContentType.PHONEBOOK) { if (intIndex < 0 || intIndex >= size) { Log.w(TAG, "The requested vcard is not acceptable! name= " + name); return ResponseCodes.OBEX_HTTP_NOT_FOUND; - } else if ((intIndex == 0) && (appParamValue.needTag == ContentType.PHONEBOOK)) { + } else if (intIndex == 0) { // For PB_PATH, 0.vcf is the phone number of this phone. String ownerVcard = mVcardManager.getOwnerPhoneNumberVcard(vcard21, appParamValue.ignorefilter ? null : appParamValue.propertySelector); @@ -1270,49 +1252,30 @@ public class BluetoothPbapObexServer extends ServerRequestHandler { int requestSize = pbSize >= appParamValue.maxListCount ? appParamValue.maxListCount : pbSize; - /** - * startIndex (resp., lastIndex) corresponds to the index of the first (resp., last) - * vcard entry in the phonebook object. - * PBAP v1.2.3: only pb starts indexing at 0.vcf (owner card), the other phonebook - * objects (e.g., fav) start at 1.vcf. Additionally, the owner card is included in - * pb's pbSize. This means pbSize corresponds to the index of the last vcf in the fav - * phonebook object, but does not for the pb phonebook object. - */ - int startIndex = 1; - int lastIndex = pbSize; - if (appParamValue.needTag == BluetoothPbapObexServer.ContentType.PHONEBOOK) { - startIndex = 0; - lastIndex = pbSize - 1; - } - // [startPoint, endPoint] denote the range of vcf indices to send, inclusive. - int startPoint = startIndex + appParamValue.listStartOffset; - int endPoint = startPoint + requestSize - 1; - if (appParamValue.listStartOffset < 0 || startPoint > lastIndex) { + int startPoint = appParamValue.listStartOffset; + if (startPoint < 0 || startPoint >= pbSize) { Log.w(TAG, "listStartOffset is not correct! " + startPoint); return ResponseCodes.OBEX_HTTP_OK; } - if (endPoint > lastIndex) { - endPoint = lastIndex; - } // Limit the number of call log to CALLLOG_NUM_LIMIT - if ((appParamValue.needTag != BluetoothPbapObexServer.ContentType.PHONEBOOK) - && (appParamValue.needTag != BluetoothPbapObexServer.ContentType.FAVORITES)) { + if (appParamValue.needTag != BluetoothPbapObexServer.ContentType.PHONEBOOK) { if (requestSize > CALLLOG_NUM_LIMIT) { requestSize = CALLLOG_NUM_LIMIT; } } + int endPoint = startPoint + requestSize - 1; + if (endPoint > pbSize - 1) { + endPoint = pbSize - 1; + } if (D) { Log.d(TAG, "pullPhonebook(): requestSize=" + requestSize + " startPoint=" + startPoint + " endPoint=" + endPoint); } boolean vcard21 = appParamValue.vcard21; - boolean favorites = - (appParamValue.needTag == BluetoothPbapObexServer.ContentType.FAVORITES); - if ((appParamValue.needTag == BluetoothPbapObexServer.ContentType.PHONEBOOK) - || favorites) { + if (appParamValue.needTag == BluetoothPbapObexServer.ContentType.PHONEBOOK) { if (startPoint == 0) { String ownerVcard = mVcardManager.getOwnerPhoneNumberVcard(vcard21, appParamValue.ignorefilter ? null : appParamValue.propertySelector); @@ -1322,13 +1285,13 @@ public class BluetoothPbapObexServer extends ServerRequestHandler { return mVcardManager.composeAndSendPhonebookVcards(op, 1, endPoint, vcard21, ownerVcard, needSendBody, pbSize, appParamValue.ignorefilter, appParamValue.propertySelector, appParamValue.vCardSelector, - appParamValue.vCardSelectorOperator, mVcardSelector, favorites); + appParamValue.vCardSelectorOperator, mVcardSelector); } } else { return mVcardManager.composeAndSendPhonebookVcards(op, startPoint, endPoint, vcard21, null, needSendBody, pbSize, appParamValue.ignorefilter, appParamValue.propertySelector, appParamValue.vCardSelector, - appParamValue.vCardSelectorOperator, mVcardSelector, favorites); + appParamValue.vCardSelectorOperator, mVcardSelector); } } else { return mVcardManager.composeAndSendSelectedCallLogVcards(appParamValue.needTag, op, diff --git a/src/com/android/bluetooth/pbap/BluetoothPbapService.java b/src/com/android/bluetooth/pbap/BluetoothPbapService.java index 280186f8f..e7dba2a96 100644 --- a/src/com/android/bluetooth/pbap/BluetoothPbapService.java +++ b/src/com/android/bluetooth/pbap/BluetoothPbapService.java @@ -140,8 +140,7 @@ public class BluetoothPbapService extends ProfileService implements IObexConnect private ObexServerSockets mServerSockets = null; private static final int SDP_PBAP_SERVER_VERSION = 0x0102; - // PBAP v1.2.3, Sec. 7.1.2: local phonebook and favorites - private static final int SDP_PBAP_SUPPORTED_REPOSITORIES = 0x0009; + private static final int SDP_PBAP_SUPPORTED_REPOSITORIES = 0x0001; private static final int SDP_PBAP_SUPPORTED_FEATURES = 0x021F; /* PBAP will use Bluetooth notification ID from 1000000 (included) to 2000000 (excluded). diff --git a/src/com/android/bluetooth/pbap/BluetoothPbapVcardManager.java b/src/com/android/bluetooth/pbap/BluetoothPbapVcardManager.java index 8801c16fb..5ba2b4b8b 100755 --- a/src/com/android/bluetooth/pbap/BluetoothPbapVcardManager.java +++ b/src/com/android/bluetooth/pbap/BluetoothPbapVcardManager.java @@ -153,8 +153,7 @@ public class BluetoothPbapVcardManager { int size; switch (type) { case BluetoothPbapObexServer.ContentType.PHONEBOOK: - case BluetoothPbapObexServer.ContentType.FAVORITES: - size = getContactsSize(type); + size = getContactsSize(); break; default: size = getCallHistorySize(type); @@ -166,30 +165,16 @@ public class BluetoothPbapVcardManager { return size; } - /** - * Returns the number of contacts (i.e., vcf) in a phonebook object. - * @param type specifies which phonebook object, e.g., pb, fav - * @return - */ - public final int getContactsSize(final int type) { + public final int getContactsSize() { final Uri myUri = DevicePolicyUtils.getEnterprisePhoneUri(mContext); Cursor contactCursor = null; - String selectionClause = null; - if (type == BluetoothPbapObexServer.ContentType.FAVORITES) { - selectionClause = Phone.STARRED + " = 1"; - } try { - contactCursor = mResolver.query(myUri, - new String[]{Phone.CONTACT_ID}, selectionClause, - null, Phone.CONTACT_ID); + contactCursor = mResolver.query(myUri, new String[]{Phone.CONTACT_ID}, null, null, + Phone.CONTACT_ID); if (contactCursor == null) { return 0; } - int contactsSize = getDistinctContactIdSize(contactCursor); - if (type == BluetoothPbapObexServer.ContentType.PHONEBOOK) { - contactsSize += 1; // pb has the 0.vcf owner's card - } - return contactsSize; + return getDistinctContactIdSize(contactCursor) + 1; // always has the 0.vcf } catch (CursorWindowAllocationException e) { Log.e(TAG, "CursorWindowAllocationException while getting Contacts size"); } finally { @@ -566,7 +551,7 @@ public class BluetoothPbapVcardManager { final int composeAndSendPhonebookVcards(Operation op, final int startPoint, final int endPoint, final boolean vcardType21, String ownerVCard, int needSendBody, int pbSize, boolean ignorefilter, byte[] filter, byte[] vcardselector, String vcardselectorop, - boolean vcardselect, boolean favorites) { + boolean vcardselect) { if (startPoint < 1 || startPoint > endPoint) { Log.e(TAG, "internal error: startPoint or endPoint is not correct."); return ResponseCodes.OBEX_HTTP_INTERNAL_ERROR; @@ -577,15 +562,9 @@ public class BluetoothPbapVcardManager { Cursor contactIdCursor = new MatrixCursor(new String[]{ Phone.CONTACT_ID }); - - String selectionClause = null; - if (favorites) { - selectionClause = Phone.STARRED + " = 1"; - } - try { - contactCursor = mResolver.query(myUri, PHONES_CONTACTS_PROJECTION, selectionClause, - null, Phone.CONTACT_ID); + contactCursor = mResolver.query(myUri, PHONES_CONTACTS_PROJECTION, null, null, + Phone.CONTACT_ID); if (contactCursor != null) { contactIdCursor = ContactCursorFilter.filterByRange(contactCursor, startPoint, endPoint); |