diff options
Diffstat (limited to 'MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs')
| -rw-r--r-- | MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs | 83 |
1 files changed, 9 insertions, 74 deletions
diff --git a/MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs index 2edccf8c8..9a814213b 100644 --- a/MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs +++ b/MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs @@ -179,18 +179,6 @@ namespace MediaBrowser.LocalMetadata.Parsers item.Name = reader.ReadElementContentAsString(); break; - case "Type": - { - var type = reader.ReadElementContentAsString(); - - if (!string.IsNullOrWhiteSpace(type) && !type.Equals("none", StringComparison.OrdinalIgnoreCase)) - { - item.DisplayMediaType = type; - } - - break; - } - case "CriticRating": { var text = reader.ReadElementContentAsString(); @@ -258,7 +246,7 @@ namespace MediaBrowser.LocalMetadata.Parsers var person = item as Person; if (person != null) { - person.ProductionLocations = new List<string> { val }; + person.ProductionLocations = new string[] { val }; } } @@ -279,13 +267,11 @@ namespace MediaBrowser.LocalMetadata.Parsers case "LockedFields": { - var fields = new List<MetadataFields>(); - var val = reader.ReadElementContentAsString(); if (!string.IsNullOrWhiteSpace(val)) { - var list = val.Split('|').Select(i => + item.LockedFields = val.Split('|').Select(i => { MetadataFields field; @@ -296,13 +282,9 @@ namespace MediaBrowser.LocalMetadata.Parsers return null; - }).Where(i => i.HasValue).Select(i => i.Value); - - fields.AddRange(list); + }).Where(i => i.HasValue).Select(i => i.Value).ToArray(); } - item.LockedFields = fields; - break; } @@ -485,7 +467,7 @@ namespace MediaBrowser.LocalMetadata.Parsers { if (!string.IsNullOrWhiteSpace(val)) { - hasTrailers.AddTrailerUrl(val, false); + hasTrailers.AddTrailerUrl(val); } } break; @@ -638,22 +620,6 @@ namespace MediaBrowser.LocalMetadata.Parsers break; } - case "PlotKeywords": - { - if (!reader.IsEmptyElement) - { - using (var subtree = reader.ReadSubtree()) - { - FetchFromKeywordsNode(subtree, item); - } - } - else - { - reader.Read(); - } - break; - } - case "Persons": { if (!reader.IsEmptyElement) @@ -961,6 +927,8 @@ namespace MediaBrowser.LocalMetadata.Parsers reader.MoveToContent(); reader.Read(); + var tags = new List<string>(); + // Loop through each element while (!reader.EOF && reader.ReadState == ReadState.Interactive) { @@ -974,7 +942,7 @@ namespace MediaBrowser.LocalMetadata.Parsers if (!string.IsNullOrWhiteSpace(tag)) { - item.AddTag(tag); + tags.Add(tag); } break; } @@ -989,41 +957,8 @@ namespace MediaBrowser.LocalMetadata.Parsers reader.Read(); } } - } - private void FetchFromKeywordsNode(XmlReader reader, BaseItem item) - { - reader.MoveToContent(); - reader.Read(); - - // Loop through each element - while (!reader.EOF && reader.ReadState == ReadState.Interactive) - { - if (reader.NodeType == XmlNodeType.Element) - { - switch (reader.Name) - { - case "PlotKeyword": - { - var tag = reader.ReadElementContentAsString(); - - if (!string.IsNullOrWhiteSpace(tag)) - { - item.AddKeyword(tag); - } - break; - } - - default: - reader.Skip(); - break; - } - } - else - { - reader.Read(); - } - } + item.Tags = tags.Distinct(StringComparer.Ordinal).ToArray(); } /// <summary> @@ -1095,7 +1030,7 @@ namespace MediaBrowser.LocalMetadata.Parsers if (!string.IsNullOrWhiteSpace(val)) { - item.AddTrailerUrl(val, false); + item.AddTrailerUrl(val); } break; } |
