Sonarr/NzbDrone.Core/Model/EpisodeParseResult.cs

61 lines
1.6 KiB
C#
Raw Normal View History

2011-04-04 03:50:12 +00:00
using System;
using System.Linq;
2011-04-04 03:50:12 +00:00
using System.Collections.Generic;
2011-05-20 05:52:05 +00:00
using NzbDrone.Core.Repository;
namespace NzbDrone.Core.Model
{
public class EpisodeParseResult
{
public string SeriesTitle { get; set; }
public string CleanTitle
{
get
{
return Parser.NormalizeTitle(SeriesTitle);
}
}
2011-06-23 06:56:17 +00:00
2011-06-22 01:12:20 +00:00
public string EpisodeTitle { get; set; }
public int SeasonNumber { get; set; }
public List<int> EpisodeNumbers { get; set; }
public DateTime? AirDate { get; set; }
2011-06-22 01:12:20 +00:00
2011-05-28 19:23:35 +00:00
public Quality Quality { get; set; }
2011-04-04 04:20:01 +00:00
public LanguageType Language { get; set; }
public string NzbUrl { get; set; }
2012-01-20 06:35:10 +00:00
public string OriginalString { get; set; }
2011-05-20 05:52:05 +00:00
public Series Series { get; set; }
public String Indexer { get; set; }
public bool FullSeason { get; set; }
public long Size { get; set; }
public int Age { get; set; }
public override string ToString()
{
2011-06-23 06:56:17 +00:00
if (AirDate != null && EpisodeNumbers == null)
return string.Format("{0} - {1} {2}", SeriesTitle, AirDate.Value.ToShortDateString(), Quality);
2011-06-23 06:56:17 +00:00
if (FullSeason)
return string.Format("{0} - Season {1:00}", SeriesTitle, SeasonNumber);
if (EpisodeNumbers != null && EpisodeNumbers.Any())
return string.Format("{0} - S{1:00}E{2} {3}", SeriesTitle, SeasonNumber,
String.Join("-", EpisodeNumbers.Select(c => c.ToString("00"))), Quality);
return "[Invalid format]";
}
}
}