Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3c64fdac authored by Jakub Pawlowski's avatar Jakub Pawlowski Committed by Gerrit Code Review
Browse files

Merge "Move start advertise method to advertising interface (1/3)"

parents f0e92bd5 0fce0719
Loading
Loading
Loading
Loading
+12 −13
Original line number Diff line number Diff line
@@ -368,13 +368,6 @@ void btgattc_remote_rssi_cb(int client_if,bt_bdaddr_t* bda, int rssi, int status
    sCallbackEnv->DeleteLocalRef(address);
}

void btgattc_advertise_cb(int status, int client_if)
{
    CallbackEnv sCallbackEnv(__func__);
    if (!sCallbackEnv.valid()) return;
    sCallbackEnv->CallVoidMethod(mCallbacksObj, method_onAdvertiseCallback, status, client_if);
}

void btgattc_configure_mtu_cb(int conn_id, int status, int mtu)
{
    CallbackEnv sCallbackEnv(__func__);
@@ -589,7 +582,6 @@ static const btgatt_client_callbacks_t sGattClientCallbacks = {
    btgattc_write_descriptor_cb,
    btgattc_execute_write_cb,
    btgattc_remote_rssi_cb,
    btgattc_advertise_cb,
    btgattc_configure_mtu_cb,
    btgattc_congestion_cb,
    btgattc_get_gatt_db_cb,
@@ -839,7 +831,7 @@ static void classInitNative(JNIEnv* env, jclass clazz) {
    method_onRegisterForNotifications = env->GetMethodID(clazz, "onRegisterForNotifications", "(IIII)V");
    method_onReadRemoteRssi = env->GetMethodID(clazz, "onReadRemoteRssi", "(ILjava/lang/String;II)V");
    method_onConfigureMTU = env->GetMethodID(clazz, "onConfigureMTU", "(III)V");
    method_onAdvertiseCallback = env->GetMethodID(clazz, "onAdvertiseCallback", "(II)V");
    method_onAdvertiseCallback = env->GetMethodID(clazz, "onAdvertiseCallback", "(I)V");
    method_onScanFilterConfig = env->GetMethodID(clazz, "onScanFilterConfig", "(IIIII)V");
    method_onScanFilterParamsConfigured = env->GetMethodID(clazz, "onScanFilterParamsConfigured", "(IIII)V");
    method_onScanFilterEnableDisabled = env->GetMethodID(clazz, "onScanFilterEnableDisabled", "(III)V");
@@ -1123,11 +1115,18 @@ static void gattClientReadRemoteRssiNative(JNIEnv* env, jobject object, jint cli
    sGattIf->client->read_remote_rssi(clientif, &bda);
}

static void gattAdvertiseNative(JNIEnv *env, jobject object,
        jint client_if, jboolean start)

void btgattc_advertise_cb(uint8_t status)
{
    CallbackEnv sCallbackEnv(__func__);
    if (!sCallbackEnv.valid()) return;
    sCallbackEnv->CallVoidMethod(mCallbacksObj, method_onAdvertiseCallback, status);
}

static void gattAdvertiseNative(JNIEnv *env, jobject object, jboolean start)
{
    if (!sGattIf) return;
    sGattIf->client->listen(client_if, start);
    sGattIf->advertiser->Enable(start, base::Bind(&btgattc_advertise_cb));
}

static void gattSetAdvDataNative(JNIEnv *env, jobject object,
@@ -1658,7 +1657,7 @@ static JNINativeMethod sAdvertiseMethods[] = {
    {"gattClientSetAdvDataNative", "(IZ[B)V", (void *) gattClientSetAdvDataNative},
    {"gattClientEnableAdvNative", "(IZI)V", (void *) gattClientEnableAdvNative},
    {"gattSetAdvDataNative", "(Z[B)V", (void *) gattSetAdvDataNative},
    {"gattAdvertiseNative", "(IZ)V", (void *) gattAdvertiseNative},
    {"gattAdvertiseNative", "(Z)V", (void *) gattAdvertiseNative},
};

// JNI functions defined in ScanManager class.
+3 −3
Original line number Diff line number Diff line
@@ -339,7 +339,7 @@ class AdvertiseManager {
            if (mAdapterService.isMultiAdvertisementSupported()) {
                gattClientEnableAdvNative(client.advertiserId, false, 0);
            } else {
                gattAdvertiseNative(client.advertiserId, false);
                gattAdvertiseNative(false);
                try {
                    mService.onAdvertiseInstanceEnabled(
                            AdvertiseCallback.ADVERTISE_SUCCESS, client.advertiserId, false);
@@ -387,7 +387,7 @@ class AdvertiseManager {
            if (mAdapterService.isMultiAdvertisementSupported()) {
                gattClientEnableAdvNative(advertiserId, enable, advertiseTimeoutSeconds);
            } else {
                gattAdvertiseNative(client.advertiserId, enable);
                gattAdvertiseNative(enable);
            }
        }

@@ -605,7 +605,7 @@ class AdvertiseManager {

        private native void gattSetAdvDataNative(boolean setScanRsp, byte[] data);

        private native void gattAdvertiseNative(int advertiserId, boolean start);
        private native void gattAdvertiseNative(boolean start);
    }

    private void logd(String s) {
+3 −3
Original line number Diff line number Diff line
@@ -1161,9 +1161,9 @@ public class GattService extends ProfileService {
    }

    // Callback for standard advertising instance.
    void onAdvertiseCallback(int status, int advertiserId) {
        if (DBG) Log.d(TAG, "onAdvertiseCallback,- advertiserId=" + advertiserId + ", status=" + status);
        mAdvertiseManager.callbackDone(advertiserId, status);
    void onAdvertiseCallback(int status) {
        if (DBG) Log.d(TAG, "onAdvertiseCallback status=" + status);
        mAdvertiseManager.callbackDone(0 /* advertiser_id */, status);
    }

    // Followings are callbacks for Bluetooth LE Advertise operations.