using System;
using MediaBrowser.Model.Channels;
using System.Collections.Generic;
namespace MediaBrowser.Controller.Channels
{
    public class InternalChannelFeatures
    {
        /// 
        /// Gets or sets the media types.
        /// 
        /// The media types.
        public List MediaTypes { get; set; }
        /// 
        /// Gets or sets the content types.
        /// 
        /// The content types.
        public List ContentTypes { get; set; }
        /// 
        /// Represents the maximum number of records the channel allows retrieving at a time
        /// 
        public int? MaxPageSize { get; set; }
        /// 
        /// Gets or sets the default sort orders.
        /// 
        /// The default sort orders.
        public List DefaultSortFields { get; set; }
        /// 
        /// Indicates if a sort ascending/descending toggle is supported or not.
        /// 
        public bool SupportsSortOrderToggle { get; set; }
        /// 
        /// Gets or sets the automatic refresh levels.
        /// 
        /// The automatic refresh levels.
        public int? AutoRefreshLevels { get; set; }
        /// 
        /// Gets or sets the daily download limit.
        /// 
        /// The daily download limit.
        public int? DailyDownloadLimit { get; set; }
        public InternalChannelFeatures()
        {
            MediaTypes = new List();
            ContentTypes = new List();
            DefaultSortFields = new List();
        }
    }
    public class ChannelDownloadException : Exception
    {
        public ChannelDownloadException(string message)
            : base(message)
        {
        }
    }
}