aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Model
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2017-08-24 15:52:19 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2017-08-24 15:52:19 -0400
commite441e2f53db0b587c9864fe91d7008a2344d147b (patch)
treec37b2148eb277671c7ee285c73b738542f279b22 /MediaBrowser.Model
parent5e0f8fd8c486ac37e487786c10c2d3f9e1293ce8 (diff)
update active recordings
Diffstat (limited to 'MediaBrowser.Model')
-rw-r--r--MediaBrowser.Model/Dto/BaseItemDto.cs2
-rw-r--r--MediaBrowser.Model/Dto/MediaSourceInfo.cs17
-rw-r--r--MediaBrowser.Model/Extensions/ListHelper.cs11
-rw-r--r--MediaBrowser.Model/Services/QueryParamCollection.cs67
-rw-r--r--MediaBrowser.Model/Updates/PackageVersionInfo.cs2
5 files changed, 67 insertions, 32 deletions
diff --git a/MediaBrowser.Model/Dto/BaseItemDto.cs b/MediaBrowser.Model/Dto/BaseItemDto.cs
index 8da20c9f5..8bad650b5 100644
--- a/MediaBrowser.Model/Dto/BaseItemDto.cs
+++ b/MediaBrowser.Model/Dto/BaseItemDto.cs
@@ -432,7 +432,7 @@ namespace MediaBrowser.Model.Dto
/// Gets or sets the artists.
/// </summary>
/// <value>The artists.</value>
- public List<string> Artists { get; set; }
+ public string[] Artists { get; set; }
/// <summary>
/// Gets or sets the artist items.
diff --git a/MediaBrowser.Model/Dto/MediaSourceInfo.cs b/MediaBrowser.Model/Dto/MediaSourceInfo.cs
index 8f3f0648d..27920bdf3 100644
--- a/MediaBrowser.Model/Dto/MediaSourceInfo.cs
+++ b/MediaBrowser.Model/Dto/MediaSourceInfo.cs
@@ -2,7 +2,6 @@
using MediaBrowser.Model.Extensions;
using MediaBrowser.Model.MediaInfo;
using System.Collections.Generic;
-using System.Linq;
using MediaBrowser.Model.Serialization;
using MediaBrowser.Model.Session;
@@ -91,19 +90,15 @@ namespace MediaBrowser.Model.Dto
return;
}
- var internalStreams = MediaStreams
- .Where(i => !i.IsExternal)
- .ToList();
-
- if (internalStreams.Count == 0)
+ var bitrate = 0;
+ foreach (var stream in MediaStreams)
{
- return;
+ if (!stream.IsExternal)
+ {
+ bitrate += stream.BitRate ?? 0;
+ }
}
- var bitrate = internalStreams
- .Select(m => m.BitRate ?? 0)
- .Sum();
-
if (bitrate > 0)
{
Bitrate = bitrate;
diff --git a/MediaBrowser.Model/Extensions/ListHelper.cs b/MediaBrowser.Model/Extensions/ListHelper.cs
index cfcb229c8..6fe1793db 100644
--- a/MediaBrowser.Model/Extensions/ListHelper.cs
+++ b/MediaBrowser.Model/Extensions/ListHelper.cs
@@ -1,6 +1,4 @@
using System;
-using System.Collections.Generic;
-using System.Linq;
namespace MediaBrowser.Model.Extensions
{
@@ -13,7 +11,14 @@ namespace MediaBrowser.Model.Extensions
throw new ArgumentNullException("value");
}
- return list.Contains(value, StringComparer.OrdinalIgnoreCase);
+ foreach (var item in list)
+ {
+ if (string.Equals(item, value, StringComparison.OrdinalIgnoreCase))
+ {
+ return true;
+ }
+ }
+ return false;
}
public static bool ContainsAnyIgnoreCase(string[] list, string[] values)
diff --git a/MediaBrowser.Model/Services/QueryParamCollection.cs b/MediaBrowser.Model/Services/QueryParamCollection.cs
index a3e00f587..e13e5feca 100644
--- a/MediaBrowser.Model/Services/QueryParamCollection.cs
+++ b/MediaBrowser.Model/Services/QueryParamCollection.cs
@@ -58,9 +58,7 @@ namespace MediaBrowser.Model.Services
{
if (string.IsNullOrWhiteSpace(value))
{
- var stringComparison = GetStringComparison();
-
- var parameters = this.Where(p => string.Equals(key, p.Name, stringComparison)).ToArray();
+ var parameters = GetItems(key);
foreach (var p in parameters)
{
@@ -85,14 +83,6 @@ namespace MediaBrowser.Model.Services
}
/// <summary>
- /// True if the collection contains a query parameter with the given name.
- /// </summary>
- public bool ContainsKey(string name)
- {
- return this.Any(p => p.Name == name);
- }
-
- /// <summary>
/// Removes all parameters of the given name.
/// </summary>
/// <returns>The number of parameters that were removed</returns>
@@ -106,16 +96,49 @@ namespace MediaBrowser.Model.Services
{
var stringComparison = GetStringComparison();
- return this.Where(p => string.Equals(p.Name, name, stringComparison))
- .Select(p => p.Value)
- .FirstOrDefault();
+ foreach (var pair in this)
+ {
+ if (string.Equals(pair.Name, name, stringComparison))
+ {
+ return pair.Value;
+ }
+ }
+
+ return null;
+ }
+
+ public virtual List<NameValuePair> GetItems(string name)
+ {
+ var stringComparison = GetStringComparison();
+
+ var list = new List<NameValuePair>();
+
+ foreach (var pair in this)
+ {
+ if (string.Equals(pair.Name, name, stringComparison))
+ {
+ list.Add(pair);
+ }
+ }
+
+ return list;
}
- public virtual string[] GetValues(string name)
+ public virtual List<string> GetValues(string name)
{
var stringComparison = GetStringComparison();
- return this.Where(p => string.Equals(p.Name, name, stringComparison)).Select(p => p.Value).ToArray();
+ var list = new List<string>();
+
+ foreach (var pair in this)
+ {
+ if (string.Equals(pair.Name, name, stringComparison))
+ {
+ list.Add(pair.Value);
+ }
+ }
+
+ return list;
}
public Dictionary<string, string> ToDictionary()
@@ -134,7 +157,17 @@ namespace MediaBrowser.Model.Services
public IEnumerable<string> Keys
{
- get { return this.Select(i => i.Name); }
+ get
+ {
+ var keys = new string[this.Count];
+
+ for (var i = 0; i < keys.Length; i++)
+ {
+ keys[i] = this[i].Name;
+ }
+
+ return keys;
+ }
}
/// <summary>
diff --git a/MediaBrowser.Model/Updates/PackageVersionInfo.cs b/MediaBrowser.Model/Updates/PackageVersionInfo.cs
index 5e0631b3b..3ac518187 100644
--- a/MediaBrowser.Model/Updates/PackageVersionInfo.cs
+++ b/MediaBrowser.Model/Updates/PackageVersionInfo.cs
@@ -89,5 +89,7 @@ namespace MediaBrowser.Model.Updates
public string targetFilename { get; set; }
public string infoUrl { get; set; }
+
+ public string runtimes { get; set; }
}
} \ No newline at end of file