/* * change.cpp by Matthias Braun * * Copyright (C) 2002 Atomic Blue (info@planeshift.it, http://www.atomicblue.org) * * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation (version 2 of the License) * 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. * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * */ #ifndef __UPDATER_CHANGE_H__ #define __UPDATER_CHANGE_H__ #include #include "registryfile.h" namespace updater { /** Notation of a single change needed in a repository to sync 2 * repositories/registries */ struct Change { /// the type of the change enum Type { CREATEFILE, // load new file from server REMOVEFILE, // remove existing file MOVEFILEAWAY, // move existing file away at backup location UPDATEFILE, // update file from server UPDATEZIP // update a whole zip }; /// type of the change Type type; /// name of the module this file is in char* module; /// Path + Filename of the change RegistryFile* file; Change (); Change (Type type, const char* modulename, RegistryFile* file); Change (const Change& other); ~Change (); }; } // end of namespace updater #endif