Class ExclusiveResource
- java.lang.Object
-
- org.junit.platform.engine.support.hierarchical.ExclusiveResource
-
@API(status=EXPERIMENTAL, since="1.3") public class ExclusiveResource extends ObjectAn exclusive resource identified by a key with a lock mode that is used to synchronize access to shared resources when executing nodes in parallel.- Since:
- 1.3
- See Also:
Node.getExecutionMode()
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classExclusiveResource.LockModeLockModetranslates to the respectiveReadWriteLocklocks.
-
Field Summary
Fields Modifier and Type Field Description static StringGLOBAL_KEYKey of the global resource lock that all direct children of the engine descriptor acquire in read mode by default: "org.junit.platform.engine.support.hierarchical.ExclusiveResource.GLOBAL_KEY"
-
Constructor Summary
Constructors Constructor Description ExclusiveResource(String key, ExclusiveResource.LockMode lockMode)Create a newExclusiveResource.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(Object o)StringgetKey()Get the key of this resource.ExclusiveResource.LockModegetLockMode()Get the lock mode of this resource.inthashCode()StringtoString()
-
-
-
Field Detail
-
GLOBAL_KEY
@API(status=EXPERIMENTAL, since="1.7") public static final String GLOBAL_KEYKey of the global resource lock that all direct children of the engine descriptor acquire in read mode by default: "org.junit.platform.engine.support.hierarchical.ExclusiveResource.GLOBAL_KEY"If any node requires an exclusive resource with the same key in read-write mode, the lock will be coarsened to be acquired by the node's ancestor that is a direct child of the engine descriptor and all of the ancestor's descendants will be forced to run in the same thread.
- Since:
- 1.7
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ExclusiveResource
public ExclusiveResource(String key, ExclusiveResource.LockMode lockMode)
Create a newExclusiveResource.- Parameters:
key- the identifier of the resource; nevernullor blanklockMode- the lock mode to use to synchronize access to the resource; nevernull
-
-
Method Detail
-
getKey
public String getKey()
Get the key of this resource.
-
getLockMode
public ExclusiveResource.LockMode getLockMode()
Get the lock mode of this resource.
-
-