Committed by
Gerrit Code Review
Hex dump read for channel buffer
Change-Id: Ife5e49d488c9806e30530b48bb189f7e4a191e97
Showing
1 changed file
with
5 additions
and
8 deletions
| ... | @@ -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 | } | ... | ... |
-
Please register or login to post a comment