private static byte[] readRawData(LittleEndianInput in, int size) { if (size < 0) { throw new IllegalArgumentException("Negative size (" + size + ")"); } if (size == 0) { return EMPTY_BYTE_ARRAY; } byte[] result = new byte[size]; in.readFully(result); return result; }
private static byte[] readTail(byte[] expectedTail, LittleEndianInput in) { byte[] result = new byte[TAIL_SIZE]; in.readFully(result); if (false) { // Quite a few examples in the unit tests which don't have the exact expected tail for (int i = 0; i < expectedTail.length; i++) { if (expectedTail[i] != result[i]) { System.err.println( "Mismatch in tail byte [" + i + "]" + "expected " + (expectedTail[i] & 0xFF) + " but got " + (result[i] & 0xFF)); } } } return result; }
/** * When there are no array constants present, <tt>encodedTokenLen</tt>==<tt>totalEncodedLen</tt> * * @param encodedTokenLen number of bytes in the stream taken by the plain formula tokens * @param totalEncodedLen the total number of bytes in the formula (includes trailing encoding for * array constants, but does not include 2 bytes for initial <tt>ushort encodedTokenLen</tt> * field. * @return A new formula object as read from the stream. Possibly empty, never <code>null</code>. */ public static Formula read(int encodedTokenLen, LittleEndianInput in, int totalEncodedLen) { byte[] byteEncoding = new byte[totalEncodedLen]; in.readFully(byteEncoding); return new Formula(byteEncoding, encodedTokenLen); }
public GroupMarkerSubRecord(LittleEndianInput in, int size) { byte[] buf = new byte[size]; in.readFully(buf); reserved = buf; }