Something went wrong. Try again.
sloproxy
Something went wrong. Try again.
1.4 kB · 48 lines
Go
at main
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849package cliproxy
import ( "context"
"github.com/router-for-me/CLIProxyAPI/v7/internal/watcher" "github.com/router-for-me/CLIProxyAPI/v7/sdk/config")
// NewFileTokenClientProvider returns the default token-backed client loader.func NewFileTokenClientProvider() TokenClientProvider { return &fileTokenClientProvider{}}
type fileTokenClientProvider struct{}
func (p *fileTokenClientProvider) Load(ctx context.Context, cfg *config.Config) (*TokenClientResult, error) { // Stateless executors handle tokens _ = ctx _ = cfg return &TokenClientResult{SuccessfulAuthed: 0}, nil}
// NewAPIKeyClientProvider returns the default API key client loader that reuses existing logic.func NewAPIKeyClientProvider() APIKeyClientProvider { return &apiKeyClientProvider{}}
type apiKeyClientProvider struct{}
func (p *apiKeyClientProvider) Load(ctx context.Context, cfg *config.Config) (*APIKeyClientResult, error) { geminiCount, vertexCompatCount, claudeCount, codexCount, xaiCount, openAICompat := watcher.BuildAPIKeyClients(cfg) if ctx != nil { select { case <-ctx.Done(): return nil, ctx.Err() default: } } return &APIKeyClientResult{ GeminiKeyCount: geminiCount, VertexCompatKeyCount: vertexCompatCount, ClaudeKeyCount: claudeCount, CodexKeyCount: codexCount, XAIKeyCount: xaiCount, OpenAICompatCount: openAICompat, }, nil}