| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
alternate GATT Server operational mode
New DBGattServer::Mode are
- NOP - no-op,
- DB - user database GATT server as before using a list of DBGattService,
- FWD - proxy: forwarding all GATT requests to another remote GATT server and returning the results
Each DBGattServer::Mode has a corresponding BTGattHandler::GattServerHandler implementation
to act upon the different GATT requests from a connected client.
All three modes are fully implemented.
|
|
|
|
|
|
|
|
|
|
|
| |
overwrite (initial) value server side.
Also refine getValue() API doc.
Implemented on C++ and Java side.
Peripheral00 example uses this facility to set the DEVICE_NAME GATT value
using the current adapter name.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
notifyies completion of single or bulk writeCharValue() ..
BTGattHandler maintains a handle list 'writeDataQueueHandles',
grouping all queued writes (PREPARE_WRITE_REQ).
Final EXECUTE_WRITE_REQ will issue one applyWrite(..) per queued write-req.
If all were successful (accepted and performed),
one signalWriteDone() will be issued per handle.
This allows the user to react on a completed write-queue having the full data set available.
+++
|
| |
|
|
|
|
| |
- not maximum (duh!)
|
|
|
|
| |
DBGattServer.[add|remove]Listener(..)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
org.direct.bt.DBGattServer.Listener callbacks
Finally bringing JavaUplink back, sorry for the earlier confusion of removing them.
However, this commit better shows the C++/Java connection used here.
The JavaUplink is used at manually ctor of the native counterpart from the Java object,
as they will also dtor the native instance.
This w/o DBTNativeDownlink, since we pass arguments directly for the native ctor.
On the java side, close() properly synchronizes the atomic volatile nativeInstance swap,
avoiding data races.
|
|
|
|
| |
BTAdapter held reference on disconnect, align ref holding in Java BTAdapter; Add explicit shutdown test
|
|
|
|
|
|
|
|
|
|
| |
JavaUplink
Use mutable and const field accessors, similar to upcoming Java 'proxy' classes.
This shall help defining mutable and const reference data access.
Revert adding JavaUplink to DBGatt[Desc|Char|Service] of commit 414c81b7214d895aba694ff444feca9cdc491bc5,
as we do not link from native instance to Java.
|
|
|
|
| |
and hence derive from JavaUplink
|
|
|
|
|
|
|
| |
covering semantics of C++ POctets + bool variable_length
DBGattValue covers C++ POctets + bool variable_length,
where POctets contains bytes, its size and capacity.
|
|
|
|
| |
Java: Use fast BTUtils.decodeUTF8String(), instead of StandardCharsets.UTF_8
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
proper MTU and connection tracking.
In case multiple connections will be supported, DBGattServer::Listener
is able to match the connected BTDevice to the callback event.
For now, dbt_peripheral00 only supports one connection while ignoring others ..
|
|
|
|
| |
characteristic value handle - clarification; Add proper API doc.
|
|
|
|
| |
ClientCharConfig
|
|
|
|
| |
cleanup incl. CCCD regs
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
move-semantics; 1st fully functional Gatt-Server!
Gatt-Server functionality provided by dbt_peripheral:
- Service GENERIC_ACCESS
- Service DEVICE_INFORMATION
- Service Proprietary `d0ca6bf3-3d50-4760-98e5-fc5883e93712`
- Characterictic DATA_STATIC: Read static data
- Characterictic COMMAND: Write a command
- Characterictic RESPONSE: Command response notify or indicate
- Characterictic DATA_PULSE: Periodical data sent via notify or indicate
|
|
|
|
| |
dbt_peripheral00: Add DBGattDesc::createClientCharConfig() to RESPONSE notify
|
| |
|
|
|
|
|
|
| |
DBGattDesc::createClientCharConfig(), ..
add Listener::write*Value(..) value_offset argument for long write requests
|
|
|
|
| |
other ATTPDU parameter; Better serverMTU max(min(..)) safety, API-doc clarity
|
|
|
|
| |
testing)
|
|
|
|
| |
GATT action
|
|
|
|
|
|
| |
next_handle-1
Also add missing BTGattChar::getPropertiesString() -> to_string() conversion.
|
| |
|
|
|
|
|
|
| |
descriptor)
GattDesc.cpp: Convert TYPE* to std::shared_ptr<jau::uuid_t> (missed in prev commit)
|
|
|
|
| |
std::shared_ptr<jau::uuid_t>; [BT|DB]GattChar::getClientCharConfig() is const
|
|
|
|
| |
DBGattServer::toFullString()
|
| |
|
|
|
|
| |
objects for the Gatt Server database
|
| |
|
|
DBGattService
|