@@ -17,8 +17,10 @@ import com.intellij.credentialStore.CredentialAttributes
1717import  com.intellij.credentialStore.generateServiceName 
1818import  com.intellij.ide.passwordSafe.PasswordSafe 
1919import  com.intellij.openapi.Disposable 
20+ import  com.intellij.openapi.application.CachedSingletonsRegistry 
2021import  com.intellij.openapi.components.Service 
2122import  com.intellij.openapi.components.service 
23+ import  com.intellij.openapi.diagnostic.thisLogger 
2224import  com.intellij.util.EventDispatcher 
2325import  com.intellij.util.Url 
2426import  com.intellij.util.Urls.encodeParameters 
@@ -35,6 +37,7 @@ import java.net.http.HttpResponse
3537import  java.security.SecureRandom 
3638import  java.util.* 
3739import  java.util.concurrent.CompletableFuture 
40+ import  java.util.function.Supplier 
3841import  kotlin.math.absoluteValue 
3942
4043@Service
@@ -148,7 +151,8 @@ internal class GitpodAuthService : OAuthServiceBase<Credentials>() {
148151    }
149152
150153    companion  object  {
151-         val  instance:  GitpodAuthService  =  service()
154+         @Suppress(" UnstableApiUsage"  )
155+         val  instance:  Supplier <GitpodAuthService > =  CachedSingletonsRegistry .lazy { service() }
152156
153157        private  const  val  SERVICE_NAME  =  " gitpod/oauth" 
154158        private  const  val  CLIENT_ID  =  " jetbrains-gateway-gitpod-plugin" 
@@ -176,7 +180,7 @@ internal class GitpodAuthService : OAuthServiceBase<Credentials>() {
176180        }
177181
178182        suspend  fun  authorize (gitpodHost :  String ): String  {
179-             val  accessToken =  instance.authorize(gitpodHost).await().accessToken
183+             val  accessToken =  instance.get(). authorize(gitpodHost).await().accessToken
180184            setAccessToken(gitpodHost, accessToken)
181185            return  accessToken
182186        }
0 commit comments