BleGattCoroutines icon indicating copy to clipboard operation
BleGattCoroutines copied to clipboard

Proposal: Rename GattConnection interface to something else

Open LouisCAD opened this issue 7 years ago • 5 comments

GattConnection is not the ideal name for 3 reasons:

  • Bluetooth or Ble is missing from its name, while it's exclusively for Bluetooth General ATTribute.
  • There's "Connection" in the name, but when an instance is originally created, the connection is not established yet.
  • There's "Connection" in the name, but there's a disconnect() function… should Connection be magically dropped from the name of the class when this function is called? Of course, this is impossible, but shows how the name is not an ideal fit.

Consequently, I want this class to be renamed when the first Kotlin 1.3 compatible version is released, with a deprecated typealias on initial pre-release (alpha, beta or rc) for source compatibility.

Here are a few name ideas:

  1. BleGatt
  2. SuspendBluetoothGatt
  3. SuspendBleGatt
  4. BluetoothGatt (with named import to reference Android's as AndroidBluetoothGatt or alike)
  5. BluetoothGattIsFun (wait… maybe not actual fun yet 🤔)
  6. FunBluetoothGatt (this could open the discussion of a library renaming)

Please, add a comment to say what you think about each proposition (I may append more name ideas, but I will keep the numbers stable), and if you have other name ideas, please write them there too.

LouisCAD avatar Nov 16 '18 13:11 LouisCAD

Seems odd to put suspend on the front of the name, I would think async or asynchronous would be more descriptive/accurate. Maybe Allochronic...

BleGatt is probably best but least unique. Maybe AndroidBleGatt Library. That gets close to Able though, which is used by (https://github.com/JuulLabs-OSS/able).

Or maybe just some sort of pun involving Cats?

Or just a non-descriptive name? Bastet?

bj0 avatar Dec 06 '18 00:12 bj0

Hi, I'm passing through :) Given these options I agree with @bj0's favor/caution with regard to BleGatt. I also see on Wikipedia that Bluetooth was first called "short-link" radio technology.

How does interface ShortLink sound to you?

internal class ShortLinkImpl( 
  private val bluetoothDevice: BluetoothDevice,
  private val connectionSettings: ShortLink.ConnectionSettings
) : ShortLink, CoroutineScope

es0329 avatar Dec 18 '18 01:12 es0329

Short-link was in regards to Bluetooth classic though not Bluetooth Low Energy

Sent from my iPhone

On Dec 17, 2018, at 8:50 PM, Eric [email protected] wrote:

Hi, I'm passing through :) Given these options I agree with @bj0's favor/caution with regard to BleGatt. I also see on Wikipedia that Bluetooth was first called "short-link" radio technology.

How does interface ShortLink sound to you?

internal class ShortLinkImpl( private val bluetoothDevice: BluetoothDevice, private val connectionSettings: ShortLink.ConnectionSettings ) : ShortLink, CoroutineScope — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.

JoeBakalor avatar Dec 18 '18 02:12 JoeBakalor

BleGatt sounds good

WebTiger89 avatar Jul 15 '19 20:07 WebTiger89

You could create a GattConnectionBuilder that returns the GattConnection, it would give time for ya to think in a library rename.

odahcam avatar Jan 17 '20 18:01 odahcam