|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
QedeqBo | Line # 36 | 0 | 0 | - |
-1.0
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
No Tests | |||
1 | /* $Id: QedeqBo.java,v 1.1 2008/07/26 07:58:29 m31 Exp $ | |
2 | * | |
3 | * This file is part of the project "Hilbert II" - http://www.qedeq.org | |
4 | * | |
5 | * Copyright 2000-2008, Michael Meyling <mime@qedeq.org>. | |
6 | * | |
7 | * "Hilbert II" is free software; you can redistribute | |
8 | * it and/or modify it under the terms of the GNU General Public | |
9 | * License as published by the Free Software Foundation; either | |
10 | * version 2 of the License, or (at your option) any later version. | |
11 | * | |
12 | * This program is distributed in the hope that it will be useful, | |
13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | * GNU General Public License for more details. | |
16 | */ | |
17 | ||
18 | package org.qedeq.kernel.bo; | |
19 | ||
20 | import java.net.URL; | |
21 | ||
22 | import org.qedeq.kernel.base.module.Qedeq; | |
23 | import org.qedeq.kernel.common.DependencyState; | |
24 | import org.qedeq.kernel.common.LoadingState; | |
25 | import org.qedeq.kernel.common.LogicalState; | |
26 | import org.qedeq.kernel.common.ModuleAddress; | |
27 | import org.qedeq.kernel.common.SourceFileExceptionList; | |
28 | ||
29 | ||
30 | /** | |
31 | * Represents a module and its states. | |
32 | * | |
33 | * @version $Revision: 1.1 $ | |
34 | * @author Michael Meyling | |
35 | */ | |
36 | public interface QedeqBo { | |
37 | ||
38 | /** | |
39 | * Is this a failure state the module is in? | |
40 | * | |
41 | * @return were there any errors? | |
42 | */ | |
43 | public boolean hasFailures(); | |
44 | ||
45 | /** | |
46 | * Get {@link ModuleAddress} of module. | |
47 | * | |
48 | * @return address of module. | |
49 | */ | |
50 | public ModuleAddress getModuleAddress(); | |
51 | ||
52 | /** | |
53 | * Get module loading state. | |
54 | * | |
55 | * @return module state. | |
56 | */ | |
57 | public LoadingState getLoadingState(); | |
58 | ||
59 | /** | |
60 | * Set completeness percentage. | |
61 | * | |
62 | * @return completeness Completeness of loading into memory in percent. | |
63 | */ | |
64 | public int getLoadingCompleteness(); | |
65 | ||
66 | /** | |
67 | * Get module dependency state. | |
68 | * | |
69 | * @return module state. | |
70 | */ | |
71 | public DependencyState getDependencyState(); | |
72 | ||
73 | /** | |
74 | * Get module logical state. | |
75 | * | |
76 | * @return module state. | |
77 | */ | |
78 | public LogicalState getLogicalState(); | |
79 | ||
80 | /** | |
81 | * Get exception. | |
82 | * | |
83 | * @return exception. | |
84 | */ | |
85 | public SourceFileExceptionList getException(); | |
86 | ||
87 | /** | |
88 | * Get module state description. | |
89 | * | |
90 | * @return module state description. | |
91 | */ | |
92 | public String getStateDescription(); | |
93 | ||
94 | /** | |
95 | * Get name of module. | |
96 | * | |
97 | * @return module name. | |
98 | */ | |
99 | public String getName(); | |
100 | ||
101 | /** | |
102 | * Get rule version information. | |
103 | * | |
104 | * @return rule version. | |
105 | */ | |
106 | public String getRuleVersion(); | |
107 | ||
108 | /** | |
109 | * Get original URL of module. | |
110 | * | |
111 | * @return URL of module. | |
112 | */ | |
113 | public URL getUrl(); | |
114 | ||
115 | /** | |
116 | * Is this module already loaded? | |
117 | * | |
118 | * @return Is this module already loaded? | |
119 | */ | |
120 | public boolean isLoaded(); | |
121 | ||
122 | /** | |
123 | * Get module. Works only if module is already completely loaded. | |
124 | * | |
125 | * @return QEDEQ module if it is already loaded. | |
126 | */ | |
127 | public Qedeq getQedeq(); | |
128 | ||
129 | ||
130 | /** | |
131 | * Are all required modules loaded? | |
132 | * | |
133 | * @return Are all required modules loaded? | |
134 | */ | |
135 | public boolean hasLoadedRequiredModules(); | |
136 | ||
137 | /** | |
138 | * Get labels and URLs of all referenced modules. Only available if module has loaded | |
139 | * all required modules. Otherwise a runtime exception is thrown. | |
140 | * | |
141 | * @return URLs of all referenced modules. | |
142 | * @throws IllegalStateException Module not yet loaded. | |
143 | */ | |
144 | public ModuleReferenceList getRequiredModules(); | |
145 | ||
146 | /** | |
147 | * Was the module checked? | |
148 | * | |
149 | * @return Module is checked? | |
150 | */ | |
151 | public boolean isChecked(); | |
152 | ||
153 | } |
|