acquire

abstract suspend fun acquire(group: String, partition: Int, owner: String, ttl: Duration): Lease?

Acquires partition of group for owner for ttl: the lease is free, expired or released, or owner already holds it (then it is extended and keeps its epoch, so a retried acquisition is harmless). Returns the lease, or null when another node holds it.