Class IsBuildObjectCompleteOutcome
- java.lang.Object
-
- org.eclipse.persistence.internal.helper.type.IsBuildObjectCompleteOutcome
-
public class IsBuildObjectCompleteOutcome extends Object
Helper type that tells us for a given cache key what threads are having some sort of relationship to the cache key (e.g acquired the cache key as an active thread, have a deferred lock on the cache key or have incremented the counter of readers on the lock or simply are stuck waiting for the cache key to be available.
-
-
Field Summary
Fields Modifier and Type Field Description static IsBuildObjectCompleteOutcome
BUILD_OBJECT_IS_COMPLETE_TRUE
Algorithm can return null when it detects that the object is fully built ant the thread should be allowed to progresses.
-
Constructor Summary
Constructors Constructor Description IsBuildObjectCompleteOutcome(Thread threadBlockingTheDeferringThreadFromFinishing, ConcurrencyManager cacheKeyOwnedByBlockingThread)
Create a new IsBuildObjectCompleteOutcome.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ConcurrencyManager
getCacheKeyOwnedByBlockingThread()
Getter forcacheKeyOwnedByBlockingThread
Thread
getThreadBlockingTheDeferringThreadFromFinishing()
-
-
-
Field Detail
-
BUILD_OBJECT_IS_COMPLETE_TRUE
public static final IsBuildObjectCompleteOutcome BUILD_OBJECT_IS_COMPLETE_TRUE
Algorithm can return null when it detects that the object is fully built ant the thread should be allowed to progresses.
-
-
Constructor Detail
-
IsBuildObjectCompleteOutcome
public IsBuildObjectCompleteOutcome(Thread threadBlockingTheDeferringThreadFromFinishing, ConcurrencyManager cacheKeyOwnedByBlockingThread)
Create a new IsBuildObjectCompleteOutcome.- Parameters:
threadBlockingTheDeferringThreadFromFinishing
- the thread that during going in deep in the recursion is discovered as blocking our initial threadcacheKeyOwnedByBlockingThread
- the cache key that the blocking thread is currently owning and not releasing.
-
-
Method Detail
-
getThreadBlockingTheDeferringThreadFromFinishing
public Thread getThreadBlockingTheDeferringThreadFromFinishing()
-
getCacheKeyOwnedByBlockingThread
public ConcurrencyManager getCacheKeyOwnedByBlockingThread()
Getter forcacheKeyOwnedByBlockingThread
-
-