code: public long readLong(final JBBPByteOrder byteOrder) throws IOException {
      if (byteOrder == JBBPByteOrder.BIG_ENDIAN) {
        return (((long) readInt(byteOrder) & 0xFFFFFFFFL) << 32) | ((long) readInt(byteOrder) & 0xFFFFFFFFL);
      } else {
        return ((long) readInt(byteOrder) & 0xFFFFFFFFL) | (((long) readInt(byteOrder) & 0xFFFFFFFFL) << 32);
      }
    }
docs: Read a long value from the stream.
  
  @param byteOrder the order of bytes to be used to decode the read value
  @return the long value from stream
  @throws IOException  it will be thrown for any transport problem during the
  operation
  @throws EOFException if the end of the stream has been reached
  @see JBBPByteOrder#BIG_ENDIAN
  @see JBBPByteOrder#LITTLE_ENDIAN