1 /* 2 Copyright (C) 2000 - 2007 Grid Systems, S.A. 3 4 This program is free software; you can redistribute it and/or modify 5 it under the terms of the GNU General Public License, version 2, as 6 published by the Free Software Foundation. 7 8 This program is distributed in the hope that it will be useful, 9 but WITHOUT ANY WARRANTY; without even the implied warranty of 10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 GNU General Public License for more details. 12 13 You should have received a copy of the GNU General Public License 14 along with this program; if not, write to the Free Software 15 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 16 */ 17 18 /* 19 * Project: KernelConfigurator 20 * Created on 26-feb-2004 21 * 22 * Copyright (c)2003 Grid Systems 23 */ 24 package com.gridsystems.config; 25 26 import java.io.IOException; 27 28 /** 29 * Model part of the MVC pattern for Configurators. 30 * 31 * @author <a href="mailto:rruiz@gridsystems.com">Rodrigo Ruiz Aguayo</a> 32 * @version 1.0 33 */ 34 public interface ConfiguratorModel { 35 36 /** 37 * Loads the model from persistence layer. 38 * 39 * @throws IOException In case of read error 40 */ 41 void load() throws IOException; 42 43 /** 44 * Stores the model in the persistence layer. 45 * 46 * @throws IOException In case of write error 47 */ 48 void store() throws IOException; 49 50 /** 51 * Validate data of this Model. 52 * 53 * @throws Exception In case of invalid data 54 */ 55 void validate() throws Exception; 56 57 /** 58 * Performs changes in files external to the model data. 59 * 60 * @throws IOException In case of write error 61 */ 62 void apply() throws IOException; 63 }