public static byte [ ] toBytes ( long value ) { if ( isLessThan ( value , 253 ) ) { return new byte [ ] { ( byte ) value } ; } else if ( isLessThan ( value , 65536 ) ) { return new byte [ ] { ( byte ) 253 , ( byte ) ( value ) , ( byte ) ( value >> 8 ) } ; } else if ( isLessThan ( value , 4294967295L ) ) { byte [ ] bytes = new byte [ 5 ] ; bytes [ 0 ] = ( byte ) 254 ; BitUtils . uint32ToByteArrayLE ( value , bytes , 1 ) ; return bytes ; } else { byte [ ] bytes = new byte [ 9 ] ; bytes [ 0 ] = ( byte ) 255 ; BitUtils . uint32ToByteArrayLE ( value , bytes , 1 ) ; BitUtils . uint32ToByteArrayLE ( value >>> 32 , bytes , 5 ) ; return bytes ; } }
Turn a long value into an array of bytes containing the CompactInt representation .