+ public void addConfig(Config<T> aConfig) {
+ notNull("aConfig", aConfig);
+ if (ids.contains(aConfig.getId())) {
+ throw new ConfigException("duplicate id '" +
+ aConfig.getId().toString() + "'");
+ }
+ String prefix = aConfig.getId().getId() + ".";
+ for (T item : aConfig.values()) {
+ Id<T> newId = new Id<T>(prefix + item.getId());
+ if (valueIds.contains(newId)) {
+ throw new ConfigException("duplicate id '" +
+ item.getId().toString() + "'");
+ }
+ }
+
+ ids.add(aConfig.getId());
+