Skip to content

Commit 9db0371

Browse files
sberyozkinjmartisk
authored andcommitted
Update OidcMcpAuthProvider to ignore requests without active request context
1 parent 647155c commit 9db0371

File tree

1 file changed

+11
-6
lines changed
  • mcp-auth-providers/oidc-mcp-auth-provider/runtime/src/main/java/io/quarkiverse/langchain4j/oidc/mcp/runtime

1 file changed

+11
-6
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,22 @@
11
package io.quarkiverse.langchain4j.oidc.mcp.runtime;
22

3-
import jakarta.enterprise.inject.Instance;
4-
import jakarta.inject.Inject;
5-
63
import io.quarkiverse.langchain4j.mcp.auth.McpClientAuthProvider;
4+
import io.quarkus.arc.Arc;
5+
import io.quarkus.arc.InjectableInstance;
6+
import io.quarkus.arc.ManagedContext;
77
import io.quarkus.security.credential.TokenCredential;
88

99
public class OidcMcpAuthProvider implements McpClientAuthProvider {
10-
@Inject
11-
Instance<TokenCredential> tokenCredential;
1210

1311
@Override
1412
public String getAuthorization(Input input) {
15-
return tokenCredential.isResolvable() ? "Bearer " + tokenCredential.get().getToken() : null;
13+
ManagedContext managedContext = Arc.container().requestContext();
14+
if (managedContext.isActive()) {
15+
InjectableInstance<TokenCredential> tokenCredential = Arc.container().select(TokenCredential.class);
16+
if (tokenCredential.isResolvable()) {
17+
return "Bearer " + tokenCredential.get().getToken();
18+
}
19+
}
20+
return null;
1621
}
1722
}

0 commit comments

Comments
 (0)