diff --git a/core/src/net/sf/openrocket/preset/TypedPropertyMap.java b/core/src/net/sf/openrocket/preset/TypedPropertyMap.java index d034c6064..cb43f12ca 100644 --- a/core/src/net/sf/openrocket/preset/TypedPropertyMap.java +++ b/core/src/net/sf/openrocket/preset/TypedPropertyMap.java @@ -6,7 +6,7 @@ import java.util.Map; import java.util.Map.Entry; import java.util.Set; -public class TypedPropertyMap { +public class TypedPropertyMap implements Cloneable { private final Map, Object> delegate; @@ -66,5 +66,21 @@ public class TypedPropertyMap { public Set, Object>> entrySet() { return delegate.entrySet(); } + @Override + public String toString() { + StringBuilder sb = new StringBuilder("TypedPropertyMap: { "); + for( Map.Entry, Object> e : delegate.entrySet() ) { + sb.append(e.getKey()).append(" => ").append(String.valueOf(e.getValue())); + } + sb.append("}"); + return sb.toString(); + } + + @Override + protected TypedPropertyMap clone() throws CloneNotSupportedException { + TypedPropertyMap clone = new TypedPropertyMap(); + clone.putAll(this); + return clone; + } }