/*
 *  Copyright (C) 2007-2008 CMM Sigma Andrzej Chmielowiec <cmmsigma@cmmsigma.eu>
 *
 *  This program is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License version 3
 *  as published by the Free Software Foundation.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 */

// DirectoryArchiver.h: interface for the DirectoryArchiver class.
//
//////////////////////////////////////////////////////////////////////

#ifndef DIRECTORYARCHIVER_H
#define DIRECTORYARCHIVER_H

#include <QXmlStreamWriter>

class DirectoryArchiver  
{
public:
	DirectoryArchiver();
	virtual ~DirectoryArchiver();

	static bool unarchive(QString directory, QString xmlFile, QString name = "");
	static bool archive(QString directory, QString xmlFile, QString name = "");
	
	static bool checkFile(QString directory, QString &name);

protected:
	static bool unarchiveFiles(QString path, QXmlStreamReader &xml);
	static bool archiveFiles(QString path, QXmlStreamWriter &xml);
};

#endif
