BluetoothPbapRequestPullPhoneBookpublic final class BluetoothPbapRequestPullPhoneBook extends BluetoothPbapRequest
Fields Summary |
---|
private static final String | TAG | private static final String | TYPE | private BluetoothPbapVcardList | mResponse | private int | mNewMissedCalls | private final byte | mFormat |
Constructors Summary |
---|
public BluetoothPbapRequestPullPhoneBook(String pbName, long filter, byte format, int maxListCount, int listStartOffset)
if (maxListCount < 0 || maxListCount > 65535) {
throw new IllegalArgumentException("maxListCount should be [0..65535]");
}
if (listStartOffset < 0 || listStartOffset > 65535) {
throw new IllegalArgumentException("listStartOffset should be [0..65535]");
}
mHeaderSet.setHeader(HeaderSet.NAME, pbName);
mHeaderSet.setHeader(HeaderSet.TYPE, TYPE);
ObexAppParameters oap = new ObexAppParameters();
/* make sure format is one of allowed values */
if (format != BluetoothPbapClient.VCARD_TYPE_21
&& format != BluetoothPbapClient.VCARD_TYPE_30) {
format = BluetoothPbapClient.VCARD_TYPE_21;
}
if (filter != 0) {
oap.add(OAP_TAGID_FILTER, filter);
}
oap.add(OAP_TAGID_FORMAT, format);
/*
* maxListCount is a special case which is handled in
* BluetoothPbapRequestPullPhoneBookSize
*/
if (maxListCount > 0) {
oap.add(OAP_TAGID_MAX_LIST_COUNT, (short) maxListCount);
} else {
oap.add(OAP_TAGID_MAX_LIST_COUNT, (short) 65535);
}
if (listStartOffset > 0) {
oap.add(OAP_TAGID_LIST_START_OFFSET, (short) listStartOffset);
}
oap.addToHeaderSet(mHeaderSet);
mFormat = format;
|
Methods Summary |
---|
public java.util.ArrayList | getList()
return mResponse.getList();
| public int | getNewMissedCalls()
return mNewMissedCalls;
| protected void | readResponse(java.io.InputStream stream)
Log.v(TAG, "readResponse");
mResponse = new BluetoothPbapVcardList(stream, mFormat);
| protected void | readResponseHeaders(javax.obex.HeaderSet headerset)
Log.v(TAG, "readResponse");
ObexAppParameters oap = ObexAppParameters.fromHeaderSet(headerset);
if (oap.exists(OAP_TAGID_NEW_MISSED_CALLS)) {
mNewMissedCalls = oap.getByte(OAP_TAGID_NEW_MISSED_CALLS);
}
|
|