in cassandra/src/main/java/org/apache/ignite/activestore/impl/MetadataTree.java [235:253]
public void replace(Iterable<Metadata> subPath, Metadata replacement) {
Metadata parent = null;
for (Metadata metadata : subPath) {
if (parent == null) {
for (Map.Entry<Metadata, Metadata> entry : tree.entrySet()) {
if (metadata.equals(entry.getValue())) {
entry.setValue(replacement);
}
}
}
parent = tree.remove(metadata);
merged.put(metadata, replacement);
for (String label : getLabels(metadata)) {
remove(label);
setLabel(replacement, label);
}
}
tree.put(replacement, parent);
}