private boolean quickCheckin(CheckinHandler checkinHandler, TaskMonitor monitor)
			throws IOException, CancelledException {

		if (!(versionedFolderItem instanceof DatabaseItem)) {
			return false;
		}

		monitor.checkCancelled();
		monitor.setMessage("Initiating Check In for " + name);
		boolean success = false;
		LocalManagedBufferFile srcFile = null;
		ManagedBufferFile checkinFile = null;

		try {
			synchronized (fileSystem) {
				// Make sure version does not change by opening for update before checking versions
				checkinFile =
					((DatabaseItem) versionedFolderItem).openForUpdate(folderItem.getCheckoutId());
				if (versionedFolderItem.getCurrentVersion() != folderItem.getCheckoutVersion()) {
					return false;
				}
				// TODO: assumes folderItem is local - should probably defer createNewVersion 
				// to folderItem if possible (requires refactor)
				srcFile = (LocalManagedBufferFile) ((DatabaseItem) folderItem).open();
			}

			String comment = checkinHandler.getComment();
			if (checkinHandler.createKeepFile()) {
				DomainObject sourceObj = null;
				try {
					sourceObj = getContentHandler().getImmutableObject(folderItem, this,
						DomainFile.DEFAULT_VERSION, -1, monitor);
					createKeepFile(sourceObj, monitor);
				}
				catch (VersionException e) {
					// ignore - unable to create keep file
				}
				finally {
					release(sourceObj);
				}
			}
			monitor.checkCancelled();
			synchronized (fileSystem) {
				srcFile.createNewVersion(checkinFile, comment, monitor);
				success = true;
			}
		}
		finally {
			if (checkinFile != null) {
				checkinFile.close();
			}
			if (srcFile != null) {
				srcFile.close();
			}
		}
		return success;
	}
Checkout this file for update.  If this file is already 
private, this method does nothing.
@param exclusive if true an exclusive checkout will be requested 
@param monitor progress monitor
@return true if checkout successful, false if an exclusive checkout was not possible
due to other users having checkouts of this file.  A request for a non-exclusive checkout 
will never return false.
@throws IOException if an IO or access error occurs.
@throws CancelledException if task monitor cancelled operation.
Ghidra/Framework/Project/src/main/java/ghidra/framework/data/GhidraFileData.java