Share via


ConfigurationManager<T> Class

Definition

Manages the retrieval of Configuration data.

public class ConfigurationManager<T> : Microsoft.IdentityModel.Tokens.BaseConfigurationManager, Microsoft.IdentityModel.Protocols.IConfigurationManager<T> where T : class
type ConfigurationManager<'T (requires 'T : null)> = class
    inherit BaseConfigurationManager
    interface IConfigurationManager<'T (requires 'T : null)>
Public Class ConfigurationManager(Of T)
Inherits BaseConfigurationManager
Implements IConfigurationManager(Of T)

Type Parameters

T

The type of IDocumentRetriever.

Inheritance
ConfigurationManager<T>
Implements

Constructors

ConfigurationManager<T>(String, IConfigurationRetriever<T>, HttpClient)

Instantiates a new ConfigurationManager<T> that manages automatic and controls refreshing on configuration data.

ConfigurationManager<T>(String, IConfigurationRetriever<T>, IDocumentRetriever, IConfigurationValidator<T>, LastKnownGoodConfigurationCacheOptions)

Instantiates a new ConfigurationManager<T> with configuration validator that manages automatic and controls refreshing on configuration data.

ConfigurationManager<T>(String, IConfigurationRetriever<T>, IDocumentRetriever, IConfigurationValidator<T>)

Instantiates a new ConfigurationManager<T> with configuration validator that manages automatic and controls refreshing on configuration data.

ConfigurationManager<T>(String, IConfigurationRetriever<T>, IDocumentRetriever, LastKnownGoodConfigurationCacheOptions)

Instantiates a new ConfigurationManager<T> that manages automatic and controls refreshing on configuration data.

ConfigurationManager<T>(String, IConfigurationRetriever<T>, IDocumentRetriever)

Instantiates a new ConfigurationManager<T> that manages automatic and controls refreshing on configuration data.

ConfigurationManager<T>(String, IConfigurationRetriever<T>)

Instantiates a new ConfigurationManager<T> that manages automatic and controls refreshing on configuration data.

Fields

DefaultAutomaticRefreshInterval

12 hours is the default time interval that afterwards, GetBaseConfigurationAsync(CancellationToken) will obtain new configuration.

DefaultRefreshInterval

5 minutes is the default time interval that must pass for RequestRefresh() to obtain a new configuration.

MinimumAutomaticRefreshInterval

5 minutes is the minimum value for automatic refresh. MinimumAutomaticRefreshInterval can not be set less than this value.

MinimumRefreshInterval

1 second is the minimum time interval that must pass for MinimumRefreshInterval to obtain new configuration.

Properties

AutomaticRefreshInterval

Gets or sets the TimeSpan that controls how often an automatic metadata refresh should occur.

(Inherited from BaseConfigurationManager)
IsLastKnownGoodValid

Gets a value indicating whether the last known good configuration is still valid, depends on when the LKG was first used and it's lifetime.

(Inherited from BaseConfigurationManager)
LastKnownGoodConfiguration

The last known good configuration or LKG (a configuration retrieved in the past that we were able to successfully validate a token against).

(Inherited from BaseConfigurationManager)
LastKnownGoodLifetime

The length of time that a last known good configuration is valid for.

(Inherited from BaseConfigurationManager)
MetadataAddress

The metadata address to retrieve the configuration from.

(Inherited from BaseConfigurationManager)
RefreshInterval

The minimum time between retrievals, in the event that a retrieval failed, or that a refresh was explicitly requested.

(Inherited from BaseConfigurationManager)
UseLastKnownGoodConfiguration

Gets or sets a value indicating whether to use the last known good configuration. Default is true.

(Inherited from BaseConfigurationManager)

Methods

GetBaseConfigurationAsync(CancellationToken)

Obtains an updated version of Configuration.

GetConfigurationAsync()

Obtains an updated version of Configuration.

GetConfigurationAsync(CancellationToken)

Obtains an updated version of Configuration.

RequestRefresh()

Triggers updating metadata when:

1. Called the first time.

2. The time between when this method was called and DateTimeOffset.Now is greater than RefreshInterval.

If RefreshInterval == MaxValue then this method does nothing.

Applies to