code: @BetaApi(
        "The surface for long-running operations is not stable yet and may change in the future.")
    public final OperationFuture<Instance, Any> failoverInstanceAsync(
        FailoverInstanceRequest request) {
      return failoverInstanceOperationCallable().futureCall(request);
    }
docs: Failover the master role to current replica node against a specific STANDARD tier redis
  instance.
  
  <p>Sample code:
  
  <pre><code>
  try (CloudRedisClient cloudRedisClient = CloudRedisClient.create()) {
  String formattedName = InstanceName.format("[PROJECT]", "[LOCATION]", "[INSTANCE]");
  FailoverInstanceRequest.DataProtectionMode dataProtectionMode = FailoverInstanceRequest.DataProtectionMode.DATA_PROTECTION_MODE_UNSPECIFIED;
  FailoverInstanceRequest request = FailoverInstanceRequest.newBuilder()
  .setName(formattedName)
  .setDataProtectionMode(dataProtectionMode)
  .build();
  Instance response = cloudRedisClient.failoverInstanceAsync(request).get();
  }
  </code></pre>
  
  @param request The request object containing all of the parameters for the API call.
  @throws com.google.api.gax.rpc.ApiException if the remote call fails