diff options
author | Volker Hilsheimer <volker.hilsheimer@qt.io> | 2022-09-06 17:28:25 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2022-09-13 08:21:23 +0000 |
commit | 56d80b423b47f299d920f51a3e479d541a1f579e (patch) | |
tree | 43d139d2a2e8af19847dcb3d946894d9141b5c5a /src/bluetooth/android/servicediscoverybroadcastreceiver.cpp | |
parent | 39d7bdbf4cde6c1d1353c9df1837bd746b4273cc (diff) | |
download | qtconnectivity-56d80b423b47f299d920f51a3e479d541a1f579e.tar.gz |
Generate key string for field cache at compile time
By providing a template that returns the right field name for each enum
value as a QtJniTypes::String we can create the cache key entirely at
compile time.
The key string will still be copied once, as the QHash operates on a
QByteArray as the key.
Change-Id: I611b94e0ff65d71e5cb5a63d487324b9cf485b6b
Reviewed-by: Juha Vuolle <juha.vuolle@insta.fi>
(cherry picked from commit 4f9ad7da4c4e9a0d45e501edf1db3db67cec2638)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src/bluetooth/android/servicediscoverybroadcastreceiver.cpp')
-rw-r--r-- | src/bluetooth/android/servicediscoverybroadcastreceiver.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/bluetooth/android/servicediscoverybroadcastreceiver.cpp b/src/bluetooth/android/servicediscoverybroadcastreceiver.cpp index 825e4abc..082e7247 100644 --- a/src/bluetooth/android/servicediscoverybroadcastreceiver.cpp +++ b/src/bluetooth/android/servicediscoverybroadcastreceiver.cpp @@ -15,7 +15,7 @@ Q_DECLARE_LOGGING_CATEGORY(QT_BT_ANDROID) ServiceDiscoveryBroadcastReceiver::ServiceDiscoveryBroadcastReceiver(QObject* parent): AndroidBroadcastReceiver(parent) { - addAction(valueForStaticField(JavaNames::BluetoothDevice, JavaNames::ActionUuid)); + addAction(valueForStaticField<QtJniTypes::BluetoothDevice, JavaNames::ActionUuid>()); } void ServiceDiscoveryBroadcastReceiver::onReceive(JNIEnv *env, jobject context, jobject intent) @@ -28,11 +28,11 @@ void ServiceDiscoveryBroadcastReceiver::onReceive(JNIEnv *env, jobject context, qCDebug(QT_BT_ANDROID) << "ServiceDiscoveryBroadcastReceiver::onReceive() - event:" << action; - if (action == valueForStaticField(JavaNames::BluetoothDevice, - JavaNames::ActionUuid).toString()) { + if (action == valueForStaticField<QtJniTypes::BluetoothDevice, + JavaNames::ActionUuid>().toString()) { - QJniObject keyExtra = valueForStaticField(JavaNames::BluetoothDevice, - JavaNames::ExtraUuid); + QJniObject keyExtra = valueForStaticField<QtJniTypes::BluetoothDevice, + JavaNames::ExtraUuid>(); QJniObject parcelableUuids = intentObject.callMethod<QtJniTypes::ParcelableArray>( "getParcelableArrayExtra", keyExtra.object<jstring>()); @@ -42,7 +42,7 @@ void ServiceDiscoveryBroadcastReceiver::onReceive(JNIEnv *env, jobject context, } const QList<QBluetoothUuid> result = ServiceDiscoveryBroadcastReceiver::convertParcelableArray(parcelableUuids); - keyExtra = valueForStaticField(JavaNames::BluetoothDevice, JavaNames::ExtraDevice); + keyExtra = valueForStaticField<QtJniTypes::BluetoothDevice, JavaNames::ExtraDevice>(); QJniObject bluetoothDevice = intentObject.callMethod<QtJniTypes::Parcelable>("getParcelableExtra", keyExtra.object<jstring>()); |