View Javadoc

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  }