diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-05-05 00:36:45 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-05-05 00:36:45 -0400 |
| commit | ac69327f1fa866c20630d9d0e0c663472b726c79 (patch) | |
| tree | 3d7dfd7627d13201cc74bcd1f0302b67bf6c16b2 /MediaBrowser.Controller/Providers | |
| parent | 8aadbf35136874ac7a279f8bc0f3a4a02a131313 (diff) | |
check in open subtitles stub
Diffstat (limited to 'MediaBrowser.Controller/Providers')
| -rw-r--r-- | MediaBrowser.Controller/Providers/ISubtitleProvider.cs | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/MediaBrowser.Controller/Providers/ISubtitleProvider.cs b/MediaBrowser.Controller/Providers/ISubtitleProvider.cs new file mode 100644 index 0000000000..a3aaaf298e --- /dev/null +++ b/MediaBrowser.Controller/Providers/ISubtitleProvider.cs @@ -0,0 +1,55 @@ +using System.Collections.Generic; +using System.IO; +using System.Threading; +using System.Threading.Tasks; + +namespace MediaBrowser.Controller.Providers +{ + public interface ISubtitleProvider + { + /// <summary> + /// Gets the name. + /// </summary> + /// <value>The name.</value> + string Name { get; } + + /// <summary> + /// Gets the supported media types. + /// </summary> + /// <value>The supported media types.</value> + IEnumerable<SubtitleMediaType> SupportedMediaTypes { get; } + + /// <summary> + /// Gets the subtitles. + /// </summary> + /// <param name="request">The request.</param> + /// <param name="cancellationToken">The cancellation token.</param> + /// <returns>Task{SubtitleResponse}.</returns> + Task<SubtitleResponse> GetSubtitles(SubtitleRequest request, CancellationToken cancellationToken); + } + + public enum SubtitleMediaType + { + Episode = 0, + Movie = 1 + } + + public class SubtitleResponse + { + public string Format { get; set; } + public bool HasContent { get; set; } + public Stream Stream { get; set; } + } + + public class SubtitleRequest + { + public string Language { get; set; } + + public SubtitleMediaType ContentType { get; set; } + + public string MediaPath { get; set; } + public string SeriesName { get; set; } + public int? IndexNumber { get; set; } + public int? ParentIndexNumber { get; set; } + } +} |
