private void parseFile() throws IOException {
		
		try {
			originalBufCount = versionFile.getParameter(ORIGINAL_BUFFER_COUNT_PARM);
			
			originalFileId = ((long)versionFile.getParameter(ORIGINAL_FILE_ID_HI_PARM) << 32) |
				(versionFile.getParameter(ORIGINAL_FILE_ID_LOW_PARM) & 0xffffffffL);
				
			targetFileId = ((long)versionFile.getParameter(TARGET_FILE_ID_HI_PARM) << 32) |
				(versionFile.getParameter(TARGET_FILE_ID_LOW_PARM) & 0xffffffffL);
				
			readBufferMap(versionFile.getParameter(MAP_BUFFER_INDEX_PARM));
			
			readFreeIndexList(versionFile.getParameter(FREE_LIST_BUFFER_INDEX_PARM),
				versionFile.getParameter(FREE_LIST_SIZE_PARM));
		
		} catch (NoSuchElementException e) {
			throw new IOException("Corrupt version file");
		}

	}
Reopen version file as read-only
@throws IOException
Ghidra/Framework/DB/src/main/java/db/buffers/VersionFile.java