MCPcopy Create free account
hub / github.com/chainreactors/EvilProxy / ApplyAccessProviders

Function ApplyAccessProviders

internal/access/reconcile.go:82–105  ·  view source on GitHub ↗

ApplyAccessProviders reconciles the configured access providers against the currently registered providers and updates the manager. It logs a concise summary of the detected changes and returns whether any provider changed.

(manager *sdkaccess.Manager, oldCfg, newCfg *config.Config)

Source from the content-addressed store, hash-verified

80// currently registered providers and updates the manager. It logs a concise
81// summary of the detected changes and returns whether any provider changed.
82func ApplyAccessProviders(manager *sdkaccess.Manager, oldCfg, newCfg *config.Config) (bool, error) {
83 if manager == nil || newCfg == nil {
84 return false, nil
85 }
86
87 existing := manager.Providers()
88 configaccess.Register(&newCfg.SDKConfig)
89 providers, added, updated, removed, err := ReconcileProviders(oldCfg, newCfg, existing)
90 if err != nil {
91 log.Errorf("failed to reconcile request auth providers: %v", err)
92 return false, fmt.Errorf("reconciling access providers: %w", err)
93 }
94
95 manager.SetProviders(providers)
96
97 if len(added)+len(updated)+len(removed) > 0 {
98 log.Debugf("auth providers reconciled (added=%d updated=%d removed=%d)", len(added), len(updated), len(removed))
99 log.Debugf("auth providers changes details - added=%v updated=%v removed=%v", added, updated, removed)
100 return true, nil
101 }
102
103 log.Debug("auth providers unchanged after config update")
104 return false, nil
105}
106
107func identifierFromProvider(provider sdkaccess.Provider) string {
108 if provider == nil {

Callers

nothing calls this directly

Calls 4

ReconcileProvidersFunction · 0.85
ProvidersMethod · 0.80
SetProvidersMethod · 0.80
RegisterMethod · 0.45

Tested by

no test coverage detected