History log of /system/bt/service/gatt_server.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
25689c1676ab911fa7887ec87b730b00325e4b90 21-Jan-2016 Jakub Pawlowski <jpawlowski@google.com> service: Solve locking issues inside GATT interface

ObserverList class handles adding/removing elements during iteration
by itself, therefore we don't need to do any locking.
Additionally, change lock type to shared for better performance, and
to avoid possible deadlocks that might be caused by calling HAL from
observers.

Change-Id: I4c372f1e03bd27a96bc6c036ab8ce34f5501c0a7
/system/bt/service/gatt_server.cpp
bb18c41ffa0370d4eb0c4a15904b114355606466 12-Nov-2015 Arman Uguray <armansito@google.com> service: Refactor Client/Instance naming

Refactored the internal interfaces so that data structures with
per-application instances such as GattClient, GattServer, and
LowEnergyClient, and all other related data structures use "instance"
to generically refer to these instances rather than "client", which
was the naming inherited from BTIF.

Bug: 25650633
Change-Id: I1bda387f5d8fdccebe5eae7f058d7f8defafe8cc
/system/bt/service/gatt_server.cpp
234138e2606dd7a54fbcc540643511abc0a3598d 07-Oct-2015 Arman Uguray <armansito@google.com> service: Create a client library for applications

This CL creates the libbluetooth-client static library that external
code can link against to interact with the Bluetooth daemon using
Binder. To this end, all service/ code that is common to the client
library and the daemon itself have been moved to service/common/bluetooth
and service/common is exported in LOCAL_EXPORT_C_INCLUDE_DIRS.

bluetooth-cli and bt-example-hr-server have been update to demonstrate
how an app should use this library (using library includes).

Bug: 23169160
Change-Id: Ie6841bd6c48846eecec824ff1e80a9971385d1fc
/system/bt/service/gatt_server.cpp
cd644e3c54a4321b7626b52531c59f88e24e87be 02-Oct-2015 Arman Uguray <armansito@google.com> service: Support GattServer notifications/indications

Added outgoing notification/indication support to
bluetooth::GattServer and implemented the related Binder API.

Bug: 24245347
Change-Id: I2d5cea90137e5d771f969163591b50aee1ad171c
/system/bt/service/gatt_server.cpp
4ebcbd9ede4006500c3ead0685befe0a8e4aadc2 30-Sep-2015 Arman Uguray <armansito@google.com> service: Support GATT server async write requests.

Added support for incoming characteristic/descriptor read requests
to bluetooth::GattServer and implemented the related Binder API.

Bug: 24245347
Change-Id: I18202c3255f0fb8fc5338b1139c375e1439b6568
/system/bt/service/gatt_server.cpp
514bf6087093375351784b287cb29c5f4603273c 30-Sep-2015 Arman Uguray <armansito@google.com> service: Support GATT server async read requests.

Added support for incoming characteristic/descriptor read requests
to bluetooth::GattServer and implemented the related Binder API.

Bug: 24245347
Change-Id: I88161c5bd3ca9ba5604c00aa4e569b3baf19137c
/system/bt/service/gatt_server.cpp
d9b0552a7f75737b5c8c60cb87f892b1b9323acf 26-Sep-2015 Arman Uguray <armansito@google.com> service: Implement IBluetoothGattServer.addDescriptor

Declared and implemented the IBluetoothGattServer.addDescriptor
API.

Bug: 24245347
Change-Id: I7d1e992321c260b9d77521b1c8d7a1e7737b35cc
/system/bt/service/gatt_server.cpp
91613743c9db02dbe05d93d2afa163b78068d054 25-Sep-2015 Arman Uguray <armansito@google.com> service: Implement IBluetoothGattServer.addCharacteristic

Declared and implemented the IBluetoothGattServer.addCharacteristic
Binder API.

Bug: 24245347
Change-Id: I8baaed8d6dbf8ac2209b8fd0c918cade78dcba64
/system/bt/service/gatt_server.cpp
df0b2714553cabc735222ce18a5f018c5a5fa138 24-Sep-2015 Arman Uguray <armansito@google.com> service: Implement adding a service declaration

This CL implements initiating and starting a GATT service
declaration in GattServer.

Bug: 24245347
Change-Id: I53281d29a052c1890616b6595881108ca0eedec3
/system/bt/service/gatt_server.cpp
0f2d4897046f037a9f181f47f3d349a9dd646478 22-Sep-2015 Arman Uguray <armansito@google.com> service: Add new GattServer abstraction

Added bluetooth::GattServer and bluetooth::GattServerFactory,
which conform the BluetoothClientInterface and
BluetoothClientInterfaceFactory interfaces. A GattServer represents
a per-application server instance that was registered with the stack
(a GATT server API "client").

The new code was added to the gatt_server.h|.cpp files, replacing
the old code that was added for cast. The old code has been moved to
the gatt_server_old.h|.cpp files.

Bug: 24245347
Change-Id: I3ca2eb53ab8320c9dba656859a4a89683607bb22
/system/bt/service/gatt_server.cpp
fe6dd2a72b0f6d761821e75b048c13eb9ecd19ac 15-Aug-2015 Arman Uguray <armansito@google.com> service: Rename Uuid to UUID

