private static void writeFileHeaders(Container container, File file) throws WriteHeaderException { WriteHeaderException error = null; try { RandomAccessFile rnd = new RandomAccessFile(container.getFileName(), "rw"); try { rnd.seek(file.getOffset()); rnd.write( generateHeader( file.getTypeId(), file.getId(), file.getOwnerId(), file.getCookie(), FileInContainer.FILE_EXISTS, file.getDataLength(), file.getTailId())); } catch (IOException e) { error = new WriteHeaderException("Writing header failed", e); } rnd.close(); } catch (FileNotFoundException e) { error = new WriteHeaderException("Unable to open RandomAccessFile", e); } catch (IOException e) { error = new WriteHeaderException( "Unable to close either DataOutputStream (unlikely) or RandomAccessFile", e); } if (error != null) throw error; }
private void createFileHeader() throws IOException { fileHeader = TestableFileWriter.generateHeader( file.getTypeId(), file.getId(), file.getOwnerId(), file.getCookie(), FileInContainer.FILE_EXISTS, file.getDataLength(), file.getTailId()); }