private boolean isSpace(final int index) { return getByte(index) == SPACE; }
public boolean isDigit(final int index) { final byte value = getByte(index); return value >= 0x30 && value <= 0x39; }
public int scanBack(final int startInclusive, final int endExclusive, final byte terminator) { for (int index = startInclusive; index >= endExclusive; index--) { final byte value = getByte(index); if (value == terminator) { return index; } } return UNKNOWN_INDEX; }
public int computeChecksum(final int offset, final int end) { int total = 0; for (int index = offset; index < end; index++) { total += (int)getByte(index); } return total % 256; }
private boolean isZero(final int index) { return getByte(index) == ZERO; }
public char getChar(final int index) { return (char)getByte(index); }
public boolean getBoolean(final int index) { return YES == getByte(index); }
public int scan(final int startInclusive, final int endInclusive, final byte terminator) { int indexValue = UNKNOWN_INDEX; for (int i = startInclusive; i <= endInclusive; i++) { final byte value = getByte(i); if (value == terminator) { indexValue = i; break; } } return indexValue; }
public int getDigit(final int index) { final byte value = getByte(index); return getDigit(index, value); }
private int getMessageType(final int endOfBodyLength, final int indexOfLastByteOfMessage) { final int start = buffer.scan(endOfBodyLength, indexOfLastByteOfMessage, '='); if (buffer.getByte(start + 2) == START_OF_HEADER) { return buffer.getByte(start + 1); } return buffer.getMessageType(start + 1, 2); }
public int getMessageType(final int offset, final int length) { // message types can only be 1 or 2 bytes in size if (length == 1) { return getByte(offset); } else { return getShort(offset); } }