This is more consistent with the ancronym naming convention in the
framework code (e.g. java.util.UUID) and elsewhere in the Bluetooth
daemon.

Change-Id: I3461cf12d563e00ba5e0b0b390bd9ef94e6d7418
/system/bt/service/gatt_server.cpp
d6a4b0c950f44d3eab34825880d26c19e362d22b 14-Aug-2015 Arman Uguray <armansito@google.com> service: Replace CoreStack with Adapter

This CL removes the CoreStack class. Code that depended on a CoreStack instance
now depend on Adapter and hal::BluetoothInterface instead.

Bug: 23169364
Change-Id: Ide008cc7d3f9e74656f6bfa4df2dfee511e55b90
/system/bt/service/gatt_server.cpp
aa9e17bc61324446b9e0199630fb772b9afb1109 12-Aug-2015 Ian Coolidge <icoolidge@google.com> service: Allow manufacturer data to be set.

Plumbs IPC and stack code for manufacturer data
on advertisement or scan response.

Change-Id: I4b70506e35f51479bdf4073c31e4cb4f88fa2c98
/system/bt/service/gatt_server.cpp
2d5b1df1dcb67187b055d68f204d4a783cdec1ed 13-Aug-2015 Ian Coolidge <icoolidge@google.com> service: Fix permissions/properties argument order.

These were swapped, resulting in a bad configuration
of the control attribute.

Change-Id: I93dd69da1ace70a249d3a8d1856b173a52462a6c
/system/bt/service/gatt_server.cpp
49a86709488e5cfd5e23759da18bf9613e15b04d 08-Jul-2015 Marie Janssen <jamuraa@google.com> build: LOG_TAG consistency, include order, build fixes

Fix the order of includes across a bunch of files, and declare LOG_TAG
at the top of every file in which it is used.

Consistently use bt_ as a LOG_TAG prefix.
Fix issues with LOG macro usage.
Remove unused includes and double-includes (when in related .h)

Add includes as necessary to compile cleanly (problems surfaced by
reordering includes)

Change-Id: Ic55520c8302b06bbc1942c10c448b20844669da6
/system/bt/service/gatt_server.cpp
fd8fdca47afdcb797b35a05bc7bf57dd1ccbdca1 11-Jun-2015 Ian Coolidge <icoolidge@google.com> service: Add null initialization for new scan cb.

scan_parameter_setup_completed_cb was added to
btgatt_client_callbacks_t.

Change-Id: If0aa113df7cf3db742fa64244bbb7a849c877525
/system/bt/service/gatt_server.cpp
f2d6434a6b7ad98e20c7a601d2a0950237514837 09-Jul-2015 Arman Uguray <armansito@google.com> gn-build: Add bluetooth-service target

This patch makes the Bluetooth system service (service/) buildable using GN:

1. Added new BUILD.gn file for service/
2. Added conditional compilation for global config paths, with TODOs for
generalizing them later.
3. Added a shim for loading the Bluetooth library that calls hw_get_module on
Android and explicitly calls dlopen on OS_GENERIC.
4. Fixed compile warnings and errors.
5. Did some minor clean up in gatt_server.cpp for better readability.

Bug: 22124644
Change-Id: I3226537a3a5211a6762651a35707638df29956b0
/system/bt/service/gatt_server.cpp
fd4745ec554a95ea98230fcede779421ad89e363 14-Jul-2015 Ian Coolidge <icoolidge@google.com> service: Some fixes from end-to-end/user testing.

* Send responses to ExecWrite requests.
* Provide valid data on write responses.
* Properly destruct Gatt::Server objects.
* Synchronize CoreStack 'enable' calls properly.

Change-Id: I4e9eed1979b10abccc7ae487e2c7d90d491e38d9
/system/bt/service/gatt_server.cpp
49120dc867c7818511b5afec461dfc97d17eef58 08-Jul-2015 Marie Janssen <jamuraa@google.com> build: Fix LOG_TAG define breakage, macro usage

Fixes build breakages related to r.android.com/156982

Change-Id: Ib1143c41fe05a17c296226998afdb41a8cb6294a
/system/bt/service/gatt_server.cpp
db554581079863974af8e1289646f5deea6fc044 26-Jun-2015 Marie Janssen <jamuraa@google.com> build: Update osi log functions, use consistently

Update the LOG_* functions to take a tag argument which makes them more
consistent with the Android Log.*(TAG, s) common syntax and removes
some #define-dependency with osi/include/log.h.

Also update to never use Android log functions directly.

Also contains minor cleanup of some header includes.

Bug: 21569831
Change-Id: If07385cafbea062232ecdbc7c673f908d5ef8921
/system/bt/service/gatt_server.cpp
611fcf98316e28425abe28dbcc07b8d037653cee 04-Jun-2015 Ian Coolidge <icoolidge@google.com> Add bthost, a simple BLE GATT server.

This is accessible via Unix socket.
It only has a couple of interesting features:

* Built in support for large blob attributes (>512 octets)
* Attribute caching (avoid frame-level IO for IPC clients)

Some string utilies are taken from modp_b64 and Chromium base.

Bug: 21076037
Change-Id: I6a29959159de76f8dd68d6bbaabe2100daabb6fa
/system/bt/service/gatt_server.cpp