override def acquire()

in lease-kubernetes/src/main/scala/org/apache/pekko/coordination/lease/kubernetes/AbstractKubernetesLease.scala [112:122]


  override def acquire(leaseLostCallback: Option[Throwable] => Unit): Future[Boolean] = {
    (leaseActor ? Acquire(leaseLostCallback))
      .transform {
        case Success(LeaseAcquired)       => Success(true)
        case Success(LeaseTaken)          => Success(false)
        case Success(InvalidRequest(msg)) => Failure(new LeaseException(msg))
        case Failure(_: AskTimeoutException) => Failure(new LeaseTimeoutException(
            s"Timed out trying to acquire lease [$leaseName, ${settings.ownerName}]. It may still be taken."))
        case Failure(exception) => Failure(exception)
      }(ExecutionContexts.parasitic)
  }