Skip to content

Commit f797436

Browse files
authored
Merge pull request #57 from oniatus/snapshotOverride
Avoid snapshots being overridden by other instances discovered later. Log discovered of repeated modules.
2 parents 9c28501 + a929896 commit f797436

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

gestalt-module/src/main/java/org/terasology/module/TableModuleRegistry.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121
import com.google.common.collect.Maps;
2222
import com.google.common.collect.Sets;
2323
import com.google.common.collect.Table;
24+
import org.slf4j.Logger;
25+
import org.slf4j.LoggerFactory;
2426
import org.terasology.naming.Name;
2527
import org.terasology.naming.Version;
2628

@@ -37,19 +39,27 @@
3739
*/
3840
public class TableModuleRegistry implements ModuleRegistry {
3941

42+
private static final Logger logger = LoggerFactory.getLogger(TableModuleRegistry.class);
43+
4044
private final Table<Name, Version, Module> modules = HashBasedTable.create();
4145
private final Map<Name, Module> latestModules = Maps.newHashMap();
4246

4347
@Override
4448
public boolean add(Module module) {
4549
Preconditions.checkNotNull(module);
46-
if (!modules.contains(module.getId(), module.getVersion()) || modules.get(module.getId(), module.getVersion()).getVersion().isSnapshot()) {
50+
if (!modules.contains(module.getId(), module.getVersion())) {
4751
modules.put(module.getId(), module.getVersion(), module);
4852
Module previousLatest = latestModules.get(module.getId());
4953
if (previousLatest == null || previousLatest.getVersion().compareTo(module.getVersion()) <= 0) {
5054
latestModules.put(module.getId(), module);
5155
}
5256
return true;
57+
} else {
58+
logger.error("Module {}-{} already registered from {}, cannot register same module from {}",
59+
module.getId(),
60+
module.getVersion(),
61+
modules.get(module.getId(), module.getVersion()).getLocations(),
62+
module.getLocations());
5363
}
5464
return false;
5565
}

0 commit comments

Comments
 (0)