using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; namespace MediaBrowser.Server.Implementations.Sorting { /// /// Class CriticRatingComparer /// public class CriticRatingComparer : IBaseItemComparer { /// /// Compares the specified x. /// /// The x. /// The y. /// System.Int32. public int Compare(BaseItem x, BaseItem y) { return GetValue(x).CompareTo(GetValue(y)); } private float GetValue(BaseItem x) { var hasCriticRating = x as IHasCriticRating; return hasCriticRating == null ? 0 : hasCriticRating.CriticRating ?? 0; } /// /// Gets the name. /// /// The name. public string Name { get { return ItemSortBy.CriticRating; } } } }