public static TResult LoadFromConfig <TResult>( Func <CredentialProvider, TResult> onLoaded, Func <string, TResult> onConfigurationNotAvailable) { return(Web.Configuration.Settings.GetGuid(AppSettings.ClientKey, (clientKey) => { return Web.Configuration.Settings.GetString(AppSettings.ClientSecret, (clientSecret) => { var provider = new CredentialProvider(clientKey, clientSecret); return onLoaded(provider); }, onConfigurationNotAvailable); }, onConfigurationNotAvailable)); }
public Task <TResult> ProvideLoginProviderAsync <TResult>( Func <IProvideLogin, TResult> onLoaded, Func <string, TResult> onNotAvailable) { return(AppSettings.ClientKey.ConfigurationGuid( (clientKey) => { return AppSettings.ClientSecret.ConfigurationString( (clientSecret) => { var provider = new CredentialProvider(clientKey, clientSecret); return onLoaded(provider); }, onNotAvailable); }, onNotAvailable).AsTask()); }