Skip to content

Commit aeef662

Browse files
committed
added some tests
1 parent f3cb0b9 commit aeef662

File tree

7 files changed

+1404
-1244
lines changed

7 files changed

+1404
-1244
lines changed
626 Bytes
Binary file not shown.

src/main/java/edu/kit/datamanager/mappingservice/plugins/PluginManager.java

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -44,10 +44,10 @@ public class PluginManager {
4444
/**
4545
* Map of plugins.
4646
*/
47-
private static Map<String, IMappingPlugin> plugins;
47+
private Map<String, IMappingPlugin> plugins;
4848

4949
static {
50-
reloadPlugins(); // loads plugins on startup
50+
soleInstance.reloadPlugins(); // loads plugins on startup
5151
}
5252

5353
/**
@@ -69,7 +69,7 @@ public static PluginManager soleInstance() {
6969
/**
7070
* Reloads the plugins from the 'plugins' directory.
7171
*/
72-
public static void reloadPlugins() {
72+
public void reloadPlugins() {
7373
Map<String, IMappingPlugin> plugins1;
7474
try {
7575
plugins1 = PluginLoader.loadPlugins(new File("./plugins"));
@@ -116,11 +116,17 @@ public List<String> getListOfAvailableValidators() {
116116
* @throws MappingPluginException If there is an error with the plugin or the input.
117117
*/
118118
public MappingPluginState mapFile(String pluginId, Path mappingFile, Path inputFile, Path outputFile) throws MappingPluginException {
119-
for (var entry : plugins.entrySet()) {
120-
if (entry.getKey().equals(pluginId)) {
121-
return entry.getValue().mapFile(mappingFile, inputFile, outputFile);
122-
}
123-
}
124-
throw new MappingPluginException(MappingPluginState.NOT_FOUND, "Plugin " + pluginId + " not found!");
119+
// for (var entry : plugins.entrySet()) {
120+
// if (entry.getKey().equals(pluginId)) {
121+
// return entry.getValue().mapFile(mappingFile, inputFile, outputFile);
122+
// }
123+
// }
124+
if (pluginId == null) throw new MappingPluginException(MappingPluginState.INVALID_INPUT, "Plugin ID is null.");
125+
if (mappingFile == null) throw new MappingPluginException(MappingPluginState.INVALID_INPUT, "Path to mapping schema is null.");
126+
if (inputFile == null) throw new MappingPluginException(MappingPluginState.INVALID_INPUT, "Path to input file is null.");
127+
if (outputFile == null) throw new MappingPluginException(MappingPluginState.INVALID_INPUT, "Path to output file is null.");
128+
129+
if(plugins.containsKey(pluginId)) return plugins.get(pluginId).mapFile(mappingFile, inputFile, outputFile);
130+
throw new MappingPluginException(MappingPluginState.NOT_FOUND, "Plugin '" + pluginId + "' not found!");
125131
}
126132
}

src/main/java/edu/kit/datamanager/mappingservice/rest/impl/MappingAdministrationController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -319,7 +319,7 @@ public ResponseEntity<List<PluginInformation>> getAllAvailableMappingTypes(WebRe
319319

320320
@Override
321321
public ResponseEntity<String> reloadAllAvailableMappingTypes(WebRequest wr, HttpServletResponse hsr) {
322-
PluginManager.reloadPlugins();
322+
PluginManager.soleInstance().reloadPlugins();
323323
return ResponseEntity.noContent().build();
324324
}
325325

0 commit comments

Comments
 (0)