@SuppressWarnings("unchecked")
	private void readCheckoutsFile() throws IOException {

		checkouts = new HashMap<>();

		File checkoutsFile = getCheckoutsFile();
		if (!checkoutsFile.exists()) {
			return;
		}

		FileInputStream istream = new FileInputStream(checkoutsFile);
		BufferedInputStream bis = new BufferedInputStream(istream);
		try {
			SAXBuilder sax = XmlUtilities.createSecureSAXBuilder(false, false);
			Document doc = sax.build(bis);
			Element root = doc.getRootElement();

			String nextId = root.getAttributeValue("NEXT_ID");
			try {
				nextCheckoutId = Long.parseLong(nextId);
			}
			catch (NumberFormatException e) {
				throw new IOException("Invalid checkouts file: " + checkoutsFile);
			}

			List<Element> elementList = root.getChildren("CHECKOUT");
			Iterator<Element> iter = elementList.iterator();
			while (iter.hasNext()) {
				ItemCheckoutStatus coStatus = parseCheckoutElement(iter.next());
				checkouts.put(coStatus.getCheckoutId(), coStatus);
			}
		}
		catch (org.jdom.JDOMException je) {
			throw new InvalidObjectException("Invalid checkouts file: " + checkoutsFile);
		}
		finally {
			istream.close();
		}
	}
Read data from checkout file.

@throws IOException
Ghidra/Framework/FileSystem/src/main/java/ghidra/framework/store/local/CheckoutManager.java