Module org.junit.jupiter.engine
Interface ExtensionRegistrar
- All Known Implementing Classes:
MutableExtensionRegistry
An
ExtensionRegistrar is used to register extensions.- Since:
- 5.5
-
Method Summary
Modifier and TypeMethodDescriptionvoidregisterExtension(Class<? extends Extension> extensionType) Instantiate an extension of the given type using its default constructor and register it in the registry.voidregisterExtension(Extension extension, Object source) Register the suppliedExtension, without checking if an extension of that type has already been registered.voidregisterSyntheticExtension(Extension extension, Object source) Register the suppliedExtensionas a synthetic extension, without checking if an extension of that type has already been registered.
-
Method Details
-
registerExtension
Instantiate an extension of the given type using its default constructor and register it in the registry.A new
Extensionshould not be registered if an extension of the given type already exists in the registry or a parent registry.- Parameters:
extensionType- the type of extension to register- Since:
- 5.8
-
registerExtension
Register the suppliedExtension, without checking if an extension of that type has already been registered.Semantics for Source
If an extension is registered declaratively via
@ExtendWith, thesourceand theextensionshould be the same object. However, if an extension is registered programmatically via@RegisterExtension, thesourceobject should be theFieldthat is annotated with@RegisterExtension. Similarly, if an extension is registered programmatically as a lambda expression or method reference, thesourceobject should be the underlyingMethodthat implements the extension API.- Parameters:
extension- the extension to register; nevernullsource- the source of the extension; nevernull
-
registerSyntheticExtension
Register the suppliedExtensionas a synthetic extension, without checking if an extension of that type has already been registered.- Parameters:
extension- the extension to register; nevernullsource- the source of the extension; nevernull- Since:
- 5.8
- See Also:
-