public IStorageProvider GetProviderByUri(StorageUri uri) { var descriptor = StorageRegistry.Descriptors.FirstOrDefault(_ => _.Scheme == uri.Scheme); if (descriptor == null) throw new NotImplementedException(string.Format("A provider for scheme '{0}' is not implemented.", uri.Scheme)); var accountName = uri.GetAccountName(); var account = _configService.FindAccount(descriptor.Type, accountName); var provider = descriptor.ProviderFactory(account); return provider; }
public IStorageProvider GetProviderByUri(StorageUri uri) { var descriptor = StorageRegistry.Descriptors.FirstOrDefault(_ => _.Scheme == uri.Scheme); if (descriptor == null) { throw new NotImplementedException(string.Format("A provider for scheme '{0}' is not implemented.", uri.Scheme)); } var accountName = uri.GetAccountName(); var account = _configService.FindAccount(descriptor.Type, accountName); var provider = descriptor.ProviderFactory(account); return(provider); }