1 /* This file is part of the project "Hilbert II" - http://www.qedeq.org" target="alexandria_uri">http://www.qedeq.org 2 * 3 * Copyright 2000-2014, Michael Meyling <mime@qedeq.org>. 4 * 5 * "Hilbert II" is free software; you can redistribute 6 * it and/or modify it under the terms of the GNU General Public 7 * License as published by the Free Software Foundation; either 8 * version 2 of the License, or (at your option) any later version. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 */ 15 16 package org.qedeq.kernel.se.base.module; 17 18 19 /** 20 * Describes a specification of a module, that means its name, versions and possible 21 * "physical" locations. The combination of {@link #getName()} and 22 * {@link #getRuleVersion()} defines the file name of that module. 23 * 24 * @version $Revision: 1.6 $ 25 * @author Michael Meyling 26 */ 27 public interface Specification { 28 29 /** 30 * Set module name. 31 * 32 * @param name Module name. 33 */ 34 public void setName(String name); 35 36 /** 37 * Get module name. 38 * 39 * @return Module name. 40 */ 41 public String getName(); 42 43 /** 44 * Set rule version, that is needed to verify the module. 45 * 46 * @param ruleVersion Rule version. 47 */ 48 public void setRuleVersion(String ruleVersion); 49 50 /** 51 * Get rule version, that is needed to verify the module. 52 * 53 * @return Rule version. 54 */ 55 public String getRuleVersion(); 56 57 /** 58 * Get list of locations for the module. 59 * 60 * @return List of locations for that module. 61 */ 62 public LocationList getLocationList(); 63 }