aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2014-07-27 18:01:29 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2014-07-27 18:01:29 -0400
commit063675bb07f78f99738a3ada061f3e2c16c9cda0 (patch)
treef544ea1e036d7de72fa4a62114e82666f31e2868 /MediaBrowser.Api
parent37c27a26e90b7eff62cec9e2b6a6c003e79fcbe4 (diff)
updated nuget
Diffstat (limited to 'MediaBrowser.Api')
-rw-r--r--MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs14
-rw-r--r--MediaBrowser.Api/SystemService.cs20
2 files changed, 31 insertions, 3 deletions
diff --git a/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs b/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs
index 5e49fbf7aa..fc1c627e94 100644
--- a/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs
+++ b/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs
@@ -269,10 +269,18 @@ namespace MediaBrowser.Api.Playback.Hls
var segmentFilename = Path.GetFileName(segmentPath);
- // If it appears in the playlist, it's done
- if (File.ReadAllText(playlistPath).IndexOf(segmentFilename, StringComparison.OrdinalIgnoreCase) != -1)
+ using (var fileStream = FileSystem.GetFileStream(playlistPath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite, true))
{
- return ResultFactory.GetStaticFileResult(Request, segmentPath, FileShare.ReadWrite);
+ using (var reader = new StreamReader(fileStream))
+ {
+ var text = await reader.ReadToEndAsync().ConfigureAwait(false);
+
+ // If it appears in the playlist, it's done
+ if (text.IndexOf(segmentFilename, StringComparison.OrdinalIgnoreCase) != -1)
+ {
+ return ResultFactory.GetStaticFileResult(Request, segmentPath, FileShare.ReadWrite);
+ }
+ }
}
// if a different file is encoding, it's done
diff --git a/MediaBrowser.Api/SystemService.cs b/MediaBrowser.Api/SystemService.cs
index f336736be8..e31e66d19d 100644
--- a/MediaBrowser.Api/SystemService.cs
+++ b/MediaBrowser.Api/SystemService.cs
@@ -21,6 +21,12 @@ namespace MediaBrowser.Api
}
+ [Route("/System/Info/Public", "GET", Summary = "Gets public information about the server")]
+ public class GetPublicSystemInfo : IReturn<PublicSystemInfo>
+ {
+
+ }
+
/// <summary>
/// Class RestartApplication
/// </summary>
@@ -125,6 +131,20 @@ namespace MediaBrowser.Api
return ToOptimizedResult(result);
}
+ public object Get(GetPublicSystemInfo request)
+ {
+ var result = _appHost.GetSystemInfo();
+
+ var publicInfo = new PublicSystemInfo
+ {
+ Id = result.Id,
+ ServerName = result.ServerName,
+ Version = result.Version
+ };
+
+ return ToOptimizedResult(publicInfo);
+ }
+
/// <summary>
/// Posts the specified request.
/// </summary>