summaryrefslogtreecommitdiffstats
path: root/core/java/android/server
diff options
context:
space:
mode:
authorJaikumar Ganesh <jaikumar@google.com>2009-09-08 21:37:32 -0700
committerJaikumar Ganesh <jaikumar@google.com>2009-09-08 21:51:07 -0700
commit9519ce75f15ba287a641166c1b7ed10f2aa73f74 (patch)
tree8bbd8d89419245c972695cd54bda1aeac898905d /core/java/android/server
parent19d6f7ac27448b59c936878756bad49f623a6a99 (diff)
downloadframeworks_base-9519ce75f15ba287a641166c1b7ed10f2aa73f74.zip
frameworks_base-9519ce75f15ba287a641166c1b7ed10f2aa73f74.tar.gz
frameworks_base-9519ce75f15ba287a641166c1b7ed10f2aa73f74.tar.bz2
Query for all properties if a property change is received and cache is empty.
Diffstat (limited to 'core/java/android/server')
-rw-r--r--core/java/android/server/BluetoothEventLoop.java5
-rw-r--r--core/java/android/server/BluetoothService.java4
2 files changed, 9 insertions, 0 deletions
diff --git a/core/java/android/server/BluetoothEventLoop.java b/core/java/android/server/BluetoothEventLoop.java
index 8cef3a2..e341b74 100644
--- a/core/java/android/server/BluetoothEventLoop.java
+++ b/core/java/android/server/BluetoothEventLoop.java
@@ -240,6 +240,11 @@ class BluetoothEventLoop {
}
/*package*/ void onPropertyChanged(String[] propValues) {
+ if (mBluetoothService.isAdapterPropertiesEmpty()) {
+ // We have got a property change before
+ // we filled up our cache.
+ mBluetoothService.getAllProperties();
+ }
String name = propValues[0];
if (name.equals("Name")) {
Intent intent = new Intent(BluetoothIntent.NAME_CHANGED_ACTION);
diff --git a/core/java/android/server/BluetoothService.java b/core/java/android/server/BluetoothService.java
index b168850..5fe0d4e 100644
--- a/core/java/android/server/BluetoothService.java
+++ b/core/java/android/server/BluetoothService.java
@@ -538,6 +538,10 @@ public class BluetoothService extends IBluetooth.Stub {
}
}
+ /*package*/ synchronized boolean isAdapterPropertiesEmpty() {
+ return mAdapterProperties.isEmpty();
+ }
+
/*package*/synchronized void getAllProperties() {
mContext.enforceCallingOrSelfPermission(BLUETOOTH_PERM, "Need BLUETOOTH permission");
mAdapterProperties.clear();