more sync movement

This commit is contained in:
Luke Pulverenti
2014-12-12 22:56:30 -05:00
parent 3fb40eb02e
commit ab3da46113
49 changed files with 1001 additions and 149 deletions

View File

@@ -819,6 +819,19 @@ namespace MediaBrowser.Controller.Providers
break;
}
case "Shares":
{
using (var subtree = reader.ReadSubtree())
{
var hasShares = item as IHasShares;
if (hasShares != null)
{
FetchFromSharesNode(subtree, hasShares);
}
}
break;
}
case "Format3D":
{
var video = item as Video;
@@ -853,6 +866,71 @@ namespace MediaBrowser.Controller.Providers
}
}
private void FetchFromSharesNode(XmlReader reader, IHasShares item)
{
reader.MoveToContent();
while (reader.Read())
{
if (reader.NodeType == XmlNodeType.Element)
{
switch (reader.Name)
{
case "Share":
{
using (var subtree = reader.ReadSubtree())
{
var share = GetShareFromNode(subtree);
if (share != null)
{
item.Shares.Add(share);
}
}
break;
}
default:
reader.Skip();
break;
}
}
}
}
private Share GetShareFromNode(XmlReader reader)
{
var share = new Share();
reader.MoveToContent();
while (reader.Read())
{
if (reader.NodeType == XmlNodeType.Element)
{
switch (reader.Name)
{
case "UserId":
{
share.UserId = reader.ReadElementContentAsString();
break;
}
case "CanEdit":
{
share.CanEdit = string.Equals(reader.ReadElementContentAsString(), true.ToString(), StringComparison.OrdinalIgnoreCase);
break;
}
default:
reader.Skip();
break;
}
}
}
return share;
}
private void FetchFromCountriesNode(XmlReader reader, T item)
{
reader.MoveToContent();