getCurrentTransactionContext().registerSoftLock(cacheName, this, softLock);
LOG.debug("putIfAbsent: cache [{}] key [{}] was not in, soft lock inserted", cacheName, key);
return null;
} else {
// CAS failed, something with that key may now be in store, job done.
softLock.unlock();
LOG.debug("putIfAbsent: cache [{}] key [{}] was not in, soft lock insertion failed", cacheName, key);
// oldElement may contain a soft lock -> check for that case
Object oldElementObjectValue = oldElement.getObjectValue();
if (oldElementObjectValue instanceof SoftLock) {