@@ -53,4 +53,31 @@ public HdfObjectHeaderPrefixV2(
5353 public void writeAsGroupToByteChannel (SeekableByteChannel seekableByteChannel ) throws IOException {
5454 // not implemented
5555 }
56+
57+ @ Override
58+ public String toString () {
59+ StringBuilder builder = new StringBuilder ();
60+ builder .append ("HdfObjectHeaderPrefixV2 {" )
61+ .append (" Version: 2" )
62+ .append (", Flags: " ).append (flags )
63+ .append (", Checksum: " ).append (checksum )
64+ .append (", Access Time: " ).append (accessTime )
65+ .append (", Modification Time: " ).append (modificationTime )
66+ .append (", Change Time: " ).append (changeTime )
67+ .append (", Birth Time: " ).append (birthTime )
68+ .append (", Max Compact Attributes: " ).append (maxCompactAttributes )
69+ .append (", Min Dense Attributes: " ).append (minDenseAttributes )
70+ .append (", Total Header Messages: " ).append (headerMessages .size ())
71+ .append (", Object Header Size: " ).append (objectHeaderSize );
72+
73+ // Parse header messages
74+ for (HdfMessage message : headerMessages ) {
75+ String ms = message .toString ();
76+ // Indent the nested message string
77+ builder .append ("\r \n \t \t " ).append (ms .replaceAll ("\r \n " , "\r \n \t \t " ));
78+ }
79+ builder .append ("\r \n }" ); // Added newline for final brace readability
80+
81+ return builder .toString ();
82+ }
5683}
0 commit comments