diff options
| author | stefan <stefan@hegedues.at> | 2018-09-12 19:26:21 +0200 |
|---|---|---|
| committer | stefan <stefan@hegedues.at> | 2018-09-12 19:26:21 +0200 |
| commit | 48facb797ed912e4ea6b04b17d1ff190ac2daac4 (patch) | |
| tree | 8dae77a31670a888d733484cb17dd4077d5444e8 /Emby.Naming/AudioBook/AudioBookFileInfo.cs | |
| parent | c32d8656382a0eacb301692e0084377fc433ae9b (diff) | |
Update to 3.5.2 and .net core 2.1
Diffstat (limited to 'Emby.Naming/AudioBook/AudioBookFileInfo.cs')
| -rw-r--r-- | Emby.Naming/AudioBook/AudioBookFileInfo.cs | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/Emby.Naming/AudioBook/AudioBookFileInfo.cs b/Emby.Naming/AudioBook/AudioBookFileInfo.cs new file mode 100644 index 000000000..88a98d0f1 --- /dev/null +++ b/Emby.Naming/AudioBook/AudioBookFileInfo.cs @@ -0,0 +1,49 @@ + +using System; +using Emby.Naming.Video; + +namespace Emby.Naming.AudioBook +{ + /// <summary> + /// Represents a single video file + /// </summary> + public class AudioBookFileInfo : IComparable<AudioBookFileInfo> + { + /// <summary> + /// Gets or sets the path. + /// </summary> + /// <value>The path.</value> + public string Path { get; set; } + /// <summary> + /// Gets or sets the container. + /// </summary> + /// <value>The container.</value> + public string Container { get; set; } + /// <summary> + /// Gets or sets the part number. + /// </summary> + /// <value>The part number.</value> + public int? PartNumber { get; set; } + /// <summary> + /// Gets or sets the chapter number. + /// </summary> + /// <value>The chapter number.</value> + public int? ChapterNumber { get; set; } + /// <summary> + /// Gets or sets the type. + /// </summary> + /// <value>The type.</value> + public bool IsDirectory { get; set; } + + public int CompareTo(AudioBookFileInfo other) + { + if (ReferenceEquals(this, other)) return 0; + if (ReferenceEquals(null, other)) return 1; + var chapterNumberComparison = Nullable.Compare(ChapterNumber, other.ChapterNumber); + if (chapterNumberComparison != 0) return chapterNumberComparison; + var partNumberComparison = Nullable.Compare(PartNumber, other.PartNumber); + if (partNumberComparison != 0) return partNumberComparison; + return string.Compare(Path, other.Path, StringComparison.Ordinal); + } + } +} |
