| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 | 
							- using MediaBrowser.Model.Extensions;
 
- using System;
 
- namespace MediaBrowser.Model.Dlna
 
- {
 
-     public class SearchCriteria
 
-     {
 
-         public SearchType SearchType { get; set; }
 
-         public SearchCriteria(string search)
 
-         {
 
-             if (string.IsNullOrEmpty(search))
 
-             {
 
-                 throw new ArgumentNullException("search");
 
-             }
 
-             SearchType = SearchType.Unknown;
 
-             String[] factors = StringHelper.RegexSplit(search, "(and|or)");
 
-             foreach (String factor in factors)
 
-             {
 
-                 String[] subFactors = StringHelper.RegexSplit(factor.Trim().Trim('(').Trim(')').Trim(), "\\s", 3);
 
-                 if (subFactors.Length == 3)
 
-                 {
 
-                     if (StringHelper.EqualsIgnoreCase("upnp:class", subFactors[0]) && 
 
-                         (StringHelper.EqualsIgnoreCase("=", subFactors[1]) || StringHelper.EqualsIgnoreCase("derivedfrom", subFactors[1])))
 
-                     {
 
-                         if (StringHelper.EqualsIgnoreCase("\"object.item.imageItem\"", subFactors[2]) || StringHelper.EqualsIgnoreCase("\"object.item.imageItem.photo\"", subFactors[2]))
 
-                         {
 
-                             SearchType = SearchType.Image;
 
-                         }
 
-                         else if (StringHelper.EqualsIgnoreCase("\"object.item.videoItem\"", subFactors[2]))
 
-                         {
 
-                             SearchType = SearchType.Video;
 
-                         }
 
-                         else if (StringHelper.EqualsIgnoreCase("\"object.container.playlistContainer\"", subFactors[2]))
 
-                         {
 
-                             SearchType = SearchType.Playlist;
 
-                         }
 
-                         else if (StringHelper.EqualsIgnoreCase("\"object.container.album.musicAlbum\"", subFactors[2]))
 
-                         {
 
-                             SearchType = SearchType.MusicAlbum;
 
-                         }
 
-                     }
 
-                 }
 
-             }
 
-         }
 
-     }
 
- }
 
 
  |