cacheKey = this.getIdentityMapAccessorInstance().acquireDeferredLock(primaryKey, concreteDescriptor.getJavaClass(), concreteDescriptor, query.isCacheCheckComplete() || query.shouldRetrieveBypassCache()); } catch (InterruptedException exception) { cacheKey = this.getIdentityMapAccessorInstance().acquireDeferredLock(primaryKey, concreteDescriptor.getJavaClass(), concreteDescriptor, query.isCacheCheckComplete() || query.shouldRetrieveBypassCache()); if (cacheKey.getActiveThread() == Thread.currentThread()) { break; cacheKey = this.getIdentityMapAccessorInstance().acquireLock(primaryKey, concreteDescriptor.getJavaClass(), concreteDescriptor, query.isCacheCheckComplete() || query.shouldRetrieveBypassCache());
cacheKey = this.getIdentityMapAccessorInstance().acquireDeferredLock(primaryKey, concreteDescriptor.getJavaClass(), concreteDescriptor, query.isCacheCheckComplete() || query.shouldRetrieveBypassCache()); } catch (InterruptedException exception) { cacheKey = this.getIdentityMapAccessorInstance().acquireDeferredLock(primaryKey, concreteDescriptor.getJavaClass(), concreteDescriptor, query.isCacheCheckComplete() || query.shouldRetrieveBypassCache()); if (cacheKey.getActiveThread() == Thread.currentThread()) { break; cacheKey = this.getIdentityMapAccessorInstance().acquireLock(primaryKey, concreteDescriptor.getJavaClass(), concreteDescriptor, query.isCacheCheckComplete() || query.shouldRetrieveBypassCache());
|| query.shouldRetrieveBypassCache() || (concreteDescriptor.hasFetchGroupManager() && concreteDescriptor.getFetchGroupManager().isPartialObject(clone))) {
|| query.shouldRetrieveBypassCache() || (concreteDescriptor.hasFetchGroupManager() && concreteDescriptor.getFetchGroupManager().isPartialObject(clone))) {
if (wasAnOriginal && (!isARefresh) && ! query.shouldRetrieveBypassCache()) { return unitOfWork.cloneAndRegisterObject(original, originalCacheKey, unitOfWorkCacheKey, descriptor);
CacheKey originalCacheKey = null; if ((!isARefresh) && (!isIsolated) && !query.shouldRetrieveBypassCache() && !unitOfWork.shouldReadFromDB() && (!unitOfWork.shouldForceReadFromDB(query, primaryKey))) { AbstractSession session = unitOfWork.getParentIdentityMapSession(query); if (preFetchedCacheKey == null){ if (wasAnOriginal && !query.shouldRetrieveBypassCache()) { workingClone = instantiateWorkingCopyClone(original, unitOfWork);
CacheKey originalCacheKey = null; if ((!isARefresh) && (!isIsolated) && !query.shouldRetrieveBypassCache() && !unitOfWork.shouldReadFromDB() && (!unitOfWork.shouldForceReadFromDB(query, primaryKey))) { AbstractSession session = unitOfWork.getParentIdentityMapSession(query); if (preFetchedCacheKey == null){ if (wasAnOriginal && !query.shouldRetrieveBypassCache()) { workingClone = instantiateWorkingCopyClone(original, unitOfWork);
try { if (query.shouldMaintainCache() && (!query.shouldRetrieveBypassCache() || !query.shouldStoreBypassCache())) { cacheKey = session.retrieveCacheKey(primaryKey, concreteDescriptor, joinManager, query); protectedObject = cacheKey.getObject(); FetchGroupManager fetchGroupManager = concreteDescriptor.getFetchGroupManager(); if (protectedObject == null || query.shouldRetrieveBypassCache()) { cacheHit = false; boolean domainWasMissing = protectedObject == null; }else if (cacheKey == null || (domainWasMissing && query.shouldRetrieveBypassCache())){ cacheKey = new CacheKey(primaryKey); cacheKey.setObject(protectedObject);
try { if (query.shouldMaintainCache() && (!query.shouldRetrieveBypassCache() || !query.shouldStoreBypassCache())) { cacheKey = session.retrieveCacheKey(primaryKey, concreteDescriptor, joinManager, query); protectedObject = cacheKey.getObject(); FetchGroupManager fetchGroupManager = concreteDescriptor.getFetchGroupManager(); if (protectedObject == null || query.shouldRetrieveBypassCache()) { cacheHit = false; boolean domainWasMissing = protectedObject == null; }else if (cacheKey == null || (domainWasMissing && query.shouldRetrieveBypassCache())){ cacheKey = new CacheKey(primaryKey); cacheKey.setObject(protectedObject);
if (domainObject == null || query.shouldRetrieveBypassCache()) { cacheHit = false; if (query.isReadObjectQuery() && ((ReadObjectQuery)query).shouldLoadResultIntoSelectionObject()) {
ObjectBuilder concreteObjectBuilder = concreteDescriptor.getObjectBuilder(); try { boolean shouldRetrieveBypassCache = query.shouldRetrieveBypassCache(); boolean shouldStoreBypassCache = query.shouldStoreBypassCache();
ObjectBuilder concreteObjectBuilder = concreteDescriptor.getObjectBuilder(); try { boolean shouldRetrieveBypassCache = query.shouldRetrieveBypassCache(); boolean shouldStoreBypassCache = query.shouldStoreBypassCache();