public bool Export(IExportContainer container, Object asset, string path)
 {
     using (Stream fileStream = FileUtils.CreateVirtualFile(path))
     {
         using (BufferedStream stream = new BufferedStream(fileStream))
         {
             using (InvariantStreamWriter streamWriter = new InvariantStreamWriter(stream, UTF8))
             {
                 YAMLWriter   writer = new YAMLWriter();
                 YAMLDocument doc    = asset.ExportYAMLDocument(container);
                 writer.AddDocument(doc);
                 writer.Write(streamWriter);
             }
         }
     }
     return(true);
 }
Exemplo n.º 2
0
 private void ExportYAML(IAssetsExporter exporter, IEnumerable <Object> objects, string path)
 {
     using (FileStream fileStream = File.Open(path, FileMode.Create, FileAccess.Write))
     {
         using (StreamWriter streamWriter = new StreamWriter(fileStream))
         {
             YAMLWriter writer = new YAMLWriter();
             foreach (Object @object in objects)
             {
                 exporter.File = @object.File;
                 YAMLDocument doc = @object.ExportYAMLDocument(exporter);
                 writer.AddDocument(doc);
             }
             writer.Write(streamWriter);
         }
     }
 }
Exemplo n.º 3
0
        protected void ExportMeta(IExportContainer container, Meta meta, string filePath)
        {
            string metaPath = $"{filePath}.meta";

            using (FileStream fileStream = FileUtils.Open(metaPath, FileMode.Create, FileAccess.Write))
            {
                using (StreamWriter streamWriter = new InvariantStreamWriter(fileStream, new UTF8Encoding(false)))
                {
                    YAMLWriter   writer = new YAMLWriter();
                    YAMLDocument doc    = meta.ExportYAMLDocument(container);
                    writer.IsWriteDefaultTag = false;
                    writer.IsWriteVersion    = false;
                    writer.AddDocument(doc);
                    writer.Write(streamWriter);
                }
            }
        }
Exemplo n.º 4
0
 public void Export(ProjectAssetContainer container, IEnumerable <Object> assets, string path)
 {
     using (FileStream fileStream = File.Open(path, FileMode.Create, FileAccess.Write))
     {
         using (StreamWriter streamWriter = new StreamWriter(fileStream))
         {
             YAMLWriter writer = new YAMLWriter();
             foreach (Object asset in assets)
             {
                 container.File = asset.File;
                 YAMLDocument doc = asset.ExportYAMLDocument(container);
                 writer.AddDocument(doc);
             }
             writer.Write(streamWriter);
         }
     }
 }
Exemplo n.º 5
0
 public bool Export(IExportContainer container, IEnumerable <Object> assets, string path)
 {
     using (Stream fileStream = FileUtils.CreateVirtualFile(path))
     {
         using (StreamWriter streamWriter = new InvariantStreamWriter(fileStream, new UTF8Encoding(false)))
         {
             YAMLWriter writer = new YAMLWriter();
             writer.WriteHead(streamWriter);
             foreach (Object asset in assets)
             {
                 YAMLDocument doc = asset.ExportYAMLDocument(container);
                 writer.WriteDocument(doc);
             }
             writer.WriteTail(streamWriter);
         }
     }
     return(true);
 }
Exemplo n.º 6
0
        protected static void ExportMeta(IExportContainer container, Meta meta, string filePath)
        {
            string metaPath = $"{filePath}{MetaExtension}";

            using (Stream fileStream = FileUtils.CreateVirtualFile(metaPath))
            {
                using (StreamWriter streamWriter = new InvariantStreamWriter(fileStream, new UTF8Encoding(false)))
                {
                    YAMLWriter writer = new YAMLWriter();
                    writer.IsWriteDefaultTag = false;
                    writer.IsWriteVersion    = false;
                    writer.IsFormatKeys      = true;
                    YAMLDocument doc = meta.ExportYAMLDocument(container);
                    writer.AddDocument(doc);
                    writer.Write(streamWriter);
                }
            }
        }
Exemplo n.º 7
0
        protected void ExportMeta(IAssetsExporter exporter, IExportCollection collection, string filePath)
        {
            Meta   meta     = new Meta(collection);
            string metaPath = $"{filePath}.meta";

            using (FileStream fileStream = File.Open(metaPath, FileMode.Create, FileAccess.Write))
            {
                using (StreamWriter streamWriter = new StreamWriter(fileStream))
                {
                    YAMLWriter   writer = new YAMLWriter();
                    YAMLDocument doc    = meta.ExportYAMLDocument(exporter);
                    writer.IsWriteDefaultTag = false;
                    writer.IsWriteVersion    = false;
                    writer.AddDocument(doc);
                    writer.Write(streamWriter);
                }
            }
        }
Exemplo n.º 8
0
        public YAMLDocument ExportYAMLDocument(IExportContainer container)
        {
            YAMLDocument    document = new YAMLDocument();
            YAMLMappingNode root     = document.CreateMappingRoot();

            root.Add(FileFormatVersionName, ToFileFormatVersion(container.ExportVersion));
            root.Add(GuidName, GUID.ExportYAML(container));
            if (IsFolderAsset)
            {
                root.Add(FolderAssetName, true);
            }
            if (HasLicenseData)
            {
                root.Add(TimeCreatedName, CurrentTick);
                root.Add(LicenseTypeName, "Free");
            }
            if (Importer.IncludesImporter(container.ExportVersion))
            {
                root.Add(Importer.ClassID.ToString(), Importer.ExportYAML(container));
            }
            return(document);
        }
        public static GameReference[] FromYAML(this GameReference[] a, string data)
        {
            var z = (object[])YAMLDocument.FromMappingsSequence(typeof(GameReference), data);

            return((GameReference[])a.MergeArray(typeof(GameReference), z, GameReference.Equals));
        }
 public static string ToYAML(this GameReference[] a)
 {
     return(YAMLDocument.WriteMappingsSequence(typeof(GameReference), a));
 }