From 17fd9e4050052deffdd49df4473188f851e078d5 Mon Sep 17 00:00:00 2001 From: Kevin Jump Date: Fri, 20 Jan 2017 13:27:51 +0000 Subject: [PATCH] Mimic Composistion behavior for Media Types #106 Do the same thing for media types. --- Jumoo.uSync.Core/Serializers/ContentTypeSerializer.cs | 2 +- Jumoo.uSync.Core/Serializers/MediaTypeSerializer.cs | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/Jumoo.uSync.Core/Serializers/ContentTypeSerializer.cs b/Jumoo.uSync.Core/Serializers/ContentTypeSerializer.cs index bebfd795..5fd7e57a 100644 --- a/Jumoo.uSync.Core/Serializers/ContentTypeSerializer.cs +++ b/Jumoo.uSync.Core/Serializers/ContentTypeSerializer.cs @@ -249,9 +249,9 @@ private void DeserializeCompositions(IContentType item, XElement node) LogHelper.Warn("Unable to find type for composition: " + compAlias); } } + LogHelper.Debug("Setting {0} compositions for element", () => item.ContentTypeComposition.Count()); item.ContentTypeComposition = compositions; - LogHelper.Debug("Setting {0} compositions for element", () => item.ContentTypeComposition.Count()); } private XElement SerializeTemplates(IContentType item) diff --git a/Jumoo.uSync.Core/Serializers/MediaTypeSerializer.cs b/Jumoo.uSync.Core/Serializers/MediaTypeSerializer.cs index f3a59e63..f3bd1ed9 100644 --- a/Jumoo.uSync.Core/Serializers/MediaTypeSerializer.cs +++ b/Jumoo.uSync.Core/Serializers/MediaTypeSerializer.cs @@ -207,6 +207,7 @@ private void DeserializeCompositions(IMediaType item, XElement node) { var info = node.Element("Info"); var comps = info.Element("Compositions"); + List compositions = new List(); if (comps != null && comps.HasElements) { foreach (var composition in comps.Elements("Composition")) @@ -221,11 +222,13 @@ private void DeserializeCompositions(IMediaType item, XElement node) if (type == null) type = _contentTypeService.GetMediaType(compAlias); if (type != null) - item.AddContentType(type); - else - LogHelper.Warn("Unable to find type for composition: "+compAlias); + compositions.Add(type); + else + LogHelper.Warn("Unable to find type for composition: " + compAlias); } } + LogHelper.Debug("Setting {0} compositions for element", () => item.ContentTypeComposition.Count()); + item.ContentTypeComposition = compositions; } public override SyncAttempt DesearlizeSecondPass(IMediaType item, XElement node)