Shashikanth VH
Committed by Gerrit Code Review

Hex dump read for channel buffer

Change-Id: Ife5e49d488c9806e30530b48bb189f7e4a191e97
...@@ -34,24 +34,21 @@ public final class HexDump { ...@@ -34,24 +34,21 @@ public final class HexDump {
34 * @param buff buffer content to dump in hex format 34 * @param buff buffer content to dump in hex format
35 */ 35 */
36 public static void dump(ChannelBuffer buff) { 36 public static void dump(ChannelBuffer buff) {
37 + buff.markReaderIndex();
37 try { 38 try {
38 - byte[] yTemp;
39 - yTemp = buff.array();
40 -
41 - int iStartIndex = buff.readerIndex();
42 - int iEndIndex = buff.writerIndex();
43 do { 39 do {
44 StringBuilder sb = new StringBuilder(); 40 StringBuilder sb = new StringBuilder();
45 - for (int k = 0; (k < 16) && (iStartIndex < iEndIndex); ++k) { 41 + for (int k = 0; (k < 16) && (buff.readableBytes() != 0); ++k) {
46 if (0 == k % 4) { 42 if (0 == k % 4) {
47 sb.append(String.format(" ")); // blank after 4 bytes 43 sb.append(String.format(" ")); // blank after 4 bytes
48 } 44 }
49 - sb.append(String.format("%02X ", yTemp[iStartIndex++])); 45 + sb.append(String.format("%02X ", buff.readByte()));
50 } 46 }
51 log.debug(sb.toString()); 47 log.debug(sb.toString());
52 - } while (iStartIndex < iEndIndex); 48 + } while (buff.readableBytes() != 0);
53 } catch (Exception e) { 49 } catch (Exception e) {
54 log.error("[HexDump] Invalid buffer: " + e.toString()); 50 log.error("[HexDump] Invalid buffer: " + e.toString());
55 } 51 }
52 + buff.resetReaderIndex();
56 } 53 }
57 } 54 }
......