diff options
Diffstat (limited to 'src/com/android/bluetooth/gatt/ServiceDeclaration.java')
-rw-r--r-- | src/com/android/bluetooth/gatt/ServiceDeclaration.java | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/src/com/android/bluetooth/gatt/ServiceDeclaration.java b/src/com/android/bluetooth/gatt/ServiceDeclaration.java index 0c9a51b2f..1d0bc4e90 100644 --- a/src/com/android/bluetooth/gatt/ServiceDeclaration.java +++ b/src/com/android/bluetooth/gatt/ServiceDeclaration.java @@ -39,6 +39,7 @@ class ServiceDeclaration { int properties = 0; int serviceType = 0; int serviceHandle = 0; + boolean advertisePreferred = false; Entry(UUID uuid, int serviceType, int instance) { this.type = TYPE_SERVICE; @@ -47,6 +48,14 @@ class ServiceDeclaration { this.serviceType = serviceType; } + Entry(UUID uuid, int serviceType, int instance, boolean advertisePreferred) { + this.type = TYPE_SERVICE; + this.uuid = uuid; + this.instance = instance; + this.serviceType = serviceType; + this.advertisePreferred = advertisePreferred; + } + Entry(UUID uuid, int properties, int permissions, int instance) { this.type = TYPE_CHARACTERISTIC; this.uuid = uuid; @@ -69,8 +78,9 @@ class ServiceDeclaration { mEntries = new ArrayList<Entry>(); } - void addService(UUID uuid, int serviceType, int instance, int minHandles) { - mEntries.add(new Entry(uuid, serviceType, instance)); + void addService(UUID uuid, int serviceType, int instance, int minHandles, + boolean advertisePreferred) { + mEntries.add(new Entry(uuid, serviceType, instance, advertisePreferred)); if (minHandles == 0) { ++mNumHandles; } else { @@ -102,6 +112,15 @@ class ServiceDeclaration { return entry; } + boolean isServiceAdvertisePreferred(UUID uuid) { + for (Entry entry : mEntries) { + if (entry.uuid.equals(uuid)) { + return entry.advertisePreferred; + } + } + return false; + } + int getNumHandles() { return mNumHandles; } |