view api/Savers/Xml/WarFoundryXmlFileSaver.cs @ 320:4be289645c4f

Re #324: Add saving of Race and System data to files * Add skeleton of method for file extensions when saving
author IBBoard <dev@ibboard.co.uk>
date Sat, 05 Mar 2011 15:51:24 +0000
parents 7187add280ed
children 2ba88d5fb881
line wrap: on
line source

using System;
using IBBoard.WarFoundry.API.Savers;
using IBBoard.WarFoundry.API.Objects;
using ICSharpCode.SharpZipLib.Zip;
using System.IO;

namespace IBBoard.WarFoundry.API.Savers.Xml
{
	public class WarFoundryXmlFileSaver : IWarFoundryFileSaver
	{
		public WarFoundryXmlFileSaver()
		{
		}

		public bool Save(string path, params WarFoundryLoadedObject[] objects)
		{
			ZipOutputStream zipStream = new ZipOutputStream(new FileStream(path, FileMode.Create));
			AddFiles(zipStream, objects);
			zipStream.Close();
			return true;
		}

		public void AddFiles(ZipOutputStream zipStream, WarFoundryLoadedObject[] objects)
		{
			foreach (WarFoundryLoadedObject obj in objects)
			{
				AddFile(zipStream, obj);
			}
		}

		public void AddFile(ZipOutputStream zipStream, WarFoundryLoadedObject obj)
		{
			ZipEntry entry = new ZipEntry(obj.ID);
			zipStream.PutNextEntry(entry);
		}

		public string GetFileExtension (WarFoundryLoadedObject obj)
		{
			return "";
		}
	}
}