private CompletableFuture<List<RegionMetrics>> getRegionMetrics(GetRegionLoadRequest request,
    ServerName serverName) {
    return this.<List<RegionMetrics>> newAdminCaller()
      .action((controller, stub) -> this.<GetRegionLoadRequest, GetRegionLoadResponse,
        List<RegionMetrics>> adminCall(controller, stub, request,
          (s, c, req, done) -> s.getRegionLoad(controller, req, done),
          RegionMetricsBuilder::toRegionMetrics))
      .serverName(serverName).call();
  }
Get the region info for the passed region name. The region name may be a full region name or
encoded region name. If the region does not found, then it'll throw an UnknownRegionException
wrapped by a {@link CompletableFuture}
@return region info, wrapped by a {@link CompletableFuture}
hbase-client/src/main/java/org/apache/hadoop/hbase/client/RawAsyncHBaseAdmin.java