summaryrefslogtreecommitdiffstats
path: root/src/DotNetOpenAuth.Web/Clients/AuthenticationClientCollection.cs
blob: 8f730e1ee9e93d83ddb9bfcbc38dcbfdf68be82a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
using System;
using System.Collections.ObjectModel;

namespace DotNetOpenAuth.Web.Clients
{
    /// <summary>
    /// A collection to store instances of IAuthenticationClient by keying off ProviderName.
    /// </summary>
    internal sealed class AuthenticationClientCollection : KeyedCollection<string, IAuthenticationClient>
    {
        public AuthenticationClientCollection()
            : base(StringComparer.OrdinalIgnoreCase)
        {
        }

        protected override string GetKeyForItem(IAuthenticationClient item)
        {
            return item.ProviderName;
        }
    }
}