private CompletableFuture getInstallationToken()

in src/main/java/com/spotify/github/v3/clients/GitHubClient.java [1025:1042]


  private CompletableFuture<String> getInstallationToken(
      final String jwtToken, final int installationId) {

    AccessToken installationToken = installationTokens.get(installationId);

    if (installationToken == null || isExpired(installationToken)) {
      log.info(
          "GitHub token for installation {} is either expired or null. Trying to get a new one.",
          installationId);
      return generateInstallationToken(jwtToken, installationId)
          .thenApply(
              accessToken -> {
                installationTokens.put(installationId, accessToken);
                return accessToken.token();
              });
    }
    return completedFuture(installationToken.token());
  }