public static Document CreateProtobufDocument(Domain.Documents.Document document) { var doc = new Document { LastFilename = document.Filename ?? string.Empty, IdSequence = document.Data.IdSequence.GetCurrentValue(), AssetFolder = GetRelativeAssetFolder(document.AbsoluteAssetFolder, document.Filename) }; AddNodes(document.Data.RootNodes, doc); AddAnimations(document.Data.Animations, doc); AddDrawOrder(document.Data.DrawOrder, doc); return(doc); }
// The Persistence assembly had access to the internals of the domain, so it can read the data. public static void SaveDocument(Domain.Documents.Document document) { var doc = ProtoDocumentBuilder.CreateProtobufDocument(document); Save(doc, document.Filename); }