consolidate internal interfaces

This commit is contained in:
Luke Pulverenti
2016-10-31 00:28:23 -04:00
parent 0579f245e4
commit 3bf72b71b3
28 changed files with 114 additions and 301 deletions

View File

@@ -96,7 +96,5 @@ namespace MediaBrowser.LocalMetadata
return "Emby Xml";
}
}
internal static readonly SemaphoreSlim XmlParsingResourcePool = new SemaphoreSlim(4, 4);
}
}

View File

@@ -163,13 +163,9 @@ namespace MediaBrowser.LocalMetadata.Parsers
{
var val = reader.ReadElementContentAsString();
var hasOriginalTitle = item as IHasOriginalTitle;
if (hasOriginalTitle != null)
if (!string.IsNullOrEmpty(val))
{
if (!string.IsNullOrEmpty(hasOriginalTitle.OriginalTitle))
{
hasOriginalTitle.OriginalTitle = val;
}
item.OriginalTitle = val;
}
break;
}

View File

@@ -344,58 +344,52 @@ namespace MediaBrowser.LocalMetadata.Savers
writer.WriteElementString("Overview", item.Overview);
}
//var hasOriginalTitle = item as IHasOriginalTitle;
//if (hasOriginalTitle != null)
//{
// if (!string.IsNullOrEmpty(hasOriginalTitle.OriginalTitle))
// {
// builder.Append("<OriginalTitle>" + SecurityElement.Escape(hasOriginalTitle.OriginalTitle) + "</OriginalTitle>");
// }
//}
if (!string.IsNullOrEmpty(item.OriginalTitle))
{
writer.WriteElementString("OriginalTitle", item.OriginalTitle);
}
if (!string.IsNullOrEmpty(item.ShortOverview))
{
writer.WriteElementString("ShortOverview", item.ShortOverview);
}
if (!string.IsNullOrEmpty(item.CustomRating))
{
writer.WriteElementString("CustomRating", item.CustomRating);
}
//if (!string.IsNullOrEmpty(item.ShortOverview))
//{
// builder.Append("<ShortOverview><![CDATA[" + item.ShortOverview + "]]></ShortOverview>");
//}
if (!string.IsNullOrEmpty(item.Name) && !(item is Episode))
{
writer.WriteElementString("LocalTitle", item.Name);
}
//if (!string.IsNullOrEmpty(item.CustomRating))
//{
// builder.Append("<CustomRating>" + SecurityElement.Escape(item.CustomRating) + "</CustomRating>");
//}
if (!string.IsNullOrEmpty(item.ForcedSortName))
{
writer.WriteElementString("SortTitle", item.ForcedSortName);
}
//if (!string.IsNullOrEmpty(item.Name) && !(item is Episode))
//{
// builder.Append("<LocalTitle>" + SecurityElement.Escape(item.Name) + "</LocalTitle>");
//}
if (item.PremiereDate.HasValue)
{
if (item is Person)
{
writer.WriteElementString("BirthDate", item.PremiereDate.Value.ToLocalTime().ToString("yyyy-MM-dd"));
}
else if (!(item is Episode))
{
writer.WriteElementString("PremiereDate", item.PremiereDate.Value.ToLocalTime().ToString("yyyy-MM-dd"));
}
}
//if (!string.IsNullOrEmpty(item.ForcedSortName))
//{
// builder.Append("<SortTitle>" + SecurityElement.Escape(item.ForcedSortName) + "</SortTitle>");
//}
//if (item.PremiereDate.HasValue)
//{
// if (item is Person)
// {
// builder.Append("<BirthDate>" + SecurityElement.Escape(item.PremiereDate.Value.ToLocalTime().ToString("yyyy-MM-dd")) + "</BirthDate>");
// }
// else if (!(item is Episode))
// {
// builder.Append("<PremiereDate>" + SecurityElement.Escape(item.PremiereDate.Value.ToLocalTime().ToString("yyyy-MM-dd")) + "</PremiereDate>");
// }
//}
//if (item.EndDate.HasValue)
//{
// if (item is Person)
// {
// builder.Append("<DeathDate>" + SecurityElement.Escape(item.EndDate.Value.ToString("yyyy-MM-dd")) + "</DeathDate>");
// }
// else if (!(item is Episode))
// {
// builder.Append("<EndDate>" + SecurityElement.Escape(item.EndDate.Value.ToString("yyyy-MM-dd")) + "</EndDate>");
// }
//}
if (item.EndDate.HasValue)
{
if (item is Person)
{
writer.WriteElementString("DeathDate", item.EndDate.Value.ToLocalTime().ToString("yyyy-MM-dd"));
}
else if (!(item is Episode))
{
writer.WriteElementString("EndDate", item.EndDate.Value.ToLocalTime().ToString("yyyy-MM-dd"));
}
}
//var hasTrailers = item as IHasTrailers;
//if (hasTrailers != null)
@@ -612,6 +606,8 @@ namespace MediaBrowser.LocalMetadata.Savers
//{
// AddShares(hasShares, builder);
//}
AddMediaInfo(item, writer);
}
public static void AddShares(IHasShares item, StringBuilder builder)
@@ -635,33 +631,31 @@ namespace MediaBrowser.LocalMetadata.Savers
/// Appends the media info.
/// </summary>
/// <typeparam name="T"></typeparam>
public static void AddMediaInfo<T>(T item, StringBuilder builder, IItemRepository itemRepository)
public static void AddMediaInfo<T>(T item, XmlWriter writer)
where T : BaseItem
{
var video = item as Video;
if (video != null)
{
//AddChapters(video, builder, itemRepository);
if (video.Video3DFormat.HasValue)
{
switch (video.Video3DFormat.Value)
{
case Video3DFormat.FullSideBySide:
builder.Append("<Format3D>FSBS</Format3D>");
writer.WriteElementString("Format3D", "FSBS");
break;
case Video3DFormat.FullTopAndBottom:
builder.Append("<Format3D>FTAB</Format3D>");
writer.WriteElementString("Format3D", "FTAB");
break;
case Video3DFormat.HalfSideBySide:
builder.Append("<Format3D>HSBS</Format3D>");
writer.WriteElementString("Format3D", "HSBS");
break;
case Video3DFormat.HalfTopAndBottom:
builder.Append("<Format3D>HTAB</Format3D>");
writer.WriteElementString("Format3D", "HTAB");
break;
case Video3DFormat.MVC:
builder.Append("<Format3D>MVC</Format3D>");
writer.WriteElementString("Format3D", "MVC");
break;
}
}