Freigeben über


DefaultConfigurationProvider class

Standardanbieter, der umgebungsbasierte Konfiguration zurückgibt.

Überlegungen zu mehreren Mandanten: Dieser Anbieter erstellt zur Erstellungszeit eine einzelne Konfigurationsinstanz, die für alle Anforderungen in einem Prozess freigegeben wird. Die Standardanbieter auf Modulebene (z. B. defaultRuntimeConfigurationProvider) sind Singletons.

Für Szenarien mit mehreren Mandanten werden zwei Ansätze unterstützt:

  1. Dynamische Außerkraftsetzungsfunktionen (empfohlen): Übergeben Sie Überschreibungsfunktionen, die aus asynchronem Kontext (z. B. OpenTelemetry-Gepäck) zur Laufzeit gelesen werden. Die gleiche Konfigurationsinstanz gibt unterschiedliche Werte pro Anforderung zurück.

    const config = new ToolingConfiguration({
      mcpPlatformEndpoint: () => {
        const tenantConfig = context.active().getValue(TENANT_KEY);
        return tenantConfig?.endpoint ?? 'https://default.endpoint';
      }
    });
    
  2. Mandantenspezifische Anbieter: Erstellen Sie separate Anbieterinstanzen für jeden Mandanten, wenn unterschiedliche Mandanten unterschiedliche Außerkraftsetzungsfunktionen vollständig benötigen.

Details zum Konstruktor

DefaultConfigurationProvider<T>(() => T)

new DefaultConfigurationProvider(factory: () => T)

Parameter

factory

() => T

Details zur Methode

getConfiguration()

function getConfiguration(): T

Gibt zurück

T