From 2c793422b5ea7ca20303557a01a7434f8a2fe9d0 Mon Sep 17 00:00:00 2001 From: Kevin Ruland Date: Mon, 2 Apr 2012 20:05:53 +0000 Subject: [PATCH] Added toString for debugging and error logging and Cloneable. --- .../sf/openrocket/preset/TypedPropertyMap.java | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) 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; + } }