/** * @param filePath filepath to query for and retrieve. * @return ShrinkArray of the raw data from the BSA of the file specified, already decompressed if * applicable; Empty ShrinkArray if the file did not exist. * @throws IOException * @throws DataFormatException */ public LShrinkArray getFile(String filePath) throws IOException, DataFormatException { BSAFileRef ref; if ((ref = getFileRef(filePath)) != null) { in.pos(getFileLocation(ref)); LShrinkArray out = new LShrinkArray(in.extract(0, ref.size)); trimName(out); if (isCompressed(ref)) { out = out.correctForCompression(); } return out; } return new LShrinkArray(new byte[0]); }