11package io .quarkiverse .githubapp .runtime .github ;
22
33import java .io .IOException ;
4+ import java .net .http .HttpClient ;
5+ import java .net .http .HttpClient .Version ;
46import java .security .GeneralSecurityException ;
57import java .time .temporal .ChronoUnit ;
68import java .util .concurrent .ExecutionException ;
1214import org .kohsuke .github .GHAppInstallationToken ;
1315import org .kohsuke .github .GitHub ;
1416import org .kohsuke .github .GitHubBuilder ;
17+ import org .kohsuke .github .connector .GitHubConnector ;
18+ import org .kohsuke .github .extras .HttpClientGitHubConnector ;
1519
1620import com .github .benmanes .caffeine .cache .CacheLoader ;
1721import com .github .benmanes .caffeine .cache .Caffeine ;
@@ -35,6 +39,7 @@ public class GitHubService implements GitHubClientProvider {
3539 private final LoadingCache <Long , CachedInstallationToken > installationTokenCache ;
3640
3741 private final JwtTokenCreator jwtTokenCreator ;
42+ private final GitHubConnector gitHubConnector ;
3843
3944 @ Inject
4045 public GitHubService (CheckedConfigProvider checkedConfigProvider , JwtTokenCreator jwtTokenCreator ) {
@@ -67,6 +72,8 @@ public long expireAfterRead(Long installationId, CachedInstallationToken cachedI
6772 }
6873 })
6974 .build (new CreateInstallationToken ());
75+ this .gitHubConnector = new HttpClientGitHubConnector (
76+ HttpClient .newBuilder ().version (Version .HTTP_1_1 ).followRedirects (HttpClient .Redirect .NEVER ).build ());
7077 }
7178
7279 @ Override
@@ -119,6 +126,7 @@ private GitHub createInstallationClient(long installationId) throws IOException
119126 CachedInstallationToken installationToken = installationTokenCache .get (installationId );
120127
121128 final GitHubBuilder gitHubBuilder = new GitHubBuilder ()
129+ .withConnector (gitHubConnector )
122130 .withAppInstallationToken (installationToken .getToken ())
123131 .withEndpoint (checkedConfigProvider .restApiEndpoint ());
124132
@@ -186,6 +194,7 @@ private GitHub createApplicationGitHub() {
186194
187195 try {
188196 final GitHubBuilder gitHubBuilder = new GitHubBuilder ()
197+ .withConnector (gitHubConnector )
189198 .withJwtToken (jwtToken )
190199 .withEndpoint (checkedConfigProvider .restApiEndpoint ());
191200
0 commit comments