FileDocCategorySizeDatePackage
BluetoothPbapRequestPullPhoneBook.javaAPI DocAndroid 5.1 API3439Thu Mar 12 22:22:50 GMT 2015android.bluetooth.client.pbap

BluetoothPbapRequestPullPhoneBook

public 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.ArrayListgetList()

        return mResponse.getList();
    
public intgetNewMissedCalls()

        return mNewMissedCalls;
    
protected voidreadResponse(java.io.InputStream stream)

        Log.v(TAG, "readResponse");

        mResponse = new BluetoothPbapVcardList(stream, mFormat);
    
protected voidreadResponseHeaders(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);
        }