Index: trunk/src/org/openstreetmap/josm/data/osm/history/History.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/history/History.java	(revision 5335)
+++ trunk/src/org/openstreetmap/josm/data/osm/history/History.java	(revision 5339)
@@ -231,3 +231,17 @@
         return type;
     }
+
+    @Override
+    public String toString() {
+        String result = "History ["
+                + (type != null ? "type=" + type + ", " : "") + "id=" + id;
+        if (versions != null) {
+            result += ", versions=\n";
+            for (HistoryOsmPrimitive v : versions) {
+                result += "\t" + v + ",\n";
+            }
+        }
+        result += "]";
+        return result;
+    }
 }
Index: trunk/src/org/openstreetmap/josm/data/osm/history/HistoryOsmPrimitive.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/history/HistoryOsmPrimitive.java	(revision 5335)
+++ trunk/src/org/openstreetmap/josm/data/osm/history/HistoryOsmPrimitive.java	(revision 5339)
@@ -231,3 +231,12 @@
         return true;
     }
+
+    @Override
+    public String toString() {
+        return getClass().getSimpleName() + " [version=" + version + ", id=" + id + ", visible=" + visible + ", "
+                + (timestamp != null ? "timestamp=" + timestamp : "") + ", "
+                + (user != null ? "user=" + user + ", " : "") + "changesetId="
+                + changesetId
+                + "]";
+    }
 }
