package de.westnordost.streetcomplete.data.osm.changes; import java.util.Map; public class StringMapEntryDelete implements StringMapEntryChange { public String key; public String valueBefore; public StringMapEntryDelete(String key, String valueBefore) { this.key = key; this.valueBefore = valueBefore; } @Override public String toString() { return "DELETE \"" + key + "\"=\"" + valueBefore + "\""; } @Override public void applyTo(Map<String, String> map) { map.remove(key); } @Override public boolean conflictsWith(Map<String, String> map) { return !map.containsKey(key) || !map.get(key).equals(valueBefore); } @Override public boolean equals(Object other) { if(other == null || !(other instanceof StringMapEntryDelete)) return false; StringMapEntryDelete o = (StringMapEntryDelete) other; return key.equals(o.key) && valueBefore.equals(o.valueBefore); } }