using System.Collections.Generic;
namespace JD.TeaBoxAddinSystem.Addins.Description
{
///
/// Extension point collection.
///
internal class ExtensionPointCollection : AddinObjectKeyedCollection
{
#region Inner Types
private class ExtensionPointPathEqualityComparer : IEqualityComparer
{
#region IEqualityComparer Members
public bool Equals(string x, string y)
{
x = ExtensionPoint.NormalizePath(x);
y = ExtensionPoint.NormalizePath(y);
return x == y;
}
public int GetHashCode(string obj)
{
return ExtensionPoint.NormalizePath(obj).GetHashCode();
}
#endregion
}
#endregion
#region Constructor
internal ExtensionPointCollection(Module owner)
: base(owner, new ExtensionPointPathEqualityComparer())
{
}
#endregion
#region Methods
///
/// Overriden.
///
///
///
protected override string GetKeyForItem(ExtensionPoint item)
{
System.Diagnostics.Debug.Assert(!string.IsNullOrEmpty(item.Path));
return item.Path;
}
#endregion
}
}