using System;
using System.Collections.Generic;
namespace MediaBrowser.Model.FileOrganization
{
    public class FileOrganizationResult
    {
        /// 
        /// Gets or sets the result identifier.
        /// 
        /// The result identifier.
        public string Id { get; set; }
        
        /// 
        /// Gets or sets the original path.
        /// 
        /// The original path.
        public string OriginalPath { get; set; }
        /// 
        /// Gets or sets the name of the original file.
        /// 
        /// The name of the original file.
        public string OriginalFileName { get; set; }
        /// 
        /// Gets or sets the name of the extracted.
        /// 
        /// The name of the extracted.
        public string ExtractedName { get; set; }
        /// 
        /// Gets or sets the extracted year.
        /// 
        /// The extracted year.
        public int? ExtractedYear { get; set; }
        /// 
        /// Gets or sets the extracted season number.
        /// 
        /// The extracted season number.
        public int? ExtractedSeasonNumber { get; set; }
        /// 
        /// Gets or sets the extracted episode number.
        /// 
        /// The extracted episode number.
        public int? ExtractedEpisodeNumber { get; set; }
        /// 
        /// Gets or sets the extracted ending episode number.
        /// 
        /// The extracted ending episode number.
        public int? ExtractedEndingEpisodeNumber { get; set; }
        
        /// 
        /// Gets or sets the target path.
        /// 
        /// The target path.
        public string TargetPath { get; set; }
        /// 
        /// Gets or sets the date.
        /// 
        /// The date.
        public DateTime Date { get; set; }
        /// 
        /// Gets or sets the error message.
        /// 
        /// The error message.
        public string StatusMessage { get; set; }
        /// 
        /// Gets or sets the status.
        /// 
        /// The status.
        public FileSortingStatus Status { get; set; }
        /// 
        /// Gets or sets the type.
        /// 
        /// The type.
        public FileOrganizerType Type { get; set; }
        /// 
        /// Gets or sets the duplicate paths.
        /// 
        /// The duplicate paths.
        public List DuplicatePaths { get; set; }
        /// 
        /// Gets or sets the size of the file.
        /// 
        /// The size of the file.
        public long FileSize { get; set; }
        /// 
        /// Indicates if the item is currently being processed.
        /// 
        /// Runtime property not persisted to the store.
        public bool IsInProgress { get; set; }
        public FileOrganizationResult()
        {
            DuplicatePaths = new List();
        }
    }
}