aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Model/Session/TranscodeReasonExtensions.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Model/Session/TranscodeReasonExtensions.cs')
-rw-r--r--MediaBrowser.Model/Session/TranscodeReasonExtensions.cs22
1 files changed, 22 insertions, 0 deletions
diff --git a/MediaBrowser.Model/Session/TranscodeReasonExtensions.cs b/MediaBrowser.Model/Session/TranscodeReasonExtensions.cs
new file mode 100644
index 000000000..c7a5095f7
--- /dev/null
+++ b/MediaBrowser.Model/Session/TranscodeReasonExtensions.cs
@@ -0,0 +1,22 @@
+#pragma warning disable CS1591
+
+using System;
+using System.Linq;
+
+namespace MediaBrowser.Model.Session
+{
+ public static class TranscodeReasonExtensions
+ {
+ private static TranscodeReason[] values = Enum.GetValues<TranscodeReason>();
+
+ public static string Serialize(this MediaBrowser.Model.Session.TranscodeReason reasons, string sep = ",")
+ {
+ return string.Join(sep, reasons.ToArray());
+ }
+
+ public static TranscodeReason[] ToArray(this MediaBrowser.Model.Session.TranscodeReason reasons)
+ {
+ return values.Where(r => r != 0 && reasons.HasFlag(r)).ToArray();
+ }
+ }
+}