aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Model/Extensions
diff options
context:
space:
mode:
author7illusions <z@7illusions.com>2014-08-30 19:06:58 +0200
committer7illusions <z@7illusions.com>2014-08-30 19:06:58 +0200
commit66ad1699e22029b605e17735e8d9450285d8748a (patch)
treeffc92c88d24850b2f82b6b3a8bdd904a2ccc77a5 /MediaBrowser.Model/Extensions
parent34bc54263e886aae777a3537dc50a6535b51330a (diff)
parent9d36f518182bc075c19d78084870f5115fa62d1e (diff)
Merge pull request #1 from MediaBrowser/master
Update to latest
Diffstat (limited to 'MediaBrowser.Model/Extensions')
-rw-r--r--MediaBrowser.Model/Extensions/IHasPropertyChangedEvent.cs8
-rw-r--r--MediaBrowser.Model/Extensions/ListHelper.cs28
-rw-r--r--MediaBrowser.Model/Extensions/StringHelper.cs35
3 files changed, 70 insertions, 1 deletions
diff --git a/MediaBrowser.Model/Extensions/IHasPropertyChangedEvent.cs b/MediaBrowser.Model/Extensions/IHasPropertyChangedEvent.cs
new file mode 100644
index 0000000000..c875506207
--- /dev/null
+++ b/MediaBrowser.Model/Extensions/IHasPropertyChangedEvent.cs
@@ -0,0 +1,8 @@
+using System.ComponentModel;
+
+namespace MediaBrowser.Model.Extensions
+{
+ public interface IHasPropertyChangedEvent : INotifyPropertyChanged
+ {
+ }
+}
diff --git a/MediaBrowser.Model/Extensions/ListHelper.cs b/MediaBrowser.Model/Extensions/ListHelper.cs
index 6c5d471c08..741f07469c 100644
--- a/MediaBrowser.Model/Extensions/ListHelper.cs
+++ b/MediaBrowser.Model/Extensions/ListHelper.cs
@@ -6,7 +6,7 @@ namespace MediaBrowser.Model.Extensions
{
public static class ListHelper
{
- public static bool ContainsIgnoreCase(IEnumerable<string> list, string value)
+ public static bool ContainsIgnoreCase(List<string> list, string value)
{
if (value == null)
{
@@ -15,5 +15,31 @@ namespace MediaBrowser.Model.Extensions
return list.Contains(value, StringComparer.OrdinalIgnoreCase);
}
+ public static bool ContainsIgnoreCase(string[] list, string value)
+ {
+ if (value == null)
+ {
+ throw new ArgumentNullException("value");
+ }
+
+ return list.Contains(value, StringComparer.OrdinalIgnoreCase);
+ }
+
+ public static bool ContainsAnyIgnoreCase(string[] list, string[] values)
+ {
+ if (values == null)
+ {
+ throw new ArgumentNullException("values");
+ }
+
+ foreach (string val in values)
+ {
+ if (ContainsIgnoreCase(list, val))
+ {
+ return true;
+ }
+ }
+ return false;
+ }
}
}
diff --git a/MediaBrowser.Model/Extensions/StringHelper.cs b/MediaBrowser.Model/Extensions/StringHelper.cs
index 1c086655ff..206723467c 100644
--- a/MediaBrowser.Model/Extensions/StringHelper.cs
+++ b/MediaBrowser.Model/Extensions/StringHelper.cs
@@ -1,5 +1,6 @@
using System;
using System.Globalization;
+using System.Text.RegularExpressions;
namespace MediaBrowser.Model.Extensions
{
@@ -59,5 +60,39 @@ namespace MediaBrowser.Model.Extensions
{
return val.ToString(CultureInfo.InvariantCulture);
}
+
+ /// <summary>
+ /// Trims the start.
+ /// </summary>
+ /// <param name="str">The string.</param>
+ /// <param name="c">The c.</param>
+ /// <returns>System.String.</returns>
+ public static string TrimStart(string str, char c)
+ {
+ return str.TrimStart(c);
+ }
+
+ /// <summary>
+ /// Splits the specified string.
+ /// </summary>
+ /// <param name="str">The string.</param>
+ /// <param name="term">The term.</param>
+ /// <returns>System.String[].</returns>
+ public static string[] RegexSplit(string str, string term)
+ {
+ return Regex.Split(str, term, RegexOptions.IgnoreCase);
+ }
+
+ /// <summary>
+ /// Splits the specified string.
+ /// </summary>
+ /// <param name="str">The string.</param>
+ /// <param name="term">The term.</param>
+ /// <param name="limit">The limit.</param>
+ /// <returns>System.String[].</returns>
+ public static string[] RegexSplit(string str, string term, int limit)
+ {
+ return new Regex(term).Split(str, limit);
+ }
}
}