final int startTransaction(DomainObjectAdapterDB object, String description,
			AbortedTransactionListener listener, boolean notify)
			throws TerminatedTransactionException {

		if (isImmutable) {
			throw new TerminatedTransactionException("Transaction not permitted: read-only");
		}

		checkLockingTask();

		synchronized (this) {
			checkDomainObject(object);

			if (getCurrentTransactionInfo() != null && transactionTerminated) {
				throw new TerminatedTransactionException();
			}

			return startTransaction(object, description, listener, false, notify);
		}
	}
Throw lock exception if currently locked
@throws DomainObjectLockedException if currently locked
Ghidra/Framework/Project/src/main/java/ghidra/framework/data/AbstractTransactionManager.